OSDN Git Service

[move] ソースファイルの拡張子を .c から .cpp に変更
[hengbandforosx/hengbandosx.git] / src / player-info / class-ability-info.cpp
1 #include "player-info/class-ability-info.h"
2 #include "player-info/self-info-util.h"
3 #include "realm/realm-names-table.h"
4 #include "realm/realm-types.h"
5
6 void set_class_ability_info(player_type *creature_ptr, self_info_type *self_ptr)
7 {
8     switch (creature_ptr->pclass) {
9     case CLASS_WARRIOR:
10         if (creature_ptr->lev > 39)
11             self_ptr->info[self_ptr->line++]
12                 = _("あなたはランダムな方向に対して数回攻撃することができる。(75 HP)", "You can attack some random directions simultaneously (cost 75).");
13
14         break;
15     case CLASS_HIGH_MAGE:
16         if (creature_ptr->realm1 == REALM_HEX)
17             break;
18         /* Fall through */
19     case CLASS_MAGE:
20     case CLASS_SORCERER:
21         if (creature_ptr->lev > 24)
22             self_ptr->info[self_ptr->line++] = _("あなたはアイテムの魔力を吸収することができる。(1 MP)", "You can absorb charges from an item (cost 1).");
23
24         break;
25     case CLASS_PRIEST:
26         if (is_good_realm(creature_ptr->realm1)) {
27             if (creature_ptr->lev > 34)
28                 self_ptr->info[self_ptr->line++] = _("あなたは武器を祝福することができる。(70 MP)", "You can bless a weapon (cost 70).");
29
30             break;
31         }
32
33         if (creature_ptr->lev > 41)
34             self_ptr->info[self_ptr->line++]
35                 = _("あなたは周りのすべてのモンスターを攻撃することができる。(40 MP)", "You can damage all monsters in sight (cost 40).");
36
37         break;
38     case CLASS_ROGUE:
39         if (creature_ptr->lev > 7)
40             self_ptr->info[self_ptr->line++]
41                 = _("あなたは攻撃して即座に逃げることができる。(12 MP)", "You can hit a monster and teleport away simultaneously (cost 12).");
42
43         break;
44     case CLASS_RANGER:
45         if (creature_ptr->lev > 14)
46             self_ptr->info[self_ptr->line++] = _("あなたは怪物を調査することができる。(20 MP)", "You can probe monsters (cost 20).");
47
48         break;
49     case CLASS_PALADIN:
50         if (is_good_realm(creature_ptr->realm1)) {
51             if (creature_ptr->lev > 29) {
52                 self_ptr->info[self_ptr->line++] = _("あなたは聖なる槍を放つことができる。(30 MP)", "You can fire a holy spear (cost 30).");
53             }
54
55             break;
56         }
57
58         if (creature_ptr->lev > 29)
59             self_ptr->info[self_ptr->line++]
60                 = _("あなたは生命力を減少させる槍を放つことができる。(30 MP)", "You can fire a spear which drains vitality (cost 30).");
61
62         break;
63     case CLASS_WARRIOR_MAGE:
64         if (creature_ptr->lev > 24) {
65             self_ptr->info[self_ptr->line++] = _("あなたはHPをMPに変換することができる。(消費なし)", "You can convert HP to SP (cost 0).");
66             self_ptr->info[self_ptr->line++] = _("あなたはMPをHPに変換することができる。(消費なし)", "You can convert SP to HP (cost 0).");
67         }
68
69         break;
70     case CLASS_CHAOS_WARRIOR:
71         if (creature_ptr->lev > 39) {
72             self_ptr->info[self_ptr->line++]
73                 = _("あなたは周囲に怪物を惑わす光を発生させることができる。(50 MP)", "You can radiate light which confuses nearby monsters (cost 50).");
74         }
75
76         break;
77     case CLASS_MONK:
78         if (creature_ptr->lev > 24)
79             self_ptr->info[self_ptr->line++] = _("あなたは構えることができる。(消費なし)", "You can assume a special stance (cost 0).");
80
81         if (creature_ptr->lev > 29)
82             self_ptr->info[self_ptr->line++]
83                 = _("あなたは通常の2倍の攻撃を行うことができる。(30 MP)", "You can perform two attacks at the same time (cost 30).");
84
85         break;
86     case CLASS_MINDCRAFTER:
87     case CLASS_FORCETRAINER:
88         if (creature_ptr->lev > 14)
89             self_ptr->info[self_ptr->line++]
90                 = _("あなたは精神を集中してMPを回復させることができる。(消費なし)", "You can concentrate to regenerate your mana (cost 0).");
91
92         break;
93     case CLASS_TOURIST:
94         self_ptr->info[self_ptr->line++] = _("あなたは写真を撮影することができる。(消費なし)", "You can take a photograph (cost 0).");
95
96         if (creature_ptr->lev > 24)
97             self_ptr->info[self_ptr->line++] = _("あなたはアイテムを完全に鑑定することができる。(20 MP)", "You can *identify* items (cost 20).");
98
99         break;
100     case CLASS_IMITATOR:
101         if (creature_ptr->lev > 29)
102             self_ptr->info[self_ptr->line++] = _("あなたは怪物の特殊攻撃をダメージ2倍でまねることができる。(100 MP)",
103                 "You can imitate monster's special attacks with double damage (cost 100).");
104
105         break;
106     case CLASS_BEASTMASTER:
107         self_ptr->info[self_ptr->line++]
108             = _("あなたは1体の生命のあるモンスターを支配することができる。((レベル+3)/4 MP)", "You can dominate a monster (cost (level+3)/4).");
109
110         if (creature_ptr->lev > 29)
111             self_ptr->info[self_ptr->line++] = _("あなたは視界内の生命のあるモンスターを支配することができる。((レベル+20)/2 MP)",
112                 "You can dominate living monsters in sight (cost (level+20)/2).");
113
114         break;
115     case CLASS_MAGIC_EATER:
116         self_ptr->info[self_ptr->line++]
117             = _("あなたは杖/魔法棒/ロッドの魔力を自分のものにすることができる。(消費なし)", "You can absorb a staff, wand or rod itself (cost 0).");
118
119         if (creature_ptr->lev > 9)
120             self_ptr->info[self_ptr->line++] = _("あなたは杖/魔法棒/ロッドの魔力を強力に発動することができる。(10+(レベル-10)/2 HP)",
121                 "You can powerfully activate a staff, wand or rod (cost 10+(level-10)/2).");
122
123         break;
124     case CLASS_RED_MAGE:
125         if (creature_ptr->lev > 47)
126             self_ptr->info[self_ptr->line++] = _("あなたは1ターンに2回魔法を唱えることができる。(20 MP)", "You can cast two spells simultaneously (cost 20).");
127
128         break;
129     case CLASS_SAMURAI:
130         self_ptr->info[self_ptr->line++]
131             = _("あなたは精神を集中して気合いを溜めることができる。(消費なし)", "You can concentrate to regenerate your mana (cost 0).");
132
133         if (creature_ptr->lev > 24)
134             self_ptr->info[self_ptr->line++] = _("あなたは特殊な型で構えることができる。(消費なし)", "You can assume a special stance (cost 0).");
135
136         break;
137     case CLASS_BLUE_MAGE:
138         self_ptr->info[self_ptr->line++]
139             = _("あなたは相手に使われた魔法を学ぶことができる。(消費なし)", "You can study spells which your enemy casts on you (cost 0).");
140         break;
141     case CLASS_CAVALRY:
142         if (creature_ptr->lev > 9)
143             self_ptr->info[self_ptr->line++] = _("あなたはモンスターに乗って無理矢理ペットにすることができる。(消費なし)",
144                 "You can ride on a hostile monster to forcibly turn it into a pet  (cost 0).");
145
146         break;
147     case CLASS_BERSERKER:
148         if (creature_ptr->lev > 9)
149             self_ptr->info[self_ptr->line++]
150                 = _("あなたは街とダンジョンの間を行き来することができる。(10 HP)", "You can travel between town and the depths (cost 10).");
151
152         break;
153     case CLASS_SMITH:
154         if (creature_ptr->lev > 4)
155             self_ptr->info[self_ptr->line++] = _("あなたは武器や防具を鑑定することができる。(15 HP)", "You can identify weapons or armours (cost 15).");
156
157         break;
158     case CLASS_MIRROR_MASTER:
159         self_ptr->info[self_ptr->line++] = _("あなたは鏡を作り出すことができる。(2 MP)", "You can create a Mirror (cost 2).");
160         self_ptr->info[self_ptr->line++] = _("あなたは鏡を割ることができる。(消費なし)", "You can break distant Mirrors (cost 0).");
161         break;
162     case CLASS_NINJA:
163         if (creature_ptr->lev > 19)
164             self_ptr->info[self_ptr->line++] = _("あなたは素早く移動することができる。(消費なし)", "You can walk extremely fast (cost 0).");
165
166         break;
167     }
168 }