MissileAttack: Difference between revisions

From Eternity Wiki
Jump to navigationJump to search
No edit summary
No edit summary
 
(10 intermediate revisions by 3 users not shown)
Line 1: Line 1:
Usage:
{{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.


MissileAttack(args1, args2, args3, args4, args5)
'''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'')
Parameter Information:
|parameters=*''name'' = Name of thing type to fire (no default, must be valid)  
*Args1 = Name of thing type to fire (no default, must be valid)  
*''type'' = Select homing property (default of 0 = 0)  
*Args2 = Select homing property (default of 0 = 0)  
**0 or '''normal''' = will not home  
**0 or '''normal''' = will not home  
**1 or '''homing''' = may home  
**1 or '''homing''' = may home  
*Args3 = Amount to add to standard z missile firing height (32 units, default of 0 = 0, can be negative)  
*''zofs'' = Amount to add to standard z missile firing height (32 units, default of 0 = 0, can be negative)  
*Args4 = 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)  
*Args5 = Frame state to enter for optional melee attack (default of 0 = 0, 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 Args5 parameter should be set to -1 unless a valid frame name is provided, otherwise the object will disappear forever on melee.
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)
Missiles must have a homing maintenance pointer in their frames in order to home.
|seealso=
 
*[[AproxDistance]]: generalized way of deciding based on distance to target.
==See also==
*[[BulletAttack]]: hitscan counterpart.
*[[BulletAttack]]
*[[MissileSpread]]: helper action to shoot multiple missiles in a fan pattern.
*[[List of codepointers]]
*[[List of codepointers]]
*[[Scratch]]
*[[Scratch]]: melee counterpart.
 
*[[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