/--------| Criando um lançamento com Helpers |----------------------------------------------------------  Bom, neste tutorial você ira aprender a criar aqueles lançamentos iguais a um Haduken do Street Fighter, uma magia de Dragon Ball Z, uma Kunai do Naruto, e por ai vai... 
 OBS: Nas linhas que estiver para ler tópicos, e por este simples motivo: Quando a explicação e muito grande, atrapalha o entendimento, pois tudo fica bagunçado, e com tópicos fica tudo mais organizado 
 
 
 
 Para que Tudo corra bem neste tutorial, você já deve criar as animações que serão usadas neste Lançamento:  1. Animação para o Personagem lançando a Magia. 
 2. Animação a Magia. 
 3. Animação de explosão desta Magia. ( Caso não tenha compreendido, leia o Tópico 1 no final do tutorial a Explicação). 
 
 
 Para iniciarmos o tutorial, abra seu personagem e vá ate o Constantes (CNS). 
 Crie o statedef do seu personagem lançando a Magia:  
Quote
[StateDef 1] ; Numero do StateDef. 
 type = S ; Leia o Tópico 2 no final do tutorial a Explicação. 
 Movetype = A ; “A” se for um ataque, “I” Neutro , “H” Estado de hit. 
 physics = S ; Leia o Tópico 3 no final do tutorial a Explicação. 
 juggle = 1 ; Leia o Tópico 4 no final do tutorial a Explicação. 
 velset = 0,0 ; Velocidade que você aplicara em todo o state. 
 ctrl = 1 ; Coloque 1 para que tenha controle sobre o char, e 0 para que não tenha. 
 anim = 0 ; Animação do state, que no caso e a animação dele lançado a magia. 
 poweradd = 0 ; Adicionar Power no state. 
 sprpriority = 2 ; Leia o Tópico 5 no final do tutorial a Explicação. 
   Agora adicione o Sub-State do Helper: 
 
Quote
[State 1, Helper] ; Numero do Sub-State. 
 type = Helper ; Nome do Sub-State. (Não Modifique) 
 trigger1 = AnimElem = 1 ; Quando Aparecera este Helper. 
 helpertype = normal ; Tipo do Helper, Normal ou Player. (Neste caso, deixe como Normal) 
 name = “Magia-Tutorial” ; Nome da sua Magia.(Sempre entre aspas, nunca deixe espaço.) 
 ID = 2 ; Numero da identificação do seu helper. 
 stateno = 2 ; Numero do state do seu helper.(Ainda iremos criá-lo) 
 pos = 0,0 ; Posição que seu helper ira aparecer. 
 postype = p1 ; Leia o Tópico 6 no final do tutorial a Explicação. 
 facing = 1 ; Se postype é "left" ou "right", definir facing = 1 faz o "Helper" virar a face para a direita, e -1 para a esquerda.
   Agora adicione mais um sub-state, o ChangeState : 
 
Quote
[State 1, end] ; Numero do Sub-State. 
 type = ChangeState ; Nome do Sub-State. (Não Modifique) 
 trigger1 = AnimTime = 0 ; Quando o state será trocado. 
 value = 0 ; Numero do state que o char ira. 
 ctrl = 1 ; Coloque 1 para que tenha controle sobre o char, e 0 para que não tenha.
   Pronto! A Primeira parte de três esta encerrada. Agora seu personagem já esta começando a lançar a sua magia. Agora vem a parte mais legal da programação de uma magia, iremos programar a própria magia. 
 Crie agora o state que você citou no chamamento do helper, que e o state 2. 
 
Quote
[StateDef 2] ; Numero do StateDef. 
 type = S ; Leia o Tópico 2 no final do tutorial a Explicação. 
 Movetype = A ; “A” se for um ataque, “I” Neutro , “H” Estado de hit. 
 physics = S ; Leia o Tópico 3 no final do tutorial a Explicação. 
 juggle = 1 ; Leia o Tópico 4 no final do tutorial a Explicação. 
 velset = 0,0 ; Velocidade que você aplicara em todo o state. 
 ctrl = 1 ; Coloque 1 para que tenha controle sobre o char, e 0 para que não tenha. 
 anim = 0 ; Animação do state, que no caso e a animação dele lançado a magia. 
 poweradd = 0 ; Adicionar Power no state. 
 sprpriority = 2 ; Leia o Tópico 5 no final do tutorial a Explicação. 
   Adicione o sub-state responsável pela velocidade desta magia: 
 [State 2, VelSet] ; Numero do Sub-State. 
 
Quote
type = VelSet ; Nome do Sub-State. (Não Modifique) 
 trigger1 = 1 ; Quando a velocidade irar ser ativada. 
 x = 5 ; Velocidade X. Frente ou Traz. (Valor Positivo ira pra frente, valor negativo ira pra trás). 
 y = 0 ; Velocidade Y. Cima ou Baixo. (Valor Positivo ira pra baixo, valor negativo ira pra cima).
   Agora adicione o HitDef, o responsável pelo Hit da magia. 
 
Quote
[State 2, 1] 
 type = HitDef 
 trigger1 = AnimElem = 1 
 attr = S, NA 
 damage = 0 
 animtype = Light 
 guardflag = MA 
 hitflag = MAF 
 priority = 3, Hit 
 pausetime = 10, 10 
 sparkno = 0 
 sparkxy = -10, -76 
 hitsound = 5, 0 
 guardsound = 6, 0 
 ground.type = High 
 ground.slidetime = 5 
 ground.hittime = 12 
 ground.velocity = -4 
 airguard.velocity = -1.9,-.8 
 air.type = High 
 air.velocity = -1.4,-3 
 air.hittime = 12
   OBS: Caso alguém queira aprender sobre o HitDef, me envie uma PM, para que eu possa lhe mandar um ótimo tutorial. Não posso postar aqui, pois não e de minha autoria. 
 Agora vamos criar o efeito de Hit da magia, que a o spark, ou a explosão da magia. Vamos começar adicionando o Sub-state chamado Helper: 
 
Quote
[State 2, Helper] ; Numero do Sub-State. 
 type = Helper ; Nome do Sub-State. (Não Modifique) 
 trigger1 = MoveHit 
 helpertype = normal 
 name = "Spark-Raduken" ; Nome da sua Magia.(Sempre entre aspas, nunca deixe espaço.) 
 ID = 3 
 stateno = 3 
 pos = 20,-5 
 postype = p2 
 facing = -1
   Parâmetros do helper explicado no sub-state do helper logo no inicio do tutorial. 
 Agora vamos fazer nossa magia desaparecer quando ela der o hit no p2. 
 Adicione o sub-state chamado DestroySelf, Responsável para destruir states de helpers : 
 
Quote
[State 2, DestroySelf] ; Numero do Sub-State. 
 type = DestroySelf ; Nome do Sub-State. (Não Modifique) 
 trigger1 = (MoveContact) ||( MoveHit) ; Quando o state será destruído. Quando der Hit, ou enconstar no p2 ira dar a animação de explosão. 
 
  
 Opa, Mas uma etapa de nosso tutorial esta concluída!  Agora vem a terceira parte de nosso tutorial, A mais fácil, menor, e mais simples: Criando o state da explosão 
 
 
Quote
[Statedef 3] 
 type = S 
 ctrl = 0 
 anim = 312 
 sprpriority = 2
   Parametros do statedef foram explicado no inicio do tutorial. 
 
Quote
[State 3, DestroySelf] ; Numero do Sub-State. 
 type = DestroySelf ; Nome do Sub-State. (Não Modifique) 
 trigger1 = AnimTime = 0 ; Quando o state será destruído. 
 
   /-----| Tópicos | -------------------------------------------- 
 
 
 1º Tópico: Animação de explosão da Magia.  Bom, você já deve ter percebido, que sempre quando a uma magia, tem uma explosão quando ela e chocada com algo. Neste caso, e desta explosão que estamos falando. 
 
 
 2º Tópico: Statedef [Type]  Esse é o tipo de state do P1 naquele state. Ele define se ele está em pé, agachado, no ar, ou caindo. Os valores correspondentes são: 
 S 	em pé 
 C	agachado 
 A	no ar 
 L	caindo 
 Para permanecer com o tipo de state do state anterior, use o valor U. Se essa linha for omitida, o MUGEN assume que o tipo é S. Você vai mais comumente usar S, C, e A. 
 Por exemplo, um tipo de state agachado requer a seguinte linha: 
 type = C 
 O tipo é usado para determinar vários fatores, sendo o mais importante, como o P1 reagirá ao levar um golpe. Por exemplo, estando um tipo de state em pé, o P1 reagirá como se estivesse em pé no chão. Se o tipo for no ar, então o P1 reagirá como se tivesse levado o golpe no ar. 
 
 
 3º Tópico: Statedef [Physics]  Você precisa especificar que física usará naquele state. Os valores válidos são: 
 S	em pé 
 C	agachado 
 A	no ar 
 N	nenhum 
 Para manter a física do state anterior, use o valor U. Se omitido, o valor N será assumido. O tipo de física é usado para determinar como o P1 se comporta. 
 Para a física S, o P1 tocará o chão. 
 Para a física C, o P1 tocará o chão, assim como no state S acima. 
 Para a física A, o P1 acelerará para baixo, e se sua posição-Y for maior que 0 (isso é, ele toca 
 o chão) ele irá imediatamente para o seu state de aterrissagem. 
 Se você usar a física N o P1 não usará nenhuma dessas físicas pré-programadas. 
 Não confunda a física com o state "type". Elas são na maioria das vezes as mesmas, mas é dado a você a escolha se você quiser um maior controle. 
 Por exemplo, você pode escolher usar N (nenhuma física), e especificar sua própria 
 aceleração e detecção de aterrissagem em um state no ar. 
 
 
 4º Tópico: Statedef [Juggle]  O parâmetro juggle é útil somente para ataques. Ele especifica quantos pontos de juggle o movimento requer. Se omitido para um ataque, esse ataque realizará o juggle se o state de ataque anterior usar o juggle com sucesso. Você deve incluir o parâmetro de juggle em todos os ataques. Se um ataque atravessar mais de um state, inclua o parâmetro juggle somente no primeiro state daquele ataque 
 
 
 . 
 5º Tópico: Statedef [SprPriority]  Muda a prioridade com que as imagens do seu personagem serão desenhadas. Prioridades mais altas são desenhadas sobre as imagens de menor prioridade. 
 
  6º Tópico: PosType 
 Trabalha como o "postype" do controle "Explod". Lembrando que P1 é o seu personagem e P2 é o adversário. 
 - p1 
 Interpreta pos relativo à posição de P1. Valores positivos de x está na frente de P1. 
 Este é o valor padrão para postype. 
 - p2 
 Interpreta pos relativo à posição de P2. Valores positivos de x está na frente de P2. 
 - front 
 Interpreta a posição relativa à parede a qual P1 está olhando. Valores positivos de x se 
 aproximam do centro da câmera, e y relativo aos eixos de P1. 
 - back 
 Interpreta a posição relativa à parede a qual P1 está de costas. Valores positivos de x 
 se aproximam do centro da câmera, e y relativo aos eixos de P1. 
 - left 
 Interpreta xpos e ypos relativo ao córner superior esquerdo. Valores positivos de x levam 
 para a direita da tela. 
 - right 
 Interpreta xpos e ypos relativo ao córner superior direito.Valores positivos de x levam 
 para a direita da tela. 
 
 
 ----[Finalização]------------------------------------------------  Agora sim está tudo acabado. Seu char jah esta lançando a magia, a magia já tem a explosão. A única coisa que falta e criar o comando, mas isso eu não irei explicar neste tutorial. Caso tenha alguma duvida sobre o tutorial, poste-a no tópico do tutorial. 
 E isso, boa sorte com suas magias e seus chars, e ate a próxima 