201 lines
2.8 KiB
C
201 lines
2.8 KiB
C
#define QUESTCOND(cond) int QUEST_COND_ ## cond ## (class CWorldServer* server, class CPlayer* client, byte* raw)
|
|
typedef int (*fpQuestCond)(class CWorldServer*, class CPlayer*, byte*);
|
|
#define GETCONDDATA(cond) STR_COND_ ## cond ## * data = (STR_COND_ ## cond ## *)raw;
|
|
|
|
QUESTCOND(000);QUESTCOND(001);QUESTCOND(002);
|
|
QUESTCOND(003);QUESTCOND(004);QUESTCOND(005);
|
|
QUESTCOND(006);QUESTCOND(007);QUESTCOND(008);
|
|
QUESTCOND(009);QUESTCOND(010);QUESTCOND(011);
|
|
QUESTCOND(012);QUESTCOND(013);QUESTCOND(014);
|
|
QUESTCOND(015);QUESTCOND(016);QUESTCOND(017);
|
|
QUESTCOND(018);QUESTCOND(019);QUESTCOND(020);
|
|
QUESTCOND(021);QUESTCOND(022);QUESTCOND(023);
|
|
QUESTCOND(024);QUESTCOND(025);QUESTCOND(026);
|
|
QUESTCOND(027);QUESTCOND(028);QUESTCOND(029);
|
|
QUESTCOND(030);
|
|
|
|
struct STR_COND_000 {
|
|
int iQuestSN;
|
|
};
|
|
|
|
struct STR_COND_001 {
|
|
int iDataCnt;
|
|
STR_QUEST_DATA* CheckData;
|
|
};
|
|
|
|
struct STR_COND_002 {
|
|
int iDataCnt;
|
|
STR_QUEST_DATA* CheckData;
|
|
};
|
|
|
|
struct STR_COND_003 {
|
|
int iDataCnt;
|
|
STR_ABIL_DATA* CheckData;
|
|
};
|
|
|
|
struct STR_COND_004 {
|
|
int iDataCnt;
|
|
STR_ITEM_DATA* CheckData;
|
|
};
|
|
|
|
struct STR_COND_005 {
|
|
byte btIsLeader;
|
|
int iLevel;
|
|
byte btReversed;
|
|
};
|
|
|
|
struct STR_COND_006 {
|
|
int iZoneSN;
|
|
int iX;
|
|
int iY;
|
|
int iZ;
|
|
int iRadius;
|
|
};
|
|
|
|
struct STR_COND_007 {
|
|
dword ulTime;
|
|
dword ulEndTime;
|
|
};
|
|
|
|
struct STR_COND_008 {
|
|
dword ulTime;
|
|
byte btOp;
|
|
};
|
|
|
|
struct STR_COND_009 {
|
|
int iSkillSN1;
|
|
int iSkillSN2;
|
|
byte btOp;
|
|
};
|
|
|
|
struct STR_COND_010 {
|
|
byte btLowPcnt;
|
|
byte btHighPcnt;
|
|
};
|
|
|
|
struct STR_COND_011 {
|
|
union {
|
|
byte btWho;
|
|
word usWho;
|
|
};
|
|
word nVarNo;
|
|
int iValue;
|
|
byte btOp;
|
|
};
|
|
|
|
struct STR_COND_012 {
|
|
union {
|
|
word iZone;
|
|
dword ulZone;
|
|
};
|
|
int iX;
|
|
int iY;
|
|
union {
|
|
int iEventID;
|
|
dword m_HashEventOBJ;
|
|
};
|
|
};
|
|
|
|
struct STR_COND_013 {
|
|
int iNpcNo;
|
|
};
|
|
|
|
struct STR_COND_014 {
|
|
word nSN;
|
|
byte btOp;
|
|
};
|
|
|
|
struct STR_COND_015 {
|
|
word nNumber1;
|
|
word nNumber2;
|
|
};
|
|
|
|
struct STR_COND_016 {
|
|
union {
|
|
byte btWho;
|
|
dword ulWho;
|
|
};
|
|
dword ulTime;
|
|
dword ulEndTime;
|
|
};
|
|
|
|
struct STR_COND_017 {
|
|
STR_NPCVAR NpcVar1;
|
|
STR_NPCVAR NpcVar2;
|
|
byte btOp;
|
|
};
|
|
|
|
struct STR_COND_018 {
|
|
byte btDate;
|
|
byte btHour1;
|
|
byte btMin1;
|
|
byte btHour2;
|
|
byte btMin2;
|
|
};
|
|
|
|
struct STR_COND_019 {
|
|
byte btWeekDay;
|
|
byte btHour1;
|
|
byte btMin1;
|
|
byte btHour2;
|
|
byte btMin2;
|
|
};
|
|
|
|
struct STR_COND_020 {
|
|
int iNo1;
|
|
int iNo2;
|
|
};
|
|
|
|
struct STR_COND_021 {
|
|
union {
|
|
byte btSelObjType;
|
|
dword ulSelObjType;
|
|
};
|
|
int iRadius;
|
|
};
|
|
|
|
struct STR_COND_022 {
|
|
word nX;
|
|
word nY;
|
|
};
|
|
|
|
struct STR_COND_023 {
|
|
byte btReg;
|
|
};
|
|
|
|
struct STR_COND_024 {
|
|
word nPOS;
|
|
byte btOP;
|
|
};
|
|
|
|
struct STR_COND_025 {
|
|
word nCONT;
|
|
byte btOP;
|
|
};
|
|
|
|
struct STR_COND_026 {
|
|
word nGRD;
|
|
byte btOP;
|
|
};
|
|
|
|
struct STR_COND_027 {
|
|
word nPOINT;
|
|
byte btOP;
|
|
};
|
|
|
|
struct STR_COND_028 {
|
|
word iMONEY;
|
|
byte btOP;
|
|
};
|
|
|
|
struct STR_COND_029 {
|
|
word nMemberCNT;
|
|
byte btOP;
|
|
};
|
|
|
|
struct STR_COND_030 {
|
|
word nSkill1;
|
|
word nSkill2;
|
|
byte btOP;
|
|
};
|