?? common.pas
字號:
unit Common; interfaceuses//Windows, Forms, Classes, SysUtils, ScktComp; Windows, StdCtrls, MMSystem, Classes, SysUtils, ScktComp, List32,tlhelp32;//==============================================================================// word宆嵗昗峔憿懱(TPoint偼cardinal宆嵗昗)type rPoint = record X :word; Y :word;end;//------------------------------------------------------------------------------// 僸乕僾峔憿懱(宱楬扵嶕梡)type rHeap = record cost1 :word; cost2 :word; x :word; y :word; mx :word; my :word; dir :byte; path :array[0..255] of byte; pcnt :byte;end;//------------------------------------------------------------------------------// 宱楬扵嶕梡儅僢僾僨乕僞type rSearchMap = record cost :word; path :array[0..255] of byte; pcnt :byte; addr :byte;end;//------------------------------------------------------------------------------// 傾僀僥儉僨乕僞儀乕僗type TItemDB = class ID :word; Name :string; JName :string; IType :byte; IEquip :boolean; Price :cardinal; Sell :cardinal; Weight :word; ATK :word; MATK :word; DEF :word; MDEF :word; Range :byte; Slot :byte; Param :array[0..5] of shortint; HIT :smallint; FLEE :smallint; Crit :byte; Avoid :byte; Cast :cardinal; Job :Int64; Gender :byte; Loc :word; wLV :byte; eLV :byte; View :byte; Element :byte; Effect :byte; HP1 :word; HP2 :word; SP1 :word; SP2 :word; //Rare :boolean; //Box :byte;{曄峏} DamageFixR :array[0..9] of Word; //庬懓 DamageFixE :array[0..9] of Word; //懏惈 DamageFixS :array[0..2] of Word; //僒僀僘 SFixPer1 :array[0..5] of Word; //忬懺侾 SFixPer2 :array[0..4] of Word; //忬懺俀 DrainFix :array[0..1] of Word; //媧廂検 DrainPer :array[0..1] of Word; //媧廂妋棪 AddSkill :array[0..330] of Word; //僗僉儖捛壛 SplashAttack :boolean; //僗僾儔僢僔儏 NoJamstone :boolean;{曄峏僐僐傑偱}end;//------------------------------------------------------------------------------// 傾僀僥儉僨乕僞type TItem = class ID :word; Amount :word; Equip :word; Identify :byte; Refine :byte; Attr :byte; Card :array[0..3] of word; Data :TItemDB;end;//------------------------------------------------------------------------------{捛壛}type TItemList = class Zeny :Cardinal; Item :Array[0..100] of TItem; Weight :Cardinal; MaxWeight :Cardinal; Count :Word; constructor Create; destructor Destroy; override;end;{捛壛僐僐傑偱}//------------------------------------------------------------------------------{傾僀僥儉惢憿捛壛}// 惢憿僨乕僞type TMaterialDB = class ID :word;//惢憿傾僀僥儉偺ID ItemLV :word;//惢憿偵昁梫側僗僉儖儗儀儖(嬥捚偲偺懳墳丄儕僗僩昞帵偍傛傃惉岟棪寁嶼偱巊梡) RequireSkill :word;//惢憿偵昁梫偲偝傟傞僗僉儖(嬥捚偲偺懳墳丄儕僗僩昞帵偍傛傃惉岟棪寁嶼偱巊梡) MaterialID :array[0..2] of word;//惢憿偵昁梫側慺嵽偺ID MaterialAmount :array[0..2] of word;//惢憿偵昁梫側慺嵽偺屄悢end;{傾僀僥儉惢憿捛壛僐僐傑偱}//------------------------------------------------------------------------------// 儌儞僗僞乕僪儘僢僾傾僀僥儉峔憿懱type rDropItem = record ID :word; Per :cardinal; Data :TItemDB; Stolen:cardinal;end;//------------------------------------------------------------------------------// 儌儞僗僞乕僨乕僞儀乕僗//ID,Name,JName,LV,HP,EXP,JEXP,Range,ATK1,ATK2,DEF1,DEF2,MDEF1,MDEF2,HIT,FLEE,//Scale,Race,Ele,Mode,Speed,ADelay,aMotion,dMotion,Drop1id,Drop1per,Drop2id,//Drop2per,Drop3id,Drop3per,Drop4id,Drop4per,Drop5id,Drop5per,Drop6id,Drop6per,//Drop7id,Drop7per,Drop8id,Drop8per,MEXP,MVP1id,MVP1per,MVP2id,MVP2per,MVP3id,MVP3pertype TMobDB = class //edited by The Harbinger -- darkWeiss version ID :word; Name :string; JName :string; LV :byte; HP :cardinal; SP :cardinal; //New EXP :cardinal; JEXP :cardinal; Range1 :byte; ATK1 :word; ATK2 :word; DEF :byte; //New MDEF :byte; //New LUK :byte; //僋儕曗惓梡LUK HIT :integer; FLEE :integer; Param :array[0..5] of byte; //New Range2 :byte; //峌寕奐巒帇奅 Range3 :byte; //捛旜帇奅 Scale :byte; Race :byte; Element :byte; Mode :byte; Speed :word; ADelay :word; aMotion :word; dMotion :word; Drop :array[0..7] of rDropItem; Item1 :word; //New Item2 :word; //New MEXP :cardinal; MEXPPer :word; MVPItem :array[0..2] of rDropItem; isDontMove :boolean; //Mode & 1 : 堏摦 isActive :boolean; //Mode & 4 : 傾僋僥傿僽{捛壛} isLoot :boolean; //Mode & 2 : 儖乕僩 isLink :boolean; //Mode & 8 : 儕儞僋{捛壛僐僐傑偱}end;//------------------------------------------------------------------------------// MNAME,SLAVE_1,SLAVE_2,SLAVE_3,SLAVE_4,SLAVE_5,TOTALNUMSLAVEStype TSlaveDB = class //added by The Harbinger -- darkWeiss version Name :string; Slaves :array[0..4] of integer; TotalSlaves :integer;end;//------------------------------------------------------------------------------// ID,ITEMLISTtype TKafra = class //added by The Harbinger -- darkWeiss version PID :Cardinal; Kafra :TItemList; constructor Create; destructor Destroy; override;end;//------------------------------------------------------------------------------// BIPtype TBan = class //added by The Harbinger -- darkWeiss version BIP :string;end;//------------------------------------------------------------------------------// ID,BROADCAST,ITEMSUMMON,MONSTERSUMMON,CHANGESTATSKILL,CHANGEOPTION,SAVERETURN,CHANGELEVEL,WARP,WHOIS,GOTOSUMMONBANISH,KILLDIEALIVE,CHANGEJOB,CHANGECOLORSTYLE,AUTORAWUNIT,REFINEtype TIDTbl = class //added by The Harbinger -- darkWeiss version ID :integer; BroadCast :integer; ItemSummon :integer; MonsterSummon :integer; ChangeStatSkill :integer; ChangeOption :integer; SaveReturn :integer; ChangeLevel :integer; Warp :integer; Whois :integer; GotoSummonBanish :integer; KillDieAlive :integer; ChangeJob :integer; ChangeColorStyle :integer; AutoRawUnit :integer; Refine :integer;end;//------------------------------------------------------------------------------// ID,Create ID,Number Createdtype TMArrowDB = class //added by The Harbinger -- darkWeiss version ID :integer; CID :array[0..2] of integer; CNum :array[0..2] of integer;end;//------------------------------------------------------------------------------// 宱尡抣攝暘梡僇僂儞僞type rEXPDist = record CData :Pointer; Dmg :integer;end;//------------------------------------------------------------------------------// 儌儞僗僞乕僨乕僞type TMob = class //edited by The Harbinger -- darkWeiss version ID :cardinal; Name :string; JID :word; Map :string; Point :TPoint; tgtPoint :TPoint; NextPoint :TPoint; Dir :byte; Point1 :TPoint; Point2 :TPoint; Speed :word; Stat1 :Byte; //忬懺侾 Stat2 :Byte; //忬懺俀 nStat :Cardinal; BodyTick :Cardinal; //曄壔Tick1 HealthTick :Array[0..4] of Cardinal; //曄壔Tick2 EffectTick :Array[0..11] of Cardinal; //旐僗僉儖Tick isLooting :boolean; Item :array[1..10] of TItem; HP :integer; SpawnDelay1 :cardinal; SpawnDelay2 :cardinal; SpawnTick :cardinal; SpawnType :cardinal; ATick :cardinal; NextFlag :boolean; MoveTick :cardinal; MoveWait :cardinal; DmgTick :cardinal; //僲僢僋僶僢僋 ppos :integer; pcnt :integer; path :array[0..999] of byte; //僉儍儔偺宱楬(岦偒偱婰榐偝傟偰傑偡) AMode :byte; ATarget :cardinal; AData :Pointer; ARangeFlag :boolean; MMode :byte; ATKPer :word; //僾儘儃僢僋側偳偵傛傞峌寕椡曗惓 DEFPer :word; //僾儘儃僢僋側偳偵傛傞杊屼椡曗惓 EXPDist :array[0..31] of rEXPDist; //宱尡抣攝暘梡僇僂儞僞 MVPDist :array[0..31] of rEXPDist; //MVP敾掕梡僇僂儞僞 Slaves :Array[1..12] of Cardinal; Data :TMobDB;{捛壛} Element :Byte; DEF1 :Byte; DEF2 :Byte; MDEF1 :Byte; MDEF2 :Byte; SlaveCount :Byte; Stolen :Cardinal; isSummon :Boolean; isLeader :boolean; isEmperium :boolean; isGuardian :Cardinal; isSlave :boolean; isActive :boolean; //Mode & 4 : 傾僋僥傿僽 LeaderID :Cardinal; EmperiumID :Cardinal; GID :Cardinal; NPCID :Cardinal; //庢傝姫偒梡{NPC僀儀儞僩捛壛} Event :cardinal;{NPC僀儀儞僩捛壛僐僐傑偱} constructor Create; destructor Destroy; override;{捛壛僐僐傑偱}end;//------------------------------------------------------------------------------{僉儏乕儁僢僩}// 儁僢僩僨乕僞儀乕僗type TPetDB = class MobID :word; // 儁僢僩儌儞僗僞乕偺ID ItemID :word; // 曔妉傾僀僥儉偺ID EggID :word; // 棏偺傾僀僥儉ID AcceID :word; // 傾僋僙僒儕偺傾僀僥儉ID FoodID :word; // 僄僒偺傾僀僥儉ID Fullness :word; // 塧傗傝偵傛傞枮暊搙忋徃 HungryDelay :word; // 枮暊搙尭彮帪娫(msec/-1) Hungry :word; // 嬻暊帪塧傗傝偵傛傞恊枾搙忋徃 Full :word; // 枮暊帪塧傗傝偵傛傞恊枾搙尭彮 Reserved :word; // ??? 帪偺恊枾搙忋徃 Die :word; // 巰朣帪恊枾搙尭彮 Capture :word; // 婎杮曔妉棪(0.1%扨埵)end;// 儁僢僩僨乕僞type TPet = class PlayerID :cardinal; CharaID :cardinal; Cart :byte; Index :word; Incubated :byte; PetID :cardinal; JID :word; Name :string; Renamed :byte; LV :word; Relation :integer; Fullness :integer; Accessory :word; Data :TPetDB;end;{僉儏乕儁僢僩偙偙傑偱}//------------------------------------------------------------------------------// 僗僉儖僨乕僞儀乕僗//N,ID,JName,Type,MLV,SP1,2,3,4,5,6,7,8,9,10,HP,Cast,Lv+,AR,Ele,//Dat1,2,3,4,5,6,7,8,9,10,Dat2,2,3,4,5,6,7,8,9,10,Req1,LV,Req2,LV,Req3,LVtype TSkillDB = class ID :word; IDC :string; Name :string; SType :byte; MasterLV :byte; SP :array[1..10] of word; HP :word; UseItem :word; //徚旓傾僀僥儉 715=僣僨儘乕,716=儗僢僪,717=僽儖乕,懠ItemID偺捠傝 CastTime1 :integer; //Base CastTime2 :integer; //Lv偛偲偺+ CastTime3 :integer; //CastTime壓尷抣 Range :byte; Element :byte; Data1 :array[1..10] of integer; Data2 :array[1..10] of integer; Range2 :byte; Icon :word; Job :array[0..23] of boolean; ReqSkill1 :array[0..9] of word; ReqLV1 :array[0..9] of word; ReqSkill2 :array[0..9] of word; ReqLV2 :array[0..9] of word;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -