/* ScummVM - Graphic Adventure Engine * * ScummVM is the legal property of its developers, whose names * are too numerous to list here. Please refer to the COPYRIGHT * file distributed with this source distribution. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * */ #ifndef STARTREK_TEXT_H #define STARTREK_TEXT_H namespace StarTrek { // The type to use for text references (values of "GameStringIDs" enum). // NOTE: if this typedef is changed, certain lines in "saveload.cpp" would also need to be // changed. Better to leave this as-is. typedef int32 TextRef; // Text that's loaded from "GROUND.TXT". First 0x40 pieces of text are for items. // TODO: Floppy version has different numbers for this. enum GroundTextIDs { // Generic "perform undefined action" text (ie. look at nothing, talk to wall) GROUNDTX_LOOK_KIRK = 0x49, GROUNDTX_LOOK_SPOCK = 0x4a, GROUNDTX_LOOK_MCCOY = 0x4b, GROUNDTX_LOOK_REDSHIRT = 0x4c, GROUNDTX_LOOK_ANYWHERE = 0x4d, GROUNDTX_TALK_TO_CREWMAN = 0x4e, GROUNDTX_NO_RESPONSE = 0x4f, GROUNDTX_KIRK_USE = 0x50, GROUNDTX_SPOCK_USE = 0x51, GROUNDTX_MCCOY_USE = 0x52, GROUNDTX_REDSHIRT_USE = 0x53, GROUNDTX_SPOCK_SCAN = 0x54, GROUNDTX_MCCOY_SCAN = 0x55, GROUNDTX_USE_MEDKIT = 0x56, GROUNDTX_PHASER_ON_MCCOY = 0x57, // 8 variations GROUNDTX_PHASER_ON_SPOCK = 0x5f, // 8 variations GROUNDTX_PHASER_ON_REDSHIRT = 0x67, // 8 variations GROUNDTX_PHASER_ANYWHERE = 0x6f, // 7 variations GROUNDTX_USE_COMMUNICATOR = 0x76, GROUNDTX_NOTHING_HAPPENS = 0x77, GROUNDTX_FAIL_TO_OBTAIN_ANYTHING = 0x78 }; // Text that's hardcoded into "RDF" files, and copied into here for a sane referencing // scheme. enum GameStringIDs { TX_BLANK = -1, TX_NULL = 0, TX_BLANK_OLD = 1, // unused, kept as filler TX_DIALOG_ERROR, TX_ANIMATION_ERROR, TX_SPEAKER_KIRK, TX_SPEAKER_SPOCK, TX_SPEAKER_MCCOY, TX_SPEAKER_UHURA, TX_SPEAKER_SCOTT, TX_SPEAKER_SULU, TX_SPEAKER_CHEKOV, TX_SPEAKER_EVERTS, TX_SPEAKER_ANGIVEN, TX_SPEAKER_SIGN, TX_SPEAKER_KLINGON, TX_SPEAKER_KANDREY, TX_SPEAKER_STEPHEN, TX_SPEAKER_CHUB, TX_SPEAKER_ROBERTS, TX_SPEAKER_GRISNASH, TX_SPEAKER_NAUIAN, TX_SPEAKER_SHIPS_COMPUTER, TX_SPEAKER_CHRISTENSEN, TX_SPEAKER_SIMPSON, TX_SPEAKER_ELASI_GUARD, TX_SPEAKER_ELASI_CLANSMAN, TX_SPEAKER_ELASI_CERETH, TX_SPEAKER_MASADA_CREWMAN, TX_SPEAKER_FERRIS, TX_SPEAKER_COMPUTER, TX_SPEAKER_MARCUS, TX_SPEAKER_CHEEVER, TX_SPEAKER_PREAX, TX_SPEAKER_BUCHERT, TX_SPEAKER_MUDD, TX_SPEAKER_STRAGEY, TX_SPEAKER_QUETZECOATL, TX_SPEAKER_TLAOXAC, TX_SPEAKER_BENNIE, TX_SPEAKER_VLICT, TX_SPEAKER_KLINGON_GUARD, TX_SPEAKER_ENTITY, TX_SPEAKER_BIALBI, TX_SPEAKER_VOICE, TX_SPEAKER_LIGHT_OF_WAR, TX_SPEAKER_LIGHT_OF_KNOWLEDGE, TX_SPEAKER_LIGHT_OF_TRAVEL, TX_SPEAKER_MOSHER, TX_SPEAKER_KIJE, TX_SPEAKER_PATTERSON, TX_SPEAKER_ANDRADE, TX_SPEAKER_ELASI_CAPTAIN, TX_SPEAKER_ELASI_WEAPONS_MASTER, TX_SPEAKER_ELASI_CREWMAN, TX_SPEAKER_BRITTANY_MARATA, TX_BRIDU146, TX_G_014, TX_G_024, TX_G_043, TX_GENER004, TX_COMPA180, TX_COMPA185, TX_COMPA186, TX_COMPA187, TX_COMPA189, TX_COMPA190, TX_COMPA191, TX_COMPA193, TX_COMPU181, TX_COMPU182, TX_COMPU186, TX_COMPU187, TX_COMPU188, TX_COMPU189, TX_COMPU190, TX_COMPU192, TX_COMPU193, TX_DEM0N009, // kept because it's also used as an enhancement in mudd1 and mudd3 TX_DEM0C001, // "C" = "Custom" (no ID originally assigned) TX_DEM1_F23, TX_DEM3_019, // kept because it's also used as an enhancement in venga TX_DEM3_A32, TX_DEM3_F21, TX_TUG0_F30, TX_TUG0_F31, TX_TUG0_S06, TX_TUG0_S11, TX_TUG2J003, TX_TUG2C001, // Custom TX_TUG3_F27, TX_TUG3_S07, TX_TUG3_S08, TX_LOV3NA08, TX_LOV3NA09, TX_LOV3NA20, TX_LOV3NA21, TX_LOV3NA22, TX_LOV3NA23, TX_LOV3NJ32, TX_LOV5C001, // Custom TX_LOVA_F01, TX_LOVA_F02, TX_LOVA_F03, TX_LOVA_F04, TX_LOVA_F07, TX_LOVA_F08, TX_LOVA_F10, TX_LOVA_F54, TX_LOVA_F55, TX_MUD0_018, TX_MUD0_019, TX_MUD0_020, TX_MUD1N014, // kept because it's also used as an enhancement in veng6 TX_MUD2_040, // kept as it's used as an enhancement in LOVEA TX_MUD4_018, TX_MUD4_019, // kept for now because of TX_MUD4_A29 TX_MUD4_023, // kept for now because of TX_MUD4_A29 TX_MUD4_A29, TX_MUD4_S02, TX_MUD4_S03, TX_MUD4_S04, TX_FEA1_A46, TX_FEA1_F25, TX_TRI0_F24, TX_TRI1_J00, TX_TRI1U080, TX_TRI1C001, // Custom TX_TRI1C002, TX_QUIET, TX_TRI4_076, TX_SIN2_F12, TX_SIN2_F26, TX_SIN3_008, TX_SIN3_012, TX_SIN3_LASERSETTING001, // Custom named text TX_SIN3_LASERSETTING010, TX_SIN3_LASERSETTING100, TX_SIN3_LASERCANCEL, TX_SIN4U83B, TX_VEN0_001, TX_VEN0_002, TX_VEN0_003, TX_VEN0_004, TX_VEN0_005, TX_VEN0_006, TX_VEN0_007, TX_VEN0_008, TX_VEN0_009, TX_VEN0_010, TX_VEN0_011, TX_VEN0_012, TX_VEN0_013, TX_VEN0_014, TX_VEN0_015, TX_VEN0_016, TX_VEN0_017, TX_VEN0_018, TX_VEN0_019, TX_VEN0_020, TX_VEN0_021, TX_VEN0_022, TX_VEN0_023, TX_VEN0_024, TX_VEN0_025, TX_VEN0_026, TX_VEN0_027, TX_VEN0_028, TX_VEN0_029, TX_VEN0_030, TX_VEN0_031, TX_VEN0_32, TX_VEN0_033, TX_VEN0_034, TX_VEN0_035, TX_VEN0_036, TX_VEN0_037, TX_VEN0_038, TX_VEN0_039, TX_VEN0_S12, // UNUSED: S13 -> S14 (same line S12, multiple recordings) TX_VEN0_S15, TX_VEN0_S52, TX_VEN0_S54, TX_VEN0N000, TX_VEN0N001, TX_VEN0N002, TX_VEN0N003, TX_VEN0N004, TX_VEN0N005, TX_VEN0N006, TX_VEN0N007, TX_VEN0N008, TX_VEN0N009, TX_VEN0N010, TX_VEN0N011, TX_VEN0N012, TX_VEN0N013, // MISSING TX_VEN0N015, TX_VEN0N016, TX_VEN0N017, TX_VEN0N018, TX_VEN0N019, // UNUSED: VEN0_F15 TX_VEN1_001, TX_VEN1_002, // UNUSED TX_VEN1_004, TX_VEN1_005, TX_VEN1_006, TX_VEN1_007, TX_VEN1_008, TX_VEN1_009, TX_VEN1_010, TX_VEN1_011, TX_VEN1_012, TX_VEN1_013, TX_VEN1_014, TX_VEN1_015, TX_VEN1_016, TX_VEN1_F33, TX_VEN1N000, TX_VEN1N001, TX_VEN1N002, TX_VEN1N003, TX_VEN1N004, TX_VEN1N005, TX_VEN1N006, TX_VEN1N007, TX_VEN1N008, TX_VEN1N009, TX_VEN1N010, TX_VEN1N011, TX_VEN1N012, TX_VEN1N013, TX_VEN1N014, TX_VEN1N015, TX_VEN1N016, TX_VEN1N017, TX_VEN1N018, TX_VEN1N019, TX_VEN1N020, TX_VEN1N021, TX_VEN1N022, TX_VEN1N023, // UNUSED: VEN1NA18 (variant of VEN1N018) TX_VEN2_001, TX_VEN2_002, TX_VEN2_003, TX_VEN2_004, TX_VEN2_005, TX_VEN2_006, TX_VEN2_007, TX_VEN2_008, TX_VEN2_009, TX_VEN2_010, TX_VEN2_011, TX_VEN2_012, TX_VEN2_013, TX_VEN2_014, TX_VEN2_015, TX_VEN2_016, TX_VEN2_017, TX_VEN2_018, TX_VEN2_019, TX_VEN2_020, TX_VEN2_021, TX_VEN2_022, TX_VEN2_023, // UNUSED TX_VEN2_024, TX_VEN2_025, TX_VEN2_026, TX_VEN2_027, TX_VEN2_028, TX_VEN2_029, TX_VEN2_030, TX_VEN2_031, TX_VEN2_032, TX_VEN2_033, TX_VEN2_034, TX_VEN2_035, TX_VEN2_036, TX_VEN2_037, TX_VEN2_038, TX_VEN2_039, TX_VEN2_040, TX_VEN2_041, TX_VEN2_042, TX_VEN2_043, TX_VEN2_044, TX_VEN2_045, TX_VEN2_046, TX_VEN2_047, TX_VEN2_048, // UNUSED // UNUSED TX_VEN2_050, // UNUSED TX_VEN2_051, TX_VEN2_052, TX_VEN2_053, // UNUSED TX_VEN2_054, TX_VEN2_055, TX_VEN2_056, TX_VEN2_057, TX_VEN2_058, TX_VEN2_059, TX_VEN2_060, TX_VEN2_061, TX_VEN2_062, TX_VEN2_063, TX_VEN2_064, TX_VEN2_065, TX_VEN2_066, TX_VEN2_067, TX_VEN2_068, TX_VEN2_069, TX_VEN2_070, TX_VEN2_071, TX_VEN2_072, TX_VEN2_073, TX_VEN2_074, TX_VEN2_075, TX_VEN2_076, // UNUSED TX_VEN2_077, TX_VEN2_078, TX_VEN2_079, TX_VEN2_080, TX_VEN2_081, TX_VEN2_082, TX_VEN2_083, TX_VEN2_084, TX_VEN2_085, TX_VEN2_086, TX_VEN2_087, TX_VEN2_088, TX_VEN2_089, TX_VEN2_090, TX_VEN2_091, TX_VEN2_092, TX_VEN2_093, TX_VEN2_094, // UNUSED TX_VEN2_096, TX_VEN2_097, TX_VEN2_098, TX_VEN2_099, TX_VEN2_100, TX_VEN2_101, TX_VEN2_102, TX_VEN2_103, TX_VEN2_104, TX_VEN2_105, TX_VEN2_106, TX_VEN2_107, // UNUSED TX_VEN2_108, TX_VEN2_109, TX_VEN2_110, // UNUSED TX_VEN2_111, TX_VEN2_112, TX_VEN2_113, TX_VEN2_114, TX_VEN2_115, // UNUSED (116 -> 117; uhura voice substitute) TX_VEN2_ELA, // UNUSED TX_VEN2_ENT, // UNUSED TX_VEN2_F28, TX_VEN2_F29, TX_VEN2_F35, // UNUSED: VEN2L062, VEN2L063 (someone's voice substitute?) TX_VEN2_S09, TX_VEN2_SHI, TX_VEN2_TRA, TX_VEN2_WEA, TX_VEN2N000, TX_VEN2N001, TX_VEN2N002, TX_VEN2N003, TX_VEN2N004, TX_VEN2N005, TX_VEN2N006, TX_VEN2N007, TX_VEN2N008, TX_VEN2N009, TX_VEN2N010, TX_VEN2N011, // UNUSED TX_VEN2N012, TX_VEN2N013, // MISSING TX_VEN2N015, TX_VEN2N016, TX_VEN2N017, TX_VEN2N018, // UNUSED TX_VEN2N019, TX_VEN2N020, TX_VEN2N021, TX_VEN2N022, TX_VEN2N023, TX_VEN2N024, TX_VEN2N025, // UNUSED TX_VEN2N027, TX_VEN2N028, TX_VEN2N029, TX_VEN2N030, TX_VEN2N031, TX_VEN2N032, TX_VEN2N033, TX_VEN2N034, TX_VEN2N035, // UNUSED: 036, 037 TX_VEN2N038, // UNUSED TX_VEN2N039, // UNUSED: N040 -> N043 (options for a menu?) // UNUSED: VEN2NA25 (Alternate for VEN2N025) // UNUSED: VEN2S072 (similar to VEN2_027) TX_VEN2U093, TX_VEN2U094, TX_VEN2_HAIL_ELASI, // Custom named text TX_VEN2_HAIL_ENT, TX_VEN2_CANCEL, TX_VEN3_001, TX_VEN3_002, TX_VEN3_003, TX_VEN3_004, TX_VEN3_005, TX_VEN3_006, TX_VEN3_007, TX_VEN3_008, TX_VEN3_009, TX_VEN3_010, TX_VEN3_011, TX_VEN3_012, TX_VEN3_013, TX_VEN3_014, TX_VEN3_015, TX_VEN3_016, TX_VEN3_017, TX_VEN3_018, TX_VEN3N000, TX_VEN3N001, TX_VEN3N002, TX_VEN3N003, TX_VEN3N004, TX_VEN3N005, TX_VEN3N006, TX_VEN3N007, // UNUSED TX_VEN3N009, TX_VEN3N010, TX_VEN3N011, TX_VEN3N012, TX_VEN3N013, TX_VEN3N014, TX_VEN4_001, TX_VEN4_002, TX_VEN4_003, TX_VEN4_004, TX_VEN4_005, TX_VEN4_006, TX_VEN4_007, TX_VEN4_008, TX_VEN4_009, TX_VEN4_010, TX_VEN4_011, TX_VEN4_012, TX_VEN4_013, TX_VEN4_014, TX_VEN4_015, TX_VEN4_016, TX_VEN4_017, TX_VEN4_018, // UNUSED TX_VEN4_019, TX_VEN4_020, TX_VEN4_021, TX_VEN4_022, TX_VEN4N000, TX_VEN4N001, TX_VEN4N002, TX_VEN4N003, TX_VEN4N004, TX_VEN4N005, TX_VEN4N006, TX_VEN4N007, TX_VEN4N008, TX_VEN4N009, TX_VEN4N010, TX_VEN4N011, TX_VEN4N012, TX_VEN4N013, TX_VEN4N014, TX_VEN4N015, TX_VEN4N016, TX_VEN4N017, TX_VEN5_001, TX_VEN5_002, TX_VEN5_003, TX_VEN5_004, TX_VEN5_005, TX_VEN5_006, TX_VEN5_007, TX_VEN5_008, TX_VEN5_009, TX_VEN5_010, TX_VEN5_011, TX_VEN5_012, TX_VEN5_013, // MISSING TX_VEN5_015, TX_VEN5_016, TX_VEN5_017, TX_VEN5_018, TX_VEN5_019, // UNUSED: 020 (identical to R20) TX_VEN5_R19, TX_VEN5_R20, TX_VEN5N000, TX_VEN5N001, TX_VEN5N002, TX_VEN5N003, TX_VEN5N004, TX_VEN5N005, TX_VEN5N006, TX_VEN5N007, TX_VEN5N008, TX_VEN5N009, TX_VEN5N010, TX_VEN6_001, TX_VEN6_002, TX_VEN6_003, // UNUSED TX_VEN6_005, TX_VEN6_006, TX_VEN6_007, TX_VEN6_008, TX_VEN6_009, TX_VEN6_010, TX_VEN6_011, TX_VEN6_012, TX_VEN6_013, TX_VEN6_014, TX_VEN6_015, TX_VEN6_016, TX_VEN6_017, TX_VEN6_018, TX_VEN6_019, TX_VEN6_020, TX_VEN6_021, TX_VEN6_022, TX_VEN6_023, TX_VEN6N000, TX_VEN6N001, TX_VEN6N002, TX_VEN6N003, // UNUSED TX_VEN6N005, TX_VEN6N006, TX_VEN6N007, TX_VEN6N008, TX_VEN6N009, TX_VEN6N010, TX_VEN6N011, TX_VEN6N012, TX_VEN6N013, // MISSING TX_VEN6N015, TX_VEN6N016, TX_VEN6N017, TX_VEN6N018, TX_VEN6N019, TX_VEN6N020, // UNUSED TX_VEN6N022, // UNUSED TX_VEN6N024, TX_VEN6N025, TX_VEN7_001, // UNUSED TX_VEN7_003, // UNUSED TX_VEN7_005, TX_VEN7_006, TX_VEN7_007, TX_VEN7N000, TX_VEN7N001, TX_VEN7N002, TX_VEN7N003, TX_VEN7N004, TX_VEN7N005, TX_VEN7N006, TX_VEN7N007, TX_VEN7N008, TX_VEN7N009, TX_VEN8_001, TX_VEN8_002, TX_VEN8_003, TX_VEN8_004, TX_VEN8_005, TX_VEN8_006, TX_VEN8_007, TX_VEN8_008, TX_VEN8_009, TX_VEN8_010, TX_VEN8_011, TX_VEN8_012, TX_VEN8_013, TX_VEN8_014, TX_VEN8_015, TX_VEN8_016, // UNUSED // UNUSED TX_VEN8_018, // UNUSED TX_VEN8_020, TX_VEN8_021, // UNUSED TX_VEN8_023, TX_VEN8_024, // UNUSED TX_VEN8_025, TX_VEN8_026, TX_VEN8_027, TX_VEN8_028, TX_VEN8_029, TX_VEN8_030, TX_VEN8_031, TX_VEN8_032, TX_VEN8_033, TX_VEN8_034, TX_VEN8_035, TX_VEN8_036, TX_VEN8_037, TX_VEN8_038, TX_VEN8_039, TX_VEN8_040, TX_VEN8_041, TX_VEN8_042, TX_VEN8N000, TX_VEN8N001, // UNUSED TX_VEN8N003, TX_VEN8N004, TX_VEN8N005, TX_VEN8N006, TX_VEN8N007, TX_VEN8N008, TX_VEN8N009, TX_VEN8N010, // UNUSED (N011) TX_VENA_F32, TX_VENA_F34, TX_VENA_F40, TX_VENA_F41, TX_SPOKCOFF, TX_STATICU1, TX_END }; // defined in text.cpp extern const char *const g_gameStrings[]; } // End of namespace StarTrek #endif