?? grobal2.pas
字號:
SKILL_43 = 43;
SKILL_44 = 44; //FrostCrunch
SKILL_45 = 45; //FlameDisruptor
SKILL_46 = 46; //Mirroring
SKILL_47 = 47;
SKILL_ENERGYREPULSOR = 37;
SKILL_49 = 49;
SKILL_UENHANCER = 36;
SKILL_51 = 51;
SKILL_52 = 52;
SKILL_53 = 53;
SKILL_54 = 54;
SKILL_55 = 55;
SKILL_REDBANWOL = 56;
SKILL_57 = 57;
SKILL_58 = 58;
SKILL_59 = 59;
LA_UNDEAD = 1;
sENCYPTSCRIPTFLAG= '不知道是什么字符串';
sSTATUS_FAIL = '+FAIL/';
sSTATUS_GOOD = '+GOOD/';
type
PTMapItem=^TMapItem;
TMapItem=record
Name :String[40];
Looks :word;
AniCount :byte;
Reserved :integer;
Count :integer;
DropBaseObject :TObject;
OfBaseObject :TObject;
dwCanPickUpTick :Dword;
UserItem :TUserItem;
end;
pTDoorStatus=^TDoorStatus;
TDoorStatus=record
bo01:boolean;
n04:integer;
boOpened:Boolean;
dwOpenTick:dword;
nRefCount:integer;
end;
pTDoorInfo=^TDoorInfo;
TDoorInfo=record
nX,nY:Integer;
Status:pTDoorStatus;
n08:integer;
end;
pTMapFlag=^TMapFlag;
TMapFlag=record
boSAFE:Boolean;
nL:integer;
nNEEDSETONFlag:integer;
nNeedONOFF:integer;
nMUSICID:integer;
boDarkness:boolean;
boDayLight:boolean;
boFightZone:boolean;
boFight3Zone:boolean;
boQUIZ:boolean;
boNORECONNECT:boolean;
sNoReConnectMap:string;
boMUSIC:boolean;
boEXPRATE:boolean;
nEXPRATE:integer;
boPKWINLEVEL:boolean;
nPKWINLEVEL:integer;
boPKWINEXP:boolean;
nPKWINEXP:integer;
boPKLOSTLEVEL:boolean;
nPKLOSTLEVEL:integer;
boPKLOSTEXP:boolean;
nPKLOSTEXP:integer;
boDECHP:boolean;
nDECHPPOINT:integer;
nDECHPTIME:integer;
boINCHP:boolean;
nINCHPPOINT:integer;
nINCHPTIME:integer;
boDECGAMEGOLD:boolean;
nDECGAMEGOLD:integer;
nDECGAMEGOLDTIME:integer;
boDECGAMEPOINT:boolean;
nDECGAMEPOINT:integer;
nDECGAMEPOINTTIME:integer;
boINCGAMEGOLD:boolean;
nINCGAMEGOLD:integer;
nINCGAMEGOLDTIME:integer;
boINCGAMEPOINT:boolean;
nINCGAMEPOINT:integer;
nINCGAMEPOINTTIME:integer;
boRUNHUMAN:boolean;
boRUNMON:boolean;
boNEEDHOLE:boolean;
boNORECALL:boolean;
boNOGUILDRECALL:boolean;
boNODEARRECALL:boolean;
boNOMASTERRECALL:boolean;
boNORANDOMMOVE:boolean;
boNODRUG:boolean;
boMINE:boolean;
boMINE2:boolean;
boNOPOSITIONMOVE:boolean;
boNODROPITEM:boolean;
boNOTHROWITEM:boolean;
boNOHORSE:Boolean;
boNOCHAT:Boolean;
end;
TAddAbility=record //Damian
wHP,wMP:Word;
wHitPoint,wSpeedPoint:Word;
wAC,wMAC,wDC,wMC,wSC:DWord;
wAntiPoison,wPoisonRecover,
wHealthRecover,wSpellRecover:Word;
wAntiMagic:Word;
btLuck,btUnLuck:Byte;
btWeaponStrong:BYTE;
nHitSpeed:Word;
btUndead:Byte;
Weight,WearWeight,HandWeight:Word;
end;
TMsgColor=(c_Red,c_Green,c_Blue,c_White);
TMsgType=(t_System,t_Notice,t_Hint,t_Say,t_Castle,t_Cust,t_GM,t_Mon);
pTProcessMessage=^TProcessMessage;
TProcessMessage=record
wIdent:word;
wParam:word;
nParam1:integer;
nParam2:integer;
nParam3:integer;
dwDeliveryTime:dword;
BaseObject:TObject;
boLateDelivery:Boolean;
sMsg:String;
end;
pTSessInfo=^TSessInfo;
TSessInfo=record
nSessionID :Integer;
sAccount :String[10];
sIPaddr :String;
nPayMent :integer;
nPayMode :integer;
nSessionStatus :integer;
dwStartTick :dword;
dwActiveTick :dword;
nRefCount :integer;
nSocket :integer;
nGateIdx :integer;
nGSocketIdx :integer;
dwNewUserTick :dword;
nSoftVersionDate :integer;
end;
TScriptQuestInfo=record
wFlag:word;
btValue:byte;
nRandRage:integer;
end;
TQuestInfo=array of TScriptQuestInfo;
pTScript=^TScript;
TScript=record
boQuest:boolean;
QuestInfo:TQuestInfo;
RecordList:TList;
nQuest:Integer;
end;
pTGameCmd=^TGameCmd;
TGameCmd=record
sCmd :String;
nPerMissionMin :integer;
nPerMissionMax :integer;
end;
pTLoadDBInfo=^TLoadDBInfo;
TLoadDBInfo=record
nGateIdx:integer;
nSocket:integer;
sAccount:String[10];
sCharName:String[20];
nSessionID:integer;
sIPaddr:String[15];
nSoftVersionDate:integer;
nPayMent:integer;
nPayMode:integer;
nGSocketIdx:integer;
dwNewUserTick:dword;
PlayObject:TObject;
nReLoadCount:Integer;
end;
pTGoldChangeInfo=^TGoldChangeInfo;
TGoldChangeInfo=record
sGameMasterName:string;
sGetGoldUser:String;
nGold:integer;
end;
pTSaveRcd=^TSaveRcd;
TSaveRcd=record
sAccount:String[16];
sChrName:String[20];
nSessionID:integer;
PlayObject:TObject;
HumanRcd:THumDataInfo;
nReTryCount:integer;
end;
pTMonGenInfo=^TMonGenInfo;
TMonGenInfo=record
sMapName:String;
nX,nY:Integer;
sMonName:String;
nRange:Integer;
nCount:Integer;
dwZenTime:dword;
nMissionGenRate:integer;
CertList:TList;
Envir:TObject;
nRace:integer;
dwStartTick:dword;
end;
pTMonInfo=^TMonInfo;
TMonInfo=record
ItemList:TList;
sName:String;
btRace:Byte;
btRaceImg:byte;
wAppr:word;
wLevel:word;
btLifeAttrib:byte;
wCoolEye:word;
dwExp:dword;
wHP,wMP:word;
wAC,wMAC,wDC,wMaxDC,wMC,wSC:Word;
wSpeed,wHitPoint,wWalkSpeed,wWalkStep,wWalkWait,wAttackSpeed:Word;
wAntiPush:Word;
boAggro,boTame:Boolean;
end;
pTMonItem=^TMonItem;
TMonItem=record
MaxPoint:integer;
SelPoint:integer;
ItemName:String[14];
Count:integer;
end;
pTUnbindInfo=^TUnbindInfo;
TUnbindInfo=record
nUnbindCode :Integer;
sItemName :String[14];
end;
TSlaveInfo=record
sSlaveName:String;
btSlaveLevel:byte;
dwRoyaltySec:dword;
nKillCount:integer;
btSlaveExpLevel:byte;
nHP,nMP:integer;
end;
pTSlaveInfo=^TSlaveInfo;
pTSwitchDataInfo=^TSwitchDataInfo;
TSwitchDataInfo=record
sMap:String;
wX,wY:word;
Abil:TAbility;
sChrName:String;
nCode:integer;
boC70:boolean;
boBanShout:boolean;
boHearWhisper:boolean;
boBanGuildChat:boolean;
boAdminMode:boolean;
boObMode:boolean;
BlockWhisperArr:array of string;
SlaveArr:array of TSlaveInfo;
StatusValue:Array [0..5] of word;
StatusTimeOut:array [0..5] of LongWord;
end;
TIPaddr=record
sIpaddr:String;
dIPaddr:String;
end;
pTGateInfo=^TGateInfo;
TGateInfo=record
boUsed:Boolean;
Socket:TCustomWinSocket;
sAddr :String;
nPort :integer;
n520 :integer;
UserList :TList;
nUserCount :Integer;
Buffer:Pchar;
nBuffLen:integer;
BufferList:TList;
boSendKeepAlive:Boolean;
nSendChecked:integer;
nSendBlockCount:integer;
dwStartTime:dword;
nSendMsgCount:integer;
nSendRemainCount:integer;
dwSendTick:Dword;
nSendMsgBytes:integer;
nSendBytesCount:integer;
nSendedMsgCount:integer;
nSendCount:integer;
dwSendCheckTick:dword;
end;
pTGateUserInfo=^TGateUserInfo;
TGateUserInfo=record
PlayObject:TObject;
nSessionID:integer;
sAccount:String[10];
nGSocketIdx:integer;
sIPaddr:string[15];
boCertification:boolean;
sCharName:String[20];
nClientVersion:integer;
SessInfo:pTSessInfo;
nSocket:integer;
FrontEngine:TObject;
UserEngine:TObject;
dwNewUserTick:Dword;
end;
TClassProc=procedure(Sender:TObject);
TCheckVersion=class
end;
TGameDataLog=function (p:Pchar;len:integer):Boolean;
TMainMessageProc=procedure (Msg:PChar;nMsgLen:Integer;nMode:Integer);stdcall;
TFindProcTableProc=function (ProcName:PChar;nNameLen:Integer):Pointer;stdcall;
TSetProcTableProc=function(ProcAddr:Pointer;ProcName:PChar;nNameLen:Integer):Boolean;stdcall;
TFindObj=function(ObjName:PChar;nNameLen:Integer):TObject;stdcall;
TPlugInit=function (hnd:THandle;p:TMainMessageProc;p2:TFindProcTableProc;p3:TSetProcTableProc;p4:TFindOBj):Pchar;
TDeCryptString=Procedure (src:Pointer;dest:pointer;srcLen:integer;var destLen:Integer);
TMsgProc=procedure (Msg:PChar;nMsgLen:Integer;nMode:Integer);stdcall;
TFindProc=function(sProcName:Pchar;len:Integer):Pointer;
TSetProc=function (ProcAddr:Pointer;ProcName:PChar;len:integer):Boolean;
TSpitMap=array [0..7] of array[0..4,0..4] of integer;
TLevelNeedExp=Array[1..500] of dword;
TClientConf=record
boClientCanSet :boolean;
boRunHuman :boolean;
boRunMon :boolean;
boRunNpc :boolean;
boWarRunAll :boolean;
btDieColor :byte;
wSpellTime :word;
wHitIime :word;
wItemFlashTime :word;
btItemSpeed :byte;
boCanStartRun :boolean;
boParalyCanRun :boolean;
boParalyCanWalk :boolean;
boParalyCanHit :boolean;
boParalyCanSpell :boolean;
boShowRedHPLable :boolean;
boShowHPNumber :boolean;
boShowJobLevel :boolean;
boDuraAlert :boolean;
boMagicLock :boolean;
boAutoPuckUpItem :boolean;
end;
TRecallMigic=record
nHumLevel:integer;
sMonName:String;
nCount:integer;
nLevel:integer;
end;
pTM2Config=^TM2Config;
pTThreadInfo=^TThreadInfo;
TThreadInfo=Record
dwRunTick :dword;
boTerminaled :boolean;
nRunTime :integer;
nMaxRunTime :integer;
boActived :boolean;
nRunFlag :integer;
Config :pTM2Config;
hThreadHandle :THandle;
dwThreadID :dword;
end;
TGlobaDyMval=Array of word;
TM2Config=record
nConfigSize :integer;
sServerName :String;
sServerIPaddr :String;
sWebSite :String;
sBbsSite :String;
sClientDownload :String;
sQQ :String;
sPhone :String;
sBankAccount0 :String;
sBankAccount1 :String;
sBankAccount2 :String;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -