⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 grobal2.pas

📁 传世源码可编译的,功能齐全.是学习的好模版,会DELPHI的朋友们也可以自己修改,弄个自己的引擎.
💻 PAS
📖 第 1 页 / 共 5 页
字号:
  end;
  pTGateUserInfo=^TGateUserInfo;

  TMapItem = record
    Name      :String[15];
    Looks     :Word;
    AniCount  :Byte;
    Reserved  :Byte;
    Count     :Integer;
    UserItem  :TUserItem;
    OfBaseObject:TObject;
    dwCanPickUpTick:LongWord;
    DropBaseObject:TObject;
  end;
  PTMapItem = ^TMapItem;

  TVisibleBaseObject=record
    BaseObject:TObject;
    nVisibleFlag    :integer;
    MapItem:   PTMapItem  ;
    nX:integer;
    nY:integer;
    sName:string[15];
    wLooks:integer;
  end;
  pTVisibleBaseObject=^TVisibleBaseObject ;

  TVisibleMapItem=record
    nVisibleFlag    :integer;
    MapItem:   PTMapItem  ;
    nX:integer;
    nY:integer;
    sName:string[15];
    wLooks:integer;
  end;
  pTVisibleMapItem=^TVisibleMapItem ;

  TSwitchDataInfo=record
    sMap            :string[17];
    wX              :integer;
    wY              :integer;
    Abil            :TAbility;
    sChrName        :string[14];
    nCode           :integer;
    boC70           :boolean;
    boBanShout      :boolean;
    boHearWhisper   :boolean;
    boBanGuildChat  :boolean;
    boAdminMode     :boolean;
    boObMode        :boolean;
    BlockWhisperArr :array[0..4] of string;
    SlaveArr        :array[0..5] of TSlaveInfo;
    StatusValue     :array[0..8] of word;                  //     xjs    0..6
    StatusTimeOut   :array[0..8] of LongWord;         //     xjs     0..6
  end;
  pTSwitchDataInfo=^TSwitchDataInfo ;

  TRecordHeader=Packed record       // 28
    boDeleted:boolean;      //  1
    btCount:byte;            // 1
    nSelectID:word;          // 2
    dCreateDate:TDateTime ;   //8
    sname:string[15];           //28
  end;

  TLoadHuman = record
    sAccount        :String[12];
    sChrName        :String[14];
    sUserAddr       :String[15];
    nSessionID      :Integer;
  end;

  THumItems= array[0..8] of TUserItem;           //hint
  pTHumItems=^THumItems;
  THumanUseItems=array[0..12] of TUserItem;
  TBagItems =  array[0..65] of TUserItem;       //45
  pTBagItems=^TBagItems ;
  TStorageItems=array[0..38]of TUserItem;       //38 5    43
  pTStorageItems=^TStorageItems ;
  TmonStorageItems=array[0..19]of TUserItem;   //38 5    43
  pTmonStorageItems=^TStorageItems ;
  THumMagic=array[0..39]of THmagic; //0..19
  pTHumMagic=^THumMagic ;
  THumAddItems=array[9..12]of TUserItem;
  pTHumAddItems=^THumAddItems  ;

  THumanRcd = record
    sUserID      :String[10];
    sChrName     :String[14];
    btLevel      :Byte;
    btHair       :Byte;
    btsex        :Byte;
    btJob        :Byte;
    Abil         :TOAbility;
    sMapName     :String[15];
    btAttackMode :Byte;
    btIsAdmin    :Byte;
    nX           :Integer;
    nY           :Integer;
    nGold        :Integer;
    dwExp        :LongWord;
    boSelected   :boolean;
    sCurMap      :string[15];
    HumItems     :THumItems;
    BagItems     :TBagItems   ;
    Magic        :THumMagic ;
    StorageItems :TStorageItems ;
    HumAddItems  :THumAddItems  ;
    BonusAbil    :TNakedAbility  ;
  end;
  pTHumanRcd = ^THumanRcd;

  THmrcd=packed record       //487     //没有使用,调试用
    sChrName  :String[14];
    sCurMap :string[16];    //16
    wCurX:word;             //2
    wCurY:word;            //2
    btDir    :byte;          //1
    btHair       :Byte;       //1
    btsex   :Byte;            //1
    btJob      :Byte;        //1
    nGold:integer;             //4
    Abil:      TOAbility;       //40
    nPKPoint:integer;         //4
    sDearName:string[19];     //20
    sHomeMap:string[17];    // 16
    wHomeX:word;            // 2
    wHomeY:word;             //  2
    btCreditPoint:integer;   //4
    btReLevel:integer;       //4
    sMasterName:string[20]  ;  //20
    sStoragePwd:string[42];     //15
    nGamePoint:integer;           //4
    boMaster: boolean;            //1
    btMarryCount:integer;          //4
    nGameGold:integer;              //4
    nPayMentPoint:integer;            //4
    wContribution:integer;            //4
    nBonusPoint:integer;              //4
    sAccount    :String[10];    //221   97
    unkon:array[0..217] of byte;   //  245
    HumItems:THumItems;//THumItems;            身上装备
    BagItems : TBagItems   ;                   //
    Magic  :THumMagic ;
    StorageItems  : TStorageItems ;
    unkown1:array[0..147] of byte;
    BonusAbil     : TNakedAbility  ;       //20
  end;

  THumData=Packed record
    sChrName  :String[14];
    sCurMap :string[16];    //16
    wCurX:word;             //2
    wCurY:word;            //2
    btDir    :byte;          //1
    btHair       :Byte;       //1
    btsex   :Byte;            //1
    btJob      :Byte;        //1
    nGold:integer;             //4
    Abil:      TOAbility;       //40
    nGameGold:integer;          //4
    sDearName:string[19];     //20
    sHomeMap:string[17];    // 16
    wHomeX:word;            // 2
    wHomeY:word;             //  2
    knownword:word;
    btCreditPoint:integer;   //4   声望值
    btReLevel:integer;       //4
    sMasterName:string[20]  ;  //20
    sStoragePwd:string[42];     //15
    nGamePoint:integer;           //4
    nBonusPoint:integer;              //1
    nPayMentPoint:integer;           //4
    nPKPoint:integer;
    wContribution:integer;            //4
    btMarryCount:word;        //4
    boMaster: boolean;
    sAccount    :String[10];    //221   97
    wStatusTimeArr: Tstatustime;     //96; 48     //传世人物状态>12
    btAllowGroup    :byte;
    btF9            : byte;
    btAttatckMode       :byte;
    btIncHealth       :byte;
    btIncSpell          :byte;
    btIncHealing        :byte;
    btFightZoneDieCount  :byte;
    btEE                  :byte;
    boLockLogon           :boolean;
    btEF                   :byte;
    nHungerStatus         :integer;
    boAllowGuildReCall    :boolean;
    wGroupRcallTime       :word;
    dBodyLuck             :Double;     //8
    boAllowGroupReCall    :boolean;       //26              74
    QuestUnitOpen        : TQuestUnit;       //100
    QuestUnit               :TQuestUnit;    //0x11C   //100
    QuestFlag               :TQuestFlag;
    m_bMaxBagitem :byte;           // 最大包裹容量
    m_sSytleName              :string[80]; //人物个性化签名

    HumItems:THumItems;        //    身上装备
    BagItems : TBagItems;
    Magic  :THumMagic ;
    StorageItems  : TStorageItems ;
    monStorageItems: TmonStorageItems;

    SpecialItemPoint:integer;       //极品修炼值
    sYsname:string[14];

    sYsnameMaster:string[14];
    nyssex:byte;
    nysjob:byte;
    wyslevel:word;
    m_nJpPoint   :Integer;
    m_YSPoint    :Integer;
    M_YSfenghao:integer;
    unkown1:array[0..950] of byte;  //  962 -8
    BonusAbil     : TNakedAbility  ;       //20
    HumAddItems   : THumAddItems  ;
  end;
  pTHumData=^THumData;

  THumInfo=Packed record                    //72
    Header:TRecordHeader;            //28
    sChrName:string[14];             //14
    sAccount:string[10];             // 11
    boDeleted:boolean;                   //   1
    boSelected:boolean;      //               1
    btCount:byte;                    //操作记数       1
    UpdateDate:TDateTime;   //20      //         8
    dModDate: TDateTime;            //          8
  end;

  THumDataInfo =Packed record            //   3164
    Header:TRecordHeader;
    data:THumData ;
  end;

  TSaveRcd=record
    sAccount: string[14];
    sChrName: string[14];
    nSessionID:integer;
    PlayObject: TObject;//tPlayObject;
    HumanRcd:  THumDataInfo;
    nCode:integer;
    nReTryCount:integer;
    boNewYs:boolean;
  end;
  pTSaveRcd=^TSaveRcd ;

  TLoadUser=record
    nSessionID        :integer;
    nSocket           :integer;
    nGateIdx          :integer;
    nGSocketIdx       :integer;
    sAccount          :string[12];
    sIPaddr           :string[15];
    nPayMent          :integer;
    nPayMode          :integer;
    dwNewUserTick     :LongWord;
    nSoftVersionDate  :integer;
  end;

  TUserOpenInfo=record
    sChrName:string[14];
    LoadUser:  TLoadDBInfo;
    HumanRcd : THumDataInfo;
  end;
  pTUserOpenInfo=^TUserOpenInfo;

  TSendMessage =record
    wIdent          :word;
    wParam          :word;
    nParam1         :integer;
    nParam2         :integer;
    nParam3         :integer;
    dwDeliveryTime  :LongWord;
    BaseObject      :TObject;
    boLateDelivery  :boolean;
    Buff :pchar;
  end;
  pTSendMessage =^TSendMessage;

  TObjectFeature = record
    btGender    :Byte;
    btWear      :Byte;
    btHair      :Byte;
    btWeapon    :Byte;
  end;
  pTObjectFeature = ^TObjectFeature;

  TGateObj=record
    DEnvir: TObject;
    nDMapx : integer;
    nDMapY  : integer;
    boFlag :boolean;
  end;
  pTGateObj=^TGateObj ;

  TStatusInfo = record
    nStatus      :Integer;  //0x60
    dwStatusTime :LongWord; //0x1E8
    sm218        :SmallInt;  //0x218
    dwTime220    :LongWord; //0x220
  end;

  TMsgHeader =packed record                         //$14 ok
    dwCode         :LongWord;//4
    nSocket        :integer; //4
    wGateIndex     :Word;    //2
    wIdent         :Word ;    //2
    nUserListIndex :integer; //0x0C      4
    nLength        :integer; //0x10      4
  end;
  pTMsgHeader = ^TMsgHeader;

  TUserEntryInfo =record
    LoginId      :String[10];
    Password     :String[10];
    UserName     :String[20];
    SSNo         :String[14];
    Phone        :String[14];
    Quiz         :String[20];
    Answer       :String[12];
    EMail        :String[40];
  end;

  TUserEntryAddInfo =record
    Quiz2        :String[20];
    Answer2      :String[12];
    BirthDay     :String[10];
    MobilePhone  :String[13];
  end;

  TUserEntry  = packed record
    sAccount      :String[10];
    SPassword     :String[10];
    SUserName     :String[20];
    SSSNo         :String[19];  //hint 14
    SPhone        :String[14];
    SQuiz         :String[20];
    SAnswer       :String[20];  //hint  12
    SEMail        :String[40];
  end;

  TUserEntryAdd =Packed record
    SQuiz2        :String[20];
    SAnswer2      :String[20];    //hint 12
    SBirthDay     :String[10];
    SMobilePhone  :String[13];
    sMemo:         String[20];
    sMemo2:        String[20];
  end;

  TNameHeander=Packed record
    sName:string[14];
    nSelectID:integer;
    UpdateDate:tdatetime;
  end;

  TAcDBInfo=packed Record
    boDeleted:boolean;
    btCount:byte;
    nSelectID:word;
    CreateDate:TDateTime ;
    UpdateDate:TDateTime; //20
    sAccount:string[11];
  end;

  TAccountDBRecord= packed Record
    Header:TAcDBInfo;     //  32
    UserEntry:TUserEntry;
    UserEntryAdd:TUserEntryAdd;
    nErrorCount:integer;
    dwActionTick:dword;           //   32+14   -8
    unknow:string[38];
  end;

  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[12];
    sIPaddr     :String[15];
    nSessionID  :Integer;
    n24         :Integer;
    bo28        :Boolean;
    dwAddTick   :LongWord;
    dAddDate    :TDateTime;
    boLoadRcd:BOOLEAN;
    boStartPlay:BOOLEAN;
  end;
  pTGlobaSessionInfo = ^TGlobaSessionInfo;

  TSELLITEMFLAG=packed record
    w1:word;
    sellend:byte;  //结束=255 开始=0
    bflag:byte;    //有旗帜=1 没有=0
    flagcolor:integer;
    w3:word;
    SellName:array[0..51] of char;
  end;

  TMYSELLITEMFLAG=packed record
    w1:word;
    sellend:byte;  //结束=255 开始=0
    bflag:byte;    //有旗帜=1 没有=0
    

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -