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.

tem como fazer isso

4 participantes

Ir para baixo

tem como fazer isso Empty tem como fazer isso

Mensagem por gokured Qui 25 Nov 2010, 08:40

1.oi queria ranking de resets para meu serve de o top 1º ao top 10º.

2.quero transformaçoes por comando pq o meu dbz e por pl da ieu quero fazer por comando e e fazer o pl dobra direito nao fa tipo eu tenho 5 de pl em normal no ssj 2 quero q fique 2 x mais . Era para fica 10 nao fica fica 9 8 11 . na moral nao fica serto mano ajuda ae ! tem como fazer isso 535201 dou 10 cred para tem me diser isso e dps mais uma coisa la !

gokured
gokured
Membro Junior
Membro Junior

Mensagens : 65

Ir para o topo Ir para baixo

tem como fazer isso Empty Re: tem como fazer isso

Mensagem por Freitas Sex 26 Nov 2010, 16:34

RANKING(ñ e por resets mais e um ranking ^^):

~~Client-Side~~
Agora você deve abrir seu visual basic 6 com a source do Elysium Brasil(Esse tutorial foi
feito para EEB), va para o modClientTCP e procure por "Sub HandleData(ByVal Data As String)"
Dica: der "Ctrl + F" e bote para ser "Current Project" e digite o nome desejado e ele vai
pesquisa no projeto todo.
Continuando...

A baixo do seguinte codigo:
Código:

    If Parse(0) = "info" Then
        frmLogin.lblOnOff.Caption = "O Servidor está Online"
        frmLogin.lblPlayers.Caption = "com " & Parse(1) & " jogadores"
        frmLogin.lblPlayers.Visible = True
        frmLogin.tmrInfo.Enabled = False
        Exit Sub
    End If
Adicione esse codigo:
Código:

    If LCase$(Parse$(0)) = "msg1" Then
        frmMirage.lblTitulo2.Caption = Parse$(1)
        frmMirage.lblTexto2.Text = Parse$(2)
        frmMirage.picInfo2.Visible = True
        Exit Sub
    End If


e esse também:

Código:

    If LCase$(parse$(0)) = "msg2" Then
        frmMirage.lbltitulo.Caption = parse$(1)
        frmMirage.lbltexto.Caption = parse$(2)
        frmMirage.picmsgc.Visible = True
        Exit Sub
    End If


explicação: Quando eu enviar o "packet" do "Server" ele vai fazer apareser o ranking e etc.
Agora vamos continuar.

Agora procure por:
Código:

       
        ' Refresh Player
        If LCase(Mid(MyText, 1, 10)) = "/atualizar" Then
            Call SendData("refresh" & END_CHAR)
            MyText = vbNullString
            Exit Sub
        End If

A baixo 1 ~~ 2 linhas depois adicione

Código:
        ' Top Lvl
        If LCase(Mid(MyText, 1, 10)) = "/toplvl" Then
            Call SendData("tp" & END_CHAR)
            MyText = vbNullString
            Exit Sub
        End If


Esse codigo que vai pedir o top level.

Client Terminado, agora vamos para o servidor.

~~ Server-Side ~~
Bom essa é uma das partes mais dificiu, por que se você erra, pode não fuciona, então
preste bem a atenção! para não erra.

Abra o modTypes e adicione o seguinte codigo(perto dos types cláro):

Código:

Type TopLvL
    Nome As String
    LEVEL As Integer
End Type

Abaixo adicione

Código:

Public TopLvL(1 To 5) As TopLvL

Agora va para o modGameLogic, va para o final e adicione essa sub:

Código:

Sub SalvarTop()
Dim xs As Byte
    For xs = 1 To 5
        WriteINI "LEVEL", STR$(xs), STR$(TopLvL(xs).LEVEL), App.Path & "\top.ini"
        WriteINI "LEVELNOME", STR$(xs), Trim$(TopLvL(xs).Nome), App.Path & "\top.ini"
        Next xs
End Sub

agora adicione essa outra sub também.

Código:

Sub AtualizarTop(ByVal Index As Long)
Dim i As Byte
If GetPlayerAccess(Index) > 1 Then Exit Sub
i = TopLvL1(Index)
If i > 1 And i < 21 Then
    If TopLvL(i - 1).LEVEL < GetPlayerLevel(Index) Then
        TopLvL(i).LEVEL = TopLvL(i - 1).LEVEL
        TopLvL(i).Nome = TopLvL(i - 1).Nome
        TopLvL(i - 1).LEVEL = GetPlayerLevel(Index)
        TopLvL(i - 1).Nome = GetPlayerName(Index)
        If i - 1 = 1 Then
        msg2 Index, "Parabéns!", "Você agora é Top Level de Bleach Online!"
        GlobalMsg GetPlayerName(Index) & " é o novo Top Level! (Level: " & GetPlayerLevel(Index) & ")", BRIGHTGREEN
        Else
        msg2 Index, "Parabéns!", "Você agora é o " & i - 1 & "º jogador com level mais alto do bleach online!" & vbNewLine & vbNewLine & "Para ver a lista digite /toplvl"
        End If
        SalvarTop
    Else
        TopLvL(i).LEVEL = GetPlayerLevel(Index)
        TopLvL(i).Nome = GetPlayerName(Index)
        SalvarTop
    End If
ElseIf i = 1 Then
    TopLvL(i).LEVEL = GetPlayerLevel(Index)
    GlobalMsg GetPlayerName(Index) & " continua sendo Top Level! (Level: " & GetPlayerLevel(Index) & ")", BRIGHTGREEN
    SalvarTop
ElseIf i = 0 Then
    If TopLvL(20).LEVEL < GetPlayerLevel(Index) And Trim$(TopLvL(20).Nome) <> GetPlayerName(Index) Then
        TopLvL(20).LEVEL = GetPlayerLevel(Index)
        TopLvL(20).Nome = GetPlayerName(Index)
        msg2 Index, "Parabéns!", "Você agora é o 20º jogador com level mais alto do bleach online!" & vbNewLine & vbNewLine & "Para ver a lista digite /toplvl"
        SalvarTop
    End If
End If
End Sub

Agora no modServerTCP adicione essa Function:

Código:

Function TopLvL1(ByVal Index As Long)
Dim i As Byte

For i = 1 To 5
    If Trim$(TopLvL(i).Nome) = GetPlayerName(Index) Then TopLvL1 = i
    DoEvents
Next i
End Function

Pronto agora vamos para o Sub CheckPlayerLevelUp e faça o seguinte

Vai ter esse packet:
Código:

Call SendDataToMap(GetPlayerMap(Index), "levelup" & SEP_CHAR & Index & END_CHAR)
em baixo você coloca isso:
Código:

 AtualizarTop Index
Pronto ^^

Agora vamos para o Sub InitServer() lá no final dela(antes do End Sub) adicione isso
Código:

Dim z As Byte
For z = 1 To 20
    TopLvL(z).LEVEL = Abs(z - 5)
    TopLvL(z).Nome = "Sem Top"
Next z

Agora procure por Sub HandleData(ByVal Index As Long, ByVal Data As String)

lá no meio das "Case "" " você vai adicionar:

Código:

        Case "tp"
        Dim zx As Integer
        Dim Texto As String
        For zx = 1 To 20
            Texto = Texto & zx & ": " & Trim$(TopLvL(zx).Nome) & " Level " & TopLvL(zx).LEVEL & vbNewLine
            DoEvents
        Next zx
        msg1 Index, "TOPS LEVEL NO MOMENTO", Texto
        Exit Sub

Agora va no modServerTCP e adicione essas 2 subs:

Código:

Sub msg1(ByVal Index As Long, ByVal titulo As String, ByVal Texto As String)
Dim Packet As String
Packet = "msg1" & SEP_CHAR & titulo & SEP_CHAR & Texto & END_CHAR
Call SendDataTo(Index, Packet)
End Sub
Sub msg2(ByVal Index As Long, ByVal titulo As String, ByVal Texto As String)
Dim Packet As String
Packet = "msg2" & SEP_CHAR & titulo & SEP_CHAR & Texto & END_CHAR
Call SendDataTo(Index, Packet)
End Sub

Agora lá no modGeneral adicione isso:
Código:

Public Sub WriteINI(INISection As String, INIKey As String, INIValue As String, INIFile As String)
    Call WritePrivateProfileString(INISection, INIKey, INIValue, INIFile)
End Sub

agora você pode ler arquivos inis tem como fazer isso 965439 que nem no Eclipse lol rs

Pronto e Walla!! Sistema de Top Level que nem do fusion, ou se preferir que nem o Crusade
Saga tem como fazer isso 965439

Tudo Ok! qual quer bug informe.

Créditos: OmegaZero

TRANSFORMAÇÕES :
Código:

If Lcase(Trim(TextSay)) = "/ssj" Then
If GetPlayerClass (index) = 1 Then
If GetPlayerLevel(index) => 50 Then
If GetPlayerSprite(index) = 1 Then
Call SetPlayerSprite(index, 2)
Call SetPlayerSTR(Index, GetPlayerSTR(Index) * 50)
Call SetPlayerDEF(Index, GetPlayerDEF(Index) * 50)
Call PlaySound(Index, "ssjtransform.wav")
Call PlayerMsg(index, "Você é um Super Saiyajin!", 4)
Call PlayerWarp (index, GetPlayerMap(index), GetPlayerX(index), GetPlayerY(index),False)
Exit Sub
End If
End If
End If
End If[font=verdana]

para voltar ao normal:
Código:
[/font]If Lcase(Trim(TextSay)) = "/normal" Then
If GetPlayerClass (index) = 1 Then
If GetPlayerLevel(index) => 50 Then
If GetPlayerSprite(index) = 1 Then
Call SetPlayerSprite(index, 2)
Call SetPlayerSTR(Index, GetPlayerSTR(Index) / 50)
Call SetPlayerDEF(Index, GetPlayerDEF(Index) / 50)
Call PlaySound(Index, "ssjtransform.wav")
Call PlayerMsg(index, "Voltou ao Normal!", 4)
Call PlayerWarp (index, GetPlayerMap(index), GetPlayerX(index), GetPlayerY(index),False)
Exit Sub
End If
End If
End If
End If
Freitas
Freitas
Membro Vitalicio
Membro Vitalicio

Mensagens : 676

http://dragonball.6te.net

Ir para o topo Ir para baixo

tem como fazer isso Empty Re: tem como fazer isso

Mensagem por gokured Sáb 27 Nov 2010, 14:29

mano isso nao serve
isso eu sei fazer e quero ranking de resets e transformaçoes com os pontos sertos !pq o meu so te mq nem o forces so pl
gokured
gokured
Membro Junior
Membro Junior

Mensagens : 65

Ir para o topo Ir para baixo

tem como fazer isso Empty Re: tem como fazer isso

Mensagem por Freitas Dom 28 Nov 2010, 08:16

cara vc ta fazendo por PL e quer ranking de resets.
o trans e assim:
Código:

If Lcase(Trim(TextSay)) = "/ssj" Then
If GetPlayerClass (index) = 1 Then
If GetPlayerLevel(index) => 50 Then
If GetPlayerSprite(index) = 1 Then
Call SetPlayerSprite(index, 2)
Call SetPlayerSTR(Index, GetPlayerSTR(Index) * 2)
Call SetPlayerDEF(Index, GetPlayerDEF(Index) * 2)
Call PlaySound(Index, "ssjtransform.wav")
Call PlayerMsg(index, "Você é um Super Saiyajin!", 4)
Call PlayerWarp (index, GetPlayerMap(index), GetPlayerX(index), GetPlayerY(index),False)
Exit Sub
End If
End If
End If
End If
essa vai duplicar!
Código:

If Lcase(Trim(TextSay)) = "/ssj2" Then
If GetPlayerClass (index) = 1 Then
If GetPlayerLevel(index) => 50 Then
If GetPlayerSprite(index) = 1 Then
Call SetPlayerSprite(index, 2)
Call SetPlayerSTR(Index, GetPlayerSTR(Index) * 3)
Call SetPlayerDEF(Index, GetPlayerDEF(Index) * 3)
Call PlaySound(Index, "ssjtransform.wav")
Call PlayerMsg(index, "Você é um Super Saiyajin!", 4)
Call PlayerWarp (index, GetPlayerMap(index), GetPlayerX(index), GetPlayerY(index),False)
Exit Sub
End If
End If
End If
End If
essa vai triplicar!
Código:

If Lcase(Trim(TextSay)) = "/ssj3" Then
If GetPlayerClass (index) = 1 Then
If GetPlayerLevel(index) => 50 Then
If GetPlayerSprite(index) = 1 Then
Call SetPlayerSprite(index, 2)
Call SetPlayerSTR(Index, GetPlayerSTR(Index) * 4)
Call SetPlayerDEF(Index, GetPlayerDEF(Index) * 4)
Call PlaySound(Index, "ssjtransform.wav")
Call PlayerMsg(index, "Você é um Super Saiyajin!", 4)
Call PlayerWarp (index, GetPlayerMap(index), GetPlayerX(index), GetPlayerY(index),False)
Exit Sub
End If
End If
End If
End If
essa vai quatriplicar!

Vamos aprender como modificar?então vamos lá.

If Lcase(Trim(TextSay)) = "/ssj" Then comando para trans.
If GetPlayerClass (index) = 1 Then classe requerida.
If GetPlayerLevel(index) => 50 Then level requerido.
If GetPlayerSprite(index) = 1 Then sprite que vai ficar.
Call SetPlayerSprite(index, 2) sprite que tem que tar.
Call SetPlayerSTR(Index, GetPlayerSTR(Index) * 2) * 2 siguinifica que vc quer 2x,se quizer 3x e so colocar um 3 no lugar do 2.
Call SetPlayerDEF(Index, GetPlayerDEF(Index) * 2) * 2 siguinifica que vc quer 2x,se quizer 3x e so colocar um 3 no lugar do 2.
Call PlaySound(Index, "ssjtransform.wav") aqui o som que vai fazer quando transformar.
Call PlayerMsg(index, "Você é um Super Saiyajin!", 4) frase que aparece quando transformar
Call PlayerWarp (index, GetPlayerMap(index), nao mexa nisso. GetPlayerX(index), GetPlayerY(index),False) nao mexa nisso.
Exit Sub daqui pra baixo deixe assim.
End If
End If
End If
End If

agora sistema de resets vc acha facin.
Freitas
Freitas
Membro Vitalicio
Membro Vitalicio

Mensagens : 676

http://dragonball.6te.net

Ir para o topo Ir para baixo

tem como fazer isso Empty Re: tem como fazer isso

Mensagem por Capitão Taylor Ter 30 Nov 2010, 17:15

meu amigo por 10 cred gualquer um vira proficional em sistemas so pra ganhar os credito.
Capitão Taylor
Capitão Taylor
Membro Junior
Membro Junior

Mensagens : 99

Ir para o topo Ir para baixo

tem como fazer isso Empty Re: tem como fazer isso

Mensagem por musinx Ter 30 Nov 2010, 20:26

você quis dizer:Por 10 cred qualquer um vai no google e procura !*
musinx
musinx
Membro Junior
Membro Junior

Mensagens : 63

Ir para o topo Ir para baixo

tem como fazer isso Empty Re: tem como fazer isso

Mensagem por gokured Sáb 11 Dez 2010, 21:32

mano eu nao tenho for e def e so o pl nao tem for se eu pode isso fica bug nao fica tip tenho 2 de pl na 2 x fica 5
gokured
gokured
Membro Junior
Membro Junior

Mensagens : 65

Ir para o topo Ir para baixo

tem como fazer isso Empty Re: tem como fazer isso

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