MMORPG Brasil
Ola, visitante! Agradecemos sua visita, para ter acesso a todo nosso conteúdo recomendamos que faça um cadastro no fórum, com ele você pode participar de tópicos e ter acesso a todas áreas da comunidade!

Participe do fórum, é rápido e fácil

MMORPG Brasil
Ola, visitante! Agradecemos sua visita, para ter acesso a todo nosso conteúdo recomendamos que faça um cadastro no fórum, com ele você pode participar de tópicos e ter acesso a todas áreas da comunidade!
MMORPG Brasil
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

[Tutorial] Rank Resete

5 participantes

Ir para baixo

[Tutorial] Rank Resete Empty [Tutorial] Rank Resete

Mensagem por Soulty Dom 14 Jul 2013, 12:45

Mais um tutorial para o pessoal aproveitar, esse mostra os jogadores com maior rank de resete do servidor.
Servidor - Parte (ModTypes)
Código:
Procure por:
Public Const MAX_FRIENDS = 20

Em baixo Adicione:
Public Const MAX_RANKS = 10

Procure por:
Public Speech() As SpeechRec

em baixo adicione:
Type RankRec
    Nome As String
    Resetes As Long
End Type

Public ResetRank(1 To MAX_RANKS) As RankRec
Servidor - Parte (ModDatabase)
Código:
No Final do Modulo Adicione:

Sub LoadRanks()
    Dim FileName As String
    Dim i As Long

    Call CheckRanks
    FileName = App.Path & "\ReseteRank.ini"

    For i = 1 To MAX_RANKS
        Call SetStatus("Carregando Ranks... " & Int((i / MAX_RANKS) * 100) & "%")
        ResetRank(i).Nome = GetVar(FileName, "RANKS", "Nome" & i)
        ResetRank(i).Resetes = GetVar(FileName, "RANKS", "Resetes" & i)
        DoEvents
    Next
End Sub

Sub CheckRanks()
    If Not FileExist("ReseteRank.ini") Then
        Dim i As Long

        For i = 1 To MAX_RANKS
            Call SetStatus("Carregando Ranks... " & Int((i / MAX_RANKS) * 100) & "%")

            DoEvents
            Call PutVar(App.Path & "\ReseteRank.ini", "RANKS", "Nome" & i, ResetRank(i).Nome)
            Call PutVar(App.Path & "\ReseteRank.ini", "RANKS", "Resetes" & i, STR(ResetRank(i).Resetes))
        Next
    End If
End Sub

Sub SalveResete()
    Dim i As Long
    
    For i = 1 To MAX_RANKS
        Call PutVar(App.Path & "\ReseteRank.ini", "RANKS", "Nome" & i, ResetRank(i).Nome)
        Call PutVar(App.Path & "\ReseteRank.ini", "RANKS", "Resetes" & i, STR(ResetRank(i).Resetes))
        DoEvents
    Next i
End Sub

Sub ClearRanks()
    Dim i As Long
    For i = 1 To MAX_RANKS
        ResetRank(i).Nome = vbNullString
        ResetRank(i).Resetes = 0
    Next
End Sub
Servidor - Parte (ModGameLogic)
Código:
Procure por:
Function FindOpenSpellSlot

Em baixo Adicione essa Função:

Function PlayerNoRankReset(ByVal Index As Long) As Long
    Dim i As Integer

    For i = 1 To MAX_RANKS
        If Trim$(ResetRank(i).Nome) = GetPlayerName(Index) Then
           PlayerNoRankReset = i
        End If
        DoEvents
    Next i
End Function

Agora no Sub CheckPlayerlevelUP Depois de:
If SCRIPTING = 1 Then

Adicione:
               i = PlayerNoRankReset(Index)
               If i > 1 And i < (MAX_RANKS + 1) Then
                  If ResetRank(i - 1).Resetes < GetPlayerReset(Index) Then
                     ResetRank(i).Resetes = ResetRank(i - 1).Resetes
                     ResetRank(i).Nome = ResetRank(i - 1).Nome
                     ResetRank(i - 1).Resetes = GetPlayerReset(Index)
                     ResetRank(i - 1).Nome = GetPlayerName(Index)
                     If i - 1 = 1 Then
                        PlayerMsg Index, "Parabéns, Você agora é Top reset do servidor!", Yellow
                        GlobalMsg GetPlayerName(Index) & " é o novo Top Resete com: (" & GetPlayerReset(Index) & ")", Yellow
                     Else
                        PlayerMsg Index, "Parabéns, Você agora é o " & i - 1 & "º jogador com mais resete do servidor!", BrightBlue
                     End If
                     SalveResete
                  Else
                     ResetRank(i).Resetes = GetPlayerReset(Index)
                     ResetRank(i).Nome = GetPlayerName(Index)
                     SalveResete
                  End If
               ElseIf i = 1 Then
                   ResetRank(i).Resetes = GetPlayerReset(Index)
                   GlobalMsg GetPlayerName(Index) & " continua sendo Top reset com: (" & GetPlayerReset(Index) & ")", BrightGreen
                   SalveResete
               ElseIf i = 0 Then
                   If ResetRank(MAX_RANKS).Resetes < GetPlayerReset(Index) And Trim$(ResetRank(MAX_RANKS).Nome) <> GetPlayerName(Index) Then
                      ResetRank(MAX_RANKS).Resetes = GetPlayerReset(Index)
                      ResetRank(MAX_RANKS).Nome = GetPlayerName(Index)
                      PlayerMsg Index, "Parabéns,Você agora é o " & MAX_RANKS & "º jogador com maior resete do servidor", BrightBlue
                      SalveResete
                   End If
               End If

Concluido...
Creditos:Soulty
Soulty
Soulty
Membro Sênior
Membro Sênior

Mensagens : 281

http://www.nextspirit.xpg.com.br

Ir para o topo Ir para baixo

[Tutorial] Rank Resete Empty Re: [Tutorial] Rank Resete

Mensagem por -DarkninoxD- Dom 14 Jul 2013, 13:03

Caraca, como eu já tenho o próprio ranking, vou modificar este para adaptar ao meu jogo também, Obrigado por compartilhar Soulty.
+1 Cred, você merece \o
-DarkninoxD-
-DarkninoxD-
Membro Vitalicio
Membro Vitalicio

Mensagens : 734

http://dragonball-mrb.blogspot.com

Ir para o topo Ir para baixo

[Tutorial] Rank Resete Empty Re: [Tutorial] Rank Resete

Mensagem por maza Qui 18 Jul 2013, 15:47

Olá amigo fiz tudo direito só q na hora de compilar [Tutorial] Rank Resete B4pl
maza
maza
Novato
Novato

Mensagens : 48

Ir para o topo Ir para baixo

[Tutorial] Rank Resete Empty Re: [Tutorial] Rank Resete

Mensagem por -DarkninoxD- Qui 18 Jul 2013, 16:49

 Maza só pode ser 2 coisas, ou seu jogo não tem sistema de reset, ou ele não reconheçe oque é GetPlayerResets, Caso ja tenha ou não tenha, Use este tutorial:

http://www.mmorpgbr.com/t1265-alladaptar-o-reset-no-seu-jogo
-DarkninoxD-
-DarkninoxD-
Membro Vitalicio
Membro Vitalicio

Mensagens : 734

http://dragonball-mrb.blogspot.com

Ir para o topo Ir para baixo

[Tutorial] Rank Resete Empty Re: [Tutorial] Rank Resete

Mensagem por maza Sex 19 Jul 2013, 12:19

amigo ele tem sistema de reset sim 
então ele nao esta reconhecendo o GetPlayerResets
maza
maza
Novato
Novato

Mensagens : 48

Ir para o topo Ir para baixo

[Tutorial] Rank Resete Empty Re: [Tutorial] Rank Resete

Mensagem por Lincoln Sex 19 Jul 2013, 12:27

Para utilização deste sistema, é necessário fazer este anteriormente 
http://www.mmorpgbr.com/t15386-



Até mais.
Lincoln
Lincoln
Membro
Membro

Mensagens : 125

Ir para o topo Ir para baixo

[Tutorial] Rank Resete Empty Re: [Tutorial] Rank Resete

Mensagem por maza Sex 19 Jul 2013, 15:37

Ok galera, funcionou aqui de boa ^^
Agora eu to tentando colocar o meu sistema de reset não acumulativo mais não está pegando.

aqui esta o meu sistema


If GetPlayerLevel(index) => 999 Then
Call PlayerMsg(index, "Você resetou!", 14)
Call SetPlayerExp(index, 1)
Call SetPlayerLevel(index, 1)
Call SetPlayerResets(index, GetPlayerResets(index) + 1)
Call SetPlayerPOINTS(Index, GetPlayerResets(index) * 500)
Call SetPlayerSTR(index, 0)
Call SetPlayerDEF(Index, 0)
Call SetPlayerMAGI(index, 0)
Call SetPlayerSpeed(Index, 0)
Call SavePlayer(index)
Call SendStats(Index)
End If
maza
maza
Novato
Novato

Mensagens : 48

Ir para o topo Ir para baixo

[Tutorial] Rank Resete Empty Re: [Tutorial] Rank Resete

Mensagem por -DarkninoxD- Sex 19 Jul 2013, 15:59

Não seria melhor Criar uma Sub no final na Principal.txt assim

Código:

Sub Resetar(index)
If GetPlayerLevel(index) >= 999 Then
Call PlayerMsg(index, "Você resetou!", 14)
Call SetPlayerExp(index, 1)
Call SetPlayerLevel(index, 1)
Call SetPlayerResets(index, GetPlayerResets(index) + 1)
Call SetPlayerPOINTS(Index, GetPlayerResets(index) * 500)
Call SetPlayerSTR(index, 5)
Call SetPlayerDEF(Index, 5)
Call SetPlayerMAGI(index, 5)
Call SetPlayerSpeed(Index, 5)
Call SavePlayer(index)
Call SendStats(Index)
End If
End Sub


E ainda na principal.txt embaixo de 
Código:

Call BattleMsg(index, "Você tem " & GetPlayerPOINTS(index) & " pontos para gastar.", 9, 0)


Colocar

Código:

Call Resetar(Index)
-DarkninoxD-
-DarkninoxD-
Membro Vitalicio
Membro Vitalicio

Mensagens : 734

http://dragonball-mrb.blogspot.com

Ir para o topo Ir para baixo

[Tutorial] Rank Resete Empty Re: [Tutorial] Rank Resete

Mensagem por maza Seg 29 Jul 2013, 10:40

.


Última edição por maza em Qua 18 Set 2013, 21:24, editado 2 vez(es)
maza
maza
Novato
Novato

Mensagens : 48

Ir para o topo Ir para baixo

[Tutorial] Rank Resete Empty Re: [Tutorial] Rank Resete

Mensagem por MaxyMowt Qua 28 Ago 2013, 15:52

aff e dificil alguem tira uma foto  me amostrando aonde e a ultima
MaxyMowt
MaxyMowt
Novato
Novato

Mensagens : 6

Ir para o topo Ir para baixo

[Tutorial] Rank Resete Empty Re: [Tutorial] Rank Resete

Mensagem por maza Qua 18 Set 2013, 21:21

Olá estou com um problema nesse sistema de reset ,tipo ele ta ok aqui ai eu reseto umas 5 vezes ele conta direitinho os 5 resets mais se eu sair do server e entrar de novo ele zera os resets e meu /ki parou de funcionar .
maza
maza
Novato
Novato

Mensagens : 48

Ir para o topo Ir para baixo

[Tutorial] Rank Resete Empty Re: [Tutorial] Rank Resete

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos