Arena RPG Maker
Olá, visitante!
Seja bem-vindo ao fórum Arena RPG Maker, caso queira aprender sobre criação de jogos, está no fórum certo. Esperamos que possa aprender tanto quanto possa nos ensinar aqui.

Atenciosamente,
Equipe Arena RPG Maker.
Arena RPG Maker

Estamos de volta o/ ... Ou não.Eu amo a -Dark
Doações para o fórum abertas, clique aqui e saiba mais.
Últimos assuntos
» Pokémon Genesis Online! (PGO)
Qua 05 Jul 2017, 17:08 por Lexar

» Tileset Converter to MV
Sex 12 Maio 2017, 13:07 por Douggi

» [Dúvida] Como tirar a porcentagem de esquiva
Ter 09 Maio 2017, 22:15 por Neil Flame Runner

» Pack Resources, Sprites e etc
Qua 23 Dez 2015, 09:30 por raydengv

» Download RPG Maker 2003 + RTP em português
Ter 22 Dez 2015, 08:14 por ::KimMax::

» Fantasy Art Online
Dom 18 Out 2015, 16:42 por daviih123

» Você vai ter medo do Nerve gear?
Sab 25 Jul 2015, 16:02 por Kirito-kun

» O Barato é louco
Sab 27 Jun 2015, 15:26 por Halt

» Download RPG Maker 2000 + RTP em português
Qui 21 Maio 2015, 19:28 por Wismael

» Divulgando meu grupo e página do Facebook
Ter 19 Maio 2015, 13:06 por Halt


Você não está conectado. Conecte-se ou registre-se

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 1]

1 Colocando tag ADM/GM em Dom 13 Jan 2013, 12:43

Halt

avatar
Administrador
Administrador
thales12 escreveu:
PREVIEW:



- Serve~Side -

Em modPlayer va ate o final e adicionar:

Código:
Public Function GetPlayerTag(ByVal index As Long) As String
Select Case GetPlayerAccess(index)
Case ADMIN_MONITOR, ADMIN_MAPPER
      GetPlayerTag = "[GM] "
Case ADMIN_DEVELOPER, ADMIN_CREATOR
        GetPlayerTag = "[ADM] "
Case Else
GetPlayerTag = " "
End Select
End Function

Va em modHandleData e substitua a seguinde sub:
Código:
Private Sub HandleEmoteMsg(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)

Por essa sub:
Código:
Private Sub HandleEmoteMsg(ByVal index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
    Dim Msg As String
    Dim I As Long
    Dim Buffer As clsBuffer
    Set Buffer = New clsBuffer
    Buffer.WriteBytes Data()
    Msg = Buffer.ReadString

    ' Prevent hacking
    For I = 1 To Len(Msg)

        If AscW(Mid$(Msg, I, 1)) < 32 Or AscW(Mid$(Msg, I, 1)) > 126 Then
            Exit Sub
        End If

    Next
    Call AddLog("Map #" & GetPlayerMap(index) & ": " & GetPlayerName(index) & " " & Msg, PLAYER_LOG)
    Call MapMsg(GetPlayerMap(index), GetPlayerTag(index) &
GetPlayerName(index) & " " & Right$(Msg, Len(Msg) - 1),
EmoteColor)
    Set Buffer = Nothing
End Sub

Em modServeTCP subistitua a sub:
Código:
Sub SayMsg_Map(ByVal MapNum As Long, ByVal Index As Long, ByVal message As String, ByVal saycolour As Long)

Por:
Código:
Sub SayMsg_Map(ByVal MapNum As Long, ByVal index As Long, ByVal message As String, ByVal saycolour As Long)
    Dim Buffer As clsBuffer
   
    Set Buffer = New clsBuffer
    Buffer.WriteLong SSayMsg
    Buffer.WriteString GetPlayerName(index)
    Buffer.WriteLong GetPlayerAccess(index)
    Buffer.WriteLong GetPlayerPK(index)
    Buffer.WriteString message
    Buffer.WriteString "[Map] " & GetPlayerTag(index)
    Buffer.WriteLong saycolour
   
    SendDataToMap MapNum, Buffer.ToArray()
   
    Set Buffer = Nothing
End Sub

Substitua tabem abaixo dessa sub a sub:
Código:
Sub SayMsg_Global(ByVal Index As Long, ByVal message As String, ByVal saycolour As Long)

Por:
Código:
Sub SayMsg_Global(ByVal index As Long, ByVal message As String, ByVal saycolour As Long)
    Dim Buffer As clsBuffer
   
    Set Buffer = New clsBuffer
    Buffer.WriteLong SSayMsg
    Buffer.WriteString GetPlayerName(index)
    Buffer.WriteLong GetPlayerAccess(index)
    Buffer.WriteLong GetPlayerPK(index)
    Buffer.WriteString message
    Buffer.WriteString "[Global]" & GetPlayerTag(index)
    Buffer.WriteLong saycolour
   
    SendDataToAll Buffer.ToArray()
   
    Set Buffer = Nothing
End Sub



Parte do Client:

~~~Client~~~

Em modText substitua a sub:
Código:
Public Sub DrawPlayerName(ByVal Index As Long)

Ate:
Código:
'Ate :
 ' Draw name
    Call DrawText(TexthDC, TextX, TextY, Name, color)

Por:
Código:
Public Sub DrawPlayerName(ByVal Index As Long)
    Dim TextX As Long
    Dim TextY As Long
    Dim color As Long
    Dim sTag As String

    ' Check access level
    If GetPlayerPK(Index) = NO Then

        Select Case GetPlayerAccess(Index)
            Case 0
                color = RGB(255, 96, 0)
                sTag = vbNullString
            Case 1
                color = QBColor(DarkGrey)
                sTag = "[GM] "
            Case 2
                color = QBColor(Cyan)
                sTag = "[GM] "
            Case 3
                color = QBColor(BrightGreen)
                sTag = "[ADM] "
            Case 4
                color = QBColor(Yellow)
                sTag = "[ADM] "
        End Select

    Else
        color = QBColor(BrightRed)
    End If

    If GetPlayerSprite(Index) < 1 Or GetPlayerSprite(Index) > NumCharacters Then
        TextX = ConvertMapX(GetPlayerX(Index) * PIC_X) +
Player(Index).XOffset + (PIC_X \ 2) - getWidth(TexthDC, (Trim$(sTag
& GetPlayerName(Index))))
        TextY = ConvertMapY(GetPlayerY(Index) * PIC_Y) + Player(Index).YOffset - 16
    Else
        TextX = ConvertMapX(GetPlayerX(Index) * PIC_X) +
Player(Index).XOffset + (PIC_X \ 2) - getWidth(TexthDC, (Trim$(sTag
& GetPlayerName(Index))))
        TextY =
ConvertMapY(GetPlayerY(Index) * PIC_Y) + Player(Index).YOffset -
(DDSD_Character(GetPlayerSprite(Index)).lHeight) + 16
    End If

    Call DrawText(TexthDC, TextX, TextY, sTag & GetPlayerName(Index), color)
End Sub
Créditos: Desconhecido
Créditos: A mim por postar


__________________________________________

Ei Convidado, sim você mesmo! Ajude o fórum à crescer postando coisas úteis, dê sugestões para melhorar-mos e divulgue o fórum.

Step inside, see the devil in I.

Gifts-
Fantasy - Fantasy - Fantasy - ~Razor - Darkmel

Zerei a internet
Ver perfil do usuário http://arenarpgmaker.eclipserpg.com

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo  Mensagem [Página 1 de 1]

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum