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]

1Tutorial Transformação por comando em Dom 13 Jan 2013, 09:35

Halt

avatar
Administrador
Administrador
thales12 escreveu:Transformação por comando..
No Client~Side fassa o seguinte..

Procure por:

Código:
Select Case Command(0)

Agora em baixo disso adicione:

Código:
Case "/ssj"
Trans 1

Case "/ssj2"
Trans 2

Case "/normal"
Normal

No Final do MODclientTCP

Código:
Sub Trans(ByVal Trans As Byte)
Dim Buffer As clsBuffer
Set Buffer = New clsBuffer
Buffer.WriteLong CTrans
Buffer.WriteByte Trans
SendData Buffer.ToArray()
Set Buffer = Nothing
'dshfox
'OhYehBeibi.Blogspot.com
'OhYehBeibi.Webs.Com
End Sub

Sub Normal()
Dim Buffer As clsBuffer
Set Buffer = New clsBuffer
Buffer.WriteLong CVoltarNormal
SendData Buffer.ToArray()
Set Buffer = Nothing
'dshfox
'OhYehBeibi.Blogspot.com
'OhYehBeibi.Webs.Com
End Sub

Em, MODenumerations

Código:
cuntradeitem

Adcione em baixo:

Código:
CTrans
CVoltarNormal

Client~Side
terminado agora Server~Side:

Procure Por:

Código:
HandleDataSub(CUntradeItem) = GetAddress(AddressOf HandleUntradeItem)

Embaixo adicione:

Código:
HandleDataSub(CTrans) = GetAddress(AddressOf HandleTransformação)
HandleDataSub(CVoltarNormal) = GetAddress(AddressOf HandleVoltarNormal)


No Final do HandleData Adicione:

Código:
Sub HandleTransformação(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
'DshFox
'OhYehBeibi.Webs.Com
'OhYehBeibi.Blogspot.com
Dim Buffer As clsBuffer
Dim trans As Byte

Set Buffer = New clsBuffer
Buffer.WriteBytes Data()

trans = Buffer.ReadByte

Set Buffer = Nothing

Select Case trans
Case 1 'SJJ
'===========
'Trans do Goku
'=============

If GetPlayerSprite(Index) = 1 Then 'sprite goku normal
If GetPlayerLevel(Index) >= 5 Then ' se tiver lvl 5
SetPlayerSprite Index, 2 'sprite do goku ssj
SetPlayerStat Index, Stats.strength, GetPlayerStat(Index, Stats.strength)  30
SetPlayerStat Index, Stats.endurance, GetPlayerStat(Index, Stats.endurance)  30
SetPlayerStat Index, Stats.intelligence, GetPlayerStat(Index, Stats.intelligence)  30
SendPlayerData Index
SendStats Index
Else: PlayerMsg Index, "Não tem o level necessário", Red
End If
Exit Sub
End If
'=================
'Trans de Outro personagem;Vegita
'=================
If GetPlayerSprite(Index) = 3 Then ' sprite normal do vegita
If GetPlayerLevel(Index) >= 5 Then 'se for lvl 5 ou maior
SetPlayerSprite Index, 4 'sprite ssj do vegita
SetPlayerStat Index, Stats.strength, GetPlayerStat(Index, Stats.strength)  30
SetPlayerStat Index, Stats.endurance, GetPlayerStat(Index, Stats.endurance)  30
SetPlayerStat Index, Stats.intelligence, GetPlayerStat(Index, Stats.intelligence)  30
SendPlayerData Index
SendStats Index
Else: PlayerMsg Index, "Não tem o level necessário", Red
End If
Exit Sub
End If

'----'
'Fim da Trans1 "ssj"
'--
Case 2 'SSJ2
'==========
'Trans SSJ2 do goku
'--------
If GetPlayerSprite(Index) = 1 Then ' se ele não tiver transformado
If GetPlayerLevel(Index) >= 10 Then ' se ele tiver lvl 10
SetPlayerSprite Index, 5 ' sprite ssj2 do goku
SetPlayerStat Index, Stats.strength, GetPlayerStat(Index, Stats.strength)  60
SetPlayerStat Index, Stats.endurance, GetPlayerStat(Index, Stats.endurance)  60
SetPlayerStat Index, Stats.intelligence, GetPlayerStat(Index, Stats.intelligence)  60
SendPlayerData Index
SendStats Index
Else: PlayerMsg Index, "Não tem o level necessário", Red
End If
'Else: PlayerMsg Index, "Precisa voltar ao normal se quizer se transformar em outro nível", Red
Exit Sub
End If

If GetPlayerSprite(Index) = 3 Then ' se ele não tiver transformado
If GetPlayerLevel(Index) >= 10 Then ' se ele tiver lvl 10
SetPlayerSprite Index, 6 ' sprite ssj2 do vegita
SetPlayerStat Index, Stats.strength, GetPlayerStat(Index, Stats.strength)  60
SetPlayerStat Index, Stats.endurance, GetPlayerStat(Index, Stats.endurance)  60
SetPlayerStat Index, Stats.intelligence, GetPlayerStat(Index, Stats.intelligence)  60
SendPlayerData Index
SendStats Index
Else: PlayerMsg Index, "Não tem o level necessário", Red
End If
'Else: PlayerMsg Index, "Precisa voltar ao normal se quizer se transformar em outro nível", Red
Exit Sub
End If

'==========
'Fim da trans SSJ2
'==========
Case 3 ' SSJ3
'agora,eh soh repetir pegando de exemplo os 2 casos acima
Case 4 'ssj4

Case 5 'ssj5..
'pode add qntas quizer mas tem q ser ANTES do end select
End Select

End Sub

Sub HandleVoltarNormal(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
Dim Buffer As clsBuffer
Set Buffer = New clsBuffer
Buffer.WriteBytes Data()
Set Buffer = Nothing

'DshFox
'OhYehBeibi.Webs.Com
'OhYehBeibi.Blogspot.com
Select Case GetPlayerSprite(Index)
Case 2 'sprite goku ssj
SetPlayerSprite Index, 1 'sprite do goku normal
SetPlayerStat Index, Stats.strength, GetPlayerStat(Index, Stats.strength) - 30
SetPlayerStat Index, Stats.endurance, GetPlayerStat(Index, Stats.endurance) - 30
SetPlayerStat Index, Stats.intelligence, GetPlayerStat(Index, Stats.intelligence) - 30
SendPlayerData Index
SendStats Index
Exit Sub

Case 4 'sprite vegita ssj
SetPlayerSprite Index, 3 'sprite do vegita normal
SetPlayerStat Index, Stats.strength, GetPlayerStat(Index, Stats.strength) - 30
SetPlayerStat Index, Stats.endurance, GetPlayerStat(Index, Stats.endurance) - 30
SetPlayerStat Index, Stats.intelligence, GetPlayerStat(Index, Stats.intelligence) - 30
SendPlayerData Index
SendStats Index
Exit Sub

Case 5 'sprite goku ssj2
SetPlayerSprite Index, 1 'sprite do goku normal
SetPlayerStat Index, Stats.strength, GetPlayerStat(Index, Stats.strength) - 60
SetPlayerStat Index, Stats.endurance, GetPlayerStat(Index, Stats.endurance) - 60
SetPlayerStat Index, Stats.intelligence, GetPlayerStat(Index, Stats.intelligence) - 60
SendPlayerData Index
SendStats Index
Exit Sub

Case 6 'sprite vegita ssj2
SetPlayerSprite Index, 3 'sprite do vegita normal
SetPlayerStat Index, Stats.strength, GetPlayerStat(Index, Stats.strength) - 60
SetPlayerStat Index, Stats.endurance, GetPlayerStat(Index, Stats.endurance) - 60
SetPlayerStat Index, Stats.intelligence, GetPlayerStat(Index, Stats.intelligence) - 60
SendPlayerData Index
SendStats Index
Exit Sub

End Select


End Sub

Procure por:

Código:
CUntradeItem

Em Baixo Adcione:

Código:
CTrans
CVoltarNormal

Já Está adicionado 2 transformações, só pra simplificar. então se você for botar mais transformações no client adicione:

Código:
trans NumeroDaTransFormação

Créditos: Dsh
Créditos: thales por postar


__________________________________________
[Você precisa estar registrado e conectado para ver este link.]
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-
[Você precisa estar registrado e conectado para ver este link.] - [Você precisa estar registrado e conectado para ver este link.] - [Você precisa estar registrado e conectado para ver este link.] - [Você precisa estar registrado e conectado para ver este link.] - [Você precisa estar registrado e conectado para ver este link.]

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