Float terminal_velocity 0.30

Float move_velocity 0.14

Float jump_velocity	27

Int weight 1

Vector velocity
=> terminal_velocity
PHYSICS_UPDATE VelocityUpdate
DEBUG_DRAW VelocityDebugDraw

Float gravity 
=> velocity
=> weight
=> terminal_velocity
PHYSICS_UPDATE GravityUpdate

Void debug_drawing

SafePointer safe_pointer_invalidator
DIE SafePointerInvalidatorDie

ResourceHandle sprite_sheet

String default_animation
LOAD InitializeAnimation

ResourceHandle animation
=> sprite_sheet default_animation
DRAW DrawObjectAnimation

Int animation_frame
=> animation

Float rotation

Vector scale (1, 1)

Bool facing_right

Bool moving

Bool resting

Float z_order 0.5

Int item_collision
COLLISION ItemCollision

Void player_collision
RESTING PlayerResting
ENVIRONMENT_COLLISION EnvironmentCollisionResolution
ENVIRONMENT_COLLISION PlayerEnvironmentCollision

Void weight_collision
COLLISION WeightCollision

Void gem_collision
COLLISION GemCollision

Void collected_gem_collision
COLLISION CollectedGemCollision

Void goal_collision
COLLISION GoalCollision

Int coin_collision
COLLISION CoinCollision

Void respawn_coin_collision
COLLISION RespawnCoinCollision

Void coin_activation
COLLISION CoinActivation

Float chase_speed
PHYSICS_UPDATE ChaseCoinUpdate

Void checkpoint_collision
COLLISION CheckpointCollision

Void snap_to_player
PHYSICS_UPDATE SnapToPlayer

String debug_text
DEBUG_DRAW DrawDebugText

Id id

Vector dimensions (1,1)

CollisionShape collision_shape
=> dimensions

Int actively_jumping 0

Int beam_collision
ENVIRONMENT_COLLISION BeamCollision
PHYSICS_UPDATE BeamCollisionReset

Float destroy_timer
LOGIC_UPDATE OneUpFeedBackUpdate

Void one_up_feedback_destroy
DESTROY OneUpFeedBackDestroy

Void one_down_feedback_destroy
DESTROY OneDownFeedBackDestroy

Float gem_feedback_update
LOGIC_UPDATE GemFeedBackUpdate
DESTROY GemFeedBackDestroy

Int goomba_update 1
LOGIC_UPDATE GoombaUpdate

Void goomba_collision
COLLISION GoombaCollision
=> scale

Int restore_gravity 0
LOGIC_UPDATE RestoreGravityUpdate
=> gravity

Int cart_state 0

Int cart_direction
COLLISION CartCollision

Vector feedback_direction

Float speed

Int sentry 0
PHYSICS_UPDATE SentryUpdate
=> speed scale

Int number

Float self_illumination

Int self_destruct
LOGIC_UPDATE SelfDestructUpdate
