OSDN Git Service

patch roles
authorSHIRAKATA Kentaro <argrath@ub32.org>
Wed, 23 Dec 2015 09:03:44 +0000 (18:03 +0900)
committerSHIRAKATA Kentaro <argrath@ub32.org>
Sat, 13 Feb 2016 16:46:51 +0000 (01:46 +0900)
roles.name.m is also used to selection letter, so patch to use roles.filecode.

src/role.c
win/tty/wintty.c

index 7be577b..bbf516d 100644 (file)
@@ -24,6 +24,7 @@
  * God names use a leading underscore to flag goddesses.
  */
 const struct Role roles[] = {
+#if 0 /*JP*/
     { { "Archeologist", 0 },
       { { "Digger", 0 },
         { "Field Worker", 0 },
@@ -35,9 +36,27 @@ const struct Role roles[] = {
         { "Collector", 0 },
         { "Curator", 0 } },
       "Quetzalcoatl", "Camaxtli", "Huhetotl", /* Central American */
+#else
+    { { "\8dl\8cÃ\8aw\8eÒ", 0 },
+      { { "\8dz\88õ", 0 },
+        { "\98J\93­\8eÒ", 0 },
+        { "\92²\8d¸\8eÒ", 0 },
+        { "\94­\8c@\8eÒ", 0 },
+        { "\8c@\8dí\8eÒ", 0 },
+        { "\92T\8c\9f\8eÒ", 0 },
+        { "\93´\8cA\8aw\8eÒ", 0 },
+        { "\94ü\8fp\8eû\8fW\8eÒ", 0 },
+        { "\8aÙ\92·", 0 } },
+      "Quetzalcoatl", "Camaxtli", "Huhetotl", /* Central American */
+#endif
       "Arc",
+#if 0 /*JP*/
       "the College of Archeology",
       "the Tomb of the Toltec Kings",
+#else
+      "\8dl\8cÃ\8aw\91å\8aw",
+      "\83g\83\8b\83e\83J\89¤\89Æ\82Ì\95æ",
+#endif
       PM_ARCHEOLOGIST,
       NON_PM,
       NON_PM,
@@ -66,6 +85,7 @@ const struct Role roles[] = {
       A_INT,
       SPE_MAGIC_MAPPING,
       -4 },
+#if 0 /*JP*/
     { { "Barbarian", 0 },
       { { "Plunderer", "Plunderess" },
         { "Pillager", 0 },
@@ -77,9 +97,27 @@ const struct Role roles[] = {
         { "Chieftain", "Chieftainess" },
         { "Conqueror", "Conqueress" } },
       "Mitra", "Crom", "Set", /* Hyborian */
+#else
+    { { "\96ì\94Ø\90l", 0 },
+      { { "\93\90\91¯", 0 },
+        { "\97ª\92D\8eÒ", 0 },
+        { "\88«\8a¿", 0 },
+        { "\8eR\91¯", 0 },
+        { "\90N\97ª\8eÒ", 0 },
+        { "\8b­\93\90", 0 },
+        { "\8eE\9dC\8eÒ", 0 },
+        { "\8eñ\97Ì", 0 },
+        { "\90ª\95\9e\8eÒ", 0 } },
+      "Mitra", "Crom", "Set", /* Hyborian */
+#endif
       "Bar",
+#if 0 /*JP*/
       "the Camp of the Duali Tribe",
       "the Duali Oasis",
+#else
+      "\83f\83\85\83A\83\8a\91°\82Ì\83L\83\83\83\93\83v",
+      "\83f\83\85\83A\83\8a\91°\82Ì\83I\83A\83V\83X",
+#endif
       PM_BARBARIAN,
       NON_PM,
       NON_PM,
@@ -108,6 +146,7 @@ const struct Role roles[] = {
       A_INT,
       SPE_HASTE_SELF,
       -4 },
+#if 0 /*JP*/
     { { "Caveman", "Cavewoman" },
       { { "Troglodyte", 0 },
         { "Aborigine", 0 },
@@ -119,9 +158,27 @@ const struct Role roles[] = {
         { "Rover", 0 },
         { "Pioneer", 0 } },
       "Anu", "_Ishtar", "Anshar", /* Babylonian */
+#else
+    { { "\93´\8cA\90l", 0 },
+      { { "\8c\8a\8b\8f\90l", 0 },
+        { "\8c´\8fZ\96¯", 0 },
+        { "\95ú\98Q\8eÒ", 0 },
+        { "\95\82\98Q\8eÒ", 0 },
+        { "\97·\8ds\8eÒ", 0 },
+        { "\95ú\97V\8eÒ", 0 },
+        { "\97V\96q\96¯", 0 },
+        { "\97¬\98Q\8eÒ", 0 },
+        { "\90æ\8bì\8eÒ", 0 } },
+      "Anu", "_Ishtar", "Anshar", /* Babylonian */
+#endif
       "Cav",
+#if 0 /*JP*/
       "the Caves of the Ancestors",
       "the Dragon's Lair",
+#else
+      "\91¾\8cÃ\82Ì\93´\8cA",
+      "\97³\82Ì\89B\82ê\89Æ",
+#endif
       PM_CAVEMAN,
       PM_CAVEWOMAN,
       PM_LITTLE_DOG,
@@ -150,6 +207,7 @@ const struct Role roles[] = {
       A_INT,
       SPE_DIG,
       -4 },
+#if 0 /*JP*/
     { { "Healer", 0 },
       { { "Rhizotomist", 0 },
         { "Empiric", 0 },
@@ -161,9 +219,27 @@ const struct Role roles[] = {
         { "Physician", 0 },
         { "Chirurgeon", 0 } },
       "_Athena", "Hermes", "Poseidon", /* Greek */
+#else
+    { { "\96ò\8et", 0 },
+      { { "\8c©\8fK\82¢", 0 },
+        { "\88ã\8et\8c©\8fK\82¢", 0 },
+        { "\8aÅ\8cì\8et", "\8aÅ\8cì\95w" },
+        { "\88ã\8et\8f\95\8eè", 0 },
+        { "\96ò\95¨\8eå\94C", 0 },
+        { "\8a¿\95û\88ã", 0 },
+        { "\88ã\8et\8eå\94C", 0 },
+        { "\93à\89È\88ã", 0 },
+        { "\8aO\89È\88ã", 0 } },
+      "_Athena", "Hermes", "Poseidon", /* Greek */
+#endif
       "Hea",
+#if 0 /*JP*/
       "the Temple of Epidaurus",
       "the Temple of Coeus",
+#else
+      "\83G\83s\83_\83E\83\8d\83X\8e\9b\89@",
+      "\83R\83C\83I\83X\8e\9b\89@",
+#endif
       PM_HEALER,
       NON_PM,
       NON_PM,
@@ -191,6 +267,7 @@ const struct Role roles[] = {
       A_WIS,
       SPE_CURE_SICKNESS,
       -4 },
+#if 0 /*JP*/
     { { "Knight", 0 },
       { { "Gallant", 0 },
         { "Esquire", 0 },
@@ -202,9 +279,27 @@ const struct Role roles[] = {
         { "Seignieur", "Dame" },
         { "Paladin", 0 } },
       "Lugh", "_Brigit", "Manannan Mac Lir", /* Celtic */
+#else
+    { { "\8bR\8em", 0 },
+      { { "\8c©\8fK\82¢", 0 },
+        { "\95à\95º", 0 },
+        { "\90í\8em", 0 },
+        { "\8bR\95º", 0 },
+        { "\8fd\90í\8em", 0 },
+        { "\8bR\8em", 0 },
+        { "\8fd\8bR\8em", 0 },
+        { "\8cM\8bR\8em", 0 },
+        { "\90¹\8bR\8em", 0 } },
+      "Lugh", "_Brigit", "Manannan Mac Lir", /* Celtic */
+#endif
       "Kni",
+#if 0 /*JP*/
       "Camelot Castle",
       "the Isle of Glass",
+#else
+      "\83L\83\83\83\81\83\8d\83b\83g\8fé",
+      "\83K\83\89\83X\82Ì\93\87",
+#endif
       PM_KNIGHT,
       NON_PM,
       PM_PONY,
@@ -232,6 +327,7 @@ const struct Role roles[] = {
       A_WIS,
       SPE_TURN_UNDEAD,
       -4 },
+#if 0 /*JP*/
     { { "Monk", 0 },
       { { "Candidate", 0 },
         { "Novice", 0 },
@@ -243,9 +339,27 @@ const struct Role roles[] = {
         { "Student of Fire", 0 },
         { "Master", 0 } },
       "Shan Lai Ching", "Chih Sung-tzu", "Huan Ti", /* Chinese */
+#else
+    { { "\95\90\93¬\89Æ", 0 },
+      { { "\93ü\96å\8aó\96]\8eÒ", 0 },
+        { "\8f\89\90S\8eÒ", 0 },
+        { "\93ü\96å\8eÒ\93`", 0 },
+        { "\93y\82Ì\8fK\82¢\8eè", 0 },
+        { "\90\85\82Ì\8fK\82¢\8eè", 0 },
+        { "\8bà\82Ì\8fK\82¢\8eè", 0 },
+        { "\96Ø\82Ì\8fK\82¢\8eè", 0 },
+        { "\89Î\82Ì\8fK\82¢\8eè", 0 },
+        { "\96Æ\8b\96\8aF\93`", 0 } },
+      "Shan Lai Ching", "Chih Sung-tzu", "Huan Ti", /* Chinese */
+#endif
       "Mon",
+#if 0 /*JP*/
       "the Monastery of Chan-Sune",
       "the Monastery of the Earth-Lord",
+#else
+      "\83`\83\83\83\93\81E\83X\81[\8fC\93¹\89@",
+      "\92n\89¤\82Ì\8fC\93¹\89@",
+#endif
       PM_MONK,
       NON_PM,
       NON_PM,
@@ -274,6 +388,7 @@ const struct Role roles[] = {
       A_WIS,
       SPE_RESTORE_ABILITY,
       -4 },
+#if 0 /*JP*/
     { { "Priest", "Priestess" },
       { { "Aspirant", 0 },
         { "Acolyte", 0 },
@@ -285,9 +400,27 @@ const struct Role roles[] = {
         { "Patriarch", "Matriarch" },
         { "High Priest", "High Priestess" } },
       0, 0, 0, /* deities from a randomly chosen other role will be used */
+#else
+    { { "\91m\97µ", "\93ò\91m" },
+      { { "\8fC\93¹\8eÒ", "\8fC\93¹\8f\97" },
+        { "\8e\98\8eÒ", 0 },
+        { "\8e\98\8dÕ", 0 },
+        { "\91m\97µ", "\93ò\91m" },
+        { "\8f\95\94C\8ei\8dÕ", 0 },
+        { "\90¹\8eÒ", "\90¹\8f\97" },
+        { "\8ei\8b³", 0 },
+        { "\91å\8ei\8b³", 0 },
+        { "\91å\91m\8fã", 0 } },
+      0, 0, 0, /* deities from a randomly chosen other role will be used */
+#endif
       "Pri",
+#if 0 /*JP*/
       "the Great Temple",
       "the Temple of Nalzok",
+#else
+      "\88Ì\91å\82È\82é\8e\9b\89@",
+      "\83i\83\8b\83]\83N\8e\9b\89@",
+#endif
       PM_PRIEST,
       PM_PRIESTESS,
       NON_PM,
@@ -318,6 +451,7 @@ const struct Role roles[] = {
       -4 },
     /* Note:  Rogue precedes Ranger so that use of `-R' on the command line
        retains its traditional meaning. */
+#if 0 /*JP*/
     { { "Rogue", 0 },
       { { "Footpad", 0 },
         { "Cutpurse", 0 },
@@ -329,9 +463,27 @@ const struct Role roles[] = {
         { "Magsman", "Magswoman" },
         { "Thief", 0 } },
       "Issek", "Mog", "Kos", /* Nehwon */
+#else
+    { { "\93\90\91¯", 0 },
+      { { "\92Ç\82¢\82Í\82¬", 0 },
+        { "\82Ð\82Á\82½\82­\82è", 0 },
+        { "\83X\83\8a", 0 },
+        { "\82²\82ë\82Â\82«", 0 },
+        { "\82±\82»\82Ç\82ë", 0 },
+        { "\8bó\91\83", 0 },
+        { "\93D\96_", 0 },
+        { "\8b­\93\90", 0 },
+        { "\91å\93D\96_", 0 } },
+      "Issek", "Mog", "Kos", /* Nehwon */
+#endif
       "Rog",
+#if 0 /*JP*/
       "the Thieves' Guild Hall",
       "the Assassins' Guild Hall",
+#else
+      "\93\90\91¯\83M\83\8b\83h",
+      "\88Ã\8eE\8eÒ\83M\83\8b\83h",
+#endif
       PM_ROGUE,
       NON_PM,
       NON_PM,
@@ -359,6 +511,7 @@ const struct Role roles[] = {
       A_INT,
       SPE_DETECT_TREASURE,
       -4 },
+#if 0 /*JP*/
     { { "Ranger", 0 },
       {
 #if 0 /* OBSOLETE */
@@ -384,9 +537,27 @@ const struct Role roles[] = {
         { "Sharpshooter", 0 },
         { "Marksman", "Markswoman" } },
       "Mercury", "_Venus", "Mars", /* Roman/planets */
+#else
+    { { "\83\8c\83\93\83W\83\83\81[", 0 },
+      { { "\90V\95Ä", 0 },
+        { "\8c©\92£\82è", 0 },
+        { "\90æ\93±", 0 },
+        { "\92ã\8e@", 0 },
+        { "\90Ë\8có", 0 },
+        { "\8b|\95º", 0 }, /* One skilled at crossbows */
+        { "\92\86\8b\89\8b|\95º", 0 },
+        { "\8fã\8b\89\8b|\95º", 0 },
+        { "\8fã\8b\89\8b|\95º", 0 } },
+      "Mercury", "_Venus", "Mars", /* Roman/planets */
+#endif
       "Ran",
+#if 0 /*JP*/
       "Orion's camp",
       "the cave of the wumpus",
+#else
+      "\83I\83\8a\83I\83\93\82Ì\83L\83\83\83\93\83v",
+      "\83\8f\83\93\83p\83X\82Ì\93´\8cA",
+#endif
       PM_RANGER,
       NON_PM,
       PM_LITTLE_DOG /* Orion & canis major */,
@@ -415,6 +586,7 @@ const struct Role roles[] = {
       A_INT,
       SPE_INVISIBILITY,
       -4 },
+#if 0 /*JP*/
     { { "Samurai", 0 },
       { { "Hatamoto", 0 },       /* Banner Knight */
         { "Ronin", 0 },          /* no allegiance */
@@ -426,9 +598,27 @@ const struct Role roles[] = {
         { "Kuge", 0 },           /* Noble of the Court */
         { "Shogun", 0 } },       /* supreme commander, warlord */
       "_Amaterasu Omikami", "Raijin", "Susanowo", /* Japanese */
+#else
+    { { "\8e\98", 0 },
+      { { "\8aø\96{", 0 },       /* Banner Knight */
+        { "\98Q\90l", 0 },          /* no allegiance */
+        { "\94E\8eÒ", "\82­\83m\88ê" }, /* secret society */
+        { "\8fé\8eå", 0 },          /* heads a castle */
+        { "\97Ì\8eå", 0 },         /* has a territory */
+        { "\97Ì\8eå", 0 },        /* heads a province */
+        { "\91å\96¼", "\8d\98\8c³" },         /* a samurai lord */
+        { "\8cö\89Æ", 0 },           /* Noble of the Court */
+        { "\8cö\89Æ", "\91å\89\9c" } },       /* supreme commander, warlord */
+      "_Amaterasu Omikami", "Raijin", "Susanowo", /* Japanese */
+#endif
       "Sam",
+#if 0 /*JP*/
       "the Castle of the Taro Clan",
       "the Shogun's Castle",
+#else
+      "\91¾\98Y\88ê\91°\82Ì\8fé",
+      "\8f«\8cR\82Ì\8fé",
+#endif
       PM_SAMURAI,
       NON_PM,
       PM_LITTLE_DOG,
@@ -456,6 +646,7 @@ const struct Role roles[] = {
       A_INT,
       SPE_CLAIRVOYANCE,
       -4 },
+#if 0 /*JP*/
     { { "Tourist", 0 },
       { { "Rambler", 0 },
         { "Sightseer", 0 },
@@ -467,9 +658,27 @@ const struct Role roles[] = {
         { "Explorer", 0 },
         { "Adventurer", 0 } },
       "Blind Io", "_The Lady", "Offler", /* Discworld */
+#else
+    { { "\8aÏ\8cõ\8bq", 0 },
+      { { "\83v\81[\91¾\98Y", "\83v\81[\8eq" },
+        { "\8aÏ\8cõ\8bq", 0 },
+        { "\8eü\97V\97·\8ds\8eÒ", 0 },
+        { "\95Õ\97ð\8eÒ", 0 },
+        { "\97·\8ds\8eÒ", 0 },
+        { "\97·\90l", 0 },
+        { "\8dq\8aC\8eÒ", 0 },
+        { "\92T\8c\9f\89Æ", 0 },
+        { "\96`\8c¯\8eÒ", 0 } },
+      "Blind Io", "_The Lady", "Offler", /* Discworld */
+#endif
       "Tou",
+#if 0 /*JP*/
       "Ankh-Morpork",
       "the Thieves' Guild Hall",
+#else
+      "\96`\8c¯\8eÒ",
+      "\93\90\91¯\83M\83\8b\83h",
+#endif
       PM_TOURIST,
       NON_PM,
       NON_PM,
@@ -497,6 +706,7 @@ const struct Role roles[] = {
       A_INT,
       SPE_CHARM_MONSTER,
       -4 },
+#if 0 /*JP*/
     { { "Valkyrie", 0 },
       { { "Stripling", 0 },
         { "Skirmisher", 0 },
@@ -508,9 +718,27 @@ const struct Role roles[] = {
         { "Champion", 0 },
         { "Lord", "Lady" } },
       "Tyr", "Odin", "Loki", /* Norse */
+#else
+    { { "\83\8f\83\8b\83L\83\85\81[\83\8c", 0 },
+      { { "\8c©\8fK\82¢", 0 },
+        { "\95à\95º", 0 },
+        { "\90í\8em", 0 },
+        { "\8bR\95º", 0 },
+        { "\90í\93¬\95º", 0 },
+        { "\8dU\8c\82\95º", 0 },
+        { "\89p\97Y", 0 },
+        { "\90æ\93±\8eÒ", 0 },
+        { "\83\8d\81[\83h", "\83\8c\83f\83B" } },
+      "Tyr", "Odin", "Loki", /* Norse */
+#endif
       "Val",
+#if 0 /*JP*/
       "the Shrine of Destiny",
       "the cave of Surtur",
+#else
+      "\89^\96½\82Ì\90¹\93°",
+      "\83X\83\8b\83g\82Ì\93´\8cA",
+#endif
       PM_VALKYRIE,
       NON_PM,
       NON_PM /*PM_WINTER_WOLF_CUB*/,
@@ -538,6 +766,7 @@ const struct Role roles[] = {
       A_WIS,
       SPE_CONE_OF_COLD,
       -4 },
+#if 0 /*JP*/
     { { "Wizard", 0 },
       { { "Evoker", 0 },
         { "Conjurer", 0 },
@@ -549,9 +778,27 @@ const struct Role roles[] = {
         { "Wizard", 0 },
         { "Mage", 0 } },
       "Ptah", "Thoth", "Anhur", /* Egyptian */
+#else
+    { { "\96\82\96@\8eg\82¢", 0 },
+      { { "\8eè\95i\8et", 0 },
+        { "\8aï\8fp\8et", 0 },
+        { "\90è\82¢\8et", 0 },
+        { "\97ì\8a´\8et", 0 },
+        { "\8f¢\8a«\8et", 0 },
+        { "\97d\8fp\8et", 0 },
+        { "\96\82\8fp\8et", 0 },
+        { "\96\82\96@\8eg\82¢", 0 },
+        { "\91å\96\82\96@\8eg\82¢", 0 } },
+      "Ptah", "Thoth", "Anhur", /* Egyptian */
+#endif
       "Wiz",
+#if 0 /*JP*/
       "the Lonely Tower",
       "the Tower of Darkness",
+#else
+      "\8cÇ\8d\82\82Ì\93\83",
+      "\88Ã\8d\95\82Ì\93\83",
+#endif
       PM_WIZARD,
       NON_PM,
       PM_KITTEN,
index c2d3aae..95c532c 100644 (file)
@@ -952,7 +952,10 @@ int race, gend, algn; /* all ROLE_NONE for !filtering case */
             any.a_int = i + 1;
         else
             any.a_string = roles[i].name.m;
+/*JP
         thisch = lowc(*roles[i].name.m);
+*/
+        thisch = lowc(*roles[i].filecode);
         if (thisch == lastch)
             thisch = highc(thisch);
         Strcpy(rolenamebuf, roles[i].name.m);