[Resolvido] Problemas com ângulo de Projetil
3 participantes
Página 1 de 1
[Resolvido] Problemas com ângulo de Projetil
Estive editando os projeteis, até querer mexer em um detalhe. em muitos personagens é colocado como padrão para um projetil seguir em linha reta, ou para cima. sem fazer curvas, ou possuir variações. vi alguns chars que ficam bem legais com isso e tentei testar, mas o maximo que consigo são projeteis com variaveis grandes, e se tento entrar com um valor arredondado (1,5 por exemplo) Dá erro. alguém sabe um jeito de criar um state que dé um angulo neste resultado?
Código que estou usando para tentar definir angulo, Velocidade.
O que eu consegui fazer resulta nisto:===========================================
VELOCITY
===========================================
[State 0, VelSet]type = VelSet
trigger1 = Time = 0
x = 8
y = ifelse(random>=500,-random%2,random%2)
Se alguém puder me ajudar/ensinar/explicar a trabalhar nesse detalhe, ficarei expressamente feliz. xD
Benhazard- Mensagens : 27
Reputação : 1
Desde : 25/05/2012
Re: [Resolvido] Problemas com ângulo de Projetil
O decimal é "1.5" por exemplo, e não "1,5", mas o raciocinio está correto!
Gustavo Carvalho- Mensagens : 746
Reputação : 9
Desde : 28/06/2011
Re: [Resolvido] Problemas com ângulo de Projetil
eu sei, (escrevi errado) mas dá nisso se faço desta forma:
Benhazard- Mensagens : 27
Reputação : 1
Desde : 25/05/2012
Re: [Resolvido] Problemas com ângulo de Projetil
Mande a programação do poder completa...
Gustavo Carvalho- Mensagens : 746
Reputação : 9
Desde : 28/06/2011
Re: [Resolvido] Problemas com ângulo de Projetil
Certo
- " Fireball da Pan " :
Moves.CNS
; Fireball
[Statedef 1500] ;lugar onde será definido o projetil esquerdo
type = S
movetype= I
physics = S
juggle = 4
poweradd= -100
ctrl = 0
anim = 1500
[State 0, VarAdd]
type = VarAdd
trigger1 = !time
v = 20
value = 1
[State 0, PlaySnd] ;definição para o som do diparo
type = PlaySnd
trigger1 = random >= 500 && time = 0
value = 3,11
volume = 500
[State 0, Explod] ;definição para a animação do efeito do disparo
type = Explod
triggerall = anim = 1500
trigger1 = AnimElem = 2
anim = 6000
ID = 6000
pos = 32,-43
postype = p1
bindtime = 1
removetime = -2
scale = .25,.25
sprpriority = 3
shadow = 0,0,0
ownpal = 1
[State 0, Helper] ;propriedade do projetil, incluido a animação do efeito da magia.
type = Helper
triggerall = anim = 1500
trigger1 = AnimElem = 2
helpertype = normal ;player
name = "fireball"
ID = 7002
stateno = 7002
pos = 27,-43
postype = p1
size.xscale = 0.10
size.yscale = 0.12
[State 210, 5] ;definição do fim do projetil esquerdo
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
Helpers.CNS
; Fireball
[Statedef 7002]
type = A
movetype = A
physics = N
juggle = 0
ctrl = 0
anim = 7002
sprpriority = 3
;===========================================
; VELOCITY
;===========================================
[State 0, VelSet]
type = VelSet
trigger1 = Time = 0
x = 6.5
y = ifelse(random>=500,-random%1,random%1)
;===========================================
; FX
;===========================================
[State 0, PlaySnd]
type = PlaySnd
trigger1 = Time = 1
value = 300,0
volume = 50
[State 0, AfterImage]
type = AfterImage
trigger1 = Time = 0
time = -1
length = 20
palcolor = 256
palbright = 20,0,0
palcontrast = 0,0,0
;palpostbright = 0,0,0
paladd = 20,0,0 ; 20 is for more blue
;palmul = .65,.65,.75
timegap = 1
framegap = 1
trans = add
[State 0, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = noshadow
persistent = 1
ignorehitpause = 1
;===========================================
; PROJECTILE COLLISION
;===========================================
[State 0, HitOverride]
type = HitOverride
trigger1 = 1
stateno = 7003
attr = SCA,NP,SP,HP
slot = 1
time = -1
[State 0, hitby]
type = hitby
trigger1 = 1
value = SCA,NP,SP,HP
time = 1
ignorehitpause = 1
;===========================================
; HIT
;===========================================
[State 200,HitDef]
type = HitDef
trigger1 = !time
attr = S,NP
animtype = Light
damage = 20
guardflag = MA
hitflag = MAF
priority = 1,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
ground.type = High
ground.slidetime = 13
ground.hittime = 18
ground.velocity = -2
air.velocity= - 2,-3
;===========================================
; CHANGESTATE
;===========================================
[State 0, ChangeState]
type = ChangeState
trigger1 = movecontact
trigger2 = frontedgedist < -35 || pos y > 0 ; SCREENOUT
value = 7003
============================================
- Fire ball do kuririn (o que estou tentado entender):
Kuririn.CNS
; KiChain W1
[Statedef 1000]
type = S
movetype= A
physics = S
juggle = 0
velset = 0,0
ctrl = 0
poweradd = -50
sprpriority = 2
anim = 1000
[State 1000, VarSet-Voice]
Type = VarRandom
Trigger1 = !time
v = 27
range = 0,1
[State 1000, PlaySND]
type = PlaySnd
triggerall = var(27)=0 && prevstateno != 1001
trigger1 = !time
value = 3,10
channel = 0
volume = 255
[State 1000, PlaySND]
type = PlaySnd
triggerall = var(27)=1 && prevstateno != 1001
trigger1 = !time
value = 1,6
channel = 0
volume = 255
[State 1000, Sound]
type = PlaySnd
trigger1 = animelem = 2
value = 1000, 0
[State 1000, VarSet]
type = VarSet
trigger1 = !time && prevstateno!=1001
v = 14
value = 0
[State 1000, VarSet]
type = VarSet
triggerall = animelem = 2,>=0 && var(14)=0
trigger1 = (command = "x" || command = "y" || command = "z")
v = 14
value = 1
[State 1000, VarSet]
type = VarSet
triggerall = animelem = 2,>=0 && var(14)=2
trigger1 = (command = "x")
v = 14
value = 3
[State 1000, VarSet]
type = VarSet
triggerall = animelem = 2,>=0 && var(14)=2
trigger1 = (command = "y")
v = 14
value = 4
[State 1000, VarSet]
type = VarSet
triggerall = animelem = 2,>=0 && var(14)=2
trigger1 = (command = "z")
v = 14
value = 5
[State 1000, KiShot.Helper]
type = Helper
trigger1 = animelem = 2
name = "Blast"
stateno = 12150
id = 12150
pos = 16,-42
postype = p1
ownpal = 1
size.xscale = 0.4
size.yscale = 0.3
[State 100, VarRandom]
type = VarRandom
trigger1 = time
v = 41
range = 0,3
[State 1000, MakeDust1]
type = Explod
trigger1 = animelem=2,>=0 && animelem=2,<10 && time%3=0
Anim = 15310+Var(41)
Pos = -23, -1
Id = 15310
sprpriority = 3
removeongethit = 0
Postype = p1
SuperMove = 1
ownpal = 1
scale = 0.5,0.5
[State 1000, MakeDust1]
type = Explod
trigger1 = animelem=2,>=0 && animelem=2,<10 && time%3=0
Anim = 15310+Var(41)
Pos = 7, -1
Id = 15310
sprpriority = 3
removeongethit = 0
Postype = p1
SuperMove = 1
ownpal = 1
scale = 0.5,0.5
[State 1000, HandExplod]
type = Explod
trigger1 = animelem=2
Anim = 12175
Pos = 16, -42
Id = 12175
sprpriority = 3
removeongethit = 1
Postype = p1
SuperMove = 1
ownpal = 1
bindtime = 9
scale = 0.2,0.2
[State 1000, VelSet] ; Empurra o kuririn para tras a cada disparo.
type = VelSet
trigger1 = animelem = 2,=[0,5]
x= -2
;KiChain
[State 1000, End]
type = ChangeState
triggerall = power > 0
trigger1 = AnimTime = 0 && var(14)=1
value = 1001
Helpers.CNS
;Ki Ball Hit
[StateDef 10082]
type = A
physics = N
movetype = A
velset = GetHitVar(xvel)*1.5*facing,GetHitVar(yvel)*0.5
sprpriority = 3
anim = 10082
[State 10082, Shockwave]
type = Explod
trigger1 = !time
anim = 13120
id = 13120
postype = p1
pos = 5, -5
scale = 0.75,0.75
sprpriority = 3
ownpal = 1
[State 10082, Sound]
type = PlaySnd
trigger1 = time = 5
value = 1806, 0
[State 10082, Explod_Ball]
type = Explod
trigger1 = time && !movecontact
Anim = 10081
Pos = 0, 0
Id = 10080
sprpriority = 3
removeongethit = 0
Postype = p1
Bindtime = 1
ownpal = 1
scale = 0.5, 0.5
[State 10082, VarSetX1]
type = VarRandom
trigger1 = Time % 4=0
v = 6
range = -12,12
[State 10082, VarSetY1]
type = VarRandom
trigger1 = Time % 4=0
v = 7
range = -12,12
[State 10082, Sparkles] Particulas do projetil
type = Explod
trigger1 = Time % 4=0
anim = 11555
id = 11555
postype = p1
pos = var(6), var(7)
vel = (vel x)*0.1, (vel y)*0.1
accel = 0, 0.0
ownpal = 1
scale = 0.25, 0.25
sprpriority = 3
[State 10082, VelAddX]
type = VelAdd
triggerall = p2dist x > 0
trigger1 = vel X < 6.0
x = 0.11
[State 10082, VelAddY1]
type = VelAdd
triggerall = (p2dist y -40) > 0
trigger1 = vel Y < 6.0
y = 0.11
[State 10082, VelAddY2]
type = VelAdd
triggerall = (p2dist y -40) < 0
trigger1 = vel Y > -6.0
y = -0.11
[State 10082, Turn]
type = Turn
trigger1 = p2bodydist x < -20
[State 10082, VelSetX1]
type = VelSet
trigger1 = (vel x > 6.0)
x = 6.0
[State 10082, VelSetX2]
type = VelSet
trigger1 = (vel x < -6.0)
x = -6.0
[State 10082, VelSetX1]
type = VelSet
trigger1 = (vel y > 6.0)
y = 6.0
[State 10082, VelSetX2]
type = VelSet
trigger1 = (vel y < -6.0)
y = -6.0
[State 10082, LifeLoss]
type = VarAdd
trigger1 = !time
v = 10
value = -120
[State 10082, HitDef]
type = HitDef
trigger1 = !time
attr = S, SP
affectteam = F
animtype = Hard
Damage = floor(50*(1+parent,power/30000.0)),floor(10*(1+parent,power/30000.0))
hitflag = MAFD
guardflag = MA
pausetime = 1,15
sparkno = -1
sparkxy = -5,0
hitsound = -1
guardsound = -1
ground.type = Low
ground.slidetime = 16
ground.hittime = 16
ground.velocity = 12
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
air.velocity = 5, -4
air.fall = 1
palfx.time = 40
palfx.add = 120,80,0
palfx.sinadd = -120,-80,-0, 120
[State 10082, NotHit]
type = NotHitBy
trigger1 = time <= 2
trigger2 = movecontact
value = ,AA, AP, AT
time = 1
[State 10082, NotHit]
type = NotHitBy
trigger1 = time > 2
value = ,NT,ST,HT
time = 1
[State 10082, Gethit]
type = HitOverride
trigger1 = time > 2
attr = SCA, NP, SP, NA, SA
slot = 1
stateno = 10082
[State 10082, Gethit]
type = HitOverride
trigger1 = time > 2
attr = SCA, HA, HP
slot = 2
stateno = 10083
[State 10082, Next]
type = Changestate
trigger1 = movecontact
trigger2 = pos y >= 0 && vel Y >= 4.0
trigger3 = var(10) <= 0
trigger4 = MoveReversed
value = 13100
[State 10082, Next]
type = Changestate
trigger1 = time >= 24
value = 10080+var(29)
[State 10082, Next]
type = Changestate
trigger1 = time >= 25
value = 10080
[State 10082, VarSet]
type = VarRandom
trigger1 = 1
v = 23
range = -15,15
[State 10082, VarSet2]
type = VarRandom
trigger1 = 1
v = 24
range = -15,15
[State 10082, VarSet2]
type = VarRandom
trigger1 = 1
v = 25
range = 1,25
[State 10082, Particles]
type = Explod
trigger1 = time < 10
anim = 10083+(random%4)
id = 10080
postype = p1
pos = var(23), var(24)
vel = var(23)*0.3, -abs(var(24)*0.3)
accel = 0, 0.25
scale = var(25)*0.0025, var(25)*0.0025
sprpriority = 3
persistant = 0
;Ki Shot:
[StateDef 12150]
type = A
physics = N
movetype = A
velset = 0, 0
anim = 12150
ctrl = 0
sprpriority = 3
[State 12150, No Shadow]
type = AssertSpecial
trigger1 = 1
flag = noshadow
ignorehitpause = 1
pausemovetime = 9999
supermovetime = 9999
[State 12150, VarSet]
type = VarRandom
trigger1 = !time
v = 5
range = -6,6; Angulo da fireball
[State 12150, VelSet]
type = VelSet
trigger1 = !time
x = 8
y = -(var(5)/12.0)
[State 12150, Trans]
type = Trans
trigger1 = 1
trans = add
[State 12150, AfterImage]
type = AfterImage
trigger1 = !time
time = 60
length = 10
palinvertall = 0
palbright = 0,0,0
palcontrast = 64,64,64
paladd = 0,0,0
timegap = 1
framegap = 1
trans = Add
[State 12150, NoHit]
type = NotHitBy
trigger1 = 1
value = SCA
time = 1
[State 12150, HitDef]
type = HitDef
trigger1 = !time
attr = S, SP
animtype = Light
Damage = floor(10*(1+parent,power/30000.0)),floor(2*(1+parent,power/30000.0))
hitflag = MAFD
guardflag = MA
pausetime = 1,14
sparkno = -1
sparkxy = 0,0
hitsound = -1
guardsound = -1
ground.type = Low
ground.slidetime = 16
ground.hittime = 16
ground.velocity = -8, 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
air.velocity = -8, -4
getpower = 0
palfx.time = 30
palfx.add = 90,80,0
palfx.sinadd = -90,-80,0, 100
[State 12150, VarSet]
type = VarRandom
trigger1 = Time % 3=0
v = 23
range = -12,0
[State 12150, VarSet2]
type = VarRandom
trigger1 = Time % 3=0
v = 24
range = -5,5
[State 12150, Sparkles]
type = Explod
trigger1 = Time % 3=0 && !movecontact
anim = ifelse(random>300,11555,11559)
id = 11550
postype = p1
pos = var(23), var(24)
vel = (vel x)*0.1, (vel y)*0.1
accel = 0, 0
ownpal = 1
scale = 0.15, 0.15
sprpriority = 3
[State 12150, Next]
type = Changestate
trigger1 = Movecontact
trigger2 = MoveReversed
value = 13000
[State 12150, DestroySelf]
type = DestroySelf
trigger1 = time = 50
trigger2 = frontedgebodydist < -40
;-------------------------------------------------------------------
Benhazard- Mensagens : 27
Reputação : 1
Desde : 25/05/2012
Re: [Resolvido] Problemas com ângulo de Projetil
Gustavo, eu fui caçando e no fim percebi que foi minha própria falta de atenção. Random só aceita numeros inteiros. a minha ideia basica é focar em dar pequenos diferencias de trajetoria ao projetil. um amigo (Chrono Strife) disse que eu poderia fazer isto (y = (-1+random%3)*0.1), ao inves disto (y = ifelse(random>=500,-random%2,random%2)). pois permite um valor decimal variavel para Y. T-T (burro)
bem, fiz uma anotação simplificada de tudo que fui aprendendo de forma fácil e pratica.
o Projetil padrão "Stand Fire Ball" sai perfeitamente. sem nenhum erro.
Para se ter uma noção do resultado:
mas ai,.... descobri uma cagada terrível. T-T
os Chars padrões de Sawady tem dois Bugs terríveis ( é isso mesmo, não é só na Pan incompleta) Chars como raditz, bardock, goku legend e Gogeta tem um bug que faz o personagem soltar fireballs eternamente, mesmo depois da barra de energia do personagem ter zerado. o segundo, e que toda santa vez que o P1 executa uma fireball no ar, eles entram no modo Fly "(chars de Dbz normalmente tem além do clássico stand, chrouch e jump, tem o fly que tem parâmetros semelhantes ao jump)".
ao inves de pousar no chão. enfim, para piorar. o statedef/states que definem os projeteis aéreos são misturados.
enquanto que a fireball comum tem statedefs mais organizados. (um para a mão direita e um para a mão esquerda), a do firebell air que era para ter quatro statedefs (dois para diagonais, dois horizontais). tem trés, misturado. T-T
vou ser forçado a criar um projetil aéreo novo.
a fireball está dividida em dois arquivos "basico.cns" e "helper.cns".
basico contém as states iniciais. helper é a definição do projetil.
espero que esteja bem orgainzado e facil de entender.:
Basico.CNS
Helper.CNS
PS: eu não revisei os helpers ainda, depois de terminar, vou usar esse como base para criar de forma ordenada e propria, cada stadef. tenho outras duvidas, mas minha prioridade e terminar essa.
se tiver algum bizu para me ensinar, fique a vontade xD
Bizu=Dica
bem, fiz uma anotação simplificada de tudo que fui aprendendo de forma fácil e pratica.
o Projetil padrão "Stand Fire Ball" sai perfeitamente. sem nenhum erro.
Para se ter uma noção do resultado:
mas ai,.... descobri uma cagada terrível. T-T
os Chars padrões de Sawady tem dois Bugs terríveis ( é isso mesmo, não é só na Pan incompleta) Chars como raditz, bardock, goku legend e Gogeta tem um bug que faz o personagem soltar fireballs eternamente, mesmo depois da barra de energia do personagem ter zerado. o segundo, e que toda santa vez que o P1 executa uma fireball no ar, eles entram no modo Fly "(chars de Dbz normalmente tem além do clássico stand, chrouch e jump, tem o fly que tem parâmetros semelhantes ao jump)".
ao inves de pousar no chão. enfim, para piorar. o statedef/states que definem os projeteis aéreos são misturados.
enquanto que a fireball comum tem statedefs mais organizados. (um para a mão direita e um para a mão esquerda), a do firebell air que era para ter quatro statedefs (dois para diagonais, dois horizontais). tem trés, misturado. T-T
vou ser forçado a criar um projetil aéreo novo.
a fireball está dividida em dois arquivos "basico.cns" e "helper.cns".
basico contém as states iniciais. helper é a definição do projetil.
espero que esteja bem orgainzado e facil de entender.:
Basico.CNS
- Spoiler:
; Fireball
[Statedef 1500]
type = S ;tipo de area que é feito o projetil.
movetype= I ; ocioso, pois não é ataque, nem dano. o responsavel pelas propriedades de ataque é o helper.
physics = S ; fisica aplicavel. (opcional) depois ver se ela pode interferir em outras aplicaçoes.
juggle = 4 ; para não gerar combos infinitos.
poweradd= -70 ; energia necessaria para o projetil ser usado.
ctrl = 0 ; no começo e durante o lançamento do projetil, o P1 não pode executar qualquer comando, até que termine o lançamento do projetil.
anim = 1500 ;animação em que o personagem lança o projetil.
;[State 1500, VarAdd] ;Não é necessario por enquanto. preciso me aprofunar melhor em vars e coisas do genero para poder usar isto.
;type = VarAdd
;trigger1 = !time
;v = 20
;value = 1
[State 1500, PlaySnd]
type = PlaySnd
trigger1 = random >= 500 && time = 0 ;frequencia na qual o som vai se repetir.
value = 3,11;Som do disparo ( grupo e numero no SND ).
volume = 500
[State 1500, Explod]
type = Explod
triggerall = anim = 1500 ;essa animação vai ficar sobre a mão do personagem que está executando o projetil.
trigger1 = AnimElem = 2 ;frame escolhido da animação para aparecer o disparo.
anim = 6000 ;animação do efeito do disparo
ID = 6000 ;identidade do evento
pos = 32,-43 ;posição em cordenadas para colocar o efeito do disparo na mão do personagem.
postype = p1
bindtime = 1
removetime = -2
scale = .25,.25 ; tamanho do efeito no qual será exibido
sprpriority = 3
shadow = 0,0,0
ownpal = 1
[State 1500, Helper] ;propriedade do projetil, incluido a animação do efeito da magia.
type = Helper ; a magia é o assistente do P1, fazendo do helper o responsavel do ataque ao inves do P1.
triggerall = anim = 1500 ; animação do P1 sobre o qual o helper deve aparecer
trigger1 = AnimElem = 2 ; elemento do P1 do qual ele vai partir.
helpertype = normal ;player ; tipo do helper
name = "fireball" ; nome Dãããããã...
ID = 7002 ;identidade do helper
stateno = 7002 ;identificação do statedef do helper
pos = 27,-43 ; cordenadas X,Y da origem entre o P1 e a origem do helper, mesma logica do disparo
postype = p1
size.xscale = 0.10 ;Proporção em X
size.yscale = 0.12 ;Proporção em Y
[State 1500, 5] ;definição do fim do projetil esquerdo
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
Helper.CNS
- Spoiler:
; Fireball
[Statedef 7002]
type = A
movetype = A
physics = N
juggle = 0
ctrl = 0
anim = 7002
sprpriority = 3
;===========================================
; VELOCITY
;===========================================
[State 0, VelSet]
type = VelSet
;trigger1 = Time = 0
trigger1 = !time
x = 6.5
y = (-1+random%3)*0.1 ;Ensinado por chrono strife
;y = ifelse(random>=500, -0.1,0.1)ou(random(1,-1))*0.1 ou Y = -0.1;0;0.1
;y = ifelse(random>=500,-random%2,random%2)ele não aceita decimais em random
;===========================================
; FX
;===========================================
[State 0, PlaySnd]
type = PlaySnd
trigger1 = Time = 1
value = 300,0
volume = 50
[State 0, AfterImage]
type = AfterImage
trigger1 = Time = 0
time = -1
length = 20
palcolor = 256
palbright = 20,0,0
palcontrast = 0,0,0
;palpostbright = 0,0,0
paladd = 20,0,0 ; 20 is for more blue
;palmul = .65,.65,.75
timegap = 1
framegap = 1
trans = add
[State 0, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = noshadow
persistent = 1
ignorehitpause = 1
;===========================================
; PROJECTILE COLLISION
;===========================================
[State 0, HitOverride]
type = HitOverride
trigger1 = 1
stateno = 7003
attr = SCA,NP,SP,HP
slot = 1
time = -1
[State 0, hitby]
type = hitby
trigger1 = 1
value = SCA,NP,SP,HP
time = 1
ignorehitpause = 1
;===========================================
; HIT
;===========================================
[State 200,HitDef]
type = HitDef
trigger1 = !time
attr = S,NP
animtype = Light
damage = 20
guardflag = MA
hitflag = MAF
priority = 1,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
ground.type = High
ground.slidetime = 13
ground.hittime = 18
ground.velocity = -2
air.velocity= - 2,-3
;===========================================
; CHANGESTATE
;===========================================
[State 0, ChangeState]
type = ChangeState
trigger1 = movecontact
trigger2 = frontedgedist < -35 || pos y > 0 ; SCREENOUT
value = 7003
;=======================================================|
;=======================================================|
;Fireball Explosion
[Statedef 7003]
type = A
anim = 7999
sprpriority = 3
velset = 0, 0
[State 0]
type = Explod
trigger1 = !Time
anim = 8012
ID = 8012
vel = ceil((-500+random)/80),ceil((-500+random)/80)
random = 20,20
pos = 0,0
scale = .5,.5
facing = -1+(random<500)*2
sprpriority = 9
supermove = 1
removetime = -2
supermovetime = 300
pausemovetime = 300
[State 0]
type = Explod
trigger1 = !Time
anim = 8012
ID = 8012
vel = ceil((-500+random)/80),ceil((-500+random)/80)
random = 20,20
pos = 0,0
scale = .5,.5
facing = -1+(random<500)*2
sprpriority = 9
supermove = 1
removetime = -2
supermovetime = 300
pausemovetime = 300
[State 0]
type = Explod
trigger1 = !Time
anim = 8012
ID = 8012
vel = ceil((-500+random)/80),ceil((-500+random)/80)
random = 20,20
pos = 0,0
scale = .5,.5
facing = -1+(random<500)*2
sprpriority = 9
supermove = 1
removetime = -2
supermovetime = 300
pausemovetime = 300
[State 0]
type = Explod
trigger1 = !Time
anim = 8012
ID = 8012
vel = ceil((-500+random)/80),ceil((-500+random)/80)
random = 20,20
pos = 0,0
scale = .5,.5
facing = -1+(random<500)*2
sprpriority = 9
supermove = 1
removetime = -2
supermovetime = 300
pausemovetime = 300
[State 0]
type = Explod
trigger1 = !Time
anim = 8012
ID = 8012
vel = ceil((-500+random)/80),ceil((-500+random)/80)
random = 20,20
pos = 0,0
scale = .5,.5
facing = -1+(random<500)*2
sprpriority = 9
supermove = 1
removetime = -2
supermovetime = 300
pausemovetime = 300
[State 0, circle]
type = Explod
trigger1 = !Time
anim = 8011
ID = 8000
pos = 19,2
scale = .4,.4
sprpriority = 9
ignorehitpause = 1
supermove = 1
supermovetime = 10
pausemovetime = 10
;Explosion Chica
[State 0, Explod]
type = Explod
trigger1 = Time = 1
anim = 7003
ID = 7003
pos = 20,0 ; offset
postype = p1
facing = 1
vfacing = 1
bindtime = 1
removetime = -2
scale = .5,.5
sprpriority = 3
shadow = 0,0,0
ownpal = 1
removeongethit = 0
[State 0, EnvShake]
type = EnvShake
trigger1 = Time = 0
time = 10
freq = 60
ampl = -4
phase = 90
[State 0, PlaySnd]
type = PlaySnd
trigger1 = Time = 1
value = 300,1
volume = -100
[State 0, DestroySelf]
type = DestroySelf
trigger1 = Time > 0
ignorehitpause = 1
PS: eu não revisei os helpers ainda, depois de terminar, vou usar esse como base para criar de forma ordenada e propria, cada stadef. tenho outras duvidas, mas minha prioridade e terminar essa.
se tiver algum bizu para me ensinar, fique a vontade xD
Bizu=Dica
Benhazard- Mensagens : 27
Reputação : 1
Desde : 25/05/2012
Re: [Resolvido] Problemas com ângulo de Projetil
agora que entendi o que você queria fazer, hehe.. eu pensava que você queria colocar um valor decimal exato, por isso te respondi dizendo que você teria que fazer uma alteração no exe da engine, me desculpe.
Re: [Resolvido] Problemas com ângulo de Projetil
Questões resolvidas:
Angulo random com números quebrados.
ChangeState
Freqüência
inversão de Fx (para não ter de criar 10 Fx para um mesmo elemento)
Bug de projetil eterno
já corrigido: frequencia e o tempo usado pelo fireball Air Down.
o que falta fazer:
criar uma predefinição para detectar modo fly, e quando não, retornar ao chão pelo modo Jump.
adicionar um leve deslocamento para não deixar o FireBall Air muito estatico. :/
Com isso já pude entender e fazer algumas coisas. principalmente as Vars. eu tenho que entender como usa-las.
Neocide mostrou um de seus codes de FireBall Air, apesar de não estar usando, pode ajudar alguém, ou dar notas sobre o funcionamento. eu entendi um pouco, testando a programação dele, há uma var 13 que está sempre sendo usada pelo char de Neocide, mas nem todos os chars tem uma var constante (como a Pan, por isso, não sei se dá para usar, tentei testar, mas dá errado, provavelmente porque entra em conflito com alguma coisa. minha cabeça queima as vezes para entender e caçar a solução disso). seria necessario criar uma var constante ou algo assim se não estou errado. se não me engano, isso fica na statedef-2.
mas meu objetivo, e poder usar plenamente um modelo existente pre feito. se não tiver escolha, vou ter de aprender, ou saber usar um modelo sobre um char que não tenha todas as predefinições necessarias para tal code.
Na situação atual seria o ideal, que apesar de eu ter conseguido uma certa noção, eu admito que sou meio noob ainda para tentar meter a cara em algo elaborado demais, ou ao menos, elaborado na minha percepção. T-T enfim, vou continuar metendo a cara ate ver no que dá.
Se alguém puder dar uma olhada nos projeteis, e dar uma opinião. bem, vai me dar uma grande mão, mas estou tentando aprender com o que eu posso. se alguém me ajudar a pular a cerca vai ficar realtivamente mais facil.
https://rapidshare.c...n_Benhazard.rar
---------------Editado - 25 Junho--------------------
Bem, todas as questoes acima foram resolvidas.
Angulo random com números quebrados.
ChangeState
Freqüência
inversão de Fx (para não ter de criar 10 Fx para um mesmo elemento)
Bug de projetil eterno
já corrigido: frequencia e o tempo usado pelo fireball Air Down.
o que falta fazer:
criar uma predefinição para detectar modo fly, e quando não, retornar ao chão pelo modo Jump.
adicionar um leve deslocamento para não deixar o FireBall Air muito estatico. :/
Com isso já pude entender e fazer algumas coisas. principalmente as Vars. eu tenho que entender como usa-las.
Neocide mostrou um de seus codes de FireBall Air, apesar de não estar usando, pode ajudar alguém, ou dar notas sobre o funcionamento. eu entendi um pouco, testando a programação dele, há uma var 13 que está sempre sendo usada pelo char de Neocide, mas nem todos os chars tem uma var constante (como a Pan, por isso, não sei se dá para usar, tentei testar, mas dá errado, provavelmente porque entra em conflito com alguma coisa. minha cabeça queima as vezes para entender e caçar a solução disso). seria necessario criar uma var constante ou algo assim se não estou errado. se não me engano, isso fica na statedef-2.
mas meu objetivo, e poder usar plenamente um modelo existente pre feito. se não tiver escolha, vou ter de aprender, ou saber usar um modelo sobre um char que não tenha todas as predefinições necessarias para tal code.
Na situação atual seria o ideal, que apesar de eu ter conseguido uma certa noção, eu admito que sou meio noob ainda para tentar meter a cara em algo elaborado demais, ou ao menos, elaborado na minha percepção. T-T enfim, vou continuar metendo a cara ate ver no que dá.
- Spoiler:
CNS
;ki blast weak AIR
[StateDef 1305]
type = A
movetype= A
physics = A
juggle = 6
;velset = 0,0
ctrl = 0
anim = 1320
poweradd = 0
sprpriority = 2
[State 0, VelMul]
type = VelMul
trigger1 = time < 12
x = .8
y = .8
;ignorehitpause =
;persistent =
[State 0, VelSet]
type = VelSet
trigger1 = AnimElem = 2, 1
y = -3.5
;ignorehitpause =
;persistent =
[State 0, PowerAdd]
type = PowerAdd
trigger1 = AnimElem = 2
value = -150
ignorehitpause = 1
;persistent =
[State 0, VarAdd]
type = VarAdd
trigger1 = Anim = 1320 && AnimElem = 2
trigger2 = Anim = 1321 && AnimElem = 2
v = 13 ;fv =
value = 1
ignorehitpause = 1
;persistent =
[State 0, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S1000,1
volume = 255
channel = 1
[State 0, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S210,1+(random%3)
volume = 255
channel = 2
[State 0, BGPalFX]
type = PalFX
trigger1 = AnimElem = 2,1
time = 10
add = 128,128,128
mul = 356,356,256
sinadd = -128,-128,-128,40
[State 0, Helper]
type = Helper
trigger1 = anim = 1320 && AnimElem = 2
helpertype = normal
name = "Kiblast weak AIR"
ID = 1315
stateno = 1315
pos = 39,-49
postype = p1
facing = 1
ownpal = 1
size.xscale = .15
size.yscale = .15
[State 0, Helper]
type = Helper
trigger1 = anim = 1321 && AnimElem = 2
helpertype = normal
name = "Kiblast weak AIR"
ID = 1315
stateno = 1315
pos = 39,-49
postype = p1
facing = 1
ownpal = 1
size.xscale = .20
size.yscale = .20
[State 0, ChangeAnim]
type = ChangeAnim
triggerall = Power > 0 && command = "b" && var(13) < 7
trigger1 = anim = 1320 && AnimElem = 2,>5
value = 1321
elem = 1
ignorehitpause = 1
[State 0, ChangeAnim]
type = ChangeAnim
triggerall = Power > 0 && command = "b" && var(13) < 7
trigger1 = anim = 1321 && AnimElem = 2,>5
value = 1320
elem = 1
ignorehitpause = 1
[State 0, ChangeState]
type = ChangeState
trigger1 =!AnimTime
value = 50
ctrl = 0
Cmd
;---------------------------------------------------------------------------
[State -1, Ki blast weak AIR]
type = ChangeState
value = 1305
triggerall = (command != "holddown") && (command = "b") && (var(13) < 7)
trigger1 = (ctrl) && (statetype = A)
trigger2 = (stateno = [600,610]) && (movecontact)
[/td][/tr][/table]
- Spoiler:
- Obrigado, bem, de tres problemas, eu consegui resolver dois. a questão de executar projeteis eternamente, mesmo sem power, está corrigida.
Ainda há a questão da state fly e jump, mas não é nenhum bicho de sete cabeças.
por enquanto, vou ver isso mais tarde.
Estou entendendo aos poucos o enjoada das Vars, ele parece ser uma especie de interruptor para outros eventos. o mais pratico que eu aprendi foi que ela serve para limitar o numero de projeteis. usando o Debug do mugen dá para ver ela em pratica. Como ter uma var que começa com zero, cada vez que o P1 faz o projetil, adiciona +1, quando chega a cinco, a sequencia de projeteis fica inviável, criando assim, um limite de 5 projeteis por uso. e (não sei se é a mesma Var) é dado um retono inicial que começa com valor 50, e quando retorna a zero, pode continuar da mesma forma. deu trabalho, mas aprendi alguma, das troçentas coisas de vars.
A questão realmente chata é: o modelo de programação aplicada por Sawa para projeteis aereos,( feito durante o jump, etc ). é feito com apenas 3 statedefs, gerando 4 ações. do que eu pude aprender/entender, grande parte de seus valores são compartilhados pelos dois modelos.
FireBall Air ( projeteis feitos no ar na horizontal, Seguem em linha reta ( Veja Exemplo 1)) e FireBall Air Down( magias que descem na diagonal, do alto para o chão ( Veja Exemplo 2)).
vendo que já deu para montar duas de tres das fireballs, não quiz apagar a aerea para começar um nova, ainda estou tentando enteder como corrigir a fireball Down.
O caso da fireball Air Down não é muito complicado. o problema atual é a frenquencia de suas animações. e o tempo utilizado por cada uma delas, sempre que corrijo a frequência, o tempo entre elas se torna grande demais deixando esquisito e lerdo, sempre que deixo no tempo certo, só exibe uma das animações (normalmente o esquerdo) todos os projeteis vem na forma Esquerda+Direita, de forma ordenada. da mesma forma que o projetil da stand e air padrão. de alguma forma, há um pequeno erro na Air down, se alguem puder me ajudar a enteder.
talvez seja algo que eu não tenha compreendido ainda, mas venho encher o saco de vocês (principalmente o traveller).
Exemplo 1
Exemplo 2
Se alguém puder dar uma olhada nos projeteis, e dar uma opinião. bem, vai me dar uma grande mão, mas estou tentando aprender com o que eu posso. se alguém me ajudar a pular a cerca vai ficar realtivamente mais facil.
https://rapidshare.c...n_Benhazard.rar
---------------Editado - 25 Junho--------------------
Bem, todas as questoes acima foram resolvidas.
Benhazard- Mensagens : 27
Reputação : 1
Desde : 25/05/2012
Tópicos semelhantes
» [Resolvido] Ajuda com projetil
» [Resolvido] Botões do Mugen
» Problemas com Char - Naruto Kurama
» [Resolvido] Amaterasu
» [Resolvido] O que é um Char NZC?
» [Resolvido] Botões do Mugen
» Problemas com Char - Naruto Kurama
» [Resolvido] Amaterasu
» [Resolvido] O que é um Char NZC?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|
Seg 10 Out 2022, 11:57 am por Doottah
» Shadow Armor x6
Sáb 06 Ago 2022, 12:28 pm por Doottah
» Omega Zero (x4 a x6)
Sex 22 Abr 2022, 4:58 am por Sigmund = E = Wily
» Double x4
Qui 10 Mar 2022, 9:59 pm por Doottah
» Megaman X Normal (x4)
Sáb 18 Dez 2021, 9:23 pm por Doottah
» Dynamo (Sommbrero666)
Qui 29 Jul 2021, 11:32 am por Sommbrero666
» Rockman x4 (JAP)
Seg 26 Jul 2021, 11:54 pm por Doottah
» MUGEN - Rockman x5 (JAP)
Seg 05 Jul 2021, 12:26 am por Doottah
» Dynamo (Download) v1.5
Qui 27 Ago 2020, 11:54 pm por Doottah
» Zero Normal Boss x5 (Download) v1.5
Qui 27 Ago 2020, 11:51 pm por Doottah