Move
A move command is used to give velocity to an actor.
Define outside an actor as so:
move <name> <horizontal> <vertical>
<name> is the name of the move command.
Warning: You cannot use the same name from a define, or the game will crash.
<horizontal> is the horizontal velocity of the actor. Negative values reverse direction.
<vertical> is the vertical veloctity of the actor. Negative values cause upward motion.
Used inside an actor, a move command is written as:
move <name> <moveflags...>
<moveflags...> is a (possibly empty) sequence of parameters that specify certain hardcoded movement behavior.
You cannot substitute <name> for a number, define, or gamevar. It has to be predefined with the first definition of move.
moveflags
Values for each <moveflag> (defined in DEFS.CON) are:
moveflag | description | internal value | |
---|---|---|---|
faceplayer | actor faces the player. | 1 | |
geth | use horizontal velocity. | 2 | |
getv | use vertical velocity. | 4 | |
randomangle | actor will face random direction. | 8 | |
faceplayerslow | same as faceplayer, but done gradually. | 16 | |
spin | spin in a clockwise circle. | 32 | |
faceplayersmart | same as faceplayer, but with a slight "lead" on position. | 64 | |
fleeenemy | actor faces away from the player. | 128 | |
jumptoplayer | actor will move vertically and then fall as if jumping. | 257* | |
seekplayer | actor will try to find the best path to the nearest player. | 512 | |
furthestdir | actor faces the furthest distance from the closest player. | 1024 | |
dodgebullet | actor attempts to avoid all shots directed at him. The actor will not avoid GROWSPARK. | 4096 |