mirror of
https://github.com/pret/pmd-red.git
synced 2026-04-24 15:07:09 -05:00
429 lines
11 KiB
C
429 lines
11 KiB
C
#ifndef GUARD_CONSTANTS_EVENT_FLAG_H
|
|
#define GUARD_CONSTANTS_EVENT_FLAG_H
|
|
|
|
enum MainQuest
|
|
{
|
|
// SCENARIO_MAIN:
|
|
|
|
QUEST_SET_TEAM_NAME,
|
|
QUEST_UNK1, // Rescue dungeon related. For some reason it scans all rescue dungeons.
|
|
QUEST_CAN_ACCESS_JOBS,
|
|
QUEST_CAN_RECRUIT,
|
|
QUEST_SQUARE_ASLEEP,
|
|
QUEST_UNK5, // Run away related? It disallows "friend rescue" features.
|
|
QUEST_REACHED_POSTGAME,
|
|
QUEST_UNLOCKED_EVOLUTIONS,
|
|
QUEST_CAN_CHANGE_LEADER,
|
|
QUEST_CAN_DEPOSIT_PARTNER,
|
|
QUEST_UNK10, // Dojo-related
|
|
QUEST_UNK11,
|
|
QUEST_UNK12, // Music-related
|
|
QUEST_IN_WORLD_CALAMITY,
|
|
QUEST_MAZE_14,
|
|
QUEST_MAZE_15,
|
|
QUEST_LEGEND_ZAPDOS,
|
|
QUEST_LEGEND_MOLTRES,
|
|
QUEST_LEGEND_ARTICUNO,
|
|
QUEST_LEGEND_GROUDON,
|
|
QUEST_LEGEND_RAYQUAZA,
|
|
|
|
// SCENARIO_SUB2:
|
|
|
|
QUEST_LEGEND_KYOGRE,
|
|
QUEST_LEGEND_LUGIA,
|
|
|
|
// SCENARIO_SUB3:
|
|
|
|
QUEST_LEGEND_DEOXYS,
|
|
|
|
// SCENARIO_SUB4:
|
|
|
|
QUEST_LEGEND_HO_OH,
|
|
|
|
// SCENARIO_SUB5:
|
|
|
|
QUEST_LEGEND_MEWTWO,
|
|
|
|
// SCENARIO_SUB7:
|
|
|
|
QUEST_LEGEND_MEW,
|
|
|
|
// RESCUE_SCENARIO_CONQUEST_LIST:
|
|
|
|
QUEST_LEGEND_CELEBI,
|
|
|
|
// Special check:
|
|
|
|
QUEST_LUCARIO_RANK,
|
|
|
|
// TRAINING_CONQUEST_LIST:
|
|
|
|
QUEST_COMPLETED_ALL_MAZES,
|
|
};
|
|
|
|
enum FlagCalcOperation
|
|
{
|
|
CALC_SET,
|
|
CALC_SUB,
|
|
CALC_ADD,
|
|
CALC_MUL,
|
|
CALC_DIV,
|
|
CALC_MOD,
|
|
CALC_AND,
|
|
CALC_OR,
|
|
CALC_XOR,
|
|
CALC_SETBIT,
|
|
CALC_CLEARBIT,
|
|
CALC_RANDOM,
|
|
};
|
|
|
|
enum FlagJudgeOperation
|
|
{
|
|
JUDGE_TRUE,
|
|
JUDGE_FALSE,
|
|
JUDGE_EQ,
|
|
JUDGE_GT,
|
|
JUDGE_LT,
|
|
JUDGE_GE,
|
|
JUDGE_LE,
|
|
JUDGE_NE,
|
|
JUDGE_AND_NONZERO,
|
|
JUDGE_XOR_NONZERO, // logically identical to JUDGE_NE
|
|
JUDGE_BIT_SET,
|
|
};
|
|
|
|
enum StartModeVal
|
|
{
|
|
STARTMODE_NEW_GAME,
|
|
STARTMODE_CONTINUE_GAME,
|
|
STARTMODE_GROUND, // Overworld
|
|
STARTMODE_3,
|
|
STARTMODE_FRIEND_AREAS,
|
|
STARTMODE_DUNGEON_FROM_WORLD_MAP,
|
|
STARTMODE_6,
|
|
STARTMODE_CONTINUE_QUICKSAVE,
|
|
STARTMODE_8,
|
|
STARTMODE_DUNGEON_WON,
|
|
STARTMODE_10,
|
|
STARTMODE_11,
|
|
STARTMODE_DUNGEON_LOST,
|
|
STARTMODE_13,
|
|
STARTMODE_14,
|
|
STARTMODE_15,
|
|
STARTMODE_16,
|
|
STARTMODE_17,
|
|
};
|
|
|
|
// SCENARIO_MAIN:
|
|
// 0, 0 = New game
|
|
// 1, 0 = ???
|
|
// 2, 0 = ???
|
|
// 2, 1 = ???
|
|
// 2, 2 = ??? Set upon exiting Tiny Woods.
|
|
// 3, 0 = Chose team name. See QUEST_SET_TEAM_NAME. Set in EVENT_M01E01A_L003
|
|
// 3, 1 = ???
|
|
// 3, 2 = ???
|
|
// 3, 3 = ??? Bed tutorial related.
|
|
// 3, 4 = ??? See QUEST_UNK1 also
|
|
// 3, 5 = ???
|
|
// 3, 6 = ??? Thunderwave cave related
|
|
// 4, 0 = ??? Set upon exiting Thunderwave Cave.
|
|
// 4, 1 = ???
|
|
// 4, 2 = ???
|
|
// 4, 3 = ???
|
|
// 4, 4 = ??? See QUEST_CAN_ACCESS_JOBS also
|
|
// 4, 5 = ??? Mt Steel related
|
|
// 4, 6 = ???
|
|
// 4, 7 = ???
|
|
// 4, 8 = ???
|
|
// 5, 0 = ???
|
|
// 5, 1 = ??? See QUEST_CAN_RECRUIT also
|
|
// 5, 2 = ???
|
|
// 5, 3 = ???
|
|
// 5, 4 = ???
|
|
// 5, 5 = ??? See QUEST_UNK10 and QUEST_UNK11 also
|
|
// 5, 6 = ???
|
|
// 5, 7 = ??? See QUEST_MAZE_14 also
|
|
// 5, 8 = ???
|
|
// 5, 9 = ??? Sinister Woods related
|
|
// 5, 10 = ???
|
|
// 5, 11 = ???
|
|
// 6, 0 = ???
|
|
// 6, 1 = ???
|
|
// 6, 2 = ???
|
|
// 6, 3 = ??? Silent Chasm related
|
|
// 7, 0 = ???
|
|
// 7, 1 = ???
|
|
// 7, 2 = ???
|
|
// 7, 3 = ??? Mt Thunder related
|
|
// 7, 4 = ???
|
|
// 7, 5 = ???
|
|
// 8, 0 = ??? See QUEST_LEGEND_ZAPDOS also
|
|
// 8, 1 = ???
|
|
// 8, 2 = ???
|
|
// 8, 3 = ??? Great Canyon related
|
|
// 8, 4 = ???
|
|
// 9, 0 = ???
|
|
// 9, 1 = ???
|
|
// 9, 2 = ???
|
|
// 9, 3 = ???
|
|
// 9, 4 = ???
|
|
// 9, 5 = ???
|
|
// 10, 0 = ???
|
|
// 10, 1 = ???
|
|
// 10, 2 = ???
|
|
// 10, 3 = ???
|
|
// 11, 0 = Fugitive story begins. See QUEST_SQUARE_ASLEEP also
|
|
// 11, 1 = ???
|
|
// 11, 2 = ??? See QUEST_UNK12 also
|
|
// 11, 3 = ??? See QUEST_UNK12 also
|
|
// 11, 4 = ??? See QUEST_UNK5 also
|
|
// 11, 5 = ???
|
|
// 12, 0 = Lapis Cave completed? Mt Blaze story begins?
|
|
// 12, 1 = ???
|
|
// 12, 2 = ???
|
|
// 12, 3 = ???
|
|
// 12, 4 = ???
|
|
// 13, 0 = Mt Blaze completed. Frosty Grotto story begins. See QUEST_SQUARE_ASLEEP and QUEST_LEGEND_MOLTRES also
|
|
// 13, 1 = ???
|
|
// 13, 2 = ???
|
|
// 13, 3 = ???
|
|
// 13, 4 = ???
|
|
// 14, 0 = Frosty Grotto completed. Mt Freeze story begins? See QUEST_LEGEND_ARTICUNO also
|
|
// 14, 1 = ???
|
|
// 14, 2 = ???
|
|
// 14, 3 = ???
|
|
// 15, 0 = Mt Freeze completed? See QUEST_UNK5 and QUEST_MAZE_14 also
|
|
// 15, 1 = ???
|
|
// 15, 2 = ???
|
|
// 15, 3 = ???
|
|
// 15, 4 = ???
|
|
// 15, 5 = ??? Uproar Forest related
|
|
// 15, 6 = ???
|
|
// 15, 7 = ???
|
|
// 15, 8 = ???
|
|
// 15, 9 = ???
|
|
// 15, 10 = ??? Magma Cavern related
|
|
// 15, 11 = ??? Magma Cavern related
|
|
// 15, 12 = ???
|
|
// 16, 0 = Magma Cavern completed. Sky Tower story begins. See QUEST_LEGEND_GROUDON also
|
|
// 16, 1 = ???
|
|
// 16, 2 = World calamity music is forced. Partner awaits in Pokémon Square for you to confirm you're ready for Sky Tower. You begin dreaming with Gardevoir and Gengar is there. See QUEST_IN_WORLD_CALAMITY
|
|
// 16, 3 = ???
|
|
// 16, 4 = ??? Sky Tower related
|
|
// 16, 5 = ???
|
|
// 16, 6 = ???
|
|
// 17, 0 = Sky Tower completed. See QUEST_LEGEND_RAYQUAZA also
|
|
// 17, 1 = ???
|
|
// 18, 0 = ??? See QUEST_REACHED_POSTGAME also
|
|
// 18, 1 = ???
|
|
// 18, 2 = ??? See QUEST_UNLOCKED_EVOLUTIONS also
|
|
// 18, 3 = ??? See QUEST_CAN_CHANGE_LEADER also
|
|
// 18, 4 = ???
|
|
// 19, 0 = ??? See QUEST_CAN_DEPOSIT_PARTNER also
|
|
// 19, 1 = ???
|
|
// 19, 2 = ???
|
|
// 20, 1 = ???
|
|
// 20, 2 = ???
|
|
// 21, 1 = ???
|
|
// 21, 2 = ???
|
|
// 22, 1 = ???
|
|
// 22, 2 = ???
|
|
// 23, 1 = ???
|
|
// 23, 2 = ???
|
|
// 24, 1 = ???
|
|
// 24, 2 = ???
|
|
// 25, 1 = ???
|
|
// 25, 2 = ???
|
|
// 26, 1 = ???
|
|
// 26, 2 = ???
|
|
// 27, 1 = ??? Set from EVENT_DIVIDE_AFTER
|
|
// 27, 2 = ???
|
|
// 58, 1 = ???
|
|
|
|
// SCENARIO_SUB1:
|
|
// 29, 1 = Mankey Quest activated.
|
|
// 29, 2 = ??? Uproar Forest related
|
|
// 29, 3 = ??? Uproar Forest related
|
|
// 30, 0 = Mankey gang brought to base?
|
|
// 30, 2 = Enough chestnuts collected to complete team base renovation.
|
|
// 31, 0 = ??? Uproar Forest related
|
|
// 31, 1 = ??? Howling Forest related
|
|
// 31, 2 = ??? Howling Forest related
|
|
// 31, 3 = ???
|
|
// 32, 0 = ??? Howling Forest related
|
|
// 32, 2 = Smeargle cannot join because its friend area is full.
|
|
// 32, 3 = Smeargle joined.
|
|
|
|
// SCENARIO_SUB2:
|
|
// 33, 1 = Stormy Sea story activated.
|
|
// 33, 2 = Heard Lombre's story about the Stormy Sea.
|
|
// 33, 3 = Ready to speak to Whiscash about Stormy Sea.
|
|
// 33, 4 = Stormy Sea unlocked from Whiscash.
|
|
// 33, 5 = ???
|
|
// 34, 0 = Stormy Sea completed. See QUEST_LEGEND_KYOGRE
|
|
// 34, 1 = ???
|
|
// 34, 2 = ??? Legendary Island friend area related
|
|
// 34, 3 = ??? Silver Trench related
|
|
// 34, 5 = ???
|
|
// 35, 0 = Silver Trench completed. See QUEST_LEGEND_LUGIA
|
|
|
|
// SCENARIO_SUB3:
|
|
// 36, 1 = Meteor Cave story activated.
|
|
// 36, 2 = ??? Meteor Cave related
|
|
// 36, 3 = ???
|
|
// 37, 0 = Meteor Cave completed. See QUEST_LEGEND_DEOXYS
|
|
|
|
// SCENARIO_SUB4:
|
|
// 38, 1 = Ho-Oh story activated.
|
|
// 38, 2 = Xatu awaits for Ho-Oh story.
|
|
// 39, 0 = Xatu met for Ho-Oh story. Fiery Field opens.
|
|
// 39, 3 = ???
|
|
// 40, 0 = Fiery Field completed. Lightning Field opens.
|
|
// 40, 3 = ???
|
|
// 41, 0 = Lightning Field completed. Northwind Field opens.
|
|
// 41, 3 = ???
|
|
// 42, 0 = Northwind Field completed. Mt Faraway opens.
|
|
// 42, 3 = ???
|
|
// 43, 0 = Mt Faraway completed. See QUEST_LEGEND_HO_OH
|
|
// 43, 2 = ??? RESCUE_DUNGEON_GREAT_CANYON_2 and Fields/MtFaraway related
|
|
|
|
// SCENARIO_SUB5:
|
|
// 44, 1 = Western Cave story activated.
|
|
// 44, 2 = Western Cave opens.
|
|
// 44, 3 = ???
|
|
// 45, 0 = Western Cave completed. See QUEST_LEGEND_MEWTWO
|
|
|
|
// SCENARIO_SUB6:
|
|
// 46, 1 = Latios/Latias story activated.
|
|
// 46, 2 = Northern Range opens.
|
|
// 46, 3 = ???
|
|
// 47, 2 = Pitfall Valley opens.
|
|
// 47, 3 = ???
|
|
// 48, 0 = Latios/Latias story completed.
|
|
|
|
// SCENARIO_SUB7:
|
|
// 49, 1 = Buried Relic story activated.
|
|
// 49, 2 = Read Buried Relic news
|
|
// 49, 3 = Buried Relic opens.
|
|
// 49, 4 = ???
|
|
// 50, 0 = Buried Relic completed. See QUEST_LEGEND_MEW
|
|
|
|
// SCENARIO_SUB8:
|
|
// 51, 1 = Wish Cave story activated.
|
|
// 51, 2 = ???
|
|
// 51, 3 = ???
|
|
// 51, 4 = ???
|
|
// 51, 5 = ???
|
|
// 51, 6 = ???
|
|
// 51, 7 = ??? Wish Cave related
|
|
// 51, 8 = ??? Wish Cave related
|
|
// 51, 9 = ??? Set upon exiting Wish Cave.
|
|
// 52, 0 = Wish Cave completed.
|
|
|
|
// SCENARIO_SUB9:
|
|
// 53, 1 = Curse lifting story activated.
|
|
// 53, 2 = ???
|
|
// 53, 3 = ???
|
|
// 53, 4 = ??? Genger Mt Freeze related
|
|
// 53, 5 = ???
|
|
// 53, 6 = ??? RESCUE_DUNGEON_MT_FREEZE_2 related
|
|
// 54, 0 = ??? RESCUE_DUNGEON_MT_FREEZE_2 related
|
|
// 54, 2 = ??? Murky Cave related (EVENT_S09E01B_L001)
|
|
// 54, 4 = ??? Set upon exiting Murky Cave.
|
|
// 55, 2 = ??? RESCUE_DUNGEON_MT_FREEZE_2 and Murky Cave related
|
|
// 55, 3 = Gardevoir recruited
|
|
|
|
enum ScriptVarId
|
|
{
|
|
/* 0x00 */ VERSION,
|
|
/* 0x01 */ CONDITION,
|
|
/* 0x02 */ SCENARIO_SELECT,
|
|
/* 0x03 */ SCENARIO_MAIN,
|
|
/* 0x04 */ SCENARIO_SUB1,
|
|
/* 0x05 */ SCENARIO_SUB2,
|
|
/* 0x06 */ SCENARIO_SUB3,
|
|
/* 0x07 */ SCENARIO_SUB4,
|
|
/* 0x08 */ SCENARIO_SUB5,
|
|
/* 0x09 */ SCENARIO_SUB6,
|
|
/* 0x0a */ SCENARIO_SUB7,
|
|
/* 0x0b */ SCENARIO_SUB8,
|
|
/* 0x0c */ SCENARIO_SUB9,
|
|
/* 0x0d */ GROUND_ENTER,
|
|
/* 0x0e */ GROUND_ENTER_LINK,
|
|
/* 0x0f */ GROUND_GETOUT,
|
|
/* 0x10 */ GROUND_MAP,
|
|
/* 0x11 */ GROUND_PLACE,
|
|
/* 0x12 */ DUNGEON_SELECT,
|
|
/* 0x13 */ DUNGEON_ENTER,
|
|
/* 0x14 */ DUNGEON_ENTER_INDEX,
|
|
/* 0x15 */ DUNGEON_ENTER_FREQUENCY,
|
|
/* 0x16 */ DUNGEON_RESULT,
|
|
/* 0x17 */ SCRIPT_MODE,
|
|
/* 0x18 */ START_MODE, // See enum "StartModeVal"
|
|
/* 0x19 */ CLEAR_COUNT,
|
|
/* 0x1a */ CONDITION_KIND,
|
|
/* 0x1b */ WEATHER_KIND,
|
|
/* 0x1c */ PLAYER_KIND,
|
|
/* 0x1d */ PARTNER1_KIND,
|
|
/* 0x1e */ PARTNER2_KIND,
|
|
/* 0x1f */ NEW_FRIEND_KIND,
|
|
/* 0x20 */ FRIEND_SUM,
|
|
/* 0x21 */ UNIT_SUM,
|
|
/* 0x22 */ GOLD,
|
|
/* 0x23 */ BANK_GOLD,
|
|
/* 0x24 */ WARP_LIST,
|
|
/* 0x25 */ WARP_LOCK,
|
|
/* 0x26 */ PARTNER_TALK_KIND,
|
|
/* 0x27 */ BASE_KIND,
|
|
/* 0x28 */ BASE_LEVEL,
|
|
/* 0x29 */ FLAG_KIND,
|
|
/* 0x2a */ FLAG_KIND_CHANGE_REQUEST,
|
|
/* 0x2b */ RESCUE_SCENARIO_ORDER_LIST,
|
|
/* 0x2c */ RESCUE_SCENARIO_JOB_LIST,
|
|
/* 0x2d */ RESCUE_SCENARIO_CONQUEST_LIST,
|
|
/* 0x2e */ TRAINING_CONQUEST_LIST,
|
|
/* 0x2f */ TRAINING_PRESENT_LIST,
|
|
/* 0x30 */ DUNGEON_ENTER_LIST,
|
|
/* 0x31 */ DUNGEON_CLEAR_LIST,
|
|
/* 0x32 */ POSITION_X,
|
|
/* 0x33 */ POSITION_Y,
|
|
/* 0x34 */ POSITION_HEIGHT,
|
|
/* 0x35 */ POSITION_DIRECTION,
|
|
/* 0x36 */ GROUND_LOCAL,
|
|
/* 0x37 */ MAP_LOCAL,
|
|
/* 0x38 */ MAP_LOCAL_DOOR,
|
|
/* 0x39 */ EVENT_LOCAL,
|
|
/* 0x3a */ STATION_ITEM_STATIC,
|
|
/* 0x3b */ STATION_ITEM_TEMP,
|
|
/* 0x3c */ DELIVER_ITEM_STATIC,
|
|
/* 0x3d */ DELIVER_ITEM_TEMP,
|
|
/* 0x3e */ SHOP_TEMP,
|
|
/* 0x3f */ INN_TEMP,
|
|
/* 0x40 */ EVENT_S07E01,
|
|
/* 0x41 */ EVENT_S08E01,
|
|
/* 0x42 */ EVENT_GONBE,
|
|
/* 0x43 */ EVENT_ORNAMENT_01,
|
|
/* 0x44 */ EVENT_ORNAMENT_02,
|
|
/* 0x45 */ EVENT_ORNAMENT_03,
|
|
/* 0x46 */ EVENT_ORNAMENT_04,
|
|
/* 0x47 */ EVENT_B01P01,
|
|
/* 0x48 */ EVENT_T01P01,
|
|
/* 0x49 */ EVENT_T01P02,
|
|
/* 0x4a */ EVENT_T01P03,
|
|
/* 0x4b */ EVENT_M01E09A_2N,
|
|
/* 0x4c */ EVENT_M01E09A_8N,
|
|
/* 0x4d */ EVENT_M01E10A_1N,
|
|
/* 0x4e */ EVENT_M01E10A_3N,
|
|
/* 0x4f */ EVENT_M01E10A_5N,
|
|
/* 0x50 */ EVENT_M02E01A_2N,
|
|
/* 0x51 */ SUM,
|
|
/* 0x52 */ SCRIPT_VARS_COUNT,
|
|
/* 0x400 */ LOCAL0 = 0x400,
|
|
/* 0x401 */ LOCAL1,
|
|
/* 0x402 */ LOCAL2,
|
|
/* 0x403 */ LOCAL3,
|
|
};
|
|
|
|
#endif // GUARD_CONSTANTS_EVENT_FLAG_H
|