1 /* ResidualVM - A 3D game interpreter 2 * 3 * ResidualVM is the legal property of its developers, whose names 4 * are too numerous to list here. Please refer to the AUTHORS 5 * file distributed with this source distribution. 6 * 7 * Additional copyright for this file: 8 * Copyright (C) 1999-2000 Revolution Software Ltd. 9 * This code is based on source code created by Revolution Software, 10 * used with permission. 11 * 12 * This program is free software; you can redistribute it and/or 13 * modify it under the terms of the GNU General Public License 14 * as published by the Free Software Foundation; either version 2 15 * of the License, or (at your option) any later version. 16 * 17 * This program is distributed in the hope that it will be useful, 18 * but WITHOUT ANY WARRANTY; without even the implied warranty of 19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 * GNU General Public License for more details. 21 * 22 * You should have received a copy of the GNU General Public License 23 * along with this program; if not, write to the Free Software 24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 25 * 26 */ 27 28 #ifndef ICB_ANIMATION_MEGA_SET 29 #define ICB_ANIMATION_MEGA_SET 30 31 #include "engines/icb/common/px_string.h" 32 33 namespace ICB { 34 35 #define MAX_ANIM_NAME_LENGTH 64 36 37 enum __mega_set_names { 38 __WALK, 39 __WALK_TO_STAND, 40 __WALK_TO_OTHER_STAND_LEFT_LEG, 41 __WALK_TO_PULL_OUT_WEAPON, 42 43 __STAND, 44 __STAND_TO_WALK, 45 __STAND_TO_WALK_UP_STAIRS_RIGHT, 46 __STAND_TO_WALK_DOWN_STAIRS_RIGHT, 47 __STAND_TO_RUN, 48 __STAND_TO_STEP_BACKWARD, 49 __STAND_CROUCHED_TO_STAND, 50 __STAND_CROUCHED_TO_WALK_CROUCHED, 51 52 __RUN, 53 __RUN_TO_STAND, 54 __RUN_TO_PULL_OUT_WEAPON, 55 56 __USE_CARD_ON_SLOT, 57 __PICK_UP_OBJECT_FROM_FLOOR, 58 __PUSH_BUTTON, 59 __BEING_SHOT, 60 __BEING_SHOT_DEAD, 61 62 __SIDESTEP_LEFT, 63 __STEP_BACKWARD, 64 __STEP_FORWARD, 65 __STEP_BACKWARD_TO_STAND, 66 __STEP_BACKWARD_TO_OTHER_STAND_LEFT, 67 68 __STAND_AND_AIM, 69 __STAND_AND_SHOOT, 70 __PULL_OUT_WEAPON, 71 __STRIKE, 72 __LOW_STRIKE, 73 __HIT_FROM_BEHIND, 74 75 __TURN_ON_THE_SPOT_CLOCKWISE, 76 77 __WALK_UPSTAIRS_LEFT, 78 __WALK_UPSTAIRS_RIGHT, 79 __WALK_DOWNSTAIRS_LEFT, 80 __WALK_DOWNSTAIRS_RIGHT, 81 82 __WALK_UPSTAIRS_LEFT_TO_STOOD_ON_STAIRS_FACING_UP, 83 __WALK_UPSTAIRS_RIGHT_TO_STOOD_ON_STAIRS_FACING_UP, 84 __WALK_DOWNSTAIRS_LEFT_TO_STOOD_ON_STAIRS_FACING_DOWN, 85 __WALK_DOWNSTAIRS_RIGHT_TO_STOOD_ON_STAIRS_FACING_DOWN, 86 87 __WALK_UPSTAIRS_LEFT_TO_WALK_DOWNSTAIRS_RIGHT, 88 __WALK_UPSTAIRS_RIGHT_TO_WALK_DOWNSTAIRS_LEFT, 89 __WALK_DOWNSTAIRS_LEFT_TO_WALK_UPSTAIRS_RIGHT, 90 __WALK_DOWNSTAIRS_RIGHT_TO_WALK_UPSTAIRS_LEFT, 91 92 __RUN_UPSTAIRS_LEFT, 93 __RUN_UPSTAIRS_RIGHT, 94 __RUN_DOWNSTAIRS_LEFT, 95 __RUN_DOWNSTAIRS_RIGHT, 96 97 __CLIMB_UP_LADDER_LEFT, 98 __CLIMB_UP_LADDER_RIGHT, 99 __CLIMB_DOWN_LADDER_LEFT, 100 __CLIMB_DOWN_LADDER_RIGHT, 101 102 __CLIMB_UP_LADDER_RIGHT_TO_STAND, 103 __CLIMB_DOWN_LADDER_RIGHT_TO_STAND, 104 105 __CORD_STAND_TO_CLIMB_UP_LADDER, 106 107 __STAND_TO_CLIMB_UP_LADDER_RIGHT, 108 __STAND_TO_CLIMB_DOWN_LADDER_RIGHT, 109 110 __CLIMB_DOWN_LADDER_LEFT_TO_SLIDE_DOWN_LADDER, 111 __SLIDE_DOWN_LADDER, 112 __SLIDE_DOWN_LADDER_TO_STAND, 113 114 __LOAD_GUN, 115 __LOAD_GUN_2, 116 __LOAD_GUN_CROUCH_2, 117 118 __COWER, 119 __COWER_TO_STAND, 120 __HAND_HAIR, 121 __SHRUG, 122 __LOOK_AT_WATCH, 123 __STRETCH, 124 __SCRATCH, 125 126 __NON_GENERIC, // a non generic specific - initialised at run time 127 __PROMOTED_NON_GENERIC, // a generic gets promoted here where it wilk be safe from new generic paths being formed - done for psx 128 // asyncing 129 130 __NO_LINK, // can be used by _player::Start_new_mode 131 __NO_ANIM, 132 __TOTAL_ANIMS 133 }; 134 135 typedef struct { 136 char name[MAX_ANIM_NAME_LENGTH]; // the name minus .RAV & .RAI 137 __mega_set_names ref; 138 } _an_anim_entry; 139 140 extern _an_anim_entry master_anim_name_table[__TOTAL_ANIMS]; 141 142 } // End of namespace ICB 143 144 #endif 145