Escrito por Lucas Roberto na antiga mmorpgbr
Esta simples irá adicionar um sistema de mensagens de administração, basicamente, eu tinha ampliado o Origins e acrescentou uma forma do cliente de enviar a mensagem. Por padrão, você bate-papo no admin, digitando `antes de sua mensagem. Você pode usar Ctrl + F para alterar facilmente este porque o personagem é como se nunca usado. -, -
Cliente:
Encontre esta:
Abaixo acrescentar o seguinte:
Procure por:
Abaixo coloque:
Substituir Private Sub AdminMsg ou cole este abaixo Public Sub BroadcastMsg:
Encontre está:
Abaixo coloque:
Abaixo Private Sub HandleMapMsg adicionar este ou substituir Private Sub HandleAdminMsg com esta:
Server:
Encontrar Public Sub InitMessages () e adicione isso no fundo antes de End Sub:
Encontrar Private Sub HandlePlayerMsg e adicione este abaixo:
Encontrar Public Sub AdminMsg e substituí-lo com esta:
Em Público ServerPackets Enum encontrar:
Abaixo acrescentar o seguinte:
Em Público ClientPackets Enum encontrar:
Abaixo acrescentar o seguinte:
Creditos~
Helladen
Lucas Roberto - Traduzir
Esta simples irá adicionar um sistema de mensagens de administração, basicamente, eu tinha ampliado o Origins e acrescentou uma forma do cliente de enviar a mensagem. Por padrão, você bate-papo no admin, digitando `antes de sua mensagem. Você pode usar Ctrl + F para alterar facilmente este porque o personagem é como se nunca usado. -, -
Cliente:
Encontre esta:
- Código:
' Broadcast message
If left$(ChatText, 1) = "'" Then
ChatText = Mid$(ChatText, 2, Len(ChatText) - 1)
If Len(ChatText) > 0 Then
Call BroadcastMsg(ChatText)
End If
MyText = vbNullString
frmMain.txtMyChat.text = vbNullString
Exit Sub
End If
Abaixo acrescentar o seguinte:
- Código:
' Admin message
If left$(ChatText, 1) = "`" Then
If GetPlayerAccess(MyIndex) > 0 Then
ChatText = Trim$(GetPlayerName(MyIndex) & ": " & Mid$(ChatText, 2, Len(ChatText) - 1))
If Len(ChatText) > 0 Then
Call AdminMsg(ChatText)
End If
MyText = vbNullString
frmMain.txtMyChat.text = vbNullString
Exit Sub
End If
End If
Procure por:
- Código:
CBroadcastMsg
Abaixo coloque:
- Código:
CAdminMsg
Substituir Private Sub AdminMsg ou cole este abaixo Public Sub BroadcastMsg:
- Código:
Public Sub AdminMsg(ByVal text As String)
Dim Buffer As clsBuffer
Set Buffer = New clsBuffer
Buffer.WriteLong CAdminMsg
Buffer.WriteString text
SendData Buffer.ToArray()
Set Buffer = Nothing
End Sub
Encontre está:
- Código:
HandleDataSub(SGlobalMsg) = GetAddress(AddressOf HandleGlobalMsg)
Abaixo coloque:
- Código:
HandleDataSub(SAdminMsg) = GetAddress(AddressOf HandleAdminMsg)
Abaixo Private Sub HandleMapMsg adicionar este ou substituir Private Sub HandleAdminMsg com esta:
- Código:
Private Sub HandleAdminMsg(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
Dim Buffer As clsBuffer
Dim Msg As String
Set Buffer = New clsBuffer
Buffer.WriteBytes Data()
Msg = Buffer.ReadString
Index = Buffer.ReadLong
Call AddText(Msg, BrightCyan)
End Sub
Server:
Encontrar Public Sub InitMessages () e adicione isso no fundo antes de End Sub:
- Código:
HandleDataSub(CAdminMsg) = GetAddress(AddressOf HandleAdminMsg)
Encontrar Private Sub HandlePlayerMsg e adicione este abaixo:
- Código:
Sub HandleAdminMsg(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
Dim Buffer As clsBuffer
' Prevent hacking
If GetPlayerAccess(Index) < 1 Then Exit Sub
Set Buffer = New clsBuffer
Buffer.WriteBytes Data()
Call AdminMsg(Buffer.ReadString)
Set Buffer = Nothing
End Sub
Encontrar Public Sub AdminMsg e substituí-lo com esta:
- Código:
Public Sub AdminMsg(ByVal Msg As String)
Dim Buffer As clsBuffer
Dim I As Long
Set Buffer = New clsBuffer
Msg = Trim$("[Admin] " & Msg)
Buffer.WriteLong SAdminMsg
Buffer.WriteString Msg
For I = 1 To MAX_PLAYERS
If IsPlaying(I) And GetPlayerAccess(I) > 0 Then
SendDataTo I, Buffer.ToArray
End If
Next
Set Buffer = Nothing
End Sub
Em Público ServerPackets Enum encontrar:
- Código:
SGlobalMsg
Abaixo acrescentar o seguinte:
- Código:
SAdminMsg
Em Público ClientPackets Enum encontrar:
- Código:
CBroadcastMsg
Abaixo acrescentar o seguinte:
- Código:
CAdminMsg
Creditos~
Helladen
Lucas Roberto - Traduzir