SectorDamage: Difference between revisions

From Eternity Wiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 12: Line 12:
:*4 or '''DAMAGE_IN_AIR''': if set, it can damage things which don't touch the floor. By default they must rest on the floor to take damage.
:*4 or '''DAMAGE_IN_AIR''': if set, it can damage things which don't touch the floor. By default they must rest on the floor to take damage.
:Any other flags are reserved and must be avoided, because the behaviour may change in future Eternity versions.
:Any other flags are reserved and must be avoided, because the behaviour may change in future Eternity versions.
|notes=Beware that this will not damage things [[Thing type flags|flagged]] '''NOSECTOR'''. Use the '''DONTDRAW''' [[Thing type flags|thing type flag]] if you want such invisible things to be harmed by '''SectorDamage'''.
|notes=
You need to set ''flags'' to at least '''DAMAGE_PLAYERS''' or '''DAMAGE_NONPLAYERS''', otherwise this function will have no effect.
 
Beware that this will not damage things [[Thing type flags|flagged]] '''NOSECTOR'''. Use the '''DONTDRAW''' [[Thing type flags|thing type flag]] if you want such invisible things to be harmed by '''SectorDamage'''.
|return=None.
|return=None.
|id=ACC internal
|id=ACC internal
|seealso=
|seealso=
*[[SetSectorDamage]]}}
*[[SetSectorDamage]]}}

Revision as of 06:58, 1 January 2022

Description

This is an ACS built-in function.

Damages all things inside tagged sectors.

Usage

void SectorDamage(int tag, int amount, str type, str protection, int flags)

Parameters

  • tag: tag of sectors whose things will take damage.
  • amount: how much damage to inflict on each thing.
  • type: damagetype i.e. the kind of attack to inflict on each thing, for purposes such as damage resistance or obituary. Use "" for no specific damage type (this is the general default behaviour in Doom).
  • protection: RESERVED. Must be "", otherwise unpredictable effects will happen with future Eternity versions.
  • flags: a combination of 0 or more of the following:
  • 1 or DAMAGE_PLAYERS: if set, it can damage players from sectors.
  • 2 or DAMAGE_NONPLAYERS: if set, it can damage monsters and any non-player destructibles from sectors.
  • 4 or DAMAGE_IN_AIR: if set, it can damage things which don't touch the floor. By default they must rest on the floor to take damage.
Any other flags are reserved and must be avoided, because the behaviour may change in future Eternity versions.

Return value

None.

Examples

No examples given.

Notes

You need to set flags to at least DAMAGE_PLAYERS or DAMAGE_NONPLAYERS, otherwise this function will have no effect.

Beware that this will not damage things flagged NOSECTOR. Use the DONTDRAW thing type flag if you want such invisible things to be harmed by SectorDamage.

This function's identification in zspecial.acs is: ACC internal.

See also