Rename and clean up MapleQuestRequirementType

This commit is contained in:
P0nk
2021-09-09 22:44:34 +02:00
parent 473ab19034
commit 8f54b3e5de
23 changed files with 97 additions and 73 deletions

View File

@@ -58,8 +58,8 @@ public class Quest {
protected short id;
protected int timeLimit, timeLimit2;
protected Map<MapleQuestRequirementType, MapleQuestRequirement> startReqs = new EnumMap<>(MapleQuestRequirementType.class);
protected Map<MapleQuestRequirementType, MapleQuestRequirement> completeReqs = new EnumMap<>(MapleQuestRequirementType.class);
protected Map<QuestRequirementType, MapleQuestRequirement> startReqs = new EnumMap<>(QuestRequirementType.class);
protected Map<QuestRequirementType, MapleQuestRequirement> completeReqs = new EnumMap<>(QuestRequirementType.class);
protected Map<QuestActionType, MapleQuestAction> startActs = new EnumMap<>(QuestActionType.class);
protected Map<QuestActionType, MapleQuestAction> completeActs = new EnumMap<>(QuestActionType.class);
protected List<Integer> relevantMobs = new LinkedList<>();
@@ -104,10 +104,10 @@ public class Quest {
Data startReqData = reqData.getChildByPath("0");
if (startReqData != null) {
for (Data startReq : startReqData.getChildren()) {
MapleQuestRequirementType type = MapleQuestRequirementType.getByWZName(startReq.getName());
if (type.equals(MapleQuestRequirementType.INTERVAL)) {
QuestRequirementType type = QuestRequirementType.getByWZName(startReq.getName());
if (type.equals(QuestRequirementType.INTERVAL)) {
repeatable = true;
} else if (type.equals(MapleQuestRequirementType.MOB)) {
} else if (type.equals(QuestRequirementType.MOB)) {
for (Data mob : startReq.getChildren()) {
relevantMobs.add(DataTool.getInt(mob.getChildByPath("id")));
}
@@ -125,14 +125,14 @@ public class Quest {
Data completeReqData = reqData.getChildByPath("1");
if (completeReqData != null) {
for (Data completeReq : completeReqData.getChildren()) {
MapleQuestRequirementType type = MapleQuestRequirementType.getByWZName(completeReq.getName());
QuestRequirementType type = QuestRequirementType.getByWZName(completeReq.getName());
MapleQuestRequirement req = this.getRequirement(type, completeReq);
if (req == null) {
continue;
}
if (type.equals(MapleQuestRequirementType.MOB)) {
if (type.equals(QuestRequirementType.MOB)) {
for (Data mob : completeReq.getChildren()) {
relevantMobs.add(DataTool.getInt(mob.getChildByPath("id")));
}
@@ -203,7 +203,7 @@ public class Quest {
return false;
}
IntervalRequirement ir = (IntervalRequirement) startReqs.get(MapleQuestRequirementType.INTERVAL);
IntervalRequirement ir = (IntervalRequirement) startReqs.get(QuestRequirementType.INTERVAL);
return ir.getInterval() < YamlConfig.config.server.QUEST_POINT_REPEATABLE_INTERVAL * 60 * 60 * 1000;
}
@@ -381,7 +381,7 @@ public class Quest {
}
public int getStartItemAmountNeeded(int itemid) {
MapleQuestRequirement req = startReqs.get(MapleQuestRequirementType.ITEM);
MapleQuestRequirement req = startReqs.get(QuestRequirementType.ITEM);
if (req == null) {
return Integer.MIN_VALUE;
}
@@ -391,7 +391,7 @@ public class Quest {
}
public int getCompleteItemAmountNeeded(int itemid) {
MapleQuestRequirement req = completeReqs.get(MapleQuestRequirementType.ITEM);
MapleQuestRequirement req = completeReqs.get(QuestRequirementType.ITEM);
if (req == null) {
return Integer.MAX_VALUE;
}
@@ -401,7 +401,7 @@ public class Quest {
}
public int getMobAmountNeeded(int mid) {
MapleQuestRequirement req = completeReqs.get(MapleQuestRequirementType.MOB);
MapleQuestRequirement req = completeReqs.get(QuestRequirementType.MOB);
if (req == null) {
return 0;
}
@@ -413,9 +413,9 @@ public class Quest {
public short getInfoNumber(Status qs) {
boolean checkEnd = qs.equals(Status.STARTED);
Map<MapleQuestRequirementType, MapleQuestRequirement> reqs = !checkEnd ? startReqs : completeReqs;
Map<QuestRequirementType, MapleQuestRequirement> reqs = !checkEnd ? startReqs : completeReqs;
MapleQuestRequirement req = reqs.get(MapleQuestRequirementType.INFO_NUMBER);
MapleQuestRequirement req = reqs.get(QuestRequirementType.INFO_NUMBER);
if (req != null) {
InfoNumberRequirement inReq = (InfoNumberRequirement) req;
return inReq.getInfoNumber();
@@ -426,9 +426,9 @@ public class Quest {
public String getInfoEx(Status qs, int index) {
boolean checkEnd = qs.equals(Status.STARTED);
Map<MapleQuestRequirementType, MapleQuestRequirement> reqs = !checkEnd ? startReqs : completeReqs;
Map<QuestRequirementType, MapleQuestRequirement> reqs = !checkEnd ? startReqs : completeReqs;
try {
MapleQuestRequirement req = reqs.get(MapleQuestRequirementType.INFO_EX);
MapleQuestRequirement req = reqs.get(QuestRequirementType.INFO_EX);
InfoExRequirement ixReq = (InfoExRequirement) req;
return ixReq.getInfo().get(index);
} catch (Exception e) {
@@ -438,9 +438,9 @@ public class Quest {
public List<String> getInfoEx(Status qs) {
boolean checkEnd = qs.equals(Status.STARTED);
Map<MapleQuestRequirementType, MapleQuestRequirement> reqs = !checkEnd ? startReqs : completeReqs;
Map<QuestRequirementType, MapleQuestRequirement> reqs = !checkEnd ? startReqs : completeReqs;
try {
MapleQuestRequirement req = reqs.get(MapleQuestRequirementType.INFO_EX);
MapleQuestRequirement req = reqs.get(QuestRequirementType.INFO_EX);
InfoExRequirement ixReq = (InfoExRequirement) req;
return ixReq.getInfo();
} catch (Exception e) {
@@ -460,7 +460,7 @@ public class Quest {
quests.clear();
}
private MapleQuestRequirement getRequirement(MapleQuestRequirementType type, Data data) {
private MapleQuestRequirement getRequirement(QuestRequirementType type, Data data) {
MapleQuestRequirement ret = null;
switch (type) {
case END_DATE:
@@ -597,8 +597,8 @@ public class Quest {
}
public int getNpcRequirement(boolean checkEnd) {
Map<MapleQuestRequirementType, MapleQuestRequirement> reqs = !checkEnd ? startReqs : completeReqs;
MapleQuestRequirement mqr = reqs.get(MapleQuestRequirementType.NPC);
Map<QuestRequirementType, MapleQuestRequirement> reqs = !checkEnd ? startReqs : completeReqs;
MapleQuestRequirement mqr = reqs.get(QuestRequirementType.NPC);
if (mqr != null) {
return ((NpcRequirement) mqr).get();
} else {
@@ -607,8 +607,8 @@ public class Quest {
}
public boolean hasScriptRequirement(boolean checkEnd) {
Map<MapleQuestRequirementType, MapleQuestRequirement> reqs = !checkEnd ? startReqs : completeReqs;
MapleQuestRequirement mqr = reqs.get(MapleQuestRequirementType.SCRIPT);
Map<QuestRequirementType, MapleQuestRequirement> reqs = !checkEnd ? startReqs : completeReqs;
MapleQuestRequirement mqr = reqs.get(QuestRequirementType.SCRIPT);
if (mqr != null) {
return ((ScriptRequirement) mqr).get();

View File

@@ -22,14 +22,38 @@
package server.quest;
/**
*
* @author Matze
*/
public enum MapleQuestRequirementType {
UNDEFINED(-1), JOB(0), ITEM(1), QUEST(2), MIN_LEVEL(3), MAX_LEVEL(4), END_DATE(5), MOB(6), NPC(7), FIELD_ENTER(8), INTERVAL(9), SCRIPT(10), PET(11), MIN_PET_TAMENESS(12), MONSTER_BOOK(13), NORMAL_AUTO_START(14), INFO_NUMBER(15), INFO_EX(16), COMPLETED_QUEST(17), START(18), END(19), DAY_BY_DAY(20), MESO(21), BUFF(22), EXCEPT_BUFF(23);
public enum QuestRequirementType {
UNDEFINED(-1),
JOB(0),
ITEM(1),
QUEST(2),
MIN_LEVEL(3),
MAX_LEVEL(4),
END_DATE(5),
MOB(6),
NPC(7),
FIELD_ENTER(8),
INTERVAL(9),
SCRIPT(10),
PET(11),
MIN_PET_TAMENESS(12),
MONSTER_BOOK(13),
NORMAL_AUTO_START(14),
INFO_NUMBER(15),
INFO_EX(16),
COMPLETED_QUEST(17),
START(18),
END(19),
DAY_BY_DAY(20),
MESO(21),
BUFF(22),
EXCEPT_BUFF(23);
final byte type;
private MapleQuestRequirementType(int type) {
QuestRequirementType(int type) {
this.type = (byte) type;
}
@@ -37,7 +61,7 @@ public enum MapleQuestRequirementType {
return type;
}
public static MapleQuestRequirementType getByWZName(String name) {
public static QuestRequirementType getByWZName(String name) {
if (name.equals("job")) {
return JOB;
} else if (name.equals("quest")) {
@@ -76,11 +100,11 @@ public enum MapleQuestRequirementType {
return INFO_EX;
} else if (name.equals("questComplete")) {
return COMPLETED_QUEST;
} else if(name.equals("start")) {
} else if (name.equals("start")) {
return START;
/*} else if(name.equals("end")) { already coded
return END;*/
} else if(name.equals("daybyday")) {
} else if (name.equals("daybyday")) {
return DAY_BY_DAY;
} else if (name.equals("money")) {
return MESO;

View File

@@ -22,8 +22,8 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
/**
*
@@ -33,7 +33,7 @@ public class BuffExceptRequirement extends MapleQuestRequirement {
private int buffId = -1;
public BuffExceptRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.BUFF);
super(QuestRequirementType.BUFF);
processData(data);
}

View File

@@ -22,8 +22,8 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
/**
*
@@ -33,7 +33,7 @@ public class BuffRequirement extends MapleQuestRequirement {
private int buffId = 1;
public BuffRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.BUFF);
super(QuestRequirementType.BUFF);
processData(data);
}

View File

@@ -24,8 +24,8 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
/**
*
@@ -36,7 +36,7 @@ public class CompletedQuestRequirement extends MapleQuestRequirement {
public CompletedQuestRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.COMPLETED_QUEST);
super(QuestRequirementType.COMPLETED_QUEST);
processData(data);
}

View File

@@ -24,8 +24,8 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
import java.util.Calendar;
@@ -38,7 +38,7 @@ public class EndDateRequirement extends MapleQuestRequirement {
public EndDateRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.END_DATE);
super(QuestRequirementType.END_DATE);
processData(data);
}

View File

@@ -24,8 +24,8 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
/**
*
@@ -36,7 +36,7 @@ public class FieldEnterRequirement extends MapleQuestRequirement {
public FieldEnterRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.FIELD_ENTER);
super(QuestRequirementType.FIELD_ENTER);
processData(data);
}

View File

@@ -24,8 +24,8 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
import java.util.ArrayList;
import java.util.List;
@@ -40,7 +40,7 @@ public class InfoExRequirement extends MapleQuestRequirement {
public InfoExRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.INFO_EX);
super(QuestRequirementType.INFO_EX);
questID = quest.getId();
processData(data);
}

View File

@@ -22,8 +22,8 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
/**
*
@@ -35,7 +35,7 @@ public class InfoNumberRequirement extends MapleQuestRequirement {
private int questID;
public InfoNumberRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.INFO_NUMBER);
super(QuestRequirementType.INFO_NUMBER);
questID = quest.getId();
processData(data);
}

View File

@@ -25,8 +25,8 @@ import client.Character;
import client.QuestStatus;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
/**
*
@@ -37,7 +37,7 @@ public class IntervalRequirement extends MapleQuestRequirement {
private int questID;
public IntervalRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.INTERVAL);
super(QuestRequirementType.INTERVAL);
questID = quest.getId();
processData(data);
}

View File

@@ -28,8 +28,8 @@ import constants.inventory.ItemConstants;
import provider.Data;
import provider.DataTool;
import server.MapleItemInformationProvider;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
import java.util.HashMap;
import java.util.Map;
@@ -43,7 +43,7 @@ public class ItemRequirement extends MapleQuestRequirement {
public ItemRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.ITEM);
super(QuestRequirementType.ITEM);
processData(data);
}

View File

@@ -25,8 +25,8 @@ import client.Character;
import client.Job;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
import java.util.ArrayList;
import java.util.List;
@@ -39,7 +39,7 @@ public class JobRequirement extends MapleQuestRequirement {
List<Integer> jobs = new ArrayList<>();
public JobRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.JOB);
super(QuestRequirementType.JOB);
processData(data);
}

View File

@@ -23,16 +23,16 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import server.quest.MapleQuestRequirementType;
import server.quest.QuestRequirementType;
/**
* Base class for a Quest Requirement. Quest system uses it for all requirements.
* @author Tyler (Twdtwd)
*/
public abstract class MapleQuestRequirement {
private final MapleQuestRequirementType type;
private final QuestRequirementType type;
public MapleQuestRequirement(MapleQuestRequirementType type) {
public MapleQuestRequirement(QuestRequirementType type) {
this.type = type;
}
@@ -50,7 +50,7 @@ public abstract class MapleQuestRequirement {
*/
public abstract void processData(Data data);
public MapleQuestRequirementType getType() {
public QuestRequirementType getType() {
return type;
}
}

View File

@@ -24,8 +24,8 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
/**
*
@@ -36,7 +36,7 @@ public class MaxLevelRequirement extends MapleQuestRequirement {
public MaxLevelRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.MAX_LEVEL);
super(QuestRequirementType.MAX_LEVEL);
processData(data);
}

View File

@@ -22,8 +22,8 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
/**
*
@@ -33,7 +33,7 @@ public class MesoRequirement extends MapleQuestRequirement {
private int meso = 0;
public MesoRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.MESO);
super(QuestRequirementType.MESO);
processData(data);
}

View File

@@ -24,8 +24,8 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
/**
*
@@ -36,7 +36,7 @@ public class MinLevelRequirement extends MapleQuestRequirement {
public MinLevelRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.MIN_LEVEL);
super(QuestRequirementType.MIN_LEVEL);
processData(data);
}

View File

@@ -25,8 +25,8 @@ import client.Character;
import client.inventory.Pet;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
/**
*
@@ -37,7 +37,7 @@ public class MinTamenessRequirement extends MapleQuestRequirement {
public MinTamenessRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.MIN_PET_TAMENESS);
super(QuestRequirementType.MIN_PET_TAMENESS);
processData(data);
}

View File

@@ -25,8 +25,8 @@ import client.Character;
import client.QuestStatus;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
import tools.FilePrinter;
import java.util.HashMap;
@@ -41,7 +41,7 @@ public class MobRequirement extends MapleQuestRequirement {
private int questID;
public MobRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.MOB);
super(QuestRequirementType.MOB);
questID = quest.getId();
processData(data);
}

View File

@@ -24,8 +24,8 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
/**
*
@@ -36,7 +36,7 @@ public class MonsterBookCountRequirement extends MapleQuestRequirement {
public MonsterBookCountRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.MONSTER_BOOK);
super(QuestRequirementType.MONSTER_BOOK);
processData(data);
}

View File

@@ -24,8 +24,8 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
/**
*
@@ -35,7 +35,7 @@ public class NpcRequirement extends MapleQuestRequirement {
private int reqNPC;
public NpcRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.NPC);
super(QuestRequirementType.NPC);
processData(data);
}

View File

@@ -25,8 +25,8 @@ import client.Character;
import client.inventory.Pet;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
import java.util.ArrayList;
import java.util.List;
@@ -40,7 +40,7 @@ public class PetRequirement extends MapleQuestRequirement {
public PetRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.PET);
super(QuestRequirementType.PET);
processData(data);
}

View File

@@ -22,8 +22,8 @@ import client.Character;
import client.QuestStatus;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
import java.util.HashMap;
import java.util.Map;
@@ -36,7 +36,7 @@ public class QuestRequirement extends MapleQuestRequirement {
Map<Integer, Integer> quests = new HashMap<>();
public QuestRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.QUEST);
super(QuestRequirementType.QUEST);
processData(data);
}

View File

@@ -22,8 +22,8 @@ package server.quest.requirements;
import client.Character;
import provider.Data;
import provider.DataTool;
import server.quest.MapleQuestRequirementType;
import server.quest.Quest;
import server.quest.QuestRequirementType;
/**
*
@@ -33,7 +33,7 @@ public class ScriptRequirement extends MapleQuestRequirement {
private boolean reqScript;
public ScriptRequirement(Quest quest, Data data) {
super(MapleQuestRequirementType.BUFF);
super(QuestRequirementType.BUFF);
processData(data);
}