📄 grobal2.pas
字号:
RM_WEIGHTCHANGED = 10115;
RM_FEATURECHANGED = 10116;
RM_CLEAROBJECTS = 10117;
RM_CHANGEMAP = 10118;
RM_BUTCH = 10119;
RM_MAGICFIRE = 10120;
RM_SENDMYMAGIC = 10122;
RM_MAGIC_LVEXP = 10123;
RM_SKELETON = 10024;
RM_DURACHANGE = 10125;
RM_MERCHANTSAY = 10126;
RM_GOLDCHANGED = 10136;
RM_CHANGELIGHT = 10137;
RM_CHARSTATUSCHANGED = 10139;
RM_DELAYMAGIC = 10154;
RM_DIGUP = 10200;
RM_DIGDOWN = 10201;
RM_FLYAXE = 10202;
RM_LIGHTING = 10204;
RM_SUBABILITY = 10302;
RM_TRANSPARENT = 10308;
RM_SPACEMOVE_SHOW = 10331;
RM_HIDEEVENT = 10333;
RM_SHOWEVENT = 10334;
RM_ZEN_BEE = 10337;
RM_OPENHEALTH = 10410;
RM_CLOSEHEALTH = 10411;
RM_DOOPENHEALTH = 10412;
RM_CHANGEFACE = 10415;
RM_ITEMUPDATE = 11000;
RM_MONSTERSAY = 11001;
RM_MAKESLAVE = 11002;
type
TDefaultMessage = record
Recog :Integer;
Ident :Word;
Param :Word;
Tag :Word;
Series :Word;
end;
TSrvNetInfo = record
sIPaddr :String;
nPort :Integer;
end;
pTSrvNetInfo = ^TSrvNetInfo;
TStdItem =record //OK
Name :String[14];
StdMode :Byte;
Shape :Byte;
Weight :Byte;
AniCount :Byte;
Source :Shortint;
Reserved :Byte;
NeedIdentify :Byte;
Looks :Word;
DuraMax :Word;
AC :Word;
MAC :Word;
DC :Word;
MC :Word;
SC :Word;
Need :Byte;
NeedLevel :Byte;
Price :Integer;
end;
pTStdItem = ^TStdItem;
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;
btLevel :Byte;
boUndead :Boolean;
wCoolEye :Word;
wExp :Word;
wHP :Word;
btAC :Byte;
btMAC :Byte;
btDC :Byte;
btMaxDC :Byte;
btMC :Byte;
btSC :Byte;
btSpeed :Byte;
btHit :Byte;
wWalkSpeed :Word;
wWalkStep :Word;
wWalkWait :Word;
wAttackSeeed :Word;
ItemList :TList;
end;
pTMonInfo = ^TMonInfo;
TMagicInfo = record
wMagicId :Word;
sMagicName :String[12];
btEffectType :Byte;
btEffect :Byte;
wSpell :Word;
wPower :Word;
wMaxPower :Word;
btJob :Byte;
btDefSpell :Byte;
btDefPower :Byte;
btDefMaxPower:Byte;
TrainLevel :array[0..3] of Byte;
MaxTrain :array[0..3] of Integer;
btTrainLv :Byte;
nDelayTime :Integer;
sDescr :String;
end;
pTMagicInfo = ^TMagicInfo;
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;
TMonGenInfo = record
szMapName :String[14];
nX :Integer;
nY :Integer;
sMonName :String[14];
nAreaX :Integer;
nAreaY :Integer;
nCount :Integer;
dwZenTime :LongWord;
dwStartTime :LongWord;
TList_3C :TList;
end;
pTMonGenInfo =^TMonGenInfo;
TUnbindInfo = record
nUnbindCode :Integer;
sItemName :String[14];
end;
pTUnbindInfo =^TUnbindInfo;
TMapQuestInfo = record
sMapName :String[14];
nFlags :Integer;
boFlag :Boolean;
sMonName :String[14];
sNeedItem :String[14];
sScriptName :String[14];
boGroup :Boolean;
end;
pTMapQuestInfo = ^TMapQuestInfo;
TQuestDiaryInfo = record
QDDinfoList:TList;
end;
pTQuestDiaryInfo = ^TQuestDiaryInfo;
TAdminInfo = record
nLv :Integer;
sChrName :String[14];
end;
pTAdminInfo = ^TAdminInfo;
TAbility =record //OK //Size 40
Level :Byte; //0x198 //0x34
bt035 :Byte;
AC :Word; //0x19A //0x36
MAC :Word; //0x19C //0x38
DC :Word; //0x19E //0x3A
MC :Word; //0x1A0 //0x3C
SC :Word; //0x1A2 //0x4E
HP :Word; //0x1A4 //0x40
MP :Word; //0x1A6 //0x42
MaxHP :Word; //0x1A8 //0x44
MaxMP :Word; //0x1AA //0x46
dw1AC :Dword; //0x1AC //0x48
Exp :Dword; //0x1B0 //0x4C
MaxExp :Dword; //0x1B4 //0x50
Weight :Word; //0x1B8 //0x54
MaxWeight :Word; //0x1BA //0x56
WearWeight :Byte; //0x1BC //0x58
MaxWearWeight :Byte; //0x1BD //0x59
HandWeight :Byte; //0x1BE //0x5A
MaxHandWeight :Byte; //0x1BF //0x5B
end;
TWAbility = record
dwExp :LongWord; //0x194 怪物经验值(Dword)
wHP :Word; //0x1A4
wMP :Word; //0x1A6
wMaxHP :Word; //0x1A8
wMaxMP :Word; //0x1AA
end;
TMerchantInfo = record
sScript :String[14];
sMapName :String[14];
nX :Integer;
nY :Integer;
sNPCName :String[40];
nFace :Integer;
nBody :Integer;
boCastle :Boolean;
end;
pTMerchantInfo = ^TMerchantInfo;
TSocketBuff = record
Buffer :PChar; //0x24
nLen :Integer;//0x28
end;
pTSocketBuff = ^TSocketBuff;
TSendBuff = record
nLen :Integer;
Buffer :array[0..DATA_BUFSIZE -1] of Char;
end;
pTSendBuff = ^TSendBuff;
TUserItem =record
wIndex :Word;
MakeIndex :LongWord;
Dura :Word;
DuraMax :Word;
end;
PTUserItem = ^TUserItem;
TMonItemInfo = record
SelPoint:Integer;
MaxPoint:Integer;
ItemName:String;
Count :Integer;
end;
PTMonItemInfo = ^TMonItemInfo;
TMonsterInfo =record
Name :String;
Itemlist:TList;
end;
PTMonsterInfo = ^TMonsterInfo;
TMapItem = record
Name :String;
Looks :Word;
AniCount :Byte;
Reserved :Byte;
Count :Integer;
UserItem :TUserItem;
end;
PTMapItem = ^TMapItem;
THumanRcd = record
sUserID :String[16];
sCharName :String[20];
btJob :Byte;
btGender :Byte;
// char szTakeItem[10][12];
btLevel :Byte;
btHair :Byte;
sMapName :String[15];
btAttackMode :Byte;
btIsAdmin :Byte;
nX :Integer;
nY :Integer;
nGold :Integer;
dwExp :LongWord;
end;
pTHumanRcd = ^THumanRcd;
TObjectFeature = record
btGender :Byte;
btWear :Byte;
btHair :Byte;
btWeapon :Byte;
end;
pTObjectFeature = ^TObjectFeature;
TStatusInfo = record
nStatus :Integer; //0x60
dwStatusTime :LongWord; //0x1E8
sm218 :SmallInt; //0x218
dwTime220 :LongWord; //0x220
end;
TMsgHeader = record
dwCode :LongWord;//0x00
nSocket :integer; //0x04
wGateIndex :Word; //0x08
wIdent :Word; //0x0A
nUserListIndex :integer; //0x0C
// wTemp :Word; //0x0E
nLength :Integer; //0x10
end;
pTMsgHeader = ^TMsgHeader;
TUserInfo = record
bo00 :Boolean; //0x00
bo01 :Boolean; //0x01 ?
bo02 :Boolean; //0x02 ?
bo03 :Boolean; //0x03 ?
n04 :Integer; //0x0A ?
n08 :integer; //0x0B ?
bo0C :Boolean; //0x0C ?
bo0D :Boolean; //0x0D
bo0E :Boolean; //0x0E ?
bo0F :Boolean; //0x0F ?
n10 :Integer; //0x10 ?
n14 :Integer; //0x14 ?
n18 :Integer; //0x18 ?
sStr :String[20];//0x1C
nSocket :integer; //0x34
nGateIndex :Integer; //0x38
n3C :integer; //0x3C
n40 :integer; //0x40 ?
n44 :integer; //0x44
List48 :TList; //0x48
Cert :TObject; //0x4C
dwTime50 :LongWord; //0x50
bo54 :Boolean; //0x54
end;
pTUserInfo = ^TUserInfo;
TGlobaSessionInfo = record
sAccount :String;
sIPaddr :String;
nSessionID :Integer;
n24 :Integer;
bo28 :Boolean;
dwAddTick :LongWord;
dAddDate :TDateTime;
end;
pTGlobaSessionInfo = ^TGlobaSessionInfo;
implementation
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -