Difference between revisions of "Action specials"
From ECWolf Wiki
DavidAramant (talk | contribs) m (Improving formatting)  | 
				DavidAramant (talk | contribs)   (Minor wording changes)  | 
				||
| Line 25: | Line 25: | ||
* 1: <tt>Door_Open( tag, speed, delay, lock, type )</tt>  | * 1: <tt>Door_Open( tag, speed, delay, lock, type )</tt>  | ||
:Activates a map tile as a sliding door.  | :Activates a map tile as a sliding door.  | ||
| − | ::<tt>tag</tt> - The tag of the map   | + | ::<tt>tag</tt> - The tag of the map spot which houses the door.    | 
::<tt>speed</tt> - Typical speed for a Wolf3D door is 16.    | ::<tt>speed</tt> - Typical speed for a Wolf3D door is 16.    | ||
::<tt>delay</tt> - Tics until the door closes.  300 is normal for a Wolf3D door.  -1 means the door will stay open until manually closed.  | ::<tt>delay</tt> - Tics until the door closes.  300 is normal for a Wolf3D door.  -1 means the door will stay open until manually closed.  | ||
| Line 31: | Line 31: | ||
::<tt>type</tt> - Whether the door is facing east-west (0) or north-south (1).  | ::<tt>type</tt> - Whether the door is facing east-west (0) or north-south (1).  | ||
* 2: <tt>Pushwall_Move( tag, speed, direction, distance )</tt>  | * 2: <tt>Pushwall_Move( tag, speed, direction, distance )</tt>  | ||
| − | :Moves the pushwall in the trigger's   | + | :Moves the pushwall in the trigger's map spot.    | 
| − | ::<tt>tag</tt> - The tag of the map   | + | ::<tt>tag</tt> - The tag of the map spot.  | 
::<tt>speed</tt> - Typical speed for a Wolf3D pushwall is 8.  | ::<tt>speed</tt> - Typical speed for a Wolf3D pushwall is 8.  | ||
::<tt>direction</tt> - The direction to move.  See the general notes about how directions are specified.  | ::<tt>direction</tt> - The direction to move.  See the general notes about how directions are specified.  | ||
Revision as of 02:34, 9 March 2016
Action specials are function which are activated either by UWMF#Triggers or DECORATE actions.
General notes:
- Tags are arbitrary numbers used to link a trigger to the tile that executes it.
 - Speeds are represented in the number of pixels traveled per tic/16. ECWolf runs at 70 tics per second.
 - Directions are relative to the triggering side or absolute if the 8 is added.  Note that diagonal movement is not supported yet
- 0 = right
 - 1 = back right
 - 2 = back
 - 3 = back left
 - 4 = left
 - 5 = towards left
 - 6 = towards
 - 7 = towards right
 - 8 = east
 - 9 = northeast
 - 10 = north
 - 11 = northwest
 - 12 = west
 - 13 = southwest
 - 14 = south
 - 15 = southwest
 
 
List of Action specials
- 1: Door_Open( tag, speed, delay, lock, type )
 
- Activates a map tile as a sliding door.
- tag - The tag of the map spot which houses the door.
 - speed - Typical speed for a Wolf3D door is 16.
 - delay - Tics until the door closes. 300 is normal for a Wolf3D door. -1 means the door will stay open until manually closed.
 - lock - Lock specifies what keys are needed according to LOCKDEFS. 0 = None, 1 = Gold, 2 = Silver, 101 = Gold + Silver
 - type - Whether the door is facing east-west (0) or north-south (1).
 
 
- 2: Pushwall_Move( tag, speed, direction, distance )
 
- Moves the pushwall in the trigger's map spot.
- tag - The tag of the map spot.
 - speed - Typical speed for a Wolf3D pushwall is 8.
 - direction - The direction to move. See the general notes about how directions are specified.
 - distance - The distance in tiles to move. A value of 0 means the map tile will move until it is blocked by something.
 
 
- 3: Exit_Normal( pos )
 
- Exits the level using the standard exit.
- pos - reserved and should be 0.
 
 
- 4: Exit_Secret( pos )
 
- Exits the level using the secret exit.
- pos - reserved and should be 0.
 
 
- 5: Teleport_NewMap( map, pos, flags )
 
- Exits and travels to the specified map by levelnum.
- map - The levelnum to travel to.
 - pos - reserved and should be 0.
 - flags - 1 = Keep direction, 2 = Keep position
 
 
- 6: Exit_VictorySpin()
 
- Standard exit but does a BJ jump sequence. Normally activated by a pickup. This sequence is partially handled by the BJRun actor which is spawned.
 
- 7: Exit_Victory( pos )
 
- Exits the level using the victory exit.
- pos - reserved and should be 0.
 
 
- 8: Trigger_Execute( x, y, z )
 
- Executes all triggers on a given map spot. Useful for activating something on monster death or having multiple switches do the same thing.
- x - The X coordinate of the tile.
 - y - The Y coordinate of the tile.
 - z - The Z coordinate of the tile.
 
 
- 9: StartConversation( tid, faceTalker ) (New from 1.4)
 
- This is an experimental function for starting a USDF dialog. Not very useful with current implementation. Documented here for completeness.
 
- 10: Door_Elevator( switchTag, speed, delay, lock, type ) (New from 1.4)
 
- Similar to Door_Open in every manner except that the tag should point to the elevator switch.
 
- 11: Elevator_SwitchFloor( elevTag, doorTag, callSpeed, nextTag ) (New from 1.4)
 
| Note: Elevator support is somewhat experimental and may be missing a few features. Changes may occur in order to improve compatibility with Rise of the Triad. | 
- Triggers the elevator movement. Things in the elevator are moved relative to the switch and the door.
- elevTag - Should the tag of the first switch in the sequence.
 - doorTag - The point to the door for this stop.
 - callSpeed - The time is takes for the elevator to move to or from this floor.
 - nextTag - The point in the next switch in the sequence.