view nagslang/constants.py @ 361:534eac55a178

ChargingEnemy spits acid
author Stefano Rivera <stefano@rivera.za.net>
date Fri, 06 Sep 2013 20:10:46 +0200
parents 1d487646a4d4
children 21c1c329f8e3
line wrap: on
line source

SCREEN = (800, 600)
FPS = 40
FONT = 'DejaVuSans.ttf'
FONT_SIZE = 16

DEFAULTS = dict(
    debug=False,
    sound=True,
    music=True,
)

# Sound constants
FREQ = 44100   # same as audio CD
BITSIZE = -16  # unsigned 16 bit
CHANNELS = 2   # 1 == mono, 2 == stereo
BUFFER = 1024  # audio buffer size in no. of samples

COLLISION_TYPE_OTHER = 0
COLLISION_TYPE_PLAYER = 1
COLLISION_TYPE_WALL = 2
COLLISION_TYPE_SWITCH = 3
COLLISION_TYPE_FURNITURE = 4
COLLISION_TYPE_ENEMY = 5
COLLISION_TYPE_DOOR = 6
COLLISION_TYPE_PROJECTILE = 7
COLLISION_TYPE_WEREWOLF_ATTACK = 8

SWITCH_PUSHERS = [COLLISION_TYPE_PLAYER, COLLISION_TYPE_FURNITURE]

CALLBACK_COLLIDERS = [
    # Collisions between the player and shapes with these collision types will
    # fire callbacks on the game object associated with the shape.
    COLLISION_TYPE_SWITCH,
    COLLISION_TYPE_FURNITURE,
    COLLISION_TYPE_ENEMY,
    COLLISION_TYPE_DOOR,
]

NON_GAME_OBJECT_COLLIDERS = [
    # These collision types are excluded from action checks, etc.
    COLLISION_TYPE_WALL,
    COLLISION_TYPE_PROJECTILE,
    COLLISION_TYPE_WEREWOLF_ATTACK,
]

ZORDER_FLOOR = 0
ZORDER_LOW = 1
ZORDER_MID = 2
ZORDER_HIGH = 3

WEREWOLF_SOAK_FACTOR = 10
PROTAGONIST_HEALTH_MAX_LEVEL = 100
PROTAGONIST_HEALTH_MIN_LEVEL = 0

BULLET_DAMAGE = 10
CLAW_DAMAGE = 5
ACID_DAMAGE = 7

BULLET_SPEED = 1000
ACID_SPEED = 300

CMD_TOGGLE_FORM = 'toggle_form'
CMD_ATTACK = 'attack'
CMD_ACTION = 'action'