📄 winsockoutgoing.vb.svn-base
字号:
'### Visual Basic.NET and Direct X9 Legend of MiR Project ###'
'### Mir Unleashed Client OutGoing Module ###'
'### http://www.lomcn.co.uk ###' '### Credits to TrueADM and DeathWish ###'
'This is where all data is sent back to the server to tell it that we done something.
'E.g. We have walked, we have talked, we created a new account etc.
Public Class clsSendPacket
Private Packet As String
Public Sub SendClientVersion(ByVal ClientVersion As String)
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_CLIENT_VERSION), EncodeString(ClientVersion))
Socket.SendData(Packet)
End Sub
Public Sub SendLogin(ByVal LoginID As String, ByVal Password As String)
Packet = LoginID & "/" & Password
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_LOGIN_TRY), EncodeString(Packet))
Socket.SendData(Packet)
End Sub
Public Sub SendCreateAccount(ByVal LoginID As String, ByVal Password As String, ByVal UserName As String, ByVal SecretNumber As String, ByVal Question1 As String, ByVal Answer1 As String, ByVal Email As String, ByVal Birthday As String)
Packet = LoginID & "/" & Password & "/" & UserName & "/" & Email & "/" & SecretNumber & "/" & Question1 & "/" & Answer1 & "/" & Birthday
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_NEWACCOUNT_ADD), EncodeString(Packet))
Socket.SendData(Packet)
End Sub
Public Sub SendSelectServer(ByVal ServerName As String)
Packet = ServerName
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_SEL_SERVER), EncodeString(Packet))
Socket.SendData(Packet)
End Sub
Public Sub SendQueryChar(ByVal Username As String, ByVal Password As String, ByVal Cert As Integer)
Packet = Username & Chr(3) & Password & Chr(3) & Cert
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_QUERYCHAR), EncodeString(Packet))
Socket.SendData(Packet)
End Sub
Public Sub SendCreateChar(ByVal LoginID As String, ByVal Name As String, ByVal Hair As Integer, ByVal Class1 As Integer, ByVal Gender As Integer)
Packet = LoginID & "/" & Name & "/" & Hair & "/" & Class1 & "/" & Gender
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_NEWCHAR), EncodeString(Packet))
Socket.SendData(Packet)
End Sub
Public Sub SendStartPlay()
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_START_PLAY), EncodeString(Username & "/" & Actor.Name & "/" & Cert))
Socket.SendData(Packet)
End Sub
Public Sub SendRequestNotice()
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_NOTICE), EncodeString(Username & "/" & Actor.Name & "/" & Cert & "/" & Version & "/" & Password))
Socket.SendData(Packet)
End Sub
Public Sub SendGoGame()
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_GOGAME))
Socket.SendData(Packet)
End Sub
Public Sub SendMove(ByVal Direction As Byte, ByVal Steps As Byte, ByVal CordX As Short, ByVal CordY As Short)
If UseServerWalk = False Then
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_MOVE, CordX, CordY, Direction, Steps))
Socket.SendData(Packet)
ProcessPlayerAction(PlayerActionType.Move, Actor.ServerID, Direction, Steps, InfrontX(Steps, Direction), InfrontY(Steps, Direction))
Else
ProcessPlayerAction(PlayerActionType.Move, Actor.ServerID, Direction, Steps, InfrontX(Steps, Direction), InfrontY(Steps, Direction))
End If
End Sub
Public Sub SendTurn(ByVal X As Short, ByVal Y As Short, ByVal Dir As Byte)
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_TURN, X, Y, Dir))
Socket.SendData(Packet)
End Sub
Public Sub SendAttack(ByVal Direction As Byte)
If UseServerWalk = False Then
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_NORMAL_HIT, Actor.X, Actor.Y, Direction, 0))
Socket.SendData(Packet)
ProcessPlayerAction(PlayerActionType.Attack, Actor.ServerID, Direction, 0, Actor.X, Actor.Y)
Else
ProcessPlayerAction(PlayerActionType.Attack, Actor.ServerID, Direction, 0, Actor.X, Actor.Y)
End If
End Sub
Public Sub SendCast(ByVal MagicId As Integer, ByVal TargetX As Short, ByVal TargetY As Short, ByVal Direction As Byte)
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_USEMAGIC, MagicId, TargetX, TargetY, Direction))
Socket.SendData(Packet)
End Sub
Public Sub SendChat(ByVal Message As String)
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_CHAT), EncodeString(Message))
Socket.SendData(Packet)
End Sub
Public Sub SendClickNpc(ByVal NpcId As Short)
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_CLICKNPC, NpcId))
Socket.SendData(Packet)
End Sub
Public Sub SendDropItem(ByVal ItemID As Long)
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_DROP_ITEM, ItemID))
Socket.SendData(Packet)
End Sub
Public Sub SendRequestGuildInfo()
Packet = MakeOutPacket(MakeHeader(GameMsg.CM_REQUEST_GUILDINFO))
Socket.SendData(Packet)
End Sub
End Class
Module Outgoing
Public Packets As New clsSendPacket
End Module
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -