📄 mainclient.vb.svn-base
字号:
Actor.Direction = mDir
Actor.ActionState = 0
'clear the stack
Dim I As Integer
For I = 0 To 15
Actor.StackExist(I) = False
Actor.StackItems = 0
Next I
Case GameMsg.SM_NPC_SAY
Dim NpcId As Short = Header.nRecog
Packet = DecodePacketBody(Packet)
NPCChatText = Packet
NPCChatServerIndex = NpcId
Case GameMsg.SM_EXP_ADD
Actor.Experience = Header.nRecog
Dim AddExp As Integer = Header.wParam
If AddExp <> -1 Then
AddChat("Expeirence Points Gained " & AddExp & ".", ChatColours.Orange)
End If
Case GameMsg.SM_LEVELUP
Packet = DecodePacketBody(Packet)
Dim tId As Integer = Header.nRecog
Dim tLevel As Integer = Header.wParam
Dim tRace As Races = Header.wTag
Dim Part() As String = Split(Packet, "/")
Dim Exp As Long = Part(0)
Dim MaxExp As Long = Part(1)
Select Case tRace
Case Races.Player
If tId = Actor.ServerID Then
Actor.Level = tLevel
Actor.Experience = Exp
Actor.MaxExperience = MaxExp
AddChat("Congratulations you are now level " & tLevel & ".", ChatColours.Orange)
End If
MakeLevelUpMagic(tId)
Case Races.Monster
'Pets
End Select
Case GameMsg.SM_BAGITEMS
Packet = DecodePacketBody(Packet)
Dim Part() As String = Split(Packet, "/")
Dim i As Integer = 0
Dim iName As String = Part(i)
i += 1
Dim iType As ItemTypes = Part(i)
i += 1
Dim iWeight As Short = Part(i)
i += 1
Dim iHoly As Short = Part(i)
i += 1
Dim iInten As Short = Part(i)
i += 1
Dim iLuck As Short = Part(i)
i += 1
Dim iLooks As Short = Part(i)
i += 1
Dim iOnLooks As Short = Part(i)
i += 1
Dim iAccuracy As Short = Part(i)
i += 1
Dim iAgility As Short = Part(i)
i += 1
Dim iAC As Short = Part(i)
i += 1
Dim iMaxAC As Short = Part(i)
i += 1
Dim iAMC As Short = Part(i)
i += 1
Dim iMaxAMC As Short = Part(i)
i += 1
Dim iDC As Short = Part(i)
i += 1
Dim iMaxDC As Short = Part(i)
i += 1
Dim iMC As Short = Part(i)
i += 1
Dim iMaxMC As Short = Part(i)
i += 1
Dim iSC As Short = Part(i)
i += 1
Dim iMaxSC As Short = Part(i)
i += 1
Dim iHP As Short = Part(i)
i += 1
Dim iMaxHP As Short = Part(i)
i += 1
Dim iMP As Short = Part(i)
i += 1
Dim iMaxMP As Short = Part(i)
i += 1
Dim iHPRecovery As Short = Part(i)
i += 1
Dim iMPRecovery As Short = Part(i)
i += 1
Dim iPoisonRecovery As Short = Part(i)
i += 1
Dim iPoisonEvasion As Short = Part(i)
i += 1
Dim iMagicEvasion As Short = Part(i)
i += 1
Dim iASpeed As Short = Part(i)
i += 1
Dim iHPLeech As Short = Part(i)
i += 1
Dim iMPLeech As Short = Part(i)
i += 1
Dim iBWeight As Short = Part(i)
i += 1
Dim iHWeight As Short = Part(i)
i += 1
Dim iNeedType As NeedTypes = Part(i)
i += 1
Dim iNeedAmount As Short = Part(i)
i += 1
Dim iPrice As Short = Part(i)
i += 1
Dim iDura As Integer = Part(i)
i += 1
Dim iMaxDura As Integer = Part(i)
i += 1
Dim iItemID As Long = Part(i)
i += 1
Dim iEquipType As EquipType = Part(i)
Dim inLevel, inDC, inMC, inSC, iNeedClass As Short
Select Case iNeedType
Case NeedTypes.Level
inLevel = iNeedAmount
Case NeedTypes.DC
inDC = iNeedAmount
Case NeedTypes.MC
inMC = iNeedAmount
Case NeedTypes.SC
inSC = iNeedAmount
Case NeedTypes.Class_
iNeedClass = iNeedAmount
End Select
AddInventoryItem(iLooks, iItemID, iName, iType, iOnLooks, iAC, iMaxAC, iAMC, iMaxAMC, iDC, iMaxDC, iMC, iMaxMC, iSC, iMaxSC, iLuck, iNeedClass, iAccuracy, inLevel, inSC, inMC, inDC, iWeight, iDura, iMaxDura, iHoly, iMP, iMPRecovery, iHP, iHPRecovery, iASpeed, iHPLeech, iMPLeech, iAgility, iBWeight, iInten, iPoisonEvasion, iMagicEvasion, iPoisonRecovery, iHWeight)
Case GameMsg.SM_DROP_ITEM_OK
Dim Name As String = DecodePacketBody(Packet)
Dim ItemId As Long = Header.nRecog
Dim X As Integer = Header.wParam
Dim Y As Integer = Header.wTag
Dim Looks As Integer = Header.wSeries
RemoveItem(ItemId)
HoldingItem = False
AddFloorItem(ItemId, X, Y, Name, Looks)
Case GameMsg.SM_PICKUP_ITEM
Packet = DecodePacketBody(Packet)
Dim Part() As String = Split(Packet, "/")
Dim i As Integer = 0
Dim iName As String = Part(i)
i += 1
Dim iType As ItemTypes = Part(i)
i += 1
Dim iWeight As Short = Part(i)
i += 1
Dim iHoly As Short = Part(i)
i += 1
Dim iInten As Short = Part(i)
i += 1
Dim iLuck As Short = Part(i)
i += 1
Dim iLooks As Short = Part(i)
i += 1
Dim iOnLooks As Short = Part(i)
i += 1
Dim iAccuracy As Short = Part(i)
i += 1
Dim iAgility As Short = Part(i)
i += 1
Dim iAC As Short = Part(i)
i += 1
Dim iMaxAC As Short = Part(i)
i += 1
Dim iAMC As Short = Part(i)
i += 1
Dim iMaxAMC As Short = Part(i)
i += 1
Dim iDC As Short = Part(i)
i += 1
Dim iMaxDC As Short = Part(i)
i += 1
Dim iMC As Short = Part(i)
i += 1
Dim iMaxMC As Short = Part(i)
i += 1
Dim iSC As Short = Part(i)
i += 1
Dim iMaxSC As Short = Part(i)
i += 1
Dim iHP As Short = Part(i)
i += 1
Dim iMaxHP As Short = Part(i)
i += 1
Dim iMP As Short = Part(i)
i += 1
Dim iMaxMP As Short = Part(i)
i += 1
Dim iHPRecovery As Short = Part(i)
i += 1
Dim iMPRecovery As Short = Part(i)
i += 1
Dim iPoisonRecovery As Short = Part(i)
i += 1
Dim iPoisonEvasion As Short = Part(i)
i += 1
Dim iMagicEvasion As Short = Part(i)
i += 1
Dim iASpeed As Short = Part(i)
i += 1
Dim iHPLeech As Short = Part(i)
i += 1
Dim iMPLeech As Short = Part(i)
i += 1
Dim iBWeight As Short = Part(i)
i += 1
Dim iHWeight As Short = Part(i)
i += 1
Dim iNeedType As NeedTypes = Part(i)
i += 1
Dim iNeedAmount As Short = Part(i)
i += 1
Dim iPrice As Short = Part(i)
i += 1
Dim iDura As Integer = Part(i)
i += 1
Dim iMaxDura As Integer = Part(i)
i += 1
Dim iItemID As Long = Part(i)
i += 1
Dim iEquipType As EquipType = Part(i)
Dim inLevel, inDC, inMC, inSC, iNeedClass As Short
Select Case iNeedType
Case NeedTypes.Level
inLevel = iNeedAmount
Case NeedTypes.DC
inDC = iNeedAmount
Case NeedTypes.MC
inMC = iNeedAmount
Case NeedTypes.SC
inSC = iNeedAmount
Case NeedTypes.Class_
iNeedClass = iNeedAmount
End Select
RemoveFloorItem(iItemID)
AddInventoryItem(iLooks, iItemID, iName, iType, iOnLooks, iAC, iMaxAC, iAMC, iMaxAMC, iDC, iMaxDC, iMC, iMaxMC, iSC, iMaxSC, iLuck, iNeedClass, iAccuracy, inLevel, inSC, inMC, inDC, iWeight, iDura, iMaxDura, iHoly, iMP, iMPRecovery, iHP, iHPRecovery, iASpeed, iHPLeech, iMPLeech, iAgility, iBWeight, iInten, iPoisonEvasion, iMagicEvasion, iPoisonRecovery, iHWeight)
Case GameMsg.SM_USEMAGIC_OK
'I used a spell and it worked Ok
Case GameMsg.SM_USEMAGIC_FAIL
'I used a spell and it failed
Case GameMsg.SM_USEMAGIC
'A player used a spell
Dim CasterId As Integer = Header.nRecog
Dim CasterRace As Byte = Header.wParam
Dim CasterDir As Byte = Header.wTag
Dim Looks As Byte = Header.wSeries
Packet = DecodePacketBody(Packet)
Dim TargetX As Integer = Split(Packet, "/")(0)
Dim TargetY As Integer = Split(Packet, "/")(1)
Case GameMsg.SM_MAGIC
Dim pMagicId As Integer = Header.nRecog
Dim Key As Byte = Header.wParam
Dim Level As Byte = Header.wTag
Dim CurrentExp As Short = Header.wSeries
Packet = DecodePacketBody(Packet)
Dim sPacket() As String = Split(Packet, "/")
Dim Name As String = sPacket(0)
Dim Looks As Byte = sPacket(1)
Dim MaxExp As Short = sPacket(2)
Case GameMsg.SM_GUILDINFO_FAIL
ShowMessage("You are not in a guild")
Case GameMsg.SM_GUILDINFO
Packet = DecodePacketBody(Packet)
Dim Parts() As String = Split(Packet, "))((")
Dim Notice As String = Parts(0)
Dim Members() As String = Split(Parts(1), "^/^")
Dim PlayerName(), GuildRank(), RankTitle(), RankNumber() As String
Dim i As Integer
For i = 0 To UBound(Members)
ReDim Preserve PlayerName(i + 1)
ReDim Preserve GuildRank(i + 1)
ReDim Preserve RankTitle(i + 1)
ReDim Preserve RankNumber(i + 1)
PlayerName(i) = Split(Members(i), "^\^")(0)
GuildRank(i) = Split(Members(i), "^\^")(1)
RankTitle(i) = Split(Members(i), "^\^")(2)
RankNumber(i) = Split(Members(i), "^\^")(3)
Next i
End Select
End Sub
End Module
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -