| Logado como Visitante | Grupo "Visitantes" Está vendo: Forum | Sábado, 21/12/2024, 11:59 AM | RSS |
Anime Mugen


[ Novas Mensagens · Membros · Regras · Buscar · RSS ]
  • Página 1 de 1
  • 1
Moderador do fórum: lMDl  
Counter Hit
TidusData: Domingo, 16/01/2011, 10:56 AM | Mensagem # 1
Criador
Grupo: Administradores
Mensagens: 557
Awards: 0
Reputação: 25
Status: Offline
esse tutorial é pra fazer um Counter Hit tipo oq tem no SFA3, sei lá se vai ser util pra alguem mas o código tá ai

coloque isso no Statedef -3

Quote
[State -3, VarSet]
type = VarSet
trigger1 = (EnemyNear,MoveType = A && EnemyNear,HitDefAttr = SCA,NA,SA,HA)
var(7) = 2

Explicando:
VarSet vai setar uma var, no caso Var(7), quando o inimigo estiver atacando. O 2 na var (var(7) = 2) vai ser o "contador" enquanto o inimigo está num estado de ataque e tambem é quantos ticks (tempo) vc vai ter pra contra atacar.
EnemyNear,MoveType = A vai verificar se o inimigo mais proximo está atacando.
EnemyNear,HitDefAttr vai ver se o ataque do inimigo é um ataque fisico, SCA - em pé (S), abaixado ©, aéreo (A), NA - ataque normal, SA - super ataque, HA - hiper ataque. É melhor não colocar pra contra atacar projeteis e throws, pode causar alguns erros dependendo do inimigo (throws) e contra atacar projeteis é meio estranho. :P

Quote
[State -3, VarAdd]
type = VarAdd
triggerall = Var(7) > 0
trigger1 = (EnemyNear,MoveType != A || Win || Lose)
var(7) = -1

Explicando:
VarAdd no caso vai diminuir o valor da var (var(7) = -1) até chegar a zero.
Var(7) > 0 o VarAdd só vai começar a subtrair se a var ser maior que zero (var(7) > 0).
EnemyNear,MoveType != A o VarAdd só vai começar a subtrair se o inimigo não estiver em um estado de ataque.

Opcional

Quote
[State -3, EnvColor]
type = EnvColor
trigger1 = (MoveHit && Var(7) > 0)
add = 255,255,255
time = 1
under = 1
ignorehitpause = 1

Explicando:
EnvColor vai fazer a tela piscar
MoveHit && Var(7) > 0 vai fazer a tela piscar apenas se vc acertar o inimigo e a var for maior que zero
add = 255,255,255 vai fazer piscar a tela na cor branca
time = 1 vai fazer piscar a tela por 1 tick
under = 1 faz a tela vai piscar atras dos personagens
ignorehitpause = 1 vai fazer ignorar o hitpause dos golpes

agora no HitDef do seu char faça isso (linhas com negrito, opcional)

Quote
[State 200, HitDef]
type = HitDef
trigger1 = Time = 0
attr = S,NA
animtype = Light
damage = ifelse(Var(7) > 0,30,20)
getpower = ifelse(Var(7) > 0,24,12)
givepower = ifelse(Var(7) > 0,0,10)
guardflag = MA
hitflag = MAFD
ID = 200
sparkno = S10000+Var(16)
sparkxy = 0,-85
hitsound = Sifelse(Random%2,1,2),0
pausetime = 10,17
guard.sparkno = -1
ground.type = High
ground.slidetime = 20
ground.hittime = 20
ground.velocity =-3,0
air.velocity = -2,0
air.animtype = Back

Explicando:
damage = ifelse(Var(7) > 0,30,20), se quando vc acertar o inimigo e a var for maior que zero, vc vai utilizar counter que vai tirar mais vida do inimigo.
getpower = ifelse(Var(7) > 0,24,12), vc vai receber mais power quando acertar o counter.
givepower = ifelse(Var(7) > 0,0,10) vai fazer o inimigo não receber power quando apanha no counter.

o código acaba ai, se alguem tiver sugestões ou achar algum erro no código pode falar




Conhecimento é a única virtude e ignorância é o único vício.

Twitter - Follow Me
www.jgnetwork.com.br | JG Network - Desenvolvimento em Web.


 
Dih_Nii-SanData: Domingo, 16/01/2011, 11:23 AM | Mensagem # 2
Criador Iniciante
Grupo: Usuários
Mensagens: 430
Awards: 1
Reputação: 20
Status: Offline
eu nunca usei esse man .-.
non tive um char que precisa-se '-'
abráa'ç


 
  • Página 1 de 1
  • 1
Buscar:

Copyright Anime Mugen © 2024 Hospedado por uCoz
Refresh Smileys Manager
Mini-chat