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

📄 mainclient.vb.svn-base

📁 MirUnleashed vb.net Module modMainServer Public WithEvents Socket As New WinsockServer Pub
💻 SVN-BASE
📖 第 1 页 / 共 3 页
字号:
                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 + -