OhYeah | Data: Domingo, 11/09/2011, 5:44 PM | Mensagem # 1 |
Aprendiz Destaque
Grupo: Usuários
Mensagens: 123
Awards: 0
Reputação: 2
Status: Offline
| Ae gente minha duvida é a seguinte: Como fazer um ataque que segura o char (p2) e da varios ataques simultaneo ???
Obg se alguem ajudar ;D
|
|
| |
MD | Data: Segunda, 12/09/2011, 3:35 PM | Mensagem # 2 |
Iniciante
Grupo: Usuários
Mensagens: 28
Awards: 0
Reputação: 3
Status: Offline
| E ae fera
Tipow vo tentar te explicar, olha faz tempo que não mexo em mugen por isso não sei se ta certo, mas...
Isso que você ta falando vai ser uma espécie de agarrão, logo pra começo de tudo você vai ter que ter em mente uma coisa.
1- Vai usar um targetbind (serve pra posicionar o p2 ) 2- Vai usar um targetlifeadd (serve pra aumentar ou diminuir o tanto de vida que o p2 tem) 3- Vai ter que usar também um bloco de hit def
Uhullll se bora -qq
Bem depois que você tiver criado seu state de agarrão, provavelmente ele terá um hit def .-.
Digamos que o número do seu state def é ???? e que o número do beginaction (a caixa de animação), vale o mesmo, ou seja é o mesmo número ????, logo para que tudo funcione vamos de inicio, criar um id que terá o mesmo número do state def e da animação (eu acho que nem precisa ser o mesmo número mais pra eu não ter que ir testar coloca isso ai mesmo .-.).
o state def vai ficar mais ou menos assim ó.
Quote ;Agarrão apelão -q [Statedef ????] type = S movetype= A physics = S juggle = 1 ctrl = 0 anim = ???? poweradd = ? ;aqui você da o valor que quiser, se o p1 vai ganhar ou perder "poder" sprpriority = ? ;essa é a prioridade da animação se ela vai ficar na frente ou atraz
[State ????, ?] type = HitDef trigger1 = Time = 0 id = ???? attr = S, NA damage = 0, 0 animtype = Light guardflag = MA hitflag = MAF priority = 3, Hit pausetime = 8, 8 sparkno = s6101 sparkxy = -12, 9 hitsound = s200, 3 guardsound = s0, 0 ground.type = High ground.slidetime = 25 ;isso aqui é para quando acertar o p2 não poder revidar ground.hittime = 25 ; isso aqui é para quando acertar o p2 não poder revidar ground.velocity = 0 airguard.velocity = -1.9,-.8 air.type = High air.velocity = -1.4,-3 air.hittime = 12
[State ????, ?] type = ChangeState trigger1 = AnimTime = 0 value = 0 ctrl = 1
Pequena explicação sobre o Hit def.
Eu deixei o damage zerado pois esse bloco vai funcionar apenas como um gatilho para ativar os outros blocos, que no caso são... targetbind e o targetlifeadd.
É bom também deixar o impacto também igual a zero, ja que o p1 vai segurar o p2, logo será melhor se o p2 não escorregar, pois ai sabe como é né, vai que ele não consegue segurar o p2 por causa do empurrão lol (ground.velocity = 0)
Se perceber coloquei o id ali de ???? ou seja dei um número de identidade para o bloco de hit def pegar legal, por que ele vai ser ativar o targetbind e o targetlifeadd.
Certo agora vamos pro final (mentira )
Você vai ter que criar um bloco de targebind pra definir a posição que o p2 vai ficar ele querendo ou não =D, essa posição só deve ser ativada quando o bloco de hit ali em cima for acionado, ou seja quando o p1 conseguir encostar no p2, ou mapeamento azul do mesmo
O bloco vai ficar assim.
Quote [State ????, ?] type = targetbind trigger1 = movehit > 0 ;isso significa que será ativado apartir de uma imagem zero pra frente =D (explicação do movehit mais abaixo) trigger1 = time = [?, ?] ;esse é o tempo que você vai deixar o p2 parado nessa posição (explicação um pouco mais detalhada abaixo) pos = 0,0 ;essa é a posição, sendo uma x = chão, e a outra y = ar, a esquerda é o chão e a direita é o ar, ai você coloca a que você quiser .-. id = ???? ;esse é o número de identidade, coloque o mesmo que colocou la no bloco de hit def
Explicando o movehit
Como disse antes o bloco de hitdef é quem vai ativar os outros dois blocos, logo o movehit serve exatamente pra identificar o bloco de hit def, ou seja se não tivesse um bloco de hit def e colocasse uma linha de movehit não adiantaria nada por que não tem o bloco de hitdef pra ativar a linha D=
Logo quando ele bater (encostar) no personagem ele será ativado.
Explicando o time
Bem isso aqui [?,?] é o que você vai determinar, apartir de número até outro número, por exemplo
se fosse [1,8], ele vai do 1 ao 8, e no 8 para, logo se for um tempo (time), de 10 a 40, logo o inimigo vai ficar parado em um tempo de 10 a 40 ticks, e no 40 ele não passa.
escolhi essa forma por que é mais facil e exata pra esse tipo de coisa, mais poderia muito bem usar outras que tem por ai .-.
Continuando, agora sim é o final uhulll
Pro final vamos criar um bloco tagertlifeadd, esse bloco como explicado anteriormente, serve tanto pra aumentar como pra diminuir (só um louco aumentaria o life de um personagem que esta lutando contra ¬¬ )
Vai ficar assim o bloco =D
Quote [State ????, ?] type = targetlifeadd trigger1 = time = ? ;escolha um tempo exato para que o life do p2 diminua, se for vários golpes sugiro que crie mais de um trigger ou mesmo blocos value = ? ;o tanto que será acrescentado ou retirado, use um número negativo para tirar o life, por exemplo -40 id = ???? ;esse é o id, coloque o mesmo número do que tem la no bloco de hitdef
Bem o "tuto" é esse, acho que funciona nem testei D=, mais deve pegar, agora é com você, com certeza deve faltar algo mais, mas ai é contigo, a base eu dei agora é desenvolver e usar teu tirocionio (raciocinio D=).
Qualquer coisa me chama no msn quando eu estiver on, mas antes tenta fazer rapaz ^^
até abraços ^^
edit--------------------------------------------------------------------------------
A cara nunca ia funcionar maus, o começo e tals ta até certo (eu acho D=)
mas precisa criar um state def do teu char apanhando ou mandar o p2 pra uma animação sem movimento, pra isso segue a explicação abaixo.
Como fazer o state do p2 ficando paralitico -qq
é simples primeiro ce cria um state def dele paralizado ou a animação dele apanhando, sendo que ele não vai ter como sair depois de ser pego
O State vai ficar assim
Quote [Statedef ???] type = S movetype= H physics = S velset = 0,0 ctrl = 0
[State ???, ?] type = ChangeAnim2 ; vai chamar a animação do p2 Trigger1 = Time = 0 ;será ativado com o tempo igual a zero value = 5000 ;usei um valor normal de animação como a animação 5000 que todo char tem (pelo menos deveria ter)
[State ???, ?] type = posset ;essa será a posição do p2, eu coloquei o y = 0 pra que o p2 não flutue, logo ele estará no chão Trigger1 = time = 0 y = 0
[State ???, ?] type = changestate Trigger1 = Time = 20 ;isso aqui é pra não bugar, depois do desse state o personagem vai ter que ir pra outro state def pra sair da paralização value = 5200 ;depois de acabar a animação do p2 levando a surrinha ele vai pra esse state caindo ctrl = 0
Agora pra finalizar la no state do agarrão apelão -q
coloca esse targetstate, ele serve pra levar o p2 pra esse state def de cima que fiz.
Quote [State ????, ?] type = targetstate Trigger1 = Time > ? && time < ?? && movehit > 0 ;eu usei um tempo maior a tanto e menor a tanto com o movehit pegando em todas as frames value = ??? ;coloca o numero do state inventado pra paralizar o p2 id = ???? ;coloque o número do indereço do bloco de hit def ignorehitpause = 1
Bem se não pegar, maus, alguém ajuda ai por que to enferrujado, olha tem outra forma de fazer isso bem mais facil só que não fiz por que tinha esquecido fui lembrar só depois, maus cara, mais se alguém entender como eu queria fazer arruma ai se estiver errado nem testei ¬¬ depois testo pra ver se pega .-.
flws e maus qualquer coisa...
OFF: No state que tem 4 interrogações de um numero pra ele como por exemplo 4000 e no outro que tem 3 interrogações de outro numero que pode ser 4001
Add ae cambada marciodantasseumigo@hotmail.com
Mensagem editada por MD - Segunda, 12/09/2011, 7:10 PM |
|
| |