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
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
» Ainda temos gente aqui?
Transformação por comando EmptyQui 25 Nov 2021, 14:04 por Halt

» [Dúvida] Como tirar a porcentagem de esquiva
Transformação por comando EmptySex 19 Nov 2021, 17:14 por Halt

» Pokémon Genesis Online! (PGO)
Transformação por comando EmptyQua 05 Jul 2017, 18:08 por Lexar

» Tileset Converter to MV
Transformação por comando EmptySex 12 maio 2017, 14:07 por Douggi

» Pack Resources, Sprites e etc
Transformação por comando EmptyQua 23 Dez 2015, 12:30 por raydengv

» Download RPG Maker 2003 + RTP em português
Transformação por comando EmptyTer 22 Dez 2015, 11:14 por ::KimMax::

» Fantasy Art Online
Transformação por comando EmptyDom 18 Out 2015, 18:42 por daviih123

» Você vai ter medo do Nerve gear?
Transformação por comando EmptySáb 25 Jul 2015, 17:02 por Kirito-kun

» O Barato é louco
Transformação por comando EmptySáb 27 Jun 2015, 16:26 por Halt

» Download RPG Maker 2000 + RTP em português
Transformação por comando EmptyQui 21 maio 2015, 20:28 por Wismael


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

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

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

Halt

Halt
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

https://arenarpgmaker.forumeiros.com

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

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