📄 grobal2.pas
字号:
ET_DIGOUTZOMBI = 1;
ET_PILESTONES = 3;
ET_HOLYCURTAIN = 4;
ET_FIRE = 5;
ET_SCULPEICE = 6;
//==============================新增物品寄售系统================================
RM_SENDSELLOFFGOODSLIST = 21008;
SM_SENDSELLOFFGOODSLIST = 20008;
RM_SENDUSERSELLOFFITEM = 21005;
SM_SENDUSERSELLOFFITEM = 20005; //寄售物品
RM_SENDSELLOFFITEMLIST = 22009; //查询得到的寄售物品
CM_SENDSELLOFFITEMLIST = 20009; //查询得到的寄售物品
RM_SENDBUYSELLOFFITEM_OK = 21010; //购买寄售物品成功
SM_SENDBUYSELLOFFITEM_OK = 20010; //购买寄售物品成功
RM_SENDBUYSELLOFFITEM_FAIL = 21011; //购买寄售物品失败
SM_SENDBUYSELLOFFITEM_FAIL = 20011; //购买寄售物品失败
RM_SENDBUYSELLOFFITEM = 41005; //购买选择寄售物品
CM_SENDBUYSELLOFFITEM = 4005; //购买选择寄售物品
RM_SENDQUERYSELLOFFITEM = 41006; //查询选择寄售物品
CM_SENDQUERYSELLOFFITEM = 4006; //查询选择寄售物品
RM_SENDSELLOFFITEM = 41004; //接受寄售物品
CM_SENDSELLOFFITEM = 4004; //接受寄售物品
RM_SENDUSERSELLOFFITEM_FAIL = 2007; //R = -3 寄售物品失败
RM_SENDUSERSELLOFFITEM_OK = 2006; //寄售物品成功
SM_SENDUSERSELLOFFITEM_FAIL = 20007; //R = -3 寄售物品失败
SM_SENDUSERSELLOFFITEM_OK = 20006; //寄售物品成功
//////////////////////////////////////////////
MAPNAMELEN = 16;
ACTORNAMELEN = 14;
MAXPATHLEN = 255;
DIRPATHLEN = 80;
type
TMonStatus = (s_KillHuman, s_UnderFire, s_Die, s_MonGen);
TMsgColor = (c_Red, c_Green, c_Blue, c_White);
TMsgType = (t_Notice, t_Hint, t_System, t_Say, t_Mon, t_GM, t_Cust, t_Castle);
TDefaultMessage = record
Recog: Integer;
Ident: Word;
Param: Word;
Tag: Word;
Series: Word;
end;
pTDefaultMessage = ^TDefaultMessage;
TOSObject = record
btType: Byte;
CellObj: TObject;
dwAddTime: LongWord;
boObjectDisPose: Boolean;
end;
pTOSObject = ^TOSObject;
TSendMessage = record
wIdent: Word;
wParam: Word;
nParam1: Integer;
nParam2: Integer;
nParam3: Integer;
BaseObject: TObject;
dwAddTime: LongWord;
dwDeliveryTime: LongWord;
boLateDelivery: Boolean;
Buff: PChar;
end;
pTSendMessage = ^TSendMessage;
TProcessMessage = record
wIdent: Word;
wParam: Word;
nParam1: Integer;
nParam2: Integer;
nParam3: Integer;
BaseObject: TObject;
boLateDelivery: Boolean;
dwDeliveryTime: LongWord;
sMsg: string;
end;
pTProcessMessage = ^TProcessMessage;
TLoadHuman = record
sAccount: string[12];
sChrName: string[14];
sUserAddr: string[15];
nSessionID: Integer;
end;
TShortMessage = record
Ident: Word;
wMsg: Word;
end;
TMessageBodyW = record
Param1: Word;
Param2: Word;
Tag1: Word;
Tag2: Word;
end;
TMessageBodyWL = record //16 0x10
lParam1: Integer;
lParam2: Integer;
lTag1: Integer;
lTag2: Integer;
end;
TCharDesc = record
feature: Integer;
Status: Integer;
end;
TSessInfo = record //全局会话
sAccount: string[12];
sIPaddr: string[15];
nSessionID: Integer;
nPayMent: Integer;
nPayMode: Integer;
nSessionStatus: Integer;
dwStartTick: LongWord;
dwActiveTick: LongWord;
nRefCount: Integer;
end;
pTSessInfo = ^TSessInfo;
TQuestInfo = record
wFlag: Word;
btValue: Byte;
nRandRage: Integer;
end;
pTQuestInfo = ^TQuestInfo;
TScript = record
boQuest: Boolean;
QuestInfo: array[0..9] of TQuestInfo;
nQuest: Integer;
RecordList: TList;
end;
pTScript = ^TScript;
TMonItem = record
n00: Integer;
n04: Integer;
sMonName: string;
n18: Integer;
end;
pTMonItem = ^TMonItem;
TItemName = record
nItemIndex: Integer;
nMakeIndex: Integer;
sItemName: string;
end;
pTItemName = ^TItemName;
TVarType = (vNone, vInteger, vString);
TDynamicVar = record
sName: string;
VarType: TVarType;
nInternet: Integer;
sString: string;
end;
pTDynamicVar = ^TDynamicVar;
TRecallMigic = record
nHumLevel: Integer;
sMonName: string;
nCount: Integer;
nLevel: Integer;
end;
TMonSayMsg = record
nRate: Integer;
sSayMsg: string;
State: TMonStatus;
Color: TMsgColor;
end;
pTMonSayMsg = ^TMonSayMsg;
TMonDrop = record
sItemName: string;
nDropCount: Integer;
nNoDropCount: Integer;
nCountLimit: Integer;
end;
pTMonDrop = ^TMonDrop;
TGameCmd = record
sCmd: string[25];
nPermissionMin: Integer;
nPermissionMax: Integer;
end;
pTGameCmd = ^TGameCmd;
TIPaddr = record
dIPaddr: string[15];
sIPaddr: string[15];
end;
pTIPAddr = ^TIPaddr;
TSrvNetInfo = record
sIPaddr: string[15];
nPort: Integer;
end;
pTSrvNetInfo = ^TSrvNetInfo;
TStdItem = packed record //OK
Name: string[14];
StdMode: Byte; //0x0F
Shape: Byte; //0x10
Weight: Byte; //0x11
AniCount: Byte; //0x12
Source: ShortInt; //0x13
Reserved: Byte; //0x14
NeedIdentify: Byte; //0x15
Looks: Word; //0x16
DuraMax: Word; //0x18
Reserved1: Word;
AC: Integer; //0x1A
MAC: Integer; //0x1C
DC: Integer; //0x1E
MC: Integer; //0x20
SC: Integer; //0x22
Need: Integer; //0x24
NeedLevel: Integer; //0x25
Price: Integer; //0x28
end;
pTStdItem = ^TStdItem;
TOStdItem = packed record //OK
Name: string[14];
StdMode: Byte; //0x0F
Shape: Byte; //0x10
Weight: Byte; //0x11
AniCount: Byte; //0x12
Source: ShortInt; //0x13
Reserved: Byte; //0x14
NeedIdentify: Byte; //0x15
Looks: Word; //0x16
DuraMax: Word; //0x18
AC: Word; //0x1A
MAC: Word; //0x1C
DC: Word; //0x1E
MC: Word; //0x20
SC: Word; //0x22
Need: Byte; //0x24
NeedLevel: Byte; //0x25
w26: Word;
Price: Integer; //0x28
end;
pTOStdItem = ^TOStdItem;
TOClientItem = record //OK
s: TOStdItem;
MakeIndex: Integer;
Dura: Word;
DuraMax: Word;
end;
pTOClientItem = ^TOClientItem;
TClientItem = record //OK
s: TStdItem;
MakeIndex: Integer;
Dura: Word;
DuraMax: Word;
end;
PTClientItem = ^TClientItem;
TMonInfo = record
sName: string[14];
btRace: Byte;
btRaceImg: Byte;
wAppr: Word;
wLevel: Word;
btLifeAttrib: Byte;
boUndead: Boolean;
wCoolEye: Word;
dwExp: LongWord;
wMP: Word;
wHP: Word;
wAC: Word;
wMAC: Word;
wDC: Word;
wMaxDC: Word;
wMC: Word;
wSC: Word;
wSpeed: Word;
wHitPoint: Word;
wWalkSpeed: Word;
wWalkStep: Word;
wWalkWait: Word;
wAttackSpeed: Word;
ItemList: TList;
end;
pTMonInfo = ^TMonInfo;
{ TMagic = record
wMagicId: Word;
sMagicName: string[12];
btEffectType: Byte;
btEffect: Byte;
wSpell: Word;
wPower: Word;
TrainLevel: array[0..3] of Byte;
MaxTrain: array[0..3] of Integer;
btTrainLv: Byte;
btJob: Byte;
dwDelayTime: Integer;
btDefSpell: Byte;
btDefPower: Byte;
wMaxPower: Byte;
btDefMaxPower: Word;
sDescr: string[14];
end;
pTMagic = ^TMagic; }
TMagic = record
wMagicId: Word;
sMagicName: string[12];
btEffectType: Byte;
btEffect: Byte;
bt11: Byte;
wSpell: Word;
wPower: Word;
TrainLevel: array[0..3] of Byte;
w02: Word;
MaxTrain: array[0..3] of Integer;
btTrainLv: Byte;
btJob: Byte;
wMagicIdx: Word;
dwDelayTime: LongWord;
btDefSpell: Byte;
btDefPower: Byte;
wMaxPower: Word;
btDefMaxPower: Byte;
sDescr: string[18];
end;
pTMagic = ^TMagic;
TClientMagic = record //84
Key: Char;
Level: Byte;
CurTrain: Integer;
Def: TMagic;
end;
PTClientMagic = ^TClientMagic;
TUserMagic = record
MagicInfo: pTMagic;
wMagIdx: Word;
btLevel: Byte;
btKey: Byte;
nTranPoint: Integer;
end;
pTUserMagic = ^TUserMagic;
TMinMap = record
sName: string;
nID: Integer;
end;
pTMinMap = ^TMinMap;
TMapRoute = record
sSMapNO: string;
nDMapX: Integer;
nSMapY: Integer;
sDMapNO: string;
nSMapX: Integer;
nDMapY: Integer;
end;
pTMapRoute = ^TMapRoute;
TMapInfo = record
sName: string;
sMapNO: string;
nL: Integer; //0x10
nServerIndex: Integer; //0x24
nNEEDONOFFFlag: Integer; //0x28
boNEEDONOFFFlag: Boolean; //0x2C
sShowName: string; //0x4C
sReConnectMap: string; //0x50
boSAFE: Boolean; //0x51
boDARK: Boolean; //0x52
boFIGHT: Boolean; //0x53
boFIGHT3: Boolean; //0x54
boDAY: Boolean; //0x55
boQUIZ: Boolean; //0x56
boNORECONNECT: Boolean; //0x57
boNEEDHOLE: Boolean; //0x58
boNORECALL: Boolean; //0x59
boNORANDOMMOVE: Boolean; //0x5A
boNODRUG: Boolean; //0x5B
boMINE: Boolean; //0x5C
boNOPOSITIONMOVE: Boolean; //0x5D
end;
pTMapInfo = ^TMapInfo;
TUnbindInfo = record
nUnbindCode: Integer;
sItemName: string[14];
end;
pTUnbindInfo = ^TUnbindInfo;
TQuestDiaryInfo = record
QDDinfoList: TList;
end;
pTQuestDiaryInfo = ^TQuestDiaryInfo;
TAdminInfo = record
nLv: Integer;
sChrName: string[14];
sIPaddr: string[15];
end;
pTAdminInfo = ^TAdminInfo;
THumMagics = record
wMagIdx: Word;
btLevel: Byte;
btKey: Byte;
nTranPoint: Integer; //当前持久值
end;
pTHumMagics = ^THumMagics;
TNakedAbility = packed record //Size 20
DC: Word;
MC: Word;
SC: Word;
AC: Word;
MAC: Word;
HP: Word;
MP: Word;
Hit: Word;
Speed: Word;
X2: Word;
end;
pTNakedAbility = ^TNakedAbility;
{TAbility = packed record //OK //Size 50
Level: Word; //0x198 //0x34 0x00
AC: Integer; //0x19A //0x36 0x02
MAC: Integer; //0x19C //0x38 0x04
DC: Integer; //0x19E //0x3A 0x06
MC: Integer; //0x1A0 //0x3C 0x08
SC: Integer; //0x1A2 //0x3E 0x0A
HP: Word; //0x1A4 //0x40 0x0C
MP: Word; //0x1A6 //0x42 0x0E
MaxHP: Word; //0x1A8 //0x44 0x10
MaxMP: Word; //0x1AA //0x46 0x12
Exp: LongWord; //0x1B0 //0x4C 0x18
MaxExp: LongWord; //0x1B4 //0x50 0x1C
Weight: Word; //0x1B8 //0x54 0x20
MaxWeight: Word; //0x1BA //0x56 0x22 背包
WearWeight: Word; //0x1BC //0x58 0x24
MaxWearWeight: Word; //0x1BD //0x59 0x25 负重
HandWeight: Word; //0x1BE //0x5A 0x26
MaxHandWeight: Word; //0x1BF //0x5B 0x27 腕力
end;
pTAbility = ^TAbility;}
TAbility = packed record //OK //Size 40
Level: Word; //0x198 //0x34 0x00
AC: Integer; //0x19A //0x36 0x02
MAC: Integer; //0x19C //0x38 0x04
DC: Integer; //0x19E //0x3A 0x06
MC: Integer; //0x1A0 //0x3C 0x08
SC: Integer; //0x1A2 //0x3E 0x0A
HP: Word; //0x1A4 //0x40 0x0C
MP: Word; //0x1A6 //0x42 0x0E
MaxHP: Word; //0x1A8 //0x44 0x10
MaxMP: Word; //0x1AA //0x46 0x12
Exp: LongWord; //0x1B0 //0x4C 0x18
MaxExp: LongWord; //0x1B4 //0x50 0x1C
Weight: Word; //0x1B8 //0x54 0x20
MaxWeight: Word; //0x1BA //0x56 0x22 背包
WearWeight: Word; //0x1BC //0x58 0x24
MaxWearWeight: Word; //0x1BD //0x59 0x25 负重
HandWeight: Word; //0x1BE //0x5A 0x26
MaxHandWeight: Word; //0x1BF //0x5B 0x27 腕力
end;
pTAbility = ^TAbility;
TOAbility = packed record
Level: Word; //0x198 //0x34 0x30
AC: Word; //0x19A //0x36 0x32
MAC: Word; //0x19C //0x38 0x034
DC: Word; //0x19E //0x3A 0x36
MC: Word; //0x1A0 //0x3C 0x38
SC: Word; //0x1A2 //0x3E 0x3A
HP: Word; //0x1A4 //0x40 0x3C
MP: Word; //0x1A6 //0x42 0x3E
MaxHP: Word; //0x1A8 //0x44 0x40
MaxMP: Word; //0x1AA //0x46 0x42
btReserved1: Byte;
btReserved2: Byte;
btReserved3: Byte;
btReserved4: Byte;
Exp: LongWord; //0x1B0 //0x4C 0x48
MaxExp: LongWord; //0x1B4 //0x50 0x4C
Weight: Word; //0x1B8 //0x54 0x50
MaxWeight: Word; //0x1BA //0x56 0x52 背包
WearWeight: Byte; //0x1BC //0x58 0x54
MaxWearWeight: Byte; //0x1BD //0x59 0x55 负重
HandWeight: Byte; //0x1BE //0x5A 0x56
MaxHandWeight: Byte; //0x1BF //0x5B 0x57 腕力
end;
pTOAbility = ^TOAbility;
{TOAbility = packed record //Size 40
Level: Word;
AC: Word; //0x19A //0x36 0x02
MAC: Word; //0x19C //0x38 0x04
DC: Word; //0x19E //0x3A 0x06
MC: Word; //0x1A0 //0x3C 0x08
SC: Word; //0x1A2 //0x3E 0x0A
HP: Word;
MP: Word;
MaxHP: Word;
MaxMP: Word;
btReserved1: Byte;
btReserved2: Byte;
btReserved3: Byte;
btReserved4: Byte;
Exp: LongWord;
MaxExp: LongWord;
Weight: Word;
MaxWeight: Word;
WearWeight: Byte;
MaxWearWeight: Byte;
HandWeight: Byte;
MaxHandWeight: Byte;
end;
pTOAbility = ^TOAbility; }
TAddAbility = record //OK //Size 40
wHP: Word; //0x1A4 //0x40
wMP: Word; //0x1A6 //0x42
wHitPoint: Word;
wSpeedPoint: Word;
wAC: Integer;
wMAC: Integer;
wDC: Integer;
wMC: Integer;
wSC: Integer;
bt1DF: Byte; //神圣
bt035: Byte;
wAntiPoison: Word;
wPoisonRecover: Word;
wHealthRecover: Word;
wSpellRecover: Word;
wAntiMagic: Word;
btLuck: Byte;
btUnLuck: Byte;
nHitSpeed: Integer;
btWeaponStrong: Byte;
end;
pTAddAbility = ^TAddAbility;
TRAbility = packed record //OK //Size 44
Level: Word; //0x198
AC: Word; //0x19A
MAC: Word; //0x19C
DC: Word; //0x19E
MC: Word; //0x1A0
SC: Word; //0x1A2
HP: Word; //0x1A4
MP: Word; //0x1A6
MaxHP: Word; //0x1A8
MaxMP: Word; //0x1AA
dw1AC: LongWord; //0x1AC
Exp: LongWord; //0x1B0
MaxExp: LongWord; //0x1B4
Weight: Word; //0x1B8
MaxWeight: Word; //0x1BA
WearWeight: Word; //0x1BC
MaxWearWeight: Word; //0x1BD
HandWeight: Word; //0x1BE
MaxHandWeight: Word; //0x1BF
end;
TWAbility = record
dwExp: LongWord; //0x194 怪物经验值(Dword)
wHP: Word; //0x1A4
wMP: Word; //0x1A6
wMaxHP: Word; //0x1A8
wMaxMP: Word; //0x1AA
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -