2 * @brief モンスターの打撃種別を記述すると共に、切り傷/朦朧値を追加する
7 #include "monster-attack/monster-attack-describer.h"
8 #include "main/sound-definitions-table.h"
9 #include "main/sound-of-music.h"
10 #include "monster-attack/insults-moans.h"
11 #include "monster-attack/monster-attack-util.h"
12 #include "monster-race/race-indice-types.h"
13 #include "system/angband.h"
14 #include "system/monster-type-definition.h"
16 static void show_jaian_song(monap_type *monap_ptr)
19 switch (randint1(15)) {
23 monap_ptr->act = "「♪お~れはジャイアン~~ガ~キだいしょう~」";
26 monap_ptr->act = "「♪て~んかむ~てきのお~とこだぜ~~」";
29 monap_ptr->act = "「♪の~び太スネ夫はメじゃないよ~~」";
32 monap_ptr->act = "「♪け~んかスポ~ツ~どんとこい~」";
35 monap_ptr->act = "「♪うた~も~~う~まいぜ~まかしとけ~」";
38 monap_ptr->act = "「♪ま~ちいちば~んのに~んきもの~~」";
41 monap_ptr->act = "「♪べんきょうしゅくだいメじゃないよ~~」";
44 monap_ptr->act = "「♪きはやさし~くて~ち~からもち~」";
47 monap_ptr->act = "「♪かお~も~~スタイルも~バツグンさ~」";
50 monap_ptr->act = "「♪がっこうい~ちの~あ~ばれんぼう~~」";
53 monap_ptr->act = "「♪ド~ラもドラミもメじゃないよ~~」";
56 monap_ptr->act = "「♪よじげんぽけっと~な~くたって~」";
59 monap_ptr->act = "「♪あし~の~~ながさ~は~まけないぜ~」";
63 monap_ptr->act = "horribly sings 'I AM GIAAAAAN. THE BOOOSS OF THE KIIIIDS.'";
67 static void monster_attack_show(monap_type *monap_ptr)
70 monap_ptr->abbreviate = -1;
72 if (monap_ptr->m_ptr->r_idx == MON_JAIAN) {
73 show_jaian_song(monap_ptr);
76 monap_ptr->act = _("は♪僕らは楽しい家族♪と歌っている。", "sings 'We are a happy family.'");
78 monap_ptr->act = _("は♪アイ ラブ ユー、ユー ラブ ミー♪と歌っている。", "sings 'I love you, you love me.'");
84 void describe_monster_attack_method(monap_type *monap_ptr)
86 switch (monap_ptr->method) {
87 case RaceBlowMethodType::HIT: {
88 monap_ptr->act = _("殴られた。", "hits you.");
89 monap_ptr->do_cut = monap_ptr->do_stun = 1;
90 monap_ptr->touched = true;
94 case RaceBlowMethodType::TOUCH: {
95 monap_ptr->act = _("触られた。", "touches you.");
96 monap_ptr->touched = true;
100 case RaceBlowMethodType::PUNCH: {
101 monap_ptr->act = _("パンチされた。", "punches you.");
102 monap_ptr->touched = true;
103 monap_ptr->do_stun = 1;
107 case RaceBlowMethodType::KICK: {
108 monap_ptr->act = _("蹴られた。", "kicks you.");
109 monap_ptr->touched = true;
110 monap_ptr->do_stun = 1;
114 case RaceBlowMethodType::CLAW: {
115 monap_ptr->act = _("ひっかかれた。", "claws you.");
116 monap_ptr->touched = true;
117 monap_ptr->do_cut = 1;
121 case RaceBlowMethodType::BITE: {
122 monap_ptr->act = _("噛まれた。", "bites you.");
123 monap_ptr->do_cut = 1;
124 monap_ptr->touched = true;
128 case RaceBlowMethodType::STING: {
129 monap_ptr->act = _("刺された。", "stings you.");
130 monap_ptr->touched = true;
134 case RaceBlowMethodType::SLASH: {
135 monap_ptr->act = _("斬られた。", "slashes you.");
136 monap_ptr->touched = true;
137 monap_ptr->do_cut = 1;
141 case RaceBlowMethodType::BUTT: {
142 monap_ptr->act = _("角で突かれた。", "butts you.");
143 monap_ptr->do_stun = 1;
144 monap_ptr->touched = true;
148 case RaceBlowMethodType::CRUSH: {
149 monap_ptr->act = _("体当たりされた。", "crushes you.");
150 monap_ptr->do_stun = 1;
151 monap_ptr->touched = true;
155 case RaceBlowMethodType::ENGULF: {
156 monap_ptr->act = _("飲み込まれた。", "engulfs you.");
157 monap_ptr->touched = true;
161 case RaceBlowMethodType::CHARGE: {
163 monap_ptr->abbreviate = -1;
165 monap_ptr->act = _("は請求書をよこした。", "charges you.");
166 monap_ptr->touched = true;
168 /* このコメントはジョークが効いているので残しておく / Note! This is "charges", not "charges at". */
172 case RaceBlowMethodType::CRAWL: {
174 monap_ptr->abbreviate = -1;
176 monap_ptr->act = _("が体の上を這い回った。", "crawls on you.");
177 monap_ptr->touched = true;
181 case RaceBlowMethodType::DROOL: {
182 monap_ptr->act = _("よだれをたらされた。", "drools on you.");
186 case RaceBlowMethodType::SPIT: {
187 monap_ptr->act = _("唾を吐かれた。", "spits on you.");
191 case RaceBlowMethodType::EXPLODE: {
193 monap_ptr->abbreviate = -1;
195 monap_ptr->act = _("は爆発した。", "explodes.");
196 monap_ptr->explode = true;
199 case RaceBlowMethodType::GAZE: {
200 monap_ptr->act = _("にらまれた。", "gazes at you.");
203 case RaceBlowMethodType::WAIL: {
204 monap_ptr->act = _("泣き叫ばれた。", "wails at you.");
208 case RaceBlowMethodType::SPORE: {
209 monap_ptr->act = _("胞子を飛ばされた。", "releases spores at you.");
213 case RaceBlowMethodType::XXX4: {
215 monap_ptr->abbreviate = -1;
217 monap_ptr->act = _("が XXX4 を発射した。", "projects XXX4's at you.");
220 case RaceBlowMethodType::BEG: {
221 monap_ptr->act = _("金をせがまれた。", "begs you for money.");
225 case RaceBlowMethodType::INSULT: {
227 monap_ptr->abbreviate = -1;
229 monap_ptr->act = desc_insult[randint0(monap_ptr->m_ptr->r_idx == MON_DEBBY ? 10 : 8)];
233 case RaceBlowMethodType::MOAN: {
235 monap_ptr->abbreviate = -1;
237 monap_ptr->act = desc_moan[randint0(4)];
241 case RaceBlowMethodType::SHOW: {
242 monster_attack_show(monap_ptr);
246 case RaceBlowMethodType::NONE:
247 case RaceBlowMethodType::SHOOT:
248 case RaceBlowMethodType::MAX: