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.

Evolução de Classes

5 participantes

Ir para baixo

Evolução de Classes Empty Evolução de Classes

Mensagem por Thales12 Ter 21 maio 2013, 13:38

A pedido do lucas1802010 ta ai o sistema..

fiz de um geito mt simples, preguiça de fazer 100% porem esta funcionando e sem bug.

@explicando oq o sistema faz: ao atingir level 20 ira aparecer uma
imagem com 20 segundos de tempo para vc escolher a classe q vc deseja
virar. ( vc pode regular o tempo e o level para qual desejar ! )

Server~Side:

procure por:

Código:
HandleDataSub(CPartyLeave) = GetAddress(AddressOf HandlePartyLeave)

em baixo add:

Código:
HandleDataSub(CClass) = GetAddress(AddressOf HandleSetClass)

no final dessa mod add:

Código:
Sub HandleSetClass(ByVal index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
    Dim n As Long, i As Long
    Dim Buffer As clsBuffer
    Set Buffer = New clsBuffer
    Buffer.WriteBytes Data()
   
    n = FindPlayer(Buffer.ReadString)
    i = Buffer.ReadLong
    Set Buffer = Nothing
 
    If n < 1 Then
      PlayerMsg index, GetPlayerName(index) & ": " & "não está online.", BrightRed
      Exit Sub
    End If

                If IsPlaying(n) = False Then Exit Sub

    Player(n).Class = i
    Player(n).Sprite = i
    SendPlayerData n
    SavePlayer n
    PlayerMsg n, "Você evoluiu para classe: " & Class(GetPlayerClass(index)).Name, Green
End Sub

procure por:

Código:
CPartyLeave

em baixo add:

Código:
CClass

Client~Side

Crie uma picture na frmmain com name de: picClass

Irei fazer com apenas 3 classes caso vc queria so add mais.

Crie 3 labeis names: lblclass1, lblclass2, lblclass3 Caption:" nome da classe 1, 2 e 3 "

de 2 clicks na lblclass1 e add:

Código:
SendSetClass Trim$(txtAName.text), CLng(Trim$(1))
 Timer2.Enabled = False
 picClass.top = 600

de 2 clicks na lblclass2 e add:

Código:
SendSetClass Trim$(txtAName.text), CLng(Trim$(2))
 Timer2.Enabled = False
 picClass.top = 600

de 2 clicks na lblclass3 e add:

Código:
SendSetClass Trim$(txtAName.text), CLng(Trim$(3))
 Timer2.Enabled = False
 picClass.top = 600

em baixo da lblclass3 crie outra label e bote seu name como: lblTime caption: deixa todo apagado

cria 2 timer

names: tmrClass1 tmrClass2
tmrClass1 enabled true
interval 1000

coloque a tmrClass2 como enabled false
intervavel 10


de dois clicks no tmrClass1 e adicione:

Código:
If Time > 0 Then
Time = Time - 1
lblTime.Caption = "Resta: " & Time & " para escolher sua classe"
End If

em cima adicione:

Código:
Dim Time As Integer

Private Sub Form_Activate()
Time = 20
Timer1.Enabled = True
lblTime.Caption = "Resta: 20s para escolher sua classe"
End Sub

de dois clicks na tmrClass2 e adicione:

[b]picClass[/b].Visible = True
If Time = 0 Then
Timer2.Enabled = False
[b]picClass[/b].top = 600
End If

no final da modClientTcp adicione:

Código:
Public Sub SendSetClass(ByVal Name As String, ByVal ClassNum As Byte)
Dim Buffer As clsBuffer

    ' If debug mode, handle error then exit out
    If Options.Debug = 1 Then On Error GoTo errorhandler
 
      Set Buffer = New clsBuffer
      Buffer.WriteLong CClasse
      Buffer.WriteString Name
      Buffer.WriteLong ClassNum
      SendData Buffer.ToArray()
      Set Buffer = Nothing
 
    ' Error handler
    Exit Sub
errorhandler:
    HandleError "SendSetClass", "modClientTCP", Err.Number, Err.Description, Err.Source, Err.HelpContext
    Err.Clear
    Exit Sub
End Sub

procure por:

Código:
' Make sure CMSG_COUNT is below everything else

acima add:

Código:
CClass

procure por:

Código:
Function GetPlayerLevel(ByVal index As Long) As Long

em baixo de:

Código:
If index > MAX_PLAYERS Then Exit Function
    GetPlayerLevel = Player(index).Level

add:

Código:
If GetPlayerLevel = 20 Then ' 20 e o level q vai aparecer a pic para vc escolher sua classe
    frmMain.Timer2.Enabled = True
    End If


na frmMenu, na picCharacter de dois clique na cmbClass e adicione:

Código:
cmbClass.ListIndex = 0

Fim.

Acho q nao me esqueci de nada.. qualquer coisa falem ai ..

Créditos: Titio Thales


Última edição por Thales12 em Sáb 25 maio 2013, 16:30, editado 2 vez(es)
Thales12
Thales12
Membro Veterano
Membro Veterano

Mensagens : 1011

http://www.rdmgames.tk

Ir para o topo Ir para baixo

Evolução de Classes Empty Re: Evolução de Classes

Mensagem por guifs Ter 21 maio 2013, 14:24

muito bom,mereceu dnv tio thales +1 meu,dps e puder fazer um sistema de adc pontos por tabela para E.O tbm eu agradeço dnv hihi
guifs
guifs
Membro Vitalicio
Membro Vitalicio

Mensagens : 561

Ir para o topo Ir para baixo

Evolução de Classes Empty Re: Evolução de Classes

Mensagem por Eduardo Ter 21 maio 2013, 15:31

Se a intenção de mudar de classe é mudar o visual , vc fez nubeza thales
Código:
Player(n).Sprite = i


E tbm , se tem FindPlayer(....) , e é pelo nome do jogador e não por número , pra que o uso desse codigo:

Código:
If n < 1 Then
      PlayerMsg index, GetPlayerName(index) & ": " & "não está online.", BrightRed
      Exit Sub
    End If

Não esperava menos de tu hahahaahha.., se querem mudar o visual junto com a classe troquem toda a HandleSetClass por:

Código:
Sub HandleSetClass(ByVal index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
    Dim n As Long, i As Long
    Dim Buffer As clsBuffer
    Set Buffer = New clsBuffer
    Buffer.WriteBytes Data()
   
    n = FindPlayer(Buffer.ReadString)
    i = Buffer.ReadLong
    Set Buffer = Nothing

    If n = VbnullString then Exit Sub

    Player(n).Class = i
    Select Case Player(n).Sex
        Case SEX_MALE
              Player(n).Sprite = Class(GetPlayerClass(n)).MaleSprite(0)
        Case SEX_FEMALE
              Player(n).Sprite = Class(GetPlayerClass(n)).FemaleSprite(0)
        Case Else
              Exit Sub
    End Select
    SendPlayerData n
    PlayerMsg n, "Você evoluiu para classe: " & Class(GetPlayerClass(index)).Name, Green
End Sub


Última edição por Eduardo em Sex 24 maio 2013, 15:31, editado 4 vez(es)
Eduardo
Eduardo
Membro Veterano
Membro Veterano

Mensagens : 1178

Ir para o topo Ir para baixo

Evolução de Classes Empty Re: Evolução de Classes

Mensagem por Thales12 Ter 21 maio 2013, 15:47

eduardo a handlesetclass q eu botei ja esta certa peço q retire a sub do seu post ! Smile
obrigado
Thales12
Thales12
Membro Veterano
Membro Veterano

Mensagens : 1011

http://www.rdmgames.tk

Ir para o topo Ir para baixo

Evolução de Classes Empty Re: Evolução de Classes

Mensagem por MrMota Ter 21 maio 2013, 16:27

Imagem de como fica?
MrMota
MrMota
Membro Veterano
Membro Veterano

Mensagens : 918

Ir para o topo Ir para baixo

Evolução de Classes Empty Re: Evolução de Classes

Mensagem por Thales12 Ter 21 maio 2013, 16:28

MrMota escreveu:Imagem de como fica?

[aa] fassa o sistema ai tu vai ver e.e
Thales12
Thales12
Membro Veterano
Membro Veterano

Mensagens : 1011

http://www.rdmgames.tk

Ir para o topo Ir para baixo

Evolução de Classes Empty Re: Evolução de Classes

Mensagem por MrMota Ter 21 maio 2013, 16:41

Ok, kkkkk'
Mas é sempre bom posta como fica, assim alguns não desperdiçam tempo, se não for o que querem...
MrMota
MrMota
Membro Veterano
Membro Veterano

Mensagens : 918

Ir para o topo Ir para baixo

Evolução de Classes Empty Re: Evolução de Classes

Mensagem por Thales12 Ter 21 maio 2013, 21:00

MrMota escreveu:Ok, kkkkk'
Mas é sempre bom posta como fica, assim alguns não desperdiçam tempo, se não for o que querem...

e so ler a descrição e.e
ninguem é tao burro de ler para q serve e nao entender e.e
Thales12
Thales12
Membro Veterano
Membro Veterano

Mensagens : 1011

http://www.rdmgames.tk

Ir para o topo Ir para baixo

Evolução de Classes Empty Re: Evolução de Classes

Mensagem por Dolver Ter 21 maio 2013, 23:55

Muito bom o sistema! Vai me ajudar bastante!
Dolver
Dolver
Membro Sênior
Membro Sênior

Mensagens : 331

http://aquelemesmomenino.tumblr.com/

Ir para o topo Ir para baixo

Evolução de Classes Empty Re: Evolução de Classes

Mensagem por Eduardo Sex 24 maio 2013, 10:21

Thales , volta pro mundo das maravilhas , em q mundo teu codigo ta certo? , kkkkkkk faz me rir não namoral , a minha HandleSetClass é que está certa
Eduardo
Eduardo
Membro Veterano
Membro Veterano

Mensagens : 1178

Ir para o topo Ir para baixo

Evolução de Classes Empty Re: Evolução de Classes

Mensagem por Thales12 Sáb 25 maio 2013, 00:23

testa a minha e o senhor vai ver..
Thales12
Thales12
Membro Veterano
Membro Veterano

Mensagens : 1011

http://www.rdmgames.tk

Ir para o topo Ir para baixo

Evolução de Classes Empty Re: Evolução de Classes

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