EVENT PREGAME: Difference between revisions

From EDukeWiki
Jump to navigation Jump to search
Fox (talk | contribs)
No edit summary
m Previous author just copy pasted the EVENT_GAME text and forgot to edit it, wtf?
 
Line 1: Line 1:
EVENT_GAME is a [[EDuke32_event_list|Game Event]].
{{EventTable|1=EVENT_PREGAME|2=closest player to sprite|3=current sprite|4=0 values}}
EVENT_PREGAME is a [[EDuke32_event_list|Game Event]].


This [[event]] is triggered once per tic per sprite in the game. The gamevar [[THISACTOR]] refers to the ID of the actor executing the code.  Thus, it takes the value of each actor in the game.
This [[event]] is triggered once per tic per sprite in the game, if and only if said sprite does not have [[spriteflags|SFLAG_NOEVENTS]] set. The gamevar [[THISACTOR]] is the current spriteNum, while the current player is the closest player to said sprite.


Typically this event is processed after hard-coded effects and the actor code (with [[actor]] or [[useractor]]), while [[EVENT_PREGAME]] is processed before. Thus EVENT_GAME can be used to override these effects. Generally EVENT_GAME is sufficient for coding needs but EVENT_PREGAME has some specific uses.
This event occurs after [[EVENT_PREWORLD]], but before any of the engine code pertaining to sprites and actors, such as <code>MoveActors()</code>, <code>MovePlayers()</code>,<code>MoveFallers()</code> etc. has executed. It also occurs before all CON code defined using [[actor]] or [[useractor]].


Unlike [[actor]] or [[useractor]], EVENT_GAME and EVENT_PREGAME are triggered the same tic the sprite is loaded/spawned, but are processed after [[EVENT_LOADACTOR]] or [[EVENT_EGS]].
Unlike [[actor]] or [[useractor]], EVENT_GAME and EVENT_PREGAME are triggered the same tic the sprite is loaded/spawned, but are processed after [[EVENT_LOADACTOR]] or [[EVENT_EGS]].

Latest revision as of 01:08, 5 February 2022

Event ID player# THISACTOR RETURN
EVENT_PREGAME closest player to sprite current sprite 0 values

EVENT_PREGAME is a Game Event.

This event is triggered once per tic per sprite in the game, if and only if said sprite does not have SFLAG_NOEVENTS set. The gamevar THISACTOR is the current spriteNum, while the current player is the closest player to said sprite.

This event occurs after EVENT_PREWORLD, but before any of the engine code pertaining to sprites and actors, such as MoveActors(), MovePlayers(),MoveFallers() etc. has executed. It also occurs before all CON code defined using actor or useractor.

Unlike actor or useractor, EVENT_GAME and EVENT_PREGAME are triggered the same tic the sprite is loaded/spawned, but are processed after EVENT_LOADACTOR or EVENT_EGS.

One potential use specifically for EVENT_PREGAME is to examine struct values which are clobbered by commands such as ifhitweapon/ifwasweapon.