MissileAttack: Difference between revisions

From Eternity Wiki
Jump to navigationJump to search
No edit summary
 
Line 1: Line 1:
'''MissileAttack'''(''name'', ''type'', ''zofs'', ''aofs'', ''melee'')
{{codepointer
|description=Very powerful parameterized monster projectile attack pointer. Can be used to create standard attacks or angular spreads, with or without homing. Can fire missiles at a customized height, and can optionally chain to another state when the object is within melee range of its target, allowing situational attacks like those used by the Imp, Baron, and Cacodemon. The ''melee'' parameter should be set to -1 unless a valid frame name is provided, otherwise the object will disappear forever on melee. It's almost never desirable to leave ''melee'' in its default value.


==Parameter information==
'''Homing''' missiles must also have the '''SEEKERMISSILE''' flag set and a homing maintenance pointer (e.g. [[Tracer]], [[GenTracer]], [[HticTracer]]) in their frames.
*''name'' = Name of thing type to fire (no default, must be valid)  
|usage='''MissileAttack'''(''name'', ''type'', ''zofs'', ''aofs'', ''melee'')
|parameters=*''name'' = Name of thing type to fire (no default, must be valid)  
*''type'' = Select homing property (default of 0 = 0)  
*''type'' = Select homing property (default of 0 = 0)  
**0 or '''normal''' = will not home  
**0 or '''normal''' = will not home  
Line 9: Line 11:
*''aofs'' = Amount to add to actor angle in degrees (default of 0 = 0, can be negative)  
*''aofs'' = Amount to add to actor angle in degrees (default of 0 = 0, can be negative)  
*''melee'' = Frame state to enter for optional melee attack (default of 0 = 0: will disappear; negative values = no melee attack)  
*''melee'' = Frame state to enter for optional melee attack (default of 0 = 0: will disappear; negative values = no melee attack)  
 
|examples=
==Purpose==
Very powerful parameterized monster projectile attack pointer. Can be used to create standard attacks or angular spreads, with or without homing. Can fire missiles at a customized height, and can optionally chain to another state when the object is within melee range of its target, allowing situational attacks like those used by the Imp, Baron, and Cacodemon. The ''melee'' parameter should be set to -1 unless a valid frame name is provided, otherwise the object will disappear forever on melee. It's almost never desirable to leave ''melee'' in its default value.
 
'''Homing''' missiles must also have the '''SEEKERMISSILE''' flag set and a homing maintenance pointer (e.g. [[Tracer]], [[GenTracer]], [[HticTracer]]) in their frames.
 
==Example==
This is a line from a Decorate state definition of a spiderdemon lookalike, that fires a BFG9000 projectile:
This is a line from a Decorate state definition of a spiderdemon lookalike, that fires a BFG9000 projectile:
  SPID H 4 Bright A_MissileAttack(BFGShot, normal, 0, 0, -1)
  SPID H 4 Bright A_MissileAttack(BFGShot, normal, 0, 0, -1)
 
|seealso=
==See also==
*[[AproxDistance]]: generalized way of deciding based on distance to target.
*[[AproxDistance]]: generalized way of deciding based on distance to target.
*[[BulletAttack]]: hitscan counterpart.
*[[BulletAttack]]: hitscan counterpart.
Line 26: Line 21:
*[[Scratch]]: melee counterpart.
*[[Scratch]]: melee counterpart.
*[[SteamSpawn]]: usable for non-missile special effects.
*[[SteamSpawn]]: usable for non-missile special effects.
 
}}
[[Category:Codepointers]]

Latest revision as of 16:27, 8 February 2021

Description

Very powerful parameterized monster projectile attack pointer. Can be used to create standard attacks or angular spreads, with or without homing. Can fire missiles at a customized height, and can optionally chain to another state when the object is within melee range of its target, allowing situational attacks like those used by the Imp, Baron, and Cacodemon. The melee parameter should be set to -1 unless a valid frame name is provided, otherwise the object will disappear forever on melee. It's almost never desirable to leave melee in its default value.

Homing missiles must also have the SEEKERMISSILE flag set and a homing maintenance pointer (e.g. Tracer, GenTracer, HticTracer) in their frames.

Usage

MissileAttack(name, type, zofs, aofs, melee)

Parameters

  • name = Name of thing type to fire (no default, must be valid)
  • type = Select homing property (default of 0 = 0)
    • 0 or normal = will not home
    • 1 or homing = may home
  • zofs = Amount to add to standard z missile firing height (32 units, default of 0 = 0, can be negative)
  • aofs = Amount to add to actor angle in degrees (default of 0 = 0, can be negative)
  • melee = Frame state to enter for optional melee attack (default of 0 = 0: will disappear; negative values = no melee attack)

Examples

This is a line from a Decorate state definition of a spiderdemon lookalike, that fires a BFG9000 projectile:

SPID H 4 Bright A_MissileAttack(BFGShot, normal, 0, 0, -1)

Notes

No particular notes.

See also