OSDN Git Service

[cleanup] clang-formatによる整形
[hengbandforosx/hengbandosx.git] / src / player-info / race-ability-info.c
1 #include "player-info/race-ability-info.h"
2 #include "player-info/self-info-util.h"
3
4 void set_race_ability_info(player_type *creature_ptr, self_info_type *self_ptr)
5 {
6     switch (creature_ptr->prace) {
7     case RACE_NIBELUNG:
8     case RACE_DWARF:
9         if (creature_ptr->lev > 4)
10             self_ptr->info[self_ptr->line++] = _("あなたは罠とドアと階段を感知できる。(5 MP)", "You can find traps, doors and stairs (cost 5).");
11
12         break;
13     case RACE_HOBBIT:
14         if (creature_ptr->lev > 14)
15             self_ptr->info[self_ptr->line++] = _("あなたは食料を生成できる。(10 MP)", "You can produce food (cost 10).");
16
17         break;
18     case RACE_GNOME:
19         if (creature_ptr->lev > 4) {
20             sprintf(self_ptr->plev_buf, _("あなたは範囲 %d 以内にテレポートできる。(%d MP)", "You can teleport, range %d (cost %d)."), (1 + creature_ptr->lev),
21                 (5 + (creature_ptr->lev / 5)));
22             self_ptr->info[self_ptr->line++] = self_ptr->plev_buf;
23         }
24
25         break;
26     case RACE_HALF_ORC:
27         if (creature_ptr->lev > 2)
28             self_ptr->info[self_ptr->line++] = _("あなたは恐怖を除去できる。(5 MP)", "You can remove fear (cost 5).");
29
30         break;
31     case RACE_HALF_TROLL:
32         if (creature_ptr->lev > 9)
33             self_ptr->info[self_ptr->line++] = _("あなたは狂暴化することができる。(12 MP) ", "You can enter a berserk fury (cost 12).");
34
35         break;
36     case RACE_AMBERITE:
37         if (creature_ptr->lev > 29)
38             self_ptr->info[self_ptr->line++] = _("あなたはシャドウシフトすることができる。(50 MP)", "You can Shift Shadows (cost 50).");
39
40         if (creature_ptr->lev > 39)
41             self_ptr->info[self_ptr->line++] = _("あなたは「パターン」を心に描いて歩くことができる。(75 MP)", "You can mentally Walk the Pattern (cost 75).");
42
43         break;
44     case RACE_BARBARIAN:
45         if (creature_ptr->lev > 7)
46             self_ptr->info[self_ptr->line++] = _("あなたは狂暴化することができる。(10 MP) ", "You can enter a berserk fury (cost 10).");
47
48         break;
49     case RACE_HALF_OGRE:
50         if (creature_ptr->lev > 24)
51             self_ptr->info[self_ptr->line++] = _("あなたは爆発のルーンを仕掛けることができる。(35 MP)", "You can set an Explosive Rune (cost 35).");
52
53         break;
54     case RACE_HALF_GIANT:
55         if (creature_ptr->lev > 19)
56             self_ptr->info[self_ptr->line++] = _("あなたは石の壁を壊すことができる。(10 MP)", "You can break stone walls (cost 10).");
57
58         break;
59     case RACE_HALF_TITAN:
60         if (creature_ptr->lev > 34)
61             self_ptr->info[self_ptr->line++] = _("あなたはモンスターをスキャンすることができる。(20 MP)", "You can probe monsters (cost 20).");
62
63         break;
64     case RACE_CYCLOPS:
65         if (creature_ptr->lev > 19) {
66             sprintf(self_ptr->plev_buf, _("あなたは %d ダメージの岩石を投げることができる。(15 MP)", "You can throw a boulder, dam. %d (cost 15)."),
67                 3 * creature_ptr->lev);
68             self_ptr->info[self_ptr->line++] = self_ptr->plev_buf;
69         }
70
71         break;
72     case RACE_YEEK:
73         if (creature_ptr->lev > 14)
74             self_ptr->info[self_ptr->line++] = _("あなたは恐怖を呼び起こす叫び声を発することができる。(15 MP)", "You can make a terrifying scream (cost 15).");
75
76         break;
77     case RACE_KLACKON:
78         if (creature_ptr->lev > 8) {
79             sprintf(self_ptr->plev_buf, _("あなたは %d ダメージの酸を吹きかけることができる。(9 MP)", "You can spit acid, dam. %d (cost 9)."), creature_ptr->lev);
80             self_ptr->info[self_ptr->line++] = self_ptr->plev_buf;
81         }
82
83         break;
84     case RACE_KOBOLD:
85         if (creature_ptr->lev > 11) {
86             sprintf(self_ptr->plev_buf, _("あなたは %d ダメージの毒矢を投げることができる。(8 MP)", "You can throw a dart of poison, dam. %d (cost 8)."),
87                 creature_ptr->lev);
88             self_ptr->info[self_ptr->line++] = self_ptr->plev_buf;
89         }
90
91         break;
92     case RACE_DARK_ELF:
93         if (creature_ptr->lev > 1) {
94             sprintf(self_ptr->plev_buf, _("あなたは %d ダメージのマジック・ミサイルの呪文を使える。(2 MP)", "You can cast a Magic Missile, dam %d (cost 2)."),
95                 (3 + ((creature_ptr->lev - 1) / 5)));
96             self_ptr->info[self_ptr->line++] = self_ptr->plev_buf;
97         }
98
99         break;
100     case RACE_DRACONIAN:
101         sprintf(self_ptr->plev_buf, _("あなたは %d ダメージのブレスを吐くことができる。(%d MP)", "You can breathe, dam. %d (cost %d)."), 2 * creature_ptr->lev,
102             creature_ptr->lev);
103         self_ptr->info[self_ptr->line++] = self_ptr->plev_buf;
104         break;
105     case RACE_MIND_FLAYER:
106         if (creature_ptr->lev > 14)
107             sprintf(self_ptr->plev_buf, _("あなたは %d ダメージの精神攻撃をすることができる。(12 MP)", "You can mind blast your enemies, dam %d (cost 12)."),
108                 creature_ptr->lev);
109
110         self_ptr->info[self_ptr->line++] = self_ptr->plev_buf;
111         break;
112     case RACE_IMP:
113         if (creature_ptr->lev > 29) {
114             sprintf(self_ptr->plev_buf, _("あなたは %d ダメージのファイア・ボールの呪文を使える。(15 MP)", "You can cast a Fire Ball, dam. %d (cost 15)."),
115                 creature_ptr->lev);
116             self_ptr->info[self_ptr->line++] = self_ptr->plev_buf;
117             break;
118         }
119
120         if (creature_ptr->lev > 8) {
121             sprintf(self_ptr->plev_buf, _("あなたは %d ダメージのファイア・ボルトの呪文を使える。(15 MP)", "You can cast a Fire Bolt, dam. %d (cost 15)."),
122                 creature_ptr->lev);
123             self_ptr->info[self_ptr->line++] = self_ptr->plev_buf;
124         }
125
126         break;
127     case RACE_GOLEM:
128         if (creature_ptr->lev > 19)
129             self_ptr->info[self_ptr->line++]
130                 = _("あなたは d20+30 ターンの間肌を石に変化させられる。(15 MP)", "You can turn your skin to stone, dur d20+30 (cost 15).");
131
132         break;
133     case RACE_ZOMBIE:
134     case RACE_SKELETON:
135         if (creature_ptr->lev > 29)
136             self_ptr->info[self_ptr->line++] = _("あなたは失った経験値を回復することができる。(30 MP)", "You can restore lost experience (cost 30).");
137
138         break;
139     case RACE_VAMPIRE:
140         if (creature_ptr->lev <= 1)
141             break;
142
143         sprintf(self_ptr->plev_buf, _("あなたは敵から %d-%d HP の生命力を吸収できる。(%d MP)", "You can steal life from a foe, dam. %d-%d (cost %d)."),
144             creature_ptr->lev + MAX(1, creature_ptr->lev / 10), creature_ptr->lev + creature_ptr->lev * MAX(1, creature_ptr->lev / 10),
145             1 + (creature_ptr->lev / 3));
146         self_ptr->info[self_ptr->line++] = self_ptr->plev_buf;
147         break;
148     case RACE_SPECTRE:
149         if (creature_ptr->lev > 3)
150             self_ptr->info[self_ptr->line++] = _("あなたは泣き叫んで敵を恐怖させることができる。(3 MP)", "You can wail to terrify your enemies (cost 3).");
151
152         break;
153     case RACE_SPRITE:
154         if (creature_ptr->lev > 11)
155             self_ptr->info[self_ptr->line++]
156                 = _("あなたは敵を眠らせる魔法の粉を投げることができる。(12 MP)", "You can throw magical dust which induces sleep (cost 12).");
157
158         break;
159     case RACE_BALROG:
160         sprintf(self_ptr->plev_buf, _("あなたは %d ダメージの地獄か火炎のブレスを吐くことができる。(%d MP)", "You can breathe nether, dam. %d (cost %d)."),
161             3 * creature_ptr->lev, 10 + creature_ptr->lev / 3);
162         self_ptr->info[self_ptr->line++] = self_ptr->plev_buf;
163         break;
164     case RACE_KUTAR:
165         if (creature_ptr->lev > 19)
166             self_ptr->info[self_ptr->line++] = _("あなたは d20+30 ターンの間横に伸びることができる。(15 MP)", "You can expand horizontally, dur d20+30 (cost 15).");
167
168         break;
169     case RACE_ANDROID:
170         if (creature_ptr->lev < 10)
171             sprintf(self_ptr->plev_buf, _("あなたは %d ダメージのレイガンを撃つことができる。(7 MP)", "You can fire a ray gun with damage %d (cost 7)."),
172                 (creature_ptr->lev + 1) / 2);
173         else if (creature_ptr->lev < 25)
174             sprintf(self_ptr->plev_buf, _("あなたは %d ダメージのブラスターを撃つことができる。(13 MP)", "You can fire a blaster with damage %d (cost 13)."),
175                 creature_ptr->lev);
176         else if (creature_ptr->lev < 35)
177             sprintf(self_ptr->plev_buf, _("あなたは %d ダメージのバズーカを撃つことができる。(26 MP)", "You can fire a bazooka with damage %d (cost 26)."),
178                 creature_ptr->lev * 2);
179         else if (creature_ptr->lev < 45)
180             sprintf(self_ptr->plev_buf,
181                 _("あなたは %d ダメージのビームキャノンを撃つことができる。(40 MP)", "You can fire a beam cannon with damage %d (cost 40)."),
182                 creature_ptr->lev * 2);
183         else
184             sprintf(self_ptr->plev_buf, _("あなたは %d ダメージのロケットを撃つことができる。(60 MP)", "You can fire a rocket with damage %d (cost 60)."),
185                 creature_ptr->lev * 5);
186
187         self_ptr->info[self_ptr->line++] = self_ptr->plev_buf;
188         break;
189     default:
190         break;
191     }
192 }