Página 1 de 1

Novos flags adicionados

Enviado: Seg Jul 06, 2009 4:38 pm
por DuduKrazy
é 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:

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
}
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.

Enviado: Seg Jul 06, 2009 4:40 pm
por Pedro Vc
É possível criar novos estilos de headbob agora ou só da pra tirar o headbob mesmo?

Re: Novos flags adicionados

Enviado: Sex Ago 14, 2009 12:57 pm
por Mathey Bu
dudukrazy tb tem como botar um crossair caso pvc precisa na parte do zoom e ex

A_SetCrossAir

Re: Novos flags adicionados

Enviado: Sáb Ago 15, 2009 4:36 am
por Logan MTM
Só tem um porém Dudu...

Isso que vc mostrou são Functions! Flag são propriedade dos Actors, aquelas que usamos +FLAG -FLAG. :lol: