网络数据模块.bas
上传用户:pcw2004
上传日期:2022-02-02
资源大小:743k
文件大小:9k
源码类别:

DirextX编程

开发平台:

Visual Basic

  1. Attribute VB_Name = "网络数据模块"
  2. Option Explicit
  3. Public mLoginName As String
  4. ' Download by http://www.codefans.net
  5. Public ServerIP As String
  6. Public ServerPort As Long
  7. Public Const NETKONGDATA = "##"
  8. Public Const KONGDATA = "$#"
  9. Public Const WALKDATA = 1001    '走(WALKDATA  玩家编号  X   Y  方向   )
  10. Public Const RUNDATA = 1002     '跑(RUNDATA  玩家编号  X   Y   方向 )
  11. Public Const PlayerNum = 1003     '主角编号(MAINNUM   编号)
  12. Public Const PlayerName = 1004  '玩家名字(PLAYERNAME  玩家编号  名字)
  13. Public Const NOWPLAYERCOUNT = 1005  '总在线玩家数(NOWPLAYERCOUNT 数量)
  14. Public Const PLAYERFACEDATA = 1006  '玩家方向(PLAYERFACEDATA  玩家编号  方向)
  15. Public Const PLAYERXY = 1007        '玩家XY(PLAYERXY 玩家编号  X   Y)
  16. Public Const PLAYERMAGICDATA = 1008     '玩家施魔法(PLAYERMAGIC  玩家编号 玩家名字  玩家动作   魔法名称   X   Y   )
  17. '#########################################################################################################
  18. Public Const CLOTHINGDATA = 1009       '玩家装备(ZHUANGBEIDATA   玩家编号   是否有装备   装备属性)
  19. Public Const WEAPONDATA = 1010
  20. Public Const HEADPIECEDATA = 1011
  21. Public Const NECKLACEDATA = 1012
  22. Public Const FINGERRINGLEFTDATA = 1013
  23. Public Const FINGERRINGRIGHTDATA = 1014
  24. Public Const BRACELETLEFTDATA = 1015
  25. Public Const BRACELETRIGHTDATA = 1016
  26. '##########################################################################################################
  27. Public Const PLAYEREND = 1017   '玩家下线(PLAYEREND 玩家编号)
  28. Public Const PLAYERHP = 1018    '玩家HP( PLAYERHP   玩家编号     HP     MaxHP)
  29. Public Const PLAYERMP = 1019    '玩家MP( PLAYERMP   玩家编号     MP     MaxMP)
  30. Public Const SHANGHAIDATA = 1020 '伤害玩家(SHANGHAIDATA      玩家编号    攻击力     攻击类型-0物攻 1魔攻)
  31. Public Const PLAYERACTDATA = 1021    '玩家动作(PLAYERACTDATA  玩家编号    动作    动作帧)
  32. Public Const PLAYERJIAOYI = 1022    '玩家交易(PLAYERJIAOYI   玩家编号    被交易玩家编号)
  33. Public Const PLAYERJIAOYIEND = 1023 '玩家交易取消(PLAYERJIAOYIEND  玩家编号     被交易玩家编号)
  34. Public Const PLAYERJIAOYIITEM = 1024 '玩家交易物品(PLAYERJIAOYIITEM   被交易玩家编号     物品)
  35. Public Const PLAYERJIAOYIOK = 1025      '玩家交易确定(PLAYERJIAOYIOK    玩家编号   被交易玩家编号)
  36. '///////////////////////  网络怪物数据  ////////////////////////
  37. Public Const NOWMONCOUNT = 1026     '怪物总数(NOWMONCOUNT       怪物数量)
  38. Public Const MonName = 1027         '怪物名称(MONNAME   怪物编号    怪物名字)
  39. Public Const MONXY = 1028           '怪物XY(MONXY   怪物ID    X   Y)
  40. Public Const MONFACE = 1029         '怪物方向(MONFACE   怪物ID    方向)
  41. Public Const MONMOVE = 1030         '怪物移动(MONMOVE   怪物ID    X   Y)
  42. Public Const MONATTACK = 1031       '怪物攻击(MONATTACK 怪物ID    )
  43. Public Const MONSHANGHAI = 1032     '怪物伤害(MONSHANGHAI   怪物编号    攻击力     攻击类型-0物攻 1魔攻)
  44. Public Const MONHP = 1033           '怪物HP(MONHP       怪物编号    HP  MAXHP)
  45. Public Const MONACTDATA = 1034          '怪物动作(MONACTDATA    怪物ID    动作  方向)
  46. Public Const PLAYERATTACKINFO = 1035 '玩家攻击属性(PLAYERATTACKINFO  玩家编号    攻击属性
  47. Public Const PLAYERFUHUO = 1036     '玩家复活(PLAYERFUHUO   玩家编号)
  48. Public Const TALKINFO = 1037        '聊天信息(TALKINFO      玩家编号      玩家名字     信息           信息颜色        信息类型[0玩家信息  1其它信息])
  49. Public Const SILIAOINFO = 1038      '私聊信息(SILIAOINFO    玩家编号    玩家名字    私聊玩家编号    私聊玩家名字    信息)
  50. Public Const SCRIPTDATAINFO = 1039     '脚本信息(SCRIPTDATAINFO    NPC编号      脚本信息)
  51. Public Const SCRIPTFUNNAMEINFO = 1040  '脚本函数名(SCRIPTFUNNAME   玩家编号    NPC编号     函数名)
  52. Public Const MAPNPCINFO = 1041      '地图NPC(MAPNPCINFO     NPC编号     X   Y   名称    图像)
  53. Public Const MAPNPCCOUNTINFO = 1042     '地图NPC个数(MAPNPCCOUNTINFO    NPC数量)
  54. Public Const PLAYERPK = 1043        '玩家PK值(PLAYERPK  玩家编号    PK值)
  55. Public Const PLAYERLEVEL = 1044     '玩家等级(PLAYERLEVEL   玩家编号    玩家名字    玩家等级)
  56. Public Const PLAYERGOLD = 1045      '玩家金币(PLAYERGOLD    玩家编号    玩家名字    金币)
  57. Public Const LOGINID = 1046         '登陆ID(LOGINID     ID  状态(0失败1成功     信息)
  58. Public Const LOGINNAME = 1047       '登陆名字(LOGINNAME     名字    职业    性别)
  59. Public Const LOGINSTATE = 1048      '登陆状态(LOGINSTATE    状态(0失败1成功   )
  60. Public Const REGPLAYERID = 1049     '注册ID(REGPLAYERID    账号)
  61. Public Const REGIDSTATE = 1050      '注册状态(REGIDSTATE    状态(0失败1成功)    信息)
  62. Public Const GIVEITEMDATA = 1051     '得到物品(GIVEITEMDATA     玩家编号    玩家名字    物品数据    数量)
  63. Public Const SAVEHERODATA = 1052    '保存主角信息(SAVEHERODATA      编号    玩家名字    玩家等级      职业     性别)
  64. Public Const SELHERONUM = 1053      '选择主角编号(SELHERONUM    编号    玩家名字)
  65. Public Const REGHERONAME = 1054     '建立角色(REGHERONAME   ID  角色名  职业    性别)
  66. Public Const PLAYERSEX = 1055       '玩家性别(PLAYERSEX  编号    玩家名  性别)
  67. Public Const TISHIDATA = 1056       '提示信息(TISHIDATA     错误信息)
  68. Public Const PLAYERATTACKDATA = 1057 '玩家物理攻击动作(PLAYERATTACKDATA  玩家编号)
  69. Public Const HEREPLAYERCOUNT = 1058 '附近玩家数量(HEREPLAYERCOUNT    玩家数)
  70. Public Const HEREPLAYERINFO = 1059  '附近玩家属性(HEREPLAYERINFO    编号    ID    名字  性别  方向  衣服外观    武器外观    头发外观        X   Y)
  71. Public Const HEREMONCOUNT = 1060    '附近怪数量(HEREMONCOUNT    怪数量)
  72. Public Const HEREMONINFO = 1061     '附近怪属性(HEREMONINFO     编号    ID    RACE  RACEIMAGE   Appr   名字    方向     X   Y)
  73. Public Const HEREMAPITEMCOUNT = 1062 '附近地图上物品数量(HEREMAPITEMCOUNT    数量)
  74. Public Const HEREMAPITEMINFO = 1063 '附近地图上物品信息(HEREMAPITEMINFO     编号    ID  物品名字    物品外观    X   Y)
  75. Public Const PLAYERGETEXP = 1064    '玩家获得经验(PLAYERGETEXP    Exp)
  76. Public Const PLAYEREXPDATA = 1065   '玩家经验值(PLAYEREXPDATA       EXP     MAXEXP)
  77. Public Const CMDDATA = 1066         '命令(CMDDATA   命令)
  78. Public Const JIANITEMDATA = 1067    '捡地图上物品(JIANITEMDATA  物品ID  X   Y)
  79. Public Const PLAYERBAGITEMDATA = 1068 '发送玩家包裹物品信息(PLAYERBAGITEMDATA     物品ID  物品信息)
  80. Public Const PLAYERBAGINFO = 1069   '请求发送玩家包裹物品信息(PLAYERBAGINFO     编号)
  81. Public Const PLAYERDUIITEM = 1070   '玩家丢掉物品(PLAYERDUIITEM     物品ID)
  82. '//////////  玩家攻击属性组成文本
  83. Public Function PlayerInfoStr(PlayerNum As Integer) As String
  84.     PlayerInfoStr = Player(PlayerNum).AC1 & "$$" & Player(PlayerNum).Ac2 & "$$" & Player(PlayerNum).MAC1 & "$$" & _
  85.                  Player(PlayerNum).Mac2 & "$$" & Player(PlayerNum).DC1 & "$$" & Player(PlayerNum).Dc2 & "$$" & _
  86.                  Player(PlayerNum).MC1 & "$$" & Player(PlayerNum).Mc2 & "$$" & Player(PlayerNum).SC1 & "$$" & _
  87.                  Player(PlayerNum).Sc2
  88. End Function
  89. '/////////  从文本中获取玩家攻击属性
  90. Public Sub GetPlayerInfo(PlayerNum As Integer, InfoStr As String)
  91.     Dim nData As Variant
  92.     nData = Split(InfoStr, "$$")
  93.     Player(PlayerNum).AC1 = nData(0)
  94.     Player(PlayerNum).Ac2 = nData(1)
  95.     Player(PlayerNum).MAC1 = nData(2)
  96.     Player(PlayerNum).Mac2 = nData(3)
  97.     Player(PlayerNum).DC1 = nData(4)
  98.     Player(PlayerNum).Dc2 = nData(5)
  99.     Player(PlayerNum).MC1 = nData(6)
  100.     Player(PlayerNum).Mc2 = nData(7)
  101.     Player(PlayerNum).SC1 = nData(8)
  102.     Player(PlayerNum).Sc2 = nData(9)
  103.     
  104. End Sub
  105. '///////  装备属性组成文本
  106. Public Function ItemStr(mItem As ItemType) As String
  107.     ItemStr = mItem.Idx & "%%" & mItem.Name & "%%" & mItem.StdMode & "%%" & _
  108.               mItem.Shape & "%%" & mItem.Weight & "%%" & mItem.Anicount & "%%" & mItem.Source & "%%" & _
  109.               mItem.Reserved & "%%" & mItem.Looks & "%%" & mItem.DuraMax & "%%" & _
  110.               mItem.AC & "%%" & mItem.Ac2 & "%%" & mItem.MAC & "%%" & mItem.Mac2 & "%%" & _
  111.               mItem.DC & "%%" & mItem.Dc2 & "%%" & mItem.MC & "%%" & mItem.Mc2 & "%%" & _
  112.               mItem.SC & "%%" & mItem.Sc2 & "%%" & mItem.Need & "%%" & mItem.NeedLevel & "%%" & _
  113.               mItem.Price
  114. End Function
  115. Public Sub mSleep(mTime As Long)
  116.     Dim mmm As Long
  117.     mmm = GetTickCount
  118.     Do While GetTickCount - mmm < mTime
  119.         DoEvents
  120.     Loop
  121.     
  122. End Sub
  123. '/////////  从文本中获取装备属性
  124. Public Function GetItem(Str As String) As ItemType
  125.     Dim i As Integer
  126.     Dim mData As Variant
  127.     mData = Split(Str, "%%")
  128.     GetItem.Idx = mData(0)
  129.     GetItem.Name = mData(1)
  130.     GetItem.StdMode = mData(2)
  131.     GetItem.Shape = mData(3)
  132.     GetItem.Weight = mData(4)
  133.     GetItem.Anicount = mData(5)
  134.     GetItem.Source = mData(6)
  135.     GetItem.Reserved = mData(7)
  136.     GetItem.Looks = mData(8)
  137.     GetItem.DuraMax = mData(9)
  138.     GetItem.AC = mData(10)
  139.     GetItem.Ac2 = mData(11)
  140.     GetItem.MAC = mData(12)
  141.     GetItem.Mac2 = mData(13)
  142.     GetItem.DC = mData(14)
  143.     GetItem.Dc2 = mData(15)
  144.     GetItem.MC = mData(16)
  145.     GetItem.Mc2 = mData(17)
  146.     GetItem.SC = mData(18)
  147.     GetItem.Sc2 = mData(19)
  148.     GetItem.Need = mData(20)
  149.     GetItem.NeedLevel = mData(21)
  150.     GetItem.Price = mData(22)
  151. End Function
  152. '////////  获取物品编号
  153. Public Function GetItemNum(ItemName As String) As Integer
  154.     Dim i As Integer
  155.     For i = 1 To ItemDBCount
  156.         If ItemDB(i).Name = ItemName Then
  157.             GetItemNum = i
  158.             Exit For
  159.         End If
  160.     Next
  161. End Function