Added enums for special node type and talk node type, - nd did general cleanup in boe.specials.cpp:
- Fixed formatting in many places - "nixed" the goto when handling damaging terrain, as per the TODO: label - Made use of enums in many places in the file - Fixed some oddities resulting from overzealous Replace All operations - Removed a check on the item graphic when deciding whether to play the "swallow" sound; now checks only for item variety. - Added handling for new stone block in some places (it should not be considered "fully supported" though); -> it can be pushed by players (but not monsters, yet) and damages the party/player (but not monsters yet) if they are pushed onto it by a conveyor belt. (1d6 unblockable) - Added a "return true" statement when using a space to prevent an extraneous "Nothing to use" message. - Uncommented some code the displayed a "Search: You find something!" message. - Changed the "(Use this space to do something with it.)" message to be triggered by the space being usable, rather than the graphic being the mountain graphic. git-svn-id: http://openexile.googlecode.com/svn/trunk@97 4ebdad44-0ea0-11de-aab3-ff745001d230
This commit is contained in:
@@ -127,7 +127,7 @@ enum eMonstAbil {
|
||||
};
|
||||
|
||||
|
||||
/* Terrains Specials Properties : scenario.ter_types[i].special */ //complete
|
||||
/* Terrains Special Properties : scenario.ter_types[i].special */ //complete
|
||||
|
||||
enum eTerSpec {
|
||||
// TER_SPEC_NONE = 0,
|
||||
@@ -506,3 +506,185 @@ enum eSpecContext {
|
||||
SPEC_USE_SPACE = 17,
|
||||
SPEC_SEE_MONST = 18,
|
||||
};
|
||||
|
||||
enum eSpecNodeType {
|
||||
SPEC_NULL = 0,
|
||||
SPEC_SET_SDF = 1,
|
||||
SPEC_INC_SDF = 2,
|
||||
SPEC_DISPLAY_MSG = 3,
|
||||
SPEC_SECRET_PASSAGE = 4,
|
||||
SPEC_DISPLAY_SM_MSG = 5,
|
||||
SPEC_FLIP_SDF = 6,
|
||||
SPEC_OUT_BLOCK = 7,
|
||||
SPEC_TOWN_BLOCK = 8,
|
||||
SPEC_FIGHT_BLOCK = 9,
|
||||
SPEC_LOOK_BLOCK = 10,
|
||||
SPEC_CANT_ENTER = 11,
|
||||
SPEC_CHANGE_TIME = 12,
|
||||
SPEC_SCEN_TIMER_START = 13,
|
||||
SPEC_PLAY_SOUND = 14,
|
||||
SPEC_CHANGE_HORSE_OWNER = 15,
|
||||
SPEC_CHANGE_BOAT_OWNER = 16,
|
||||
SPEC_SET_TOWN_VISIBILITY = 17,
|
||||
SPEC_MAJOR_EVENT_OCCURRED = 18,
|
||||
SPEC_FORCED_GIVE = 19,
|
||||
SPEC_BUY_ITEMS_OF_TYPE = 20,
|
||||
SPEC_CALL_GLOBAL = 21,
|
||||
SPEC_SET_SDF_ROW = 22,
|
||||
SPEC_COPY_SDF = 23,
|
||||
SPEC_SANCTIFY = 24,
|
||||
SPEC_REST = 25,
|
||||
SPEC_WANDERING_WILL_FIGHT = 26,
|
||||
SPEC_END_SCENARIO = 27,
|
||||
SPEC_ONCE_GIVE_ITEM = 50,
|
||||
SPEC_ONCE_GIVE_SPEC_ITEM = 51,
|
||||
SPEC_ONCE_NULL = 52,
|
||||
SPEC_ONCE_SET_SDF = 53,
|
||||
SPEC_ONCE_DISPLAY_MSG = 54,
|
||||
SPEC_ONCE_DIALOG = 55,
|
||||
SPEC_ONCE_DIALOG_TERRAIN = 56,
|
||||
SPEC_ONCE_DIALOG_MONSTER = 57,
|
||||
SPEC_ONCE_GIVE_ITEM_DIALOG = 58,
|
||||
SPEC_ONCE_GIVE_ITEM_TERRAIN = 59,
|
||||
SPEC_ONCE_GIVE_ITEM_MONSTER = 60,
|
||||
SPEC_ONCE_OUT_ENCOUNTER = 61,
|
||||
SPEC_ONCE_TOWN_ENCOUNTER = 62,
|
||||
SPEC_ONCE_TRAP = 63,
|
||||
SPEC_SELECT_PC = 80,
|
||||
SPEC_DAMAGE = 81,
|
||||
SPEC_AFFECT_HP = 82,
|
||||
SPEC_AFFECT_SP = 83,
|
||||
SPEC_AFFECT_XP = 84,
|
||||
SPEC_AFFECT_SKILL_PTS = 85,
|
||||
SPEC_AFFECT_DEADNESS = 86,
|
||||
SPEC_AFFECT_POISON = 87,
|
||||
SPEC_AFFECT_SPEED = 88,
|
||||
SPEC_AFFECT_INVULN = 89,
|
||||
SPEC_AFFECT_MAGIC_RES = 90,
|
||||
SPEC_AFFECT_WEBS = 91,
|
||||
SPEC_AFFECT_DISEASE = 92,
|
||||
SPEC_AFFECT_SANCTUARY = 93,
|
||||
SPEC_AFFECT_CURSE_BLESS = 94,
|
||||
SPEC_AFFECT_DUMBFOUND = 95,
|
||||
SPEC_AFFECT_SLEEP = 96,
|
||||
SPEC_AFFECT_PARALYSIS = 97,
|
||||
SPEC_AFFECT_STAT = 98,
|
||||
SPEC_AFFECT_MAGE_SPELL = 99,
|
||||
SPEC_AFFECT_PRIEST_SPELL = 100,
|
||||
SPEC_AFFECT_GOLD = 101,
|
||||
SPEC_AFFECT_FOOD = 102,
|
||||
SPEC_AFFECT_ALCHEMY = 103,
|
||||
SPEC_AFFECT_STEALTH = 104,
|
||||
SPEC_AFFECT_FIREWALK = 105,
|
||||
SPEC_AFFECT_FLIGHT = 106,
|
||||
SPEC_IF_SDF = 130,
|
||||
SPEC_IF_TOWN_NUM = 131,
|
||||
SPEC_IF_RANDOM = 132,
|
||||
SPEC_IF_HAVE_SPECIAL_ITEM = 133,
|
||||
SPEC_IF_SDF_COMPARE = 134,
|
||||
SPEC_IF_TOWN_TER_TYPE = 135,
|
||||
SPEC_IF_OUT_TER_TYPE = 136,
|
||||
SPEC_IF_HAS_GOLD = 137,
|
||||
SPEC_IF_HAS_FOOD = 138,
|
||||
SPEC_IF_ITEM_CLASS_ON_SPACE = 139,
|
||||
SPEC_IF_HAVE_ITEM_CLASS = 140,
|
||||
SPEC_IF_EQUIP_ITEM_CLASS = 141,
|
||||
SPEC_IF_HAS_GOLD_AND_TAKE = 142,
|
||||
SPEC_IF_HAS_FOOD_AND_TAKE = 143,
|
||||
SPEC_IF_ITEM_CLASS_ON_SPACE_AND_TAKE = 144,
|
||||
SPEC_IF_HAVE_ITEM_CLASS_AND_TAKE = 145,
|
||||
SPEC_IF_EQUIP_ITEM_CLASS_AND_TAKE = 146,
|
||||
SPEC_IF_DAY_REACHED = 147,
|
||||
SPEC_IF_BARRELS = 148,
|
||||
SPEC_IF_CRATES = 149,
|
||||
SPEC_IF_EVENT_OCCURRED = 150,
|
||||
SPEC_IF_HAS_CAVE_LORE = 151,
|
||||
SPEC_IF_HAS_WOODSMAN = 152,
|
||||
SPEC_IF_ENOUGH_MAGE_LORE = 153,
|
||||
SPEC_IF_TEXT_RESPONSE = 154,
|
||||
SPEC_IF_SDF_EQ = 155,
|
||||
SPEC_MAKE_TOWN_HOSTILE = 170,
|
||||
SPEC_TOWN_CHANGE_TER = 171,
|
||||
SPEC_TOWN_SWAP_TER = 172,
|
||||
SPEC_TOWN_TRANS_TER = 173,
|
||||
SPEC_TOWN_MOVE_PARTY = 174,
|
||||
SPEC_TOWN_HIT_SPACE = 175,
|
||||
SPEC_TOWN_EXPLODE_SPACE = 176,
|
||||
SPEC_TOWN_LOCK_SPACE = 177,
|
||||
SPEC_TOWN_UNLOCK_SPACE = 178,
|
||||
SPEC_TOWN_SFX_BURST = 179,
|
||||
SPEC_TOWN_CREATE_WANDERING = 180,
|
||||
SPEC_TOWN_PLACE_MONST = 181,
|
||||
SPEC_TOWN_DESTROY_MONST = 182,
|
||||
SPEC_TOWN_NUKE_MONSTS = 183,
|
||||
SPEC_TOWN_GENERIC_LEVER = 184,
|
||||
SPEC_TOWN_GENERIC_PORTAL = 185,
|
||||
SPEC_TOWN_GENERIC_BUTTON = 186,
|
||||
SPEC_TOWN_GENERIC_STAIR = 187,
|
||||
SPEC_TOWN_LEVER = 188,
|
||||
SPEC_TOWN_PORTAL = 189,
|
||||
SPEC_TOWN_STAIR = 190,
|
||||
SPEC_TOWN_RELOCATE = 191, // Relocate outdoors
|
||||
SPEC_TOWN_PLACE_ITEM = 192,
|
||||
SPEC_TOWN_SPLIT_PARTY = 193,
|
||||
SPEC_TOWN_REUNITE_PARTY = 194,
|
||||
SPEC_TOWN_TIMER_START = 195,
|
||||
SPEC_RECT_PLACE_FIRE = 200,
|
||||
SPEC_RECT_PLACE_FORCE = 201,
|
||||
SPEC_RECT_PLACE_ICE = 202,
|
||||
SPEC_RECT_PLACE_BLADE = 203,
|
||||
SPEC_RECT_PLACE_SCLOUD = 204,
|
||||
SPEC_RECT_PLACE_SLEEP = 205,
|
||||
SPEC_RECT_PLACE_QUICKFIRE = 206,
|
||||
SPEC_RECT_PLACE_FIRE_BARR = 207,
|
||||
SPEC_RECT_PLACE_FORCE_BARR = 208,
|
||||
SPEC_RECT_CLEANSE = 209,
|
||||
SPEC_RECT_PLACE_SFX = 210,
|
||||
SPEC_RECT_PLACE_OBJECT = 211, // place barrels, etc
|
||||
SPEC_RECT_MOVE_ITEMS = 212,
|
||||
SPEC_RECT_DESTROY_ITEMS = 213,
|
||||
SPEC_RECT_CHANGE_TER = 214,
|
||||
SPEC_RECT_SWAP_TER = 215,
|
||||
SPEC_RECT_TRANS_TER = 216,
|
||||
SPEC_RECT_LOCK = 217,
|
||||
SPEC_RECT_UNLOCK = 218,
|
||||
SPEC_OUT_MAKE_WANDER = 225,
|
||||
SPEC_OUT_CHANGE_TER = 226,
|
||||
SPEC_OUT_PLACE_ENCOUNTER = 227,
|
||||
SPEC_OUT_MOVE_PARTY = 228,
|
||||
SPEC_OUT_STORE = 229,
|
||||
};
|
||||
|
||||
enum eTalkNodeType {
|
||||
TALK_REGULAR = 0,
|
||||
TALK_DEP_ON_SDF = 1,
|
||||
TALK_SET_SDF = 2,
|
||||
TALK_INN = 3,
|
||||
TALK_DEP_ON_TIME = 4,
|
||||
TALK_DEP_ON_TIME_AND_EVENT = 5,
|
||||
TALK_DEP_ON_TOWN = 6,
|
||||
TALK_BUY_ITEMS = 7,
|
||||
TALK_TRAINING = 8,
|
||||
TALK_BUY_MAGE = 9,
|
||||
TALK_BUY_PRIEST = 10,
|
||||
TALK_BUY_ALCHEMY = 11,
|
||||
TALK_BUY_HEALING = 12,
|
||||
TALK_SELL_WEAPONS = 13,
|
||||
TALK_SELL_ARMOR = 14,
|
||||
TALK_SELL_ITEMS = 15,
|
||||
TALK_IDENTIFY = 16,
|
||||
TALK_ENCHANT = 17,
|
||||
TALK_BUY_INFO = 18,
|
||||
TALK_BUY_SDF = 19,
|
||||
TALK_BUY_SHIP = 20,
|
||||
TALK_BUY_HORSE = 21,
|
||||
TALK_BUY_SPEC_ITEM = 22,
|
||||
TALK_BUY_JUNK = 23,
|
||||
TALK_BUY_TOWN_LOC = 24,
|
||||
TALK_END_FORCE = 25,
|
||||
TALK_END_FIGHT = 26,
|
||||
TALK_END_ALARM = 27, // Town hostile
|
||||
TALK_END_DIE = 28,
|
||||
TALK_CALL_TOWN_SPEC = 29,
|
||||
TALK_CALL_SCEN_SPEC = 30,
|
||||
};
|
||||
|
Reference in New Issue
Block a user