From a8c47408fa7a3cba02c8554ab6a8f1c4c8c6349f Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sun, 14 Apr 2019 22:46:03 +0200 Subject: [PATCH] - implemented 'deletelumps' feature and add Chex Quest 3 texts. The episode titles required a workaround because the CQ3 episodes do not contain names in text form: If this is the case, the patch name will be used as a string table identifier to get a matching text for localization. --- src/d_iwad.cpp | 4 +- src/d_main.cpp | 2 +- src/gamedata/fonts/v_font.cpp | 9 - src/gamedata/g_mapinfo.cpp | 2 + src/gamedata/gi.h | 2 - src/gamedata/w_wad.cpp | 22 +- src/gamedata/w_wad.h | 4 +- wadsrc/static/iwadinfo.txt | 4 +- .../static/filter/chex.chex3/language.csv | 268 ++++++++++++++++++ 9 files changed, 287 insertions(+), 30 deletions(-) create mode 100644 wadsrc_extra/static/filter/chex.chex3/language.csv diff --git a/src/d_iwad.cpp b/src/d_iwad.cpp index 2ababdce4..f6ea6f805 100644 --- a/src/d_iwad.cpp +++ b/src/d_iwad.cpp @@ -132,9 +132,7 @@ void FIWadManager::ParseIWadInfo(const char *fn, const char *data, int datasize, do { sc.MustGetString(); - if(sc.Compare("NoTextcolor")) iwad->flags |= GI_NOTEXTCOLOR; - else if (sc.Compare("NoBigFont")) iwad->flags |= GI_IGNOREBIGFONTLUMP; - else if(sc.Compare("Poly1")) iwad->flags |= GI_COMPATPOLY1; + if(sc.Compare("Poly1")) iwad->flags |= GI_COMPATPOLY1; else if(sc.Compare("Poly2")) iwad->flags |= GI_COMPATPOLY2; else if(sc.Compare("Shareware")) iwad->flags |= GI_SHAREWARE; else if(sc.Compare("Teaser2")) iwad->flags |= GI_TEASER2; diff --git a/src/d_main.cpp b/src/d_main.cpp index 0400a12fe..9c76bd999 100644 --- a/src/d_main.cpp +++ b/src/d_main.cpp @@ -2388,7 +2388,7 @@ void D_DoomMain (void) } if (!batchrun) Printf ("W_Init: Init WADfiles.\n"); - Wads.InitMultipleFiles (allwads); + Wads.InitMultipleFiles (allwads, iwad_info->DeleteLumps); allwads.Clear(); allwads.ShrinkToFit(); SetMapxxFlag(); diff --git a/src/gamedata/fonts/v_font.cpp b/src/gamedata/fonts/v_font.cpp index 61aa2e970..996f919e1 100644 --- a/src/gamedata/fonts/v_font.cpp +++ b/src/gamedata/fonts/v_font.cpp @@ -1169,15 +1169,6 @@ void V_InitFontColors () while ((lump = Wads.FindLump ("TEXTCOLO", &lastlump)) != -1) { - if (gameinfo.flags & GI_NOTEXTCOLOR) - { - // Chex3 contains a bad TEXTCOLO lump, probably to force all text to be green. - // This renders the Gray, Gold, Red and Yellow color range inoperable, some of - // which are used by the menu. So we have no choice but to skip this lump so that - // all colors work properly. - // The text colors should be the end user's choice anyway. - if (Wads.GetLumpFile(lump) == Wads.GetIwadNum()) continue; - } FScanner sc(lump); while (sc.GetString()) { diff --git a/src/gamedata/g_mapinfo.cpp b/src/gamedata/g_mapinfo.cpp index 9e3b1a444..9a0d04c9a 100644 --- a/src/gamedata/g_mapinfo.cpp +++ b/src/gamedata/g_mapinfo.cpp @@ -2059,6 +2059,8 @@ void FMapInfoParser::ParseEpisodeInfo () ParseAssign(); sc.MustGetString (); pic = sc.String; + // If no name has been specified, synthesize a string table reference with the same name as the patch. + if (name.IsEmpty()) name.Format("$%s", sc.String); } else if (sc.Compare ("remove")) { diff --git a/src/gamedata/gi.h b/src/gamedata/gi.h index 10bc411c0..162bad298 100644 --- a/src/gamedata/gi.h +++ b/src/gamedata/gi.h @@ -48,9 +48,7 @@ enum GI_COMPATSTAIRS = 0x00000020, // same for stairbuilding GI_COMPATPOLY1 = 0x00000040, // Hexen's MAP36 needs old polyobject drawing GI_COMPATPOLY2 = 0x00000080, // so does HEXDD's MAP47 - GI_NOTEXTCOLOR = 0x00000100, // Chex Quest 3 would have everything green GI_IGNORETITLEPATCHES = 0x00000200, // Ignore the map name graphics when not runnning in English language - GI_IGNOREBIGFONTLUMP = 0x00000400, // Needed for Chex Quest 3, so that the extended internal font can be used instead. }; #include "gametype.h" diff --git a/src/gamedata/w_wad.cpp b/src/gamedata/w_wad.cpp index ca564cf93..0d28b2a18 100644 --- a/src/gamedata/w_wad.cpp +++ b/src/gamedata/w_wad.cpp @@ -134,7 +134,7 @@ void FWadCollection::DeleteAll () // //========================================================================== -void FWadCollection::InitMultipleFiles (TArray &filenames) +void FWadCollection::InitMultipleFiles (TArray &filenames, const TArray &deletelumps) { int numfiles; @@ -154,7 +154,7 @@ void FWadCollection::InitMultipleFiles (TArray &filenames) I_FatalError ("W_InitMultipleFiles: no files found"); } RenameNerve(); - RenameSprites(); + RenameSprites(deletelumps); FixMacHexen(); // [RH] Set up hash table @@ -755,7 +755,7 @@ void FWadCollection::InitHashChains (void) // //========================================================================== -void FWadCollection::RenameSprites () +void FWadCollection::RenameSprites (const TArray &deletelumps) { bool renameAll; bool MNTRZfound = false; @@ -894,16 +894,14 @@ void FWadCollection::RenameSprites () } else if (LumpInfo[i].lump->Namespace == ns_global) { - // Rename the game specific big font lumps so that the font manager does not have to do problematic special checks for them. - if (!strcmp(LumpInfo[i].lump->Name, altbigfont)) - strcpy(LumpInfo[i].lump->Name, "BIGFONT"); - - if (LumpInfo[i].wadnum == GetIwadNum() && gameinfo.flags & GI_IGNOREBIGFONTLUMP) + if (LumpInfo[i].wadnum == GetIwadNum() && deletelumps.Find(LumpInfo[i].lump->Name) < deletelumps.Size()) { - if (!strcmp(LumpInfo[i].lump->Name, "BIGFONT")) - { - LumpInfo[i].lump->Name[0] = 0; - } + LumpInfo[i].lump->Name[0] = 0; // Lump must be deleted from directory. + } + // Rename the game specific big font lumps so that the font manager does not have to do problematic special checks for them. + else if (!strcmp(LumpInfo[i].lump->Name, altbigfont)) + { + strcpy(LumpInfo[i].lump->Name, "BIGFONT"); } } } diff --git a/src/gamedata/w_wad.h b/src/gamedata/w_wad.h index 4f6740a0e..7fc19d5fa 100644 --- a/src/gamedata/w_wad.h +++ b/src/gamedata/w_wad.h @@ -117,7 +117,7 @@ public: int GetIwadNum() { return IwadIndex; } void SetIwadNum(int x) { IwadIndex = x; } - void InitMultipleFiles (TArray &filenames); + void InitMultipleFiles (TArray &filenames, const TArray &deletelumps); void AddFile (const char *filename, FileReader *wadinfo = NULL); int CheckIfWadLoaded (const char *name); @@ -213,7 +213,7 @@ protected: void InitHashChains (); // [RH] Set up the lumpinfo hashing private: - void RenameSprites(); + void RenameSprites(const TArray &deletelumps); void RenameNerve(); void FixMacHexen(); void DeleteAll(); diff --git a/wadsrc/static/iwadinfo.txt b/wadsrc/static/iwadinfo.txt index c7a9e5edb..fb9a6ac1e 100644 --- a/wadsrc/static/iwadinfo.txt +++ b/wadsrc/static/iwadinfo.txt @@ -105,9 +105,10 @@ IWad Config = "Chex" IWADName = "chex3.wad" Mapinfo = "mapinfo/chex.txt" - Compatibility = "NoTextcolor", "NoBigFont" MustContain = "E1M1", "CYCLA1", "FLMBA1", "MAPINFO" BannerColors = "ff ff 00", "00 c0 00" + IgnoreTitlePatches = 1 + DeleteLumps = "LANGUAGE", "TEXTCOLO", "DBIGFONT" } IWad @@ -120,6 +121,7 @@ IWad Mapinfo = "mapinfo/chex.txt" MustContain = "E1M1", "E4M1", "W94_1", "POSSH0M0" BannerColors = "ff ff 00", "00 c0 00" + IgnoreTitlePatches = 1 } IWad diff --git a/wadsrc_extra/static/filter/chex.chex3/language.csv b/wadsrc_extra/static/filter/chex.chex3/language.csv new file mode 100644 index 000000000..e96088f4a --- /dev/null +++ b/wadsrc_extra/static/filter/chex.chex3/language.csv @@ -0,0 +1,268 @@ +default,Identifier,Remarks,Filter,eng enc ena enz eni ens enj enb enl ent enw,cz,de,es,esm esn esg esc esa esd esv eso esr ess esf esl esy esz esb ese esh esi esu,fr,hu,it,pt,ro,ru,sr,ko +,,,,,,,,,,,,,,,, +Picked up a blue flemkey.,GOTBLUEFLEM,,,,,Blauen Flemschlüssel genommen,,,Flemclé bleue récupérée.,,,Pegou uma flemchave azul.,,,,청색 플렘열쇠 획득. +Picked up a yellow flemkey.,GOTYELLOWFLEM,,,,,Gelben Flemschlüssel genommen,,,Flemclé jaune récupérée.,,,Pegou uma flemchave amarela.,,,,황색 플렘열쇠 획득. +Picked up a red flemkey.,GOTREDFLEM,,,,,Roten Flemschlüssel genommen.,,,Flemclé rouge récupérée.,,,Pegou uma flemchave vermelha.,,,,적색 플렘열쇠 획득. +Found Ultra Goggles,GOTGOGGLES,,,,,Ultrasichtbrille gefunden,,,Ultra-lunettes récupérées.,,,Achou um Ultra Óculos.,,,,울트라 고글 사용. +You need a blue key to activate this object,PD_BLUECO,,,,,"Du brauchst einen blauen Schlüssel, um dieses Objekt zu aktivieren.",Necesitas una llave azul para activar este objeto,,Il vous faut une clé bleue pour activer cet objet.,Egy kék kulcs szükséges az objektum aktiválásához.,Ti serve una chiave blu per attivare questo oggetto,Você precisa de uma chave azul para ativar este objeto,,Для активации нужен синий ключ,Треба вам плави кључ да би активирали овај предмет,이걸 작동하려면 청색 열쇠가 필요합니다 +You need a red key to activate this object,PD_REDCO,,,,,"Du brauchst einen roten Schlüssel, um dieses Objekt zu aktivieren.",Necesitas una llave roja para activar este objeto,,Il vous faut une clé rouge pour activer cet objet.,"Piros kulcs kell, hogy aktiválhasd ezt az objektumot.",Ti serve una chiave rossa per attivare questo oggetto,Você precisa de uma chave vermelha para ativar este objeto,,Для активации нужен красный ключ,Треба вам црвени кључ да би активирали овај предмет,이걸 작동하려면 적색 열쇠가 필요합니다 +You need a yellow key to activate this object,PD_YELLOWCO,,,,,"Du brauchst einen gelben Schlüssel, um dieses Objekt zu aktivieren.",Necesitas una llave amarilla para activar este objeto,,Il vous faut une clé jaune pour activer cet objet.,Egy sárga kulccsal aktiválható ez az objektum,Ti serve una chiave gialla per attivare questo oggetto,Você precisa de uma chave amarela para ativar este objeto,,Для активации нужен жёлтый ключ,Треба вам жути кључ да би активирали овај предмет,이걸 작동하려면 황색 열쇠가 필요합니다 +You need a blue flemkey to activate this object,PD_BLUEFO,,,,,"Du brauchst einen blauen Flemschlüssel, um dieses Objekt zu aktivieren.",,,Il vous faut une flemclé bleue pour activer cet objet.,,,Você precisa de uma flemchave azul para ativar este objeto,,,,이걸 작동하려면 청색 플렘열쇠가 필요합니다 +You need a red flemkey to activate this object,PD_REDFO,,,,,"Du brauchst einen roten Flemschlüssel, um dieses Objekt zu aktivieren.",,,Il vous faut une flemclé rouge pour activer cet objet.,,,Você precisa de uma flemchave vermelha para ativar este objeto,,,,이걸 작동하려면 적색 플렘열쇠가 필요합니다 +You need a yellow flemkey to activate this object,PD_YELLOWFO,,,,,"Du brauchst einen gelben Flemschlüssel, um dieses Objekt zu aktivieren.",,,Il vous faut une flemclé jaune pour activer cet objet.,,,Você precisa de uma flemchave amarela para ativar este objeto,,,,이걸 작동하려면 황색 플렘열쇠가 필요합니다 +Picked up a zorcher.,PICKUP_PISTOL_DROPPED,,,,,Zorcher genommen.,,,Zorcheur récupéré.,,,Pegou um zorcher.,,,,자쳐 습득. +Invincible mode on,STSTR_DQDON,,,,,Unverwundbarkeit AN,,,Mode invincible ON.,,,Modo invencível LIGADO,,,,무적모드 켬 +Invincible mode OFF,STSTR_DQDOFF,,,,,Unverwundbarkeit AUS,,,Mode invincible OFF.,,,Modo invencível DESLIGADO,,,,무적모드 끔 +Zorch and keys added,STSTR_KFAADDED,,,,,Zorch und Schlüssel hinzugefügt.,,,Zorch et clés ajoutées.,,,Zorch e chaves adicionadas,,,,저치와 열쇠 +Zorch Added,STSTR_FAADDED,,,,,Zorch hinzugefügt.,,,Zorch ajouté.,,,Zorch adicionado,,,,저치가 추가됨 +E1M1: Landing Zone,HUSTR_E1M1,,,,,E1M1: Landezone,E1M1: Zona de Aterrizaje,,E1M1: Zone D'Atterissage,E1M1: Landoló Zóna,E1M1: Zona di Atterraggio,E1M1: Zona de Pouso,,E1M1: Зона приземления,,E1M1: 착륙 지점 +E1M2: Storage Facility,HUSTR_E1M2,,,,,E1M2: Lagerhalle,E1M2: Instalación de Almacenamiento,,E1M2: Centre de Stockage,,E1M2: Struttura di Immagazzinamento,E1M2: Depósito,,E1M2: Хранилище,,E1M2: 저장 시설 +E1M3: Laboratory,HUSTR_E1M3,,,,,E1M3: Labor,E1M3: Laboratorio,,E1M3: Laboratoire,,E1M3: Laboratorio,E1M3: Laboratório de Experimentos,,E1M3: Лаборатория,,E1M3: 연구소 +E1M4: Arboretum,HUSTR_E1M4,,,,,,E1M4: Arboreto,,E1M4: Arboretum,,E1M4: Arboreto,E1M4: Arvoredo,,E1M4: Дендрарий,,E1M4: 수목원 +E1M5: Caverns of Bazoik,HUSTR_E1M5,,,,,E1M5: Die Höhlen von Bazoik,E1M5: Cavernas de Bazoik,,E1M5: Cavernes de Bazoik,,E1M5: Caverne di Bazoik,E1M5: Cavernas de Bazoik,,E1M5: Каверны Базоика,,E1M5: 바조이크의 대동굴 +E2M1: Spaceport,HUSTR_E2M1,,,,,E2M1: Raumhafen,,,E2M1: Spatioport,,,E2M1: Espaçoporto,,,,E2M1: 우주공항 +E2M2: Cinema,HUSTR_E2M2,,,,,E2M2: Kino,,,E2M2: Cinéma,,,E2M2: Cinema,,,,E2M2: 극장 +E2M3: Chex Museum,HUSTR_E2M3,,,,,,,,E2M3: Musée Chex,,,E2M3: Museu Chex,,,,E2M3: 첵스 박물관 +E2M4: City Streets,HUSTR_E2M4,,,,,E2M4: städtische Straßen,,,E2M4: Rues de la Ville,,,E2M4: Ruas da Cidade,,,,E2M4: 도시 거리 +E2M5: Sewer System,HUSTR_E2M5,,,,,E2M5: Kanalisation,,,E2M5: Système d'égouts,,,E2M5: Rede de Esgoto,,,,E2M5: 하수도 +E3M1: Central Command,HUSTR_E3M1,,,,,E3M1: Kommandozentrale,,,E3M1: Commandement,,,E3M1: Comando Central,,,,E3M1: 중앙 사령부 +E3M2: United Cereals,HUSTR_E3M2,,,,,E3M2: Vereinigte Zerealien,,,E3M2: Céréales Unies,,,E3M2: Cereais Unidos,,,,E3M2: 시리얼 연합 +E3M3: Villa Chex,HUSTR_E3M3,,,,,,,,E3M3: Villa Chex,,,E3M3: Villa Chex,,,,E3M3: 책스 주택 +E3M4: Provincial Park,HUSTR_E3M4,,,,,E3M4: Provinzpark,,,E3M4: Parc Naturel,,,E3M4: Parque Natural,,,,E3M4: 주립공원 +E3M5: Meteor Spaceship,HUSTR_E3M5,,,,,E3M5: Meteor-Raumschiff,,,E3M5: Vaisseau Météore,,,E3M5: Espaçonave Meteoro,,,,E3M5: 거대 유성호 +Commonus,CC_ZOMBIE,,,,,,,,,,,,,,,커머누스 +Bipedicus,CC_SHOTGUN,,,,,,,,,,,,,,,바이피디쿠스 +Bipedicus with Armor,CC_IMP,,,,,Bipedicus mit Panzerung,,,Bipedicus avec Armure,,,Bipedicus de Armadura,,,,정예 바이피디쿠스 +Stridicus,CC_DEMON,,,,,,,,,,,,,,,스트리디쿠스 +Flem Mine,CC_LOST,,,,,,,,,,,Mina Flem,,,,플렘 지뢰 +Super Cycloptis,CC_CACO,,,,,,,,,,,,,,,슈퍼 사이클롭티스 +Maximus,CC_BARON,,,,,,,,,,,,,,,맥시무스 +The Flembomination,CC_SPIDER,,,,,Die Flembomination,,,La Flembomination,,,A Flembominação,,,,플렘보미네이션 +Lord Snotfolus,CC_CYBER,,,,,,,,Seigneur Morvator,,,Lorde Snotfolus,,,,스놋폴러스 마왕 +Chex Warrior,CC_HERO,,,,,Chex Krieger,,,Guerrier Chex,,,,,,,첵스 전사 +You need a blue key to open this door,PD_BLUEC,,,,,"Du brauchst einen blauen Schlüssel, um diese Tür zu öffnen.",Necesitas una llave azul para abrir esta puerta,,Il vous faut une clé bleue pour ouvrir cette porte.,Az ajtót a kék kulcs nyitja.,Ti serve una chiave blu per aprire questa porta,Você precisa de uma chave azul para abrir essa porta,,"Нужен синий ключ, чтобы открыть",Треба вам плави кључ да би отворили ова врата,이 문을 열려면 청색 열쇠가 필요합니다 +You need a red key to open this door,PD_REDC,,,,,"Du brauchst einen roten Schlüssel, um diese Tür zu öffnen.",Necesitas una llave roja para abrir esta puerta,,Il vous faut une clé rouge pour ouvrir cette porte.,"Piros kulcs szükséges, hogy az ajtót kinyithasd.",Ti serve una chiave rossa per aprire questa porta,Você precisa de uma chave vermelha para abrir essa porta,,"Нужен красный ключ, чтобы открыть",Треба вам црвени кључ да би отворили ова врата,이 문을 열려면 적색 열쇠가 필요합니다 +You need a yellow key to open this door,PD_YELLOWC,,,,,"Du brauchst einen gelben Schlüssel, um diese Tür zu öffnen.",Necesitas una llave amarilla para abrir esta puerta,,Il vous faut une clé jaune pour ouvrir cette porte.,Kell egy sárga kulcs hogy kinyisd ezt az ajtót.,Ti serve una chiave gialla per aprire questa porta,Você precisa de uma chave amarela para abrir essa porta,,"Нужен жёлтый ключ, чтобы открыть",Треба вам жути кључ да би отворили ова врата,이 문을 열려면 황색 열쇠가 필요합니다 +You need a blue flemkey to open this door,PD_BLUEF,,,,,"Du brauchst einen blauen Flemschlüssel, um diese Tür zu öffnen.",,,Il vous faut une flemclé bleue pour ouvrir cette porte.,,,Você precisa de uma flemchave azul para ativar este objeto,,,,이 문을 열려면 청색 플렘열쇠가 필요합니다 +You need a red flemkey to open this door,PD_REDF,,,,,"Du brauchst einen roten Flemschlüssel, um diese Tür zu öffnen.",,,Il vous faut une flemclé rouge pour ouvrir cette porte.,,,Você precisa de uma flemchave vermelha para ativar este objeto,,,,이 문을 열려면 적색 플렘열쇠가 필요합니다 +You need a yellow flemkey to open this door,PD_YELLOWF,,,,,"Du brauchst einen gelben Flemschlüssel, um diese Tür zu öffnen.",,,Il vous faut une flemclé jaune pour ouvrir cette porte.,,,Você precisa de uma flemchave amarela para ativar este objeto,,,,이 문을 열려면 황색 플렘열쇠가 필요합니다 +%o sinks into some slime.,OB_SLIME,,,,,%o versank im Schleim,,,%o se noie dans la morve.,,,%o afundou na gosma.,,,,%o 는(은) 점액 속으로 가라앉았습니다. +%o sinks into some slime.,OB_LAVA,,,,,%o versank im Schleim,,,%o se noie dans la morve.,,,%o afundou na gosma.,,,,%o 는(은) 질척하게 가라앉았습니다. +%o was hit by inter-dimensional slime!,OB_POWERSTRAND,,,,,%o wurde von interdimensionalem Schleim getroffen,,,%o s'est fait@[e_fr] toucher par de la morve interdimensionelle!,,,%o foi atingid@[ao_ptb] por gosma interdimensional!,,,,%o 는(은) 차원균열 점액에 맞았습니다! +%o was hit by inter-dimensional slime!,OB_KILLEDSELF,,,,,%o wurde von interdimensionalem Schleim getroffen,,,%o s'est fait@[e_fr] toucher par de la morve interdimensionelle!,,,%o foi atingid@[ao_ptb] por gosma interdimensional!,,,,%o 는(은) 모르는 사이에 점액에 당했습니다! +%o was boogered by a stridicus.,OB_STRIDICUS,,,,,%o wurde von einem Stridicus bepopelt.,,,%o s'est fait@[e_fr] engluer par un stridicus.,,,%o foi melecad@[ao_ptb] por um stridicus.,,,,%o 는(은) 스트리디쿠스의 코딱지에 당했습니다. +%o was gooed by a flem mine.,OB_FLEMMINE,,,,,%o wurde von einer Flem-Mine beschmiert.,,,%o s'est fait@[e_fr] éclabousser par une flem mine.,,,%o foi engosmad@[ao_ptb] por uma mina flem.,,,,%o 는(은) 플렘 지뢰에 의해 점액 범벅이 됐습니다. +%o was slimed by a super cycloptis.,OB_SUPERCYCLOPTIS,,,,,%o wurde von einem Super Cycloptis vollgeschleimt.,,,%o s'est fait@[e_fr] gélifier par un super cycloptis.,,,%o foi lambuzad@[ao_ptb] por um super cyclóptis.,,,,%o 는(은) 슈퍼 사이클롭티스의 점액에 당했습니다. +%o was defeated by a Maximus.,OB_MAXIMUS,,,,,%o wurde von einem Maximus besiegt.,,,%o s'est fait@[e_fr] batre par un Maximus.,,,%o foi derrotad@[ao_ptb] por um Maximus.,,,,%o 는(은) 맥시무스에게 패배했습니다. +%o was gooed by a larva.,OB_LARVA,,,,,%o wurde von einer Larve beschmiert.,,,%o s'est fait@[e_fr] tacher par une larve.,,,%o foi engosmad@[ao_ptb] por uma larva.,,,,%o 는(은) 애벌레에 의해 점액 범벅이 됐습니다. +%o was slimed by a Quadrumpus.,OB_QUADRUMPUS,,,,,%o wurde von einem Quadrumpus vollgeschleimt.,,,%o s'est fait@[e_fr] morver par un quadrumpus.,,,%o foi melecad@[ao_ptb] por um Quadrumpus.,,,,%o 는(은) 쿼드럼푸스의 점액에 당했습니다. +%o was defeated by the Flembomination.,OB_FLEMBOMINATION,,,,,%o wurde von der Flembomination besiegt.,,,%o s'est fait@[e_fr] éliminer par la Flembomination.,,,%o foi derrotad@[ao_ptb] pela Flembominação.,,,,%o 는(은) 플렘보미네이션으로부터 벗어날 수 없었습니다. +%o was defeated by Lord Snotfolus.,OB_SNOTFOLUS,,,,,%o wurde von Lord Snotfolus besiegt.,,,%o est tombé@[e_fr] face au Seigneur Morvator.,,,%o foi derrotad@[ao_ptb] pelo Lorde Snotfolus.,,,,%o 는(은) 스놋폴러스 마왕과 싸울 준비를 제대로 하지 못했습니다. +%o was hit by %k's propulsor.,OB_MPR_SPLASH,,,,,%o wurde von %ks Propeller getroffen,,,%o s'est fait@[e_fr] propulser par %k.,,,%o foi atingid@[ao_ptb] pelo propulsor de %k.,,,,%o 는(은) %k 의 추진력에 휘말렸습니다. +%o was lazzed by %k.,OB_MPBFG_SPLASH,,,,,%o wurde von %o weggezorcht.,,,%o est entré@[e_fr] dans la zone de zorchage large de %k.,,,%o foi LAZead@[ao_ptb] por %k.,,,,%o 는(은) %k 에게 레이져를 쐬였습니다. +"After sending the monstrous Flembrane +back to his own dimension, you free the +captives. Yet flemoids are everywhere! +You and the captives make a break for +your spaceship. The flemoids slime your +ship, but you narrowly escape into orbit. +During the return you are congratulated +for the daring rescue, but you issue a +warning... +We haven't seen the last of the Flemoids. + +Unfortunately you are correct. For as you +return home, you find that the Flemoids +have somehow followed you here. Prepare +for Chex Quest 2: Terror in Chex City!",E1TEXT,,,,,"Nachdem du die monströse Flembrane +in ihre eigene Dimension zurückgeschickt +hast, befreist du die Gefangenen. +Und dennoch sind die Flemoiden +überall! Du kämpfst dich mit den +Gefangenen zu deinem Raumschiff +durch und entkommst mit knapper Not. +Du schickst eine Warnung ab, dass wir +die Flemoiden noch nicht los sind. + +Unglückicherweise hast du Recht. +Denn als du nach Hause kommst, +erkennst du, dass dir die Flemoiden +gefolgt sind. Bereite dich auf Chex +Quest 2: Terror in Chex-City vor!",,,"Ayant renvoyé la terrible Flembrane dans +sa dimension, vous libérez les prisonniers. +Pourtant, les flémoïdes sont partout! +Vous aidez les prisonniers à rejoindre +votre vaisseau. Les flémoïdes s'agglutinent +dessus, mais vous arrivez à vous mettre +en orbite. Lors du retour, vous êtes félicité, +mais vous avez un avertissement.. +Ce n'est pas la fin de la menace flémoïde. + +Malheureusement, vous avez raison. +Quand vous retournez sur votre planète, +vous découvrez que les flémoïdes vous +ont suivi jusqu'ici. Préparez vous pour +Chex Quest 2: Terreur à Chex City!",,,"Após mandar a monstruosa Flembrana +para sua dimensão, você libertou os +prisioneiros! Você e os prisioneiros correm +até a sua espaçonave. Os flemóides +lambuzam a sua nave, mas por pouco +você consegue escapar até a órbita. +Ao retornar, você é parabenizado pelo seu +resgate ousado, mas também há um aviso... +A ameaça flemóide ainda não chegou ao fim. + +Infelizmente, você está corret@[ao_ptb]. +Pois ao retornar para casa, você descobre +que os flemóides te seguiram até aqui de +alguma forma. Prepare-se para o +Chex Quest 2: Terror em Chexópolis!",,,,"플렘브레인을 원래 차원으로 보내버린 뒤, 당신은 인질들을 풀어줬지만, +아직 플레모이드들이 사방에 있습니다! 당신과 인질들은 당신의 +우주선으로 도망갔습니다. 플레모이드들이 당신의 우주선에 +공격을 가하지만, 아슬아슬하게 궤도 밖으로 탈출하는 +데 성공했습니다. 돌아오는 동안 당신의 용맹한 구출 작전의 +성공에 모두 축배를 들지만, 한 가지 걸리는 게 있으니... +바로 플레모이드들과 끝장을 보지 못했다는 것! + +불행히도 그 예감은 맞았습니다. 집으로 돌아가는 와중, +플레모이드들이 당신을 추적해왔다는 걸 알게 됐는데... +다음 이야기는 ""첵스 퀘스트 2 : 첵스 시티의 공포""에서 계속됩니다!" +"You zorch the remaining flemoids who had +gathered in the sewers. Chex City has been +saved. It seems that the Flemoid threat +has finally ended. + + +Ten years pass in peace and prosperity. +But the Flemoids were not defeated and +their desire to control the nutritionally +rich cereal dimension has not diminished. +They have gathered all their forces, opened +a gigantic inter-dimensional rift in space +and now a great ball of slime is headed +straight for the cereals' planet! + +Get ready for +Chex Quest 3: Invasion! +",E2TEXT,,,,,"Du zorchst die verbleibenden +Flemoiden, die sich noch in der +Kanalisation aufhielten, weg. Chex +City ist gerettet. Es sieht aus, als ob die +Flemoidenbedrohung beendet ist. + +Zehn Jahre vergehen in Frieden und +Wohlstand. Aber die Flemoiden waren +nicht besiegt und ihr Verlangen, die +Zerealiendimension zu kontollieren, hat +nicht abgenommen. Sie haben all ihre +Truppen zusammengezogen und ein +gigantisches interdimensionales Portal +erschaffen, und nun macht sich ein +gigantischer Ball intergalaktischen +Schleims auf den Weg zum Zerealien- +planeten. + +Mach dich bereit für Chex Quest 3: +Invasion!",,,"Vous zorchez les derniers flémoïdes +restant dans les égouts. Chex City +est sauvée. Il semble que la menace +flémoïde n'existe plus. + +Dix ans se déroulent dans la paix et +la prospérité, mais les flémoïdes ne +se sont pas laissé battre, et veulent +contrôler la dimension des céréales, +riche en nutriments. Ils on regroupé +leur forces et ont ouvert un portail +inter-dimensionnel colossal, et +maintenant, une sphère de morve +géante se dirige vers la planète +des céréales! + +Préparez vous pour Chex Quest 3: +Invasion!",,,"Você zorcha os flemóides que restaram nos +esgotos. Chexópolis foi salva. Parece que +a ameaça flemóide finalmente acabou. + +Dez anos se passaram com paz e +propseridade. Mas os flemóides não foram +derrotados e seu desejo para controlar a +dimensão dos cereias ricos em nutrientes +não diminuiu. Eles juntaram todas as suas +forças, abriram uma grande fenda +interdimensional no espaço e agora uma +bola gigante de gosma está vindo direto +para o planeta dos cereais! + +Se prepare para o +Chex Quest 3: A Invasão!",,,,"당신은 하수구에 모인 잔존 플레모이드들을 처리하는 데 성공했습니다. +이제 책스 시티는 안전합니다. 플레모이드들의 위협도 이로써 +막을 내린 것 같습니다. + +평화와 번창 속에서 10 년이라는 세월이 흘렀지만, 사실 플레모이드들 +전부가 패배한 것이 아니었고, 그들의 영양가 풍부한 시리얼 행성을 +지배하려는 야망은 아직 사그라지지 않았던 것이었습니다! 그들은 +병력을 모아, 우주에 거대한 차원균열 관문을 열었고 그들의 거대한 +녹색 점액 덩어리가 시리얼 행성을 향하고 있는데! + +다음 이야기는 """"첵스 퀘스트 3: 대침공""""에서 이어집니다!" +"With one final blast, you zorch Lord +Snotfolus back to his own dimension! +Against all the odds you have single- +handedly foiled the invasion! + +You truly hope that the Flemoids have +finally learned their lesson and will +never again return to the cereal +dimension. + + + +But if they do you know you will be +ready for them! +",E3TEXT,,,,,"Mit einem letzten Schuss zorchst du +Lord Snotfolus zurück in seine eigene +Dimension! Gegen alle Widerstände +hast du eigenhändiig die Invasion +scheitern lassen! + +Du hoffst wirklich, dass die Flemoiden +ihre Lektion gelernt haben und nie +wieder in die Zerealiendimension +zurückkehren. + +Aber falls sie das doch tun, wirst du +bereit sein!",,,"Avec un dernier tir, vous zorchez +Seigneur Morvator dans sa propre +dimension! Contre toute attente, +vous avez surmonté l'invasion +de par vos propres moyens. + +Vous espérez sincèrement que les +flémoïdes ont appris leur leçon +et qu'il n'essaieront jamais de +revenir envahir la dimension des +céréales. + +Mais vous savez que vous serez +prêt pour eux!",,,"Com mais uma última explosão, você zorcha +o Lorde Snotfolus de volta para sua +dimensão! Contra todas as probabilidades +você impediu sozinh@[ao_ptb] a invasão! + +Você torce que os flemóides finalmente +tenham aprendido a lição e que eles nunca +mais voltarão para a dimensão dos cereais. + + +Mas se voltarem, você sabe que você +estará preparad@[ao_ptb]!",,,,"최후의 한방으로, 당신은 스놋폴러스 마왕을 원래 세계로 추방했습니다! +그 모든 역경 속에서 당신은 손쉽게 모든 침공을 막아냈습니다! + +당신은 드디어 플레모이드들이 정신을 차리고 다신 +시리얼 차원에 발을 들일 생각조차 안 하기를 바랐습니다. + +뭐, 다시 온다 해도 당신은 항상 대비하고 있을 테지만!" +Rescue on Bazoik,M_EPI1,,,,,Rettung auf Bazoik,,,,,,,,,, +Terror in Chex City,M_EPI2,,,,,,,,,,,Terror em Chexópolis!,,,,"첵스 시티의 공포""에서 계속됩니다" +Invasion!,M_EPI3,,,,,,,,,,,A Invasão!,,,,"대침공""""에서 이어집니다!" \ No newline at end of file