Novos flags adicionados
Enviado: Seg Jul 06, 2009 4:38 pm
é o seguinte cambada. depois de assistir e participar de uma discussão calorosa (no bom sentido) lá no fórum zdoom, parece que foram adicionados novos flags.
A_ZoomFactor:
Equivale ao comando FOV, só que agora pode ser usado nas armas também. ou seja, agora você pode fazer aquela mira telescópica sem ter que fazer gambiarras no acs.
Novo A_WeaponReady:
esse flag foi modificado. agora você pode fazer por exemplo com que a arma não faça aquele movimento de bobbing em alguns states.
Exemplo:
este código funciona assim. ao apertar o botão de tiro alternativo, aparecerá a mira telescópica. eu criei dois novos states chamados "ReadyScope" (arma pronta para atirar e com a mira) e "FireScope" (arma atirando com a mira telescópica).
A_WeaponReady(WRF_NoFire) = a arma continuará a fazer os movimentos de bobbing. você pode colocar isso num state de Fire para que a arma se mexa enquanto estiver atirando.
A_WeaponReady(WRF_NoBob) = a arma não fará os movimentos de bobbing.
A_ZoomFactor:
Equivale ao comando FOV, só que agora pode ser usado nas armas também. ou seja, agora você pode fazer aquela mira telescópica sem ter que fazer gambiarras no acs.
Novo A_WeaponReady:
esse flag foi modificado. agora você pode fazer por exemplo com que a arma não faça aquele movimento de bobbing em alguns states.
Exemplo:
Código: Selecionar todos
ACTOR HKG3SG1 : Weapon replaces Berserk
{
Inventory.PickupMessage "H&K G3/SG1"
Inventory.PickupSound "misc/w_pkup"
Weapon.AmmoGive 10
Weapon.AmmoType "Clip"
Weapon.AmmoType2 "Clip"
Weapon.Ammouse 1
Weapon.Ammouse2 1
Weapon.Kickback 40
DamageType "FriendlyFire"
Scale 0.14
States
{
Spawn:
G3SG A -1
LOOP
Ready:
HKG3 A 0 A_JumpIfInventory("G3Zoom", 1, "ReadyScope")
HKG3 A 1 A_WeaponReady
LOOP
ReadyScope:
ASNS A 1 A_WeaponReady(WRF_NoBob)
LOOP
Deselect:
TNT1 A 0 A_TakeInventory ("G3Zoom", 3)
TNT1 A 0 A_ZoomFactor(1.0)
HKG3 A 1 A_Lower
Goto Deselect+2
Select:
HKG3 A 1 A_Raise
TNT1 A 0 A_Raise
LOOP
Fire:
ASNS A 0 A_JumpIfInventory("G3Zoom", 1, "FireScope")
HKGF A 0 A_PlayWeaponSound("weapons/sg550_fire")
HKGF A 0 A_FireCustomMissile("GunSmokeSpawner",0,0,5,9)
HKGF A 1 Bright A_FireBullets (1, 1, -1, 24, "Puff2")
HKG3 B 0 A_FireCustomMissile("556MMCasingSpawner",0,0,14,4)
HKG3 B 0 ACS_Execute(987,0,125,random(2,4),0)
HKG3 BCDEFGHI 1 A_WeaponReady(WRF_NoFire)
HKG3 A 8 A_WeaponReady(WRF_NoFire)
HKG3 A 1 A_Refire
Goto Ready
FireScope:
ASNS A 0 A_PlayWeaponSound("weapons/sg550_fire")
ASNS A 1 Bright A_FireBullets (1, 1, -1, 24, "Puff2")
ASNS A 0 A_FireCustomMissile("556MMCasingSpawner",0,0,14,4)
ASNS A 0 ACS_Execute(987,0,125,random(2,4),0)
ASNS A 16
ASNS A 1 A_Refire
Goto ReadyScope
AltFire:
ASNS A 5 A_WeaponReady(WRF_NoFire)
TNT1 A 0 A_JumpIfInventory("G3Zoom", 3, "ZoomOut")
TNT1 A 0 A_JumpIfInventory("G3Zoom", 2, "Zoom3")
TNT1 A 0 A_JumpIfInventory("G3Zoom", 1, "Zoom2")
//fall through
Zoom1:
TNT1 A 0 A_ZoomFactor(2.0)
TNT1 A 0 A_GiveInventory ("G3Zoom", 1)
Goto "AltFireDone"
Zoom2:
TNT1 A 0 A_ZoomFactor(4.0)
TNT1 A 0 A_GiveInventory ("G3Zoom", 1)
Goto "AltFireDone"
Zoom3:
TNT1 A 0 A_ZoomFactor(8.0)
TNT1 A 0 A_GiveInventory ("G3Zoom", 1)
Goto "AltFireDone"
ZoomOut:
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 0 A_TakeInventory ("G3Zoom", 3)
Goto "AltFireDone"
AltFireDone:
ASNS A 1 A_ReFire
Goto "Ready"
}
}
actor G3Zoom : Inventory
{
inventory.maxamount 3
}
A_WeaponReady(WRF_NoFire) = a arma continuará a fazer os movimentos de bobbing. você pode colocar isso num state de Fire para que a arma se mexa enquanto estiver atirando.
A_WeaponReady(WRF_NoBob) = a arma não fará os movimentos de bobbing.