thug/Code/Sk/Objects/skaterflags.h
2016-02-14 08:39:12 +11:00

62 lines
3.0 KiB
C++

// Skaterflags.h
#ifndef __SK_OBJECTS_SKATERFLAGS_H__
#define __SK_OBJECTS_SKATERFLAGS_H__
namespace Obj
{
// Flags that can be toggled on and off, and also store how long since last toggle
// This is used as an index into CSkater::m_flags
enum ESkaterFlag
{
TENSE = 0, // tensing for a jump, usually X pressed 0
// SWITCH, // skating switch 1 NOTE: unused?
// LEAN, // leaning L/R (might prohibit us doing other things 2 NOTE: unused?
// TENSE_ON_GROUND, // we were on the ground, and the tense flag was set 3 NOTE: unused?
FLIPPED, // animation is flipped 4
VERT_AIR, // True if we are going to vert air 5
TRACKING_VERT, // True if we are tracking a vert surface below us 6
LAST_POLY_WAS_VERT, // True if the last polygon we skated on was vert 7
CAN_BREAK_VERT, // True if we can break the vert poly we are on 8
CAN_RERAIL, // can get back on the rail again, ahead of rerail time 9
// STARTED_END_OF_RUN, // true if the skater has started the "end of run" script 10
// FINISHED_END_OF_RUN, // True if the skater has returned to his idle state after the "end of run" script 11
// STARTED_GOAL_END_OF_RUN, // True if the goal_endofrun script has started
// FINISHED_GOAL_END_OF_RUN,
RAIL_SLIDING, // True if skater is railsliding 12
CAN_HIT_CAR, // True is we can hit a car. Set when on ground, or have negative y vel 13
AUTOTURN, // True if we can autoturn 14
IS_BAILING, // True if skater is bailing... 15
// IS_ENDING_RUN, // True is skater is in the process of ending his run 16
// IS_ENDING_GOAL, // True if we're ending a goal
SPINE_PHYSICS, // True is skater is going over a spine 17
IN_RECOVERY, // True if recovering from going off vert 18
SKITCHING, // True if we are being towed by a car 19
OVERRIDE_CANCEL_GROUND, // True if we want to ignore the "CANCEL_GROUND" flag for gaps 20
SNAPPED_OVER_CURB, // True if we snapped up or down a curb this frame (for use by camera) 21
SNAPPED, // True if we snapped slightly this frame (for use by camera)
IN_ACID_DROP, // True if we are in an acid drop
AIR_ACID_DROP_DISALLOWED, // True if in-air acid drops are not currently allowed
CANCEL_WALL_PUSH, // True if the current wallpush event is canceled via script
NO_ORIENTATION_CONTROL, // True if spins and leans are turned off due to switching from walking
NEW_RAIL, // True if the rail we land on is a "new" rail
OLLIED_FROM_RAIL, // True if entered current air via an ollie out of a rail
// NOTE: If anyone adds any more flags so that NUM_ESKATERFLAGS > 32, let Steve G know
NUM_ESKATERFLAGS
};
enum EStateType
{
GROUND,
AIR,
WALL,
LIP,
RAIL,
WALLPLANT
};
}
#endif