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

📄 grobal2.pas

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

  SM_SYSMESSAGE         = 100;
  SM_GROUPMESSAGE       = 101;
  SM_CRY                = 102;
  SM_WHISPER            = 103;
  SM_GUILDMESSAGE       = 104;

  SM_SPYMOVE            = 170;                                  //加密 170
  SM_SELLITEM           = 64672;                                //加密 64672

  SM_ADDITEM            = 200;
  SM_BAGITEMS           = 201;                                  //加密 201
  SM_DELITEM            = 202;
  SM_UPDATEITEM         = 203;
  SM_204                = 204;   //未知
  SM_ONHORSE            = 205;     //是否在马背上 dwflag=0  wcmd=205 w1=0 w2=0 w3=0 data=    dwflag=1 表示在马上

  SM_ADDMAGIC           = 210;                                  //加密 210
  SM_SENDMYMAGIC        = 211;                                  //加密 211
  SM_DELMAGIC           = 212;

  SM_CERTIFICATION_SUCCESS =500;
  SM_CERTIFICATION_FAIL = 501;
  SM_ID_NOTFOUND        = 502;
  SM_PASSWD_FAIL        = 503;
  SM_NEWID_SUCCESS      = 504;
  SM_NEWID_FAIL         = 505;
  SM_CHGPASSWD_SUCCESS  = 506;
  SM_CHGPASSWD_FAIL     = 507;
  SM_GETBACKPASSWD_SUCCESS=508;
  SM_GETBACKPASSWD_FAIL=509;

  SM_510                =510;
  SM_QUERYCHR           = 520;
  SM_NEWCHR_SUCCESS     = 521;
  SM_NEWCHR_FAIL        = 522;
  SM_DELCHR_SUCCESS     = 523;
  SM_DELCHR_FAIL        = 524;
  SM_STARTPLAY          = 525;
  SM_STARTFAIL          = 526;//SM_USERFULL
  SM_QUERYCHR_FAIL      = 527;
  SM_OUTOFCONNECTION    = 528;  
  SM_PASSOK_SELECTSERVER= 529;
  SM_SELECTSERVER_OK    = 530;
  SM_NEEDUPDATE_ACCOUNT = 531;
  SM_UPDATEID_SUCCESS   = 532;
  SM_UPDATEID_FAIL      = 533;
  SM_QUERYDELCHR        = 534;
  SM_QUERYDELCHR_FAIL   = 535;

  SM_DROPITEM_SUCCESS   = 600;
  SM_DROPITEM_FAIL      = 601;

  SM_ITEMSHOW           = 610;
  SM_ITEMHIDE           = 611;

  SM_OPENDOOR_OK        = 612;
  SM_OPENDOOR_LOCK      = 613;
  SM_CLOSEDOOR          = 614;
  SM_TAKEON_OK          = 615;
  SM_TAKEON_FAIL        = 616;
  SM_TAKEOFF_OK         = 619;
  SM_TAKEOFF_FAIL       = 620;
  SM_SENDUSEITEMS       = 621;
  SM_WEIGHTCHANGED      = 622;

  SM_MAKESTONE          = 624;

  SM_CLEAROBJECTS       = 633;
  SM_CHANGEMAP          = 634;
  SM_EAT_OK             = 635;
  SM_EAT_FAIL           = 636;
  SM_BUTCH              = 637;
  SM_MAGICFIRE          = 638;
  SM_MAGICFIRE_FAIL     = 639;
  SM_MAGIC_LVEXP        = 640;
  SM_DURACHANGE         = 642;
  SM_MERCHANTSAY        = 643;
  SM_MERCHANTDLGCLOSE   = 644;
  SM_SENDGOODSLIST      = 645;
  SM_SENDUSERSELL       = 646;
  SM_SENDBUYPRICE       = 647;
  SM_USERSELLITEM_OK    = 648;
  SM_USERSELLITEM_FAIL  = 649;
  SM_BUYITEM_SUCCESS    = 650;//?
  SM_BUYITEM_FAIL       = 651;//?
  SM_SENDDETAILGOODSLIST= 652;
  SM_GOLDCHANGED        = 653;
  SM_CHANGELIGHT        = 654;
  SM_LAMPCHANGEDURA     = 655;
  SM_CHANGENAMECOLOR    = 656;
  SM_CHARSTATUSCHANGED  = 657;    //hint
  SM_SENDNOTICE         = 658;
  SM_GROUPMODECHANGED   = 659;
  SM_CREATEGROUP_OK     = 660;
  SM_CREATEGROUP_FAIL   = 661;
  SM_GROUPADDMEM_OK     = 662;
  SM_GROUPDELMEM_OK     = 663;
  SM_GROUPADDMEM_FAIL   = 664;
  SM_GROUPDELMEM_FAIL   = 665;
  SM_GROUPCANCEL        = 666;
  SM_GROUPMEMBERS       = 667;
  SM_SENDUSERREPAIR     = 668;
  SM_USERREPAIRITEM_OK  = 669;
  SM_USERREPAIRITEM_FAIL= 670;
  SM_SENDREPAIRCOST     = 671;
  SM_DEALMENU           = 673;
  SM_DEALTRY_FAIL       = 674;
  SM_DEALADDITEM_OK     = 675;
  SM_DEALADDITEM_FAIL   = 676;
  SM_DEALDELITEM_OK     = 677;
  SM_DEALDELITEM_FAIL   = 678;
  SM_DEALCANCEL         = 681;
  SM_DEALREMOTEADDITEM  = 682;
  SM_DEALREMOTEDELITEM  = 683;
  SM_DEALCHGGOLD_OK     = 684;
  SM_DEALCHGGOLD_FAIL   = 685;
  SM_DEALREMOTECHGGOLD  = 686;
  SM_DEALSUCCESS        = 687;
  SM_SENDUSERSTORAGEITEM= 700;
  SM_STORAGE_OK         = 701;
  SM_STORAGE_FULL       = 702;
  SM_STORAGE_FAIL       = 703;
  SM_SAVEITEMLIST       = 704;
  SM_TAKEBACKSTORAGEITEM_OK = 705;
  SM_TAKEBACKSTORAGEITEM_FAIL = 706;
  SM_TAKEBACKSTORAGEITEM_FULLBAG = 707;

  SM_AREASTATE          = 708;
  SM_MYSTATUS           = 766;                              //加密 766

  SM_DELITEMS           = 709;
  SM_READMINIMAP_OK     = 710;
  SM_READMINIMAP_FAIL   = 711;
  SM_SENDUSERMAKEDRUGITEMLIST = 712;
  SM_MAKEDRUG_SUCCESS   = 713;
                     //  714
  SM_716 =716; //  716
  SM_MAKEDRUG_FAIL=65036;

  SM_CHANGEGUILDNAME    = 750;
  SM_SENDUSERSTATE      = 751;//
  SM_SUBABILITY         = 752;                               //加密 752
  SM_OPENGUILDDLG       = 753;//
  SM_OPENGUILDDLG_FAIL  = 754;//
  SM_SENDGUILDMEMBERLIST= 756;//
  SM_GUILDADDMEMBER_OK  = 757;//
  SM_GUILDADDMEMBER_FAIL= 758;
  SM_GUILDDELMEMBER_OK  = 759;
  SM_GUILDDELMEMBER_FAIL= 760;
  SM_GUILDRANKUPDATE_FAIL= 761;
  SM_BUILDGUILD_OK      = 762;
  SM_BUILDGUILD_FAIL    = 763;
  SM_DONATE_OK          = 764;
  SM_DONATE_FAIL        = 765;

  SM_766                = 766;            //?????????
  SM_MENU_OK            = 767;//?
  SM_GUILDMAKEALLY_OK   = 768;
  SM_GUILDMAKEALLY_FAIL = 769;
  SM_GUILDBREAKALLY_OK  = 770;//?
  SM_GUILDBREAKALLY_FAIL= 771;//?
  SM_DLGMSG             = 772;//Jacky
  SM_SPACEMOVE_HIDE     = 800;
  SM_SPACEMOVE_HIDE2    = 800;  //806
  SM_SPACEMOVE_SHOW     = 801;
  SM_SPACEMOVE_SHOW2    = 801;  //807
  
  SM_RECONNECT          = 802;//
  SM_GHOST              =  803;    
  SM_SHOWEVENT          = 804;
  SM_HIDEEVENT          = 805;

  SM_TIMECHECK_MSG      = 810;
  SM_ADJUST_BONUS       = 811; //?

  SM_OPENHEALTH         = 1100;
  SM_CLOSEHEALTH        = 1101;

  SM_BREAKWEAPON        = 1102;
  SM_INSTANCEHEALGUAGE  = 1103; //??
  SM_CHANGEFACE         = 1104;
  SM_VERSION_FAIL       = 1106;

  SM_ITEMUPDATE         = 1500;
  SM_MONSTERSAY         = 1501;
  SM_CRSHIT             = 10014;
  SM_GAMEGOLDNAME       = 59001; //? 10015                //加密 59001
  SM_SERVERCONFIG       =10016; //?

  SM_MAGADDABILTY       = 21292 ; //w1=1 金刚护体           //加密 21292
                                 // w1=2  风影盾
                                 // w1=3  1+2
                                 // w1=4  神喻
  SM_EXCHGTAKEON_OK=65023;
  SM_EXCHGTAKEON_FAIL=65024;

  SM_TEST=65037;
  SM_THROW=65069;  

  RM_DELITEMS           = 9000;//Jacky
  RM_TURN               = 10001;
  RM_WALK               = 10002;
  RM_RUN                = 10003;
 
  RM_HIT                = 10004;
  RM_HEAVYHIT          = 10005;
  RM_BIGHIT            = 10006;
  RM_SPELL              = 10007;
  RM_SPELL2             = 10008;
  RM_POWERHIT           = 10009;
  RM_MOVEFAIL           = 10010;
  RM_LONGHIT            = 10011;
  RM_WIDEHIT            = 10012;
  RM_PUSH               = 10013;
  RM_PUSHx              = 11116;
  RM_FIREHIT            = 10014;
  RM_CRSHIT            = 10018;
  RM_29                 = 29;
  RM_41               = 41;
  RM_59               = 59;
  RM_60               = 60;
  RM_47               = 47;
  RM_RUSH               = 10015;

  RM_RUSHKUNG           = 10016;
  RM_HORSERUN           = 10017;

  RM_STRUCK             = 10020;
  RM_DEATH              = 10021;
  RM_DISAPPEAR          = 10022;
  RM_MAGSTRUCK          = 10025;
  RM_MAGHEALING         = 10026;  
  RM_STRUCK_MAG         = 10027;
  RM_MAGSTRUCK_MINE     = 10028;
  RM_INSTANCEHEALGUAGE  = 10029; //jacky
  RM_HEAR               = 10030;
  RM_WHISPER            = 10031;
  RM_CRY                = 10032;
  RM_RIDE               = 10033;
  RM_WINEXP             = 10044;
  RM_USERNAME           = 10043;
  RM_LEVELUP            = 10045;
  RM_CHANGENAMECOLOR    = 10046;
  RM_MENU_OK            =10077; //?
  RM_MERCHANTDLGCLOSE   =10048; //?
  RM_SENDDELITEMLIST    =10049 ; //?

  RM_LOGON              = 10050;
  RM_ABILITY            = 10051;
  RM_HEALTHSPELLCHANGED = 10052;
  RM_DAYCHANGING        = 10053;
  RM_ALIVE              = 10055; ///?
  
  RM_SENDGOODSLIST      = 645;
  RM_SENDUSERSELL           =646;
  RM_USERMAKEDRUGITEMLIST   =712;
  RM_USERSTORAGEITEM     =700;

  RM_BUYITEM_SUCCESS     = 650;
  RM_BUYITEM_FAIL        = 651;
  RM_SENDDETAILGOODSLIST    = 652;
  RM_SENDUSERREPAIR        =668;
  RM_SENDBUYPRICE          = 647;
  RM_USERSELLITEM_OK       = 648;
  RM_USERSELLITEM_FAIL    = 649;
  RM_MAKEDRUG_SUCCESS     =2092;
  RM_MAKEDRUG_FAIL        =2093;
  RM_SENDREPAIRCOST       =2080;
  RM_SENDUSERSREPAIR    =2079 ;
  RM_USERREPAIRITEM_FAIL  =2082;
  RM_USERREPAIRITEM_OK     =2081;

  RM_ADJUST_BONUS         = 811;

  RM_BUILDGUILD_OK        = 762;
  RM_BUILDGUILD_FAIL      = 763;
  RM_DONATE_OK            =2139;
  RM_GAMEGOLDCHANGED      =2189 ;//?
  RM_SPACEMOVE_SHOW2      =2190;
  RM_MYSTATUS            =2191;
  RM_DELAYPUSHED           =2192;

//////////////////
  RM_SYSMESSAGE         = 10100;
  RM_10101              = 10101;
  RM_GROUPMESSAGE       = 10102;
  RM_SYSMESSAGE2        = 10103;
  RM_GUILDMESSAGE       = 10104;
  RM_SYSMESSAGE3        = 10105; //Jacky
  RM_ITEMSHOW           = 10110;
  RM_ITEMHIDE           = 10111;
  RM_DOOROPEN           = 10112;
  RM_DOORCLOSE          = 10113;
  RM_SENDUSEITEMS       = 10114;
  RM_WEIGHTCHANGED      = 10115;
  RM_FEATURECHANGED     = 10116;
  RM_CLEAROBJECTS       = 10117;
  RM_CHANGEMAP          = 10118;
  RM_BUTCH              = 10119;
  RM_MAGICFIRE          = 10120;
  RM_MAGICFIREFAIL      = 10121;
  RM_SENDMYMAGIC        = 10122;
  RM_MAGIC_LVEXP        = 10123;
  RM_SKELETON           = 10024;
  RM_DURACHANGE         = 10125;
  RM_MERCHANTSAY        = 10126;
  RM_GOLDCHANGED        = 10136;
  RM_CHANGELIGHT        = 10137;
 
  RM_LAMPCHANGEDURA      = 10138;
  RM_CHARSTATUSCHANGED  = 10139;
  RM_GROUPCANCEL        = 10140;

  RM_POISON             = 10141; //?中毒
  RM_CHANGEGUILDNAME    = 10143; //?
  RM_USERGETBACKITEM    = 10147;   //ok
  RM_DELAYMAGIC         = 10154;
  RM_10155              = 10155;

  RM_DIGUP              = 10200;
  RM_DIGDOWN            = 10201;
  RM_FLYAXE             = 10202;
  RM_LIGHTING           = 10204;
  RM_10205             = 10205;
  rm_10206             =10206 ;

  RM_SUBABILITY         = 10302;
  RM_DONATE_FAIL         = 10306;
  RM_TRANSPARENT        = 10308;

  RM_SPACEMOVE_FIRE     =10330  ;
  RM_SPACEMOVE_FIRE2    =10330;
  RM_SPACEMOVE_SHOW     = 10331;
  RM_RECONNECTION        = 10332;
  RM_HIDEEVENT          = 10333;
  RM_SHOWEVENT          = 10334;
  RM_ZEN_BEE            = 10337;

  RM_10401              = 10401;
  RM_OPENHEALTH         = 10410;
  RM_CLOSEHEALTH        = 10411;
  RM_DOOPENHEALTH       = 10412;
  RM_BREAKWEAPON        =10413;
  RM_10414              = 10414;
  RM_CHANGEFACE         = 10415;
  RM_PASSWORD            = 10416;
  RM_PLAYDICE              =10500;
  RM_PASSWORDSTATUS      =10501;

  RM_ITEMUPDATE         = 11000;
  RM_MONSTERSAY         = 11001;
  RM_MAKESLAVE          = 11002;

  RM_SPYMOVE            = 11003;
  RM_TAKEHORSE          = 11004;
  RM_MAGADDABILTY       = 11005;
  RM_21292              = 21292;
  RM_SELLITEM           = 21293;
  rm_8941               = 21294;
  rm_21295              = 21295;
  RM_FUSHEN             = 21296;
  RM_510                = 21297;
  RM_YSStart            = 21298;
  RM_dengyu1            = 21299;
  RM_ANYING             = 21300;
  RM_ZUOYI              = 21301;
  RM_25                 = 21302;
  RM_linghunqiang       = 21303;
  RM_linghunqiang2      = 21304;
  RM_YSSKILL            = 21305;

type
  TGList=class(Tlist)
  private
    CriticalSection :TRTLCriticalSection;
  public
    constructor Create;
    destructor Destroy; override;
    procedure lock;
    procedure unlock;
  end;

  TGStringList=class(TStringlist)
  private
    CriticalSection :TRTLCriticalSection;
  public
    constructor Create;
    destructor Destroy; override;
    procedure lock;
    procedure unlock;
  end;

  TQuestUnit=array[0..47] of byte;
  TQuestFlag=array[0..47] of byte;

  TIPaddr=record
    sIpaddr:string[15];
    dIPaddr:string[15];
  end;
  TMsgType = (t_Notice, t_Hint, t_System, t_Say, t_Mon, t_GM, t_Cust, t_Castle,t_hSystem,t_rSystem);

  TClassProc= procedure(Sender: TObject);    //of object
  TIPLocal=procedure(sIPaddr: PChar; sLocal: PChar; nLength: Integer) stdcall;
  TGameDataLog=function(LogMsg: PChar; nLen: Integer):Boolean stdcall;
  TDeCryptString=procedure(Src: PChar; Dest: PChar; nSrc: Integer;skey:string; var nDest: Integer) stdcall;
  TCheckVersion=function(nVersion:Integer): Boolean stdcall;

  TProcInfo=record
    nProcAddr:  Pointer;
    sProcName: String[30];
  end;

  pTProcInfo=^TProcInfo;

  TObjectInfo=record 
    Obj:  TObject;
    sObjcName: String[30];
  end;
  TProcArray=array[0..99] of TProcInfo;
  TObjectArray=array[0..99] of TObjectInfo;
  pTProcArray=^TProcArray;

  TMsgProc=procedure(Msg: PChar; nMsgLen: Integer; nMode: Integer); stdcall;
  TFindProc=function(sProcName: PChar; nNameLen: Integer): Pointer; stdcall;
  TSetProc=function(ProcAddr: Pointer; ProcName: PChar; nNameLen: Integer): Boolean ;stdcall;
  TFindObj=function(sObjName: PChar; nNameLen: Integer): TObject ;stdcall;
  TPlugInit=function(AppHandle: HWND; MsgProc: TMsgProc; FindProcTable: TFindProc; SetProc: TSetProc; FindObj: TFindObj): PChar ;stdcall;
  TSendBroadCastMsg=procedure(Msg: PChar; MsgType: TMsgType); stdcall;

  TCheckCode = record
    dwThread0:LongWord;
    sThread0 :LongWord;
  end;

⌨️ 快捷键说明

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