Templo RPG Maker
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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]

1Transformação Animada Empty Transformação Animada 10/4/2012, 01:49

RenanR

RenanR
Membro Honorário I
Membro Honorário I
A pedidos de Lyon vamos começar

Server:

Na ClsCommands add:
Código:
Sub SendTransAnime(index, sprite1, sprite2, sprite3, antiga)
'enviar a pack para o cliente
Call SendDataTo(index, "transanime" & SEP_CHAR & sprite1 & SEP_CHAR & sprite2 & SEP_CHAR & sprite3 & SEP_CHAR & antiga & END_CHAR)
End Sub

Isso faz com que o comando sendtransanime possa see usado no SadScript, isso é pra quem usa as sprites no SadScript.

Agora para quem usa no Vb mesmo:
Código:
Sub SendTransAnime(byval index as long,byval sprite1 as long, byval sprite2 as long,byval sprite3 as  long, Byaval antiga as long)
'enviar a pack para o cliente
Call SendDataTo(index, "transanime" & SEP_CHAR & sprite1 & SEP_CHAR & sprite2 & SEP_CHAR & sprite3 & SEP_CHAR & antiga & END_CHAR)
End Sub

Vamos para o client .
Add 4 timer nu frmMirage com as propriedades:
Código:
Name= tmr1 até tmr4
Enabled = False

Adicione no ModTypes
Código:
Sub RecebeTrans(ByVal sprite1 As String, ByVal sprite2 As String, ByVal sprite3 As String, ByVal antiga As String)
PutVar App.Path & "\trans.ini", "TRANS", "sprite1", sprite1
PutVar App.Path & "\trans.ini", "TRANS", "sprite2", sprite2
PutVar App.Path & "\trans.ini", "TRANS", "sprite3", sprite3
PutVar App.Path & "\trans.ini", "TRANS", "spriteA", antiga
frmMirage.tmr1.Enabled = True
frmMirage.tmr1.Interval = 1000 '1000 =1 seg
frmMirage.tmr2.Interval = 1000
frmMirage.tmr3.Interval = 1000
frmMirage.tmr4.Interval = 1000
End Sub

agora procure:
Código:

    If Parse(0) = "ingame" Then
        InGame = True
        Call GameInit
        Call GameLoop
        If Parse(1) = END_CHAR Then
            MsgBox ("here")
            End
        End If
        Exit Sub
    End If
Todos os codes In Game devem ser colocados abaixo desse code!

Adicione :
Código:
If Parse(0) = "transanime" Then
        Dim sprite1 As String
        Dim sprite2 As String
        Dim sprite3 As String
        Dim antiga As String
        sprite1 = Parse(1)
        sprite2 = Parse(2)
        sprite3 = Parse(3)
        antiga = Parse(4)
        Call RecebeTrans(sprite1, sprite2, sprite3, antiga)
        Exit Sub
    End If
Vamos para os timers:

Adicione isso nos Códigos da FrmMirage:
Código:
Private Sub tmr1_Timer()
Dim sprite1 As Long
sprite1 = Val(GetVar(App.Path & "\trans.ini", "TRANS", "sprite1"))
Call SetPlayerSprite(MyIndex, sprite1)
tmr1.Enabled = False
tmr2.Enabled = True
Call AddText(1, Red)
End Sub

Private Sub tmr2_Timer()
Dim sprite2 As Long
sprite2 = Val(GetVar(App.Path & "\trans.ini", "TRANS", "sprite2"))
Call SetPlayerSprite(MyIndex, sprite2)
tmr2.Enabled = False
tmr3.Enabled = True
Call AddText(2, Red)
End Sub

Private Sub tmr3_Timer()
Dim sprite3 As Long
sprite3 = Val(GetVar(App.Path & "\trans.ini", "TRANS", "sprite3"))
Call SetPlayerSprite(MyIndex, sprite3)
tmr3.Enabled = False
tmr4.Enabled = True
Call AddText(3, Red)
End Sub

Private Sub tmr4_Timer()
Dim antiga As Long
antiga = Val(GetVar(App.Path & "\trans.ini", "TRANS", "spriteA"))
Call SetPlayerSprite(MyIndex, antiga)
tmr4.Enabled = False
Kill App.Path & "\trans.ini"
Call AddText(4, Red)
End Sub

Pronto .

Explicações :
Esse code vai no lugar do Call SetPlayerSprite, no code da transformação.

exemplo:
Código:
If getplayerlevel = 1> then
call setplayersprite(index,1)
end if
????
Código:
If getplayerlevel = 1> then
call sendtransanime(index,sprite1,sprite2,sprite3,spritefixa)
end if

Explicando o sistema:

Assim quando você for se transformar fará uma .ini com os valores, mas depois ele será automaticamente, e esses valores são dados pelo codigo sendtransanime.
As sprites mudarão de 1 em 1 segundo.

~Créditos : SkyZero
~Autor : Alef

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