/* Hack -- count the number of "reproducers" */
if (r_ptr->flags2 & (RF2_MULTIPLY)) num_repro--;
+ if (MON_CSLEEP(m_ptr)) (void)set_monster_csleep(i, 0);
+ if (MON_FAST(m_ptr)) (void)set_monster_fast(i, 0);
+ if (MON_SLOW(m_ptr)) (void)set_monster_slow(i, 0);
+ if (MON_STUNNED(m_ptr)) (void)set_monster_stunned(i, 0);
+ if (MON_CONFUSED(m_ptr)) (void)set_monster_confused(i, 0);
+ if (MON_MONFEAR(m_ptr)) (void)set_monster_monfear(i, 0);
+ if (MON_INVULNER(m_ptr)) (void)set_monster_invulner(i, 0, FALSE);
+
/* Hack -- remove target monster */
if (i == target_who) target_who = 0;
}
+ if (is_pet(m_ptr)) check_pets_num_and_align(m_ptr, FALSE);
+
+
/* Wipe the Monster */
(void)WIPE(m_ptr, monster_type);
/* Wipe the hole */
(void)WIPE(&m_list[i1], monster_type);
+ for (i = 0; i < MAX_MTIMED; i++)
+ {
+ int mproc_idx = get_mproc_idx(i1, i);
+ if (mproc_idx >= 0) mproc_list[i][mproc_idx] = i2;
+ }
}
/* All monsters get a saving throw */
if (randint0(100) < chance) continue;
+ if (record_named_pet && is_pet(m_ptr) && m_ptr->nickname)
+ {
+ char m_name[80];
+
+ monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+ do_cmd_write_nikki(NIKKI_NAMED_PET, RECORD_NAMED_PET_COMPACT, m_name);
+ }
+
/* Delete the monster */
delete_monster_idx(i);
{
r_info[MON_BANOR].max_num = 0;
r_info[MON_BANOR].r_pkills++;
+ r_info[MON_BANOR].r_akills++;
if (r_info[MON_BANOR].r_tkills < MAX_SHORT) r_info[MON_BANOR].r_tkills++;
}
if (r_info[MON_LUPART].max_num)
{
r_info[MON_LUPART].max_num = 0;
r_info[MON_LUPART].r_pkills++;
+ r_info[MON_LUPART].r_akills++;
if (r_info[MON_LUPART].r_tkills < MAX_SHORT) r_info[MON_LUPART].r_tkills++;
}
}
/*
* Wiping racial counters of all monsters and incrementing of racial
- * counters of monsters in party_mon[] is required to prevent multiple
+ * counters of monsters in party_mon[] are required to prevent multiple
* generation of unique monster who is the minion of player.
*/
/* Reset "m_cnt" */
m_cnt = 0;
+ /* Reset "mproc_max[]" */
+ for (i = 0; i < MAX_MTIMED; i++) mproc_max[i] = 0;
+
/* Hack -- reset "reproducer" count */
num_repro = 0;
s16b get_mon_num(int level)
{
int i, j, p;
-
int r_idx;
-
long value, total;
-
monster_race *r_ptr;
-
alloc_entry *table = alloc_race_table;
int pls_kakuritu, pls_level;
- int hoge=mysqrt(level*10000L);
+ int hoge = mysqrt(level*10000L);
if (level > MAX_DEPTH - 1) level = MAX_DEPTH - 1;
- if ((dungeon_turn > hoge*(TURNS_PER_TICK*500L)) && !level)
- {
- pls_kakuritu = MAX(2, NASTY_MON-((dungeon_turn/(TURNS_PER_TICK*2500L)-hoge/10)));
- pls_level = MIN(8,3 + dungeon_turn/(TURNS_PER_TICK*20000L)-hoge/40);
- }
- else
- {
- pls_kakuritu = NASTY_MON;
- pls_level = 2;
- }
+ pls_kakuritu = MAX(NASTY_MON_MAX, NASTY_MON_BASE - ((dungeon_turn / (TURNS_PER_TICK * 2500L) - hoge / 10)));
+ pls_level = MIN(NASTY_MON_PLUS_MAX, 3 + dungeon_turn / (TURNS_PER_TICK * 20000L) - hoge / 40 + MIN(5, level / 10)) ;
if (d_info[dungeon_type].flags1 & DF1_MAZE)
{
- pls_kakuritu = MIN(pls_kakuritu/2, pls_kakuritu-10);
+ pls_kakuritu = MIN(pls_kakuritu / 2, pls_kakuritu - 10);
if (pls_kakuritu < 2) pls_kakuritu = 2;
pls_level += 2;
level += 3;
}
/* Boost the level */
- if ((level > 0) && !p_ptr->inside_battle && !(d_info[dungeon_type].flags1 & DF1_BEGINNER))
+ if (!p_ptr->inside_battle && !(d_info[dungeon_type].flags1 & DF1_BEGINNER))
{
/* Nightmare mode allows more out-of depth monsters */
if (ironman_nightmare && !randint0(pls_kakuritu))
if (!randint0(pls_kakuritu))
{
/* Pick a level bonus */
- int d = MIN(5, level/10) + pls_level;
-
- /* Boost the level */
- level += d;
- }
-
- /* Occasional "nasty" monster */
- if (!randint0(pls_kakuritu))
- {
- /* Pick a level bonus */
- int d = MIN(5, level/10) + pls_level;
-
- /* Boost the level */
- level += d;
+ level += pls_level;
}
}
}
-
/* Reset total */
total = 0L;
/* No legal monsters */
if (total <= 0) return (0);
-
/* Pick a monster */
value = randint0(total);
value = value - table[i].prob3;
}
-
/* Power boost */
p = randint0(100);
{
hallu_race = &r_info[randint1(max_r_idx - 1)];
}
- while (hallu_race->flags1 & RF1_UNIQUE);
+ while (!hallu_race->name || (hallu_race->flags1 & RF1_UNIQUE));
strcpy(silly_name, (r_name + hallu_race->name));
}
else
{
/* Tanuki? */
- if (is_pet(m_ptr) && m_ptr->ap_r_idx != m_ptr->r_idx)
+ if (is_pet(m_ptr) && !is_original_ap(m_ptr))
{
#ifdef JP
char *t;
(void)sprintf(desc, "%s?", name);
#endif
}
- else if ((cave[m_ptr->fy][m_ptr->fx].m_idx == p_ptr->riding) || !p_ptr->inside_battle)
- (void)strcpy(desc, name);
- else
+
+ /* Inside monster arena, and it is not your mount */
+ else if (p_ptr->inside_battle &&
+ !(p_ptr->riding && (&m_list[p_ptr->riding] == m_ptr)))
+ {
+ /* It is a fake unique monster */
#ifdef JP
(void)sprintf(desc, "%s¤â¤É¤", name);
#else
(void)sprintf(desc, "fake %s", name);
#endif
+ }
+
+ else
+ {
+ (void)strcpy(desc, name);
+ }
}
/* It could be an indefinite monster */
strcat(desc,buf);
}
- if (player_bold(m_ptr->fy, m_ptr->fx))
+ if (p_ptr->riding && (&m_list[p_ptr->riding] == m_ptr))
{
#ifdef JP
strcat(desc,"(¾èÇÏÃæ)");
}
}
- if ((mode & MD_IGNORE_HALLU) && m_ptr->ap_r_idx != m_ptr->r_idx)
+ if ((mode & MD_IGNORE_HALLU) && !is_original_ap(m_ptr))
{
strcat(desc, format("(%s)", r_name + r_info[m_ptr->r_idx].name));
}
/* Detectable */
flag = TRUE;
- if (is_original_ap(m_ptr))
+ if (is_original_ap(m_ptr) && !p_ptr->image)
{
/* Hack -- Memorize mental flags */
if (r_ptr->flags2 & (RF2_SMART)) r_ptr->r_flags2 |= (RF2_SMART);
}
/* Basic telepathy */
+ /* Snipers get telepathy when they concentrate deeper */
else if (p_ptr->telepathy)
{
/* Empty mind, no telepathy */
if (r_ptr->flags2 & (RF2_EMPTY_MIND))
{
/* Memorize flags */
- if (is_original_ap(m_ptr)) r_ptr->r_flags2 |= (RF2_EMPTY_MIND);
+ if (is_original_ap(m_ptr) && !p_ptr->image) r_ptr->r_flags2 |= (RF2_EMPTY_MIND);
}
/* Weird mind, occasional telepathy */
/* Detectable */
flag = TRUE;
- if (is_original_ap(m_ptr))
+ if (is_original_ap(m_ptr) && !p_ptr->image)
{
/* Memorize flags */
r_ptr->r_flags2 |= (RF2_WEIRD_MIND);
/* Detectable */
flag = TRUE;
- if (is_original_ap(m_ptr))
+ if (is_original_ap(m_ptr) && !p_ptr->image)
{
/* Hack -- Memorize mental flags */
if (r_ptr->flags2 & (RF2_SMART)) r_ptr->r_flags2 |= (RF2_SMART);
if ((p_ptr->esp_animal) && (r_ptr->flags3 & (RF3_ANIMAL)))
{
flag = TRUE;
- if (is_original_ap(m_ptr)) r_ptr->r_flags3 |= (RF3_ANIMAL);
+ if (is_original_ap(m_ptr) && !p_ptr->image) r_ptr->r_flags3 |= (RF3_ANIMAL);
}
/* Magical sensing */
if ((p_ptr->esp_undead) && (r_ptr->flags3 & (RF3_UNDEAD)))
{
flag = TRUE;
- if (is_original_ap(m_ptr)) r_ptr->r_flags3 |= (RF3_UNDEAD);
+ if (is_original_ap(m_ptr) && !p_ptr->image) r_ptr->r_flags3 |= (RF3_UNDEAD);
}
/* Magical sensing */
if ((p_ptr->esp_demon) && (r_ptr->flags3 & (RF3_DEMON)))
{
flag = TRUE;
- if (is_original_ap(m_ptr)) r_ptr->r_flags3 |= (RF3_DEMON);
+ if (is_original_ap(m_ptr) && !p_ptr->image) r_ptr->r_flags3 |= (RF3_DEMON);
}
/* Magical sensing */
if ((p_ptr->esp_orc) && (r_ptr->flags3 & (RF3_ORC)))
{
flag = TRUE;
- if (is_original_ap(m_ptr)) r_ptr->r_flags3 |= (RF3_ORC);
+ if (is_original_ap(m_ptr) && !p_ptr->image) r_ptr->r_flags3 |= (RF3_ORC);
}
/* Magical sensing */
if ((p_ptr->esp_troll) && (r_ptr->flags3 & (RF3_TROLL)))
{
flag = TRUE;
- if (is_original_ap(m_ptr)) r_ptr->r_flags3 |= (RF3_TROLL);
+ if (is_original_ap(m_ptr) && !p_ptr->image) r_ptr->r_flags3 |= (RF3_TROLL);
}
/* Magical sensing */
if ((p_ptr->esp_giant) && (r_ptr->flags3 & (RF3_GIANT)))
{
flag = TRUE;
- if (is_original_ap(m_ptr)) r_ptr->r_flags3 |= (RF3_GIANT);
+ if (is_original_ap(m_ptr) && !p_ptr->image) r_ptr->r_flags3 |= (RF3_GIANT);
}
/* Magical sensing */
if ((p_ptr->esp_dragon) && (r_ptr->flags3 & (RF3_DRAGON)))
{
flag = TRUE;
- if (is_original_ap(m_ptr)) r_ptr->r_flags3 |= (RF3_DRAGON);
+ if (is_original_ap(m_ptr) && !p_ptr->image) r_ptr->r_flags3 |= (RF3_DRAGON);
}
/* Magical sensing */
if ((p_ptr->esp_human) && (r_ptr->flags2 & (RF2_HUMAN)))
{
flag = TRUE;
- if (is_original_ap(m_ptr)) r_ptr->r_flags2 |= (RF2_HUMAN);
+ if (is_original_ap(m_ptr) && !p_ptr->image) r_ptr->r_flags2 |= (RF2_HUMAN);
}
/* Magical sensing */
if ((p_ptr->esp_evil) && (r_ptr->flags3 & (RF3_EVIL)))
{
flag = TRUE;
- if (is_original_ap(m_ptr)) r_ptr->r_flags3 |= (RF3_EVIL);
+ if (is_original_ap(m_ptr) && !p_ptr->image) r_ptr->r_flags3 |= (RF3_EVIL);
}
/* Magical sensing */
if ((p_ptr->esp_good) && (r_ptr->flags3 & (RF3_GOOD)))
{
flag = TRUE;
- if (is_original_ap(m_ptr)) r_ptr->r_flags3 |= (RF3_GOOD);
+ if (is_original_ap(m_ptr) && !p_ptr->image) r_ptr->r_flags3 |= (RF3_GOOD);
}
/* Magical sensing */
((r_ptr->flags3 & (RF3_DEMON | RF3_UNDEAD | RF3_NONLIVING)) == RF3_NONLIVING))
{
flag = TRUE;
- if (is_original_ap(m_ptr)) r_ptr->r_flags3 |= (RF3_NONLIVING);
+ if (is_original_ap(m_ptr) && !p_ptr->image) r_ptr->r_flags3 |= (RF3_NONLIVING);
}
/* Magical sensing */
if ((p_ptr->esp_unique) && (r_ptr->flags1 & (RF1_UNIQUE)))
{
flag = TRUE;
- if (is_original_ap(m_ptr)) r_ptr->r_flags1 |= (RF1_UNIQUE);
+ if (is_original_ap(m_ptr) && !p_ptr->image) r_ptr->r_flags1 |= (RF1_UNIQUE);
}
}
bool do_invisible = FALSE;
bool do_cold_blood = FALSE;
+ /* Snipers can see targets in darkness when they concentrate deeper */
+ if (p_ptr->concent >= CONCENT_RADAR_THRESHOLD)
+ {
+ /* Easy to see */
+ easy = flag = TRUE;
+ }
+
/* Use "infravision" */
if (d <= p_ptr->see_infra)
{
/* Visible */
if (flag)
{
- if (is_original_ap(m_ptr))
+ if (is_original_ap(m_ptr) && !p_ptr->image)
{
/* Memorize flags */
if (do_invisible) r_ptr->r_flags2 |= (RF2_INVISIBLE);
if (p_ptr->riding == m_idx) p_ptr->redraw |= (PR_UHEALTH);
/* Hack -- Count "fresh" sightings */
- if ((m_ptr->ap_r_idx == MON_KAGE) && (r_info[MON_KAGE].r_sights < MAX_SHORT))
- r_info[MON_KAGE].r_sights++;
- else if (m_ptr->ap_r_idx == m_ptr->r_idx &&
- r_ptr->r_sights < MAX_SHORT) r_ptr->r_sights++;
+ if (!p_ptr->image)
+ {
+ if ((m_ptr->ap_r_idx == MON_KAGE) && (r_info[MON_KAGE].r_sights < MAX_SHORT))
+ r_info[MON_KAGE].r_sights++;
+ else if (is_original_ap(m_ptr) && (r_ptr->r_sights < MAX_SHORT))
+ r_ptr->r_sights++;
+ }
/* Eldritch Horror */
- if (r_ptr->flags2 & RF2_ELDRITCH_HORROR)
+ if (r_info[m_ptr->ap_r_idx].flags2 & RF2_ELDRITCH_HORROR)
{
sanity_blast(m_ptr, FALSE);
}
if ((r_ptr->blow[0].method == RBM_EXPLODE) || (r_ptr->blow[1].method == RBM_EXPLODE) || (r_ptr->blow[2].method == RBM_EXPLODE) || (r_ptr->blow[3].method == RBM_EXPLODE))
return FALSE;
- if (!monster_can_cross_terrain(cave[m_ptr->fy][m_ptr->fx].feat, r_ptr)) return FALSE;
+ if (!monster_can_cross_terrain(cave[m_ptr->fy][m_ptr->fx].feat, r_ptr, 0)) return FALSE;
/* Not born */
if (!(old_r_ptr->flags7 & RF7_CHAMELEON))
if ((r_ptr->blow[0].method == RBM_EXPLODE) || (r_ptr->blow[1].method == RBM_EXPLODE) || (r_ptr->blow[2].method == RBM_EXPLODE) || (r_ptr->blow[3].method == RBM_EXPLODE))
return FALSE;
- if (!monster_can_cross_terrain(cave[m_ptr->fy][m_ptr->fx].feat, r_ptr)) return FALSE;
+ if (!monster_can_cross_terrain(cave[m_ptr->fy][m_ptr->fx].feat, r_ptr, 0)) return FALSE;
/* Not born */
if (!(old_r_ptr->flags7 & RF7_CHAMELEON))
monster_race *r_ptr;
char old_m_name[80];
bool old_unique = FALSE;
+ int old_r_idx = m_ptr->r_idx;
if (r_info[m_ptr->r_idx].flags1 & RF1_UNIQUE)
old_unique = TRUE;
if (!r_idx) return;
}
+ if (is_pet(m_ptr)) check_pets_num_and_align(m_ptr, FALSE);
+
m_ptr->r_idx = r_idx;
m_ptr->ap_r_idx = r_idx;
update_mon(m_idx, FALSE);
lite_spot(m_ptr->fy, m_ptr->fx);
+
+ if ((r_info[old_r_idx].flags7 & (RF7_LITE_MASK | RF7_DARK_MASK)) ||
+ (r_ptr->flags7 & (RF7_LITE_MASK | RF7_DARK_MASK)))
+ p_ptr->update |= (PU_MON_LITE);
+
+ if (is_pet(m_ptr)) check_pets_num_and_align(m_ptr, TRUE);
+
if (born)
{
/* Sub-alignment of a chameleon */
{
m_ptr->max_maxhp = damroll(r_ptr->hdice, r_ptr->hside);
}
+
+ /* Monsters have double hitpoints in Nightmare mode */
+ if (ironman_nightmare)
+ {
+ u32b hp = m_ptr->max_maxhp * 2L;
+ m_ptr->max_maxhp = (s16b)MIN(30000, hp);
+ }
+
m_ptr->maxhp = (long)(m_ptr->maxhp * m_ptr->max_maxhp) / oldmaxhp;
+ if (m_ptr->maxhp < 1) m_ptr->maxhp = 1;
m_ptr->hp = (long)(m_ptr->hp * m_ptr->max_maxhp) / oldmaxhp;
}
cptr name = (r_name + r_ptr->name);
+ int cmi;
+
/* DO NOT PLACE A MONSTER IN THE SMALL SCALE WILDERNESS !!! */
- if(p_ptr->wild_mode) return FALSE;
+ if (p_ptr->wild_mode) return FALSE;
/* Verify location */
if (!in_bounds(y, x)) return (FALSE);
- /* Require empty space (if not ghostly) */
- if (!(!dun_level && (c_ptr->feat == FEAT_MOUNTAIN) && ((r_ptr->flags8 & RF8_WILD_MOUNTAIN) || (r_ptr->flags7 & RF7_CAN_FLY))) &&
- !(cave_empty_bold2(y, x) || (mode & PM_IGNORE_TERRAIN)) &&
- !((r_ptr->flags2 & RF2_PASS_WALL) &&
- !(cave_perma_bold(y, x) || c_ptr->m_idx ||
- player_bold(y, x)))) return (FALSE);
-
/* Paranoia */
if (!r_idx) return (FALSE);
/* Paranoia */
if (!r_ptr->name) return (FALSE);
- /* Nor on the Pattern */
- if ((c_ptr->feat >= FEAT_PATTERN_START)
- && (c_ptr->feat <= FEAT_PATTERN_XTRA2))
- return (FALSE);
-
- if (!(mode & PM_IGNORE_TERRAIN) &&
- !monster_can_cross_terrain(c_ptr->feat, r_ptr))
+ if (!(mode & PM_IGNORE_TERRAIN))
{
- return FALSE;
+ /* Not on the Pattern */
+ if (pattern_tile(y, x)) return FALSE;
+
+ /* Require empty space (if not ghostly) */
+ if (!monster_can_enter(y, x, r_ptr, 0)) return FALSE;
}
if (!p_ptr->inside_battle)
#else
if (cheat_hear) msg_format("Deep Unique (%s).", name);
#endif
-
-
- /* Boost rating by twice delta-depth */
- rating += (r_ptr->level - dun_level) * 2;
}
/* Normal monsters */
#else
if (cheat_hear) msg_format("Deep Monster (%s).", name);
#endif
-
-
- /* Boost rating by delta-depth */
- rating += (r_ptr->level - dun_level);
}
}
m_ptr->r_idx = r_idx;
m_ptr->ap_r_idx = initial_r_appearance(r_idx);
+ /* No flags */
+ m_ptr->mflag = 0;
+ m_ptr->mflag2 = 0;
+
+ /* Hack -- Appearance transfer */
+ if ((mode & PM_MULTIPLY) && (who > 0) && !is_original_ap(&m_list[who]))
+ {
+ m_ptr->ap_r_idx = m_list[who].ap_r_idx;
+
+ /* Hack -- Shadower spawns Shadower */
+ if (m_list[who].mflag2 & MFLAG2_KAGE) m_ptr->mflag2 |= MFLAG2_KAGE;
+ }
+
/* Sub-alignment of a monster */
if ((who > 0) && !(r_ptr->flags3 & (RF3_EVIL | RF3_GOOD)))
m_ptr->sub_align = m_list[who].sub_align;
m_ptr->fx = x;
- /* No "damage" yet */
- m_ptr->stunned = 0;
- m_ptr->confused = 0;
- m_ptr->monfear = 0;
+ /* No "timed status" yet */
+ for (cmi = 0; cmi < MAX_MTIMED; cmi++) m_ptr->mtimed[cmi] = 0;
/* Unknown distance */
m_ptr->cdis = 0;
m_ptr->exp = 0;
- /* No flags */
- m_ptr->mflag = 0;
- m_ptr->mflag2 = 0;
-
/* Your pet summons its pet. */
if (who > 0 && is_pet(&m_list[who]))
choose_new_monster(c_ptr->m_idx, TRUE, 0);
r_ptr = &r_info[m_ptr->r_idx];
m_ptr->mflag2 |= MFLAG2_CHAMELEON;
- rating++;
/* Hack - Set sub_align to neutral when the Chameleon Lord is generated as "GUARDIAN" */
if ((r_ptr->flags1 & RF1_UNIQUE) && (who <= 0))
}
/* Assume no sleeping */
- m_ptr->csleep = 0;
+ m_ptr->mtimed[MTIMED_CSLEEP] = 0;
/* Enforce sleeping if needed */
if ((mode & PM_ALLOW_SLEEP) && r_ptr->sleep && !ironman_nightmare)
{
int val = r_ptr->sleep;
- m_ptr->csleep = ((val * 2) + randint1(val * 10));
+ (void)set_monster_csleep(c_ptr->m_idx, (val * 2) + randint1(val * 10));
}
/* Assign maximal hitpoints */
/* Extract the monster base speed */
m_ptr->mspeed = get_mspeed(r_ptr);
- if (mode & PM_HASTE) m_ptr->fast = 100;
+ if (mode & PM_HASTE) (void)set_monster_fast(c_ptr->m_idx, 100);
/* Give a random starting energy */
if (!ironman_nightmare)
if (r_ptr->flags7 & RF7_SELF_LD_MASK)
p_ptr->update |= (PU_MON_LITE);
- else if ((r_ptr->flags7 & RF7_HAS_LD_MASK) && !m_ptr->csleep)
+ else if ((r_ptr->flags7 & RF7_HAS_LD_MASK) && !MON_CSLEEP(m_ptr))
p_ptr->update |= (PU_MON_LITE);
/* Update the monster */
/* Hack -- Count the number of "reproducers" */
if (r_ptr->flags2 & RF2_MULTIPLY) num_repro++;
-
/* Hack -- Notice new multi-hued monsters */
{
monster_race *ap_r_ptr = &r_info[m_ptr->ap_r_idx];
else
{
#ifdef JP
- msg_format("s%¸÷¤ëʪ¤¬Æ¬¤ËÉ⤫¤ó¤À¡£", color);
+ msg_format("%s¸÷¤ëʪ¤¬Æ¬¤ËÉ⤫¤ó¤À¡£", color);
#else
msg_format("An %s image forms in your mind.");
#endif
#define MON_SCAT_MAXD 10
-static bool mon_scatter(int *yp, int *xp, int y, int x, int max_dist)
+static bool mon_scatter(int r_idx, int *yp, int *xp, int y, int x, int max_dist)
{
int place_x[MON_SCAT_MAXD];
int place_y[MON_SCAT_MAXD];
num[i] = 0;
for (nx = x - max_dist; nx <= x + max_dist; nx++)
+ {
for (ny = y - max_dist; ny <= y + max_dist; ny++)
{
/* Ignore annoying locations */
if (!in_bounds(ny, nx)) continue;
- /* Require "line of sight" */
- if (!los(y, x, ny, nx)) continue;
+ /* Require "line of projection" */
+ if (!projectable(y, x, ny, nx)) continue;
- /* Walls and Monsters block flow */
- if (!cave_empty_bold2(ny, nx)) continue;
+ if (r_idx > 0)
+ {
+ monster_race *r_ptr = &r_info[r_idx];
- /* ... nor on the Pattern */
- if ((cave[ny][nx].feat >= FEAT_PATTERN_START) &&
- (cave[ny][nx].feat <= FEAT_PATTERN_XTRA2))
- continue;
+ /* Require empty space (if not ghostly) */
+ if (!monster_can_enter(ny, nx, r_ptr, 0))
+ continue;
+ }
+ else
+ {
+ /* Walls and Monsters block flow */
+ if (!cave_empty_bold2(ny, nx)) continue;
+
+ /* ... nor on the Pattern */
+ if (pattern_tile(ny, nx)) continue;
+ }
i = distance(y, x, ny, nx);
num[i]++;
/* random swap */
- if(one_in_(num[i]))
+ if (one_in_(num[i]))
{
place_x[i] = nx;
place_y[i] = ny;
}
}
+ }
i = 0;
while (i < MON_SCAT_MAXD && 0 == num[i])
{
monster_race *r_ptr = &r_info[r_idx];
- int old, n, i;
+ int n, i;
int total = 0, extra = 0;
int hack_n = 0;
if (total > GROUP_MAX) total = GROUP_MAX;
- /* Save the rating */
- old = rating;
-
/* Start on the monster */
hack_n = 1;
hack_x[0] = x;
}
}
- /* Hack -- restore the rating */
- rating = old;
-
/* Success */
return (TRUE);
/*
* Put the Guardian
*/
-bool alloc_guardian(void)
+bool alloc_guardian(bool def_val)
{
int guardian = d_info[dungeon_type].final_guardian;
ox = randint1(cur_wid - 4) + 2;
/* Is it a good spot ? */
- if (cave_empty_bold2(oy, ox) && monster_can_cross_terrain(cave[oy][ox].feat, &r_info[guardian]))
+ if (cave_empty_bold2(oy, ox) && monster_can_cross_terrain(cave[oy][ox].feat, &r_info[guardian], 0))
{
/* Place the guardian */
if (place_monster_aux(0, oy, ox, guardian, (PM_ALLOW_GROUP | PM_NO_KAGE | PM_NO_PET))) return TRUE;
/* One less try */
try--;
}
+
+ return FALSE;
}
- return FALSE;
+ return def_val;
}
int attempts_left = 10000;
/* Put the Guardian */
- if (alloc_guardian()) return TRUE;
+ if (alloc_guardian(FALSE)) return TRUE;
/* Find a legal, distant, unoccupied, space */
while (attempts_left--)
x = randint0(cur_wid);
/* Require empty floor grid (was "naked") */
- if (dun_level || (wilderness[p_ptr->wilderness_y][p_ptr->wilderness_x].terrain != TERRAIN_MOUNTAIN))
+ if (dun_level)
{
if (!cave_empty_bold2(y, x)) continue;
}
else
{
- if (!cave_empty_bold2(y, x) && (cave[y][x].feat != FEAT_MOUNTAIN)) continue;
+ if (!cave_empty_bold(y, x)) continue;
}
/* Accept far away grids */
if (p_ptr->inside_arena) return (FALSE);
- if (!mon_scatter(&y, &x, y1, x1, 2)) return FALSE;
+ if (!mon_scatter(0, &y, &x, y1, x1, 2)) return FALSE;
/* Save the summoner */
summon_specific_who = who;
if (p_ptr->inside_arena) return FALSE;
- if (!mon_scatter(&y, &x, oy, ox, 2)) return FALSE;
+ if (!mon_scatter(r_idx, &y, &x, oy, ox, 2)) return FALSE;
/* Place it (allow groups) */
return place_monster_aux(who, y, x, r_idx, (mode | PM_NO_KAGE));
int y, x;
- if (!mon_scatter(&y, &x, m_ptr->fy, m_ptr->fx, 1))
+ if (!mon_scatter(m_ptr->r_idx, &y, &x, m_ptr->fy, m_ptr->fx, 1))
return FALSE;
if (m_ptr->mflag2 & MFLAG2_NOPET) mode |= PM_NO_PET;
- /* Hack -- Shadower spawns Shadower */
- if (m_ptr->mflag2 & MFLAG2_KAGE) mode |= PM_KAGE;
-
/* Create a new monster (awake, no groups) */
- if (!place_monster_aux(m_idx, y, x, m_ptr->r_idx, (mode | PM_NO_KAGE)))
+ if (!place_monster_aux(m_idx, y, x, m_ptr->r_idx, (mode | PM_NO_KAGE | PM_MULTIPLY)))
return FALSE;
/* Hack -- Transfer "clone" flag */
m_list[hack_m_idx_ii].mflag2 |= MFLAG2_NOPET;
}
- /* Hack -- Appearance transfer */
- if (!is_original_ap(m_ptr)) m_list[hack_m_idx_ii].ap_r_idx = m_ptr->ap_r_idx;
-
return TRUE;
}
char m_name[80];
-
/* Get the monster name */
monster_desc(m_name, m_ptr, 0);
- /* Notice non-damage */
- if (dam == 0)
+ if(dam == 0) // Notice non-damage
{
#ifdef JP
msg_format("%^s¤Ï¥À¥á¡¼¥¸¤ò¼õ¤±¤Æ¤¤¤Ê¤¤¡£", m_name);
#else
msg_format("%^s is unharmed.", m_name);
#endif
-
return;
}
tmp = (newhp * 100L) / oldhp;
percentage = (int)(tmp);
-
- /* Mushrooms, Eyes, Jellies, Molds, Vortices, Worms, Quylthulgs */
- if (my_strchr(",ejmvwQ", r_ptr->d_char))
+ if(my_strchr(",ejmvwQ", r_ptr->d_char)) // Mushrooms, Eyes, Jellies, Molds, Vortices, Worms, Quylthulgs
{
#ifdef JP
- if (percentage > 95)
- msg_format("%^s¤Ï¤Û¤È¤ó¤Éµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
- else if (percentage > 75)
- msg_format("%^s¤Ï¤·¤ê¹þ¤ß¤·¤¿¡£", m_name);
- else if (percentage > 50)
- msg_format("%^s¤Ï½Ì¤³¤Þ¤Ã¤¿¡£", m_name);
- else if (percentage > 35)
- msg_format("%^s¤ÏÄˤߤ˿̤¨¤¿¡£", m_name);
- else if (percentage > 20)
- msg_format("%^s¤Ï¿È¤â¤À¤¨¤·¤¿¡£", m_name);
- else if (percentage > 10)
- msg_format("%^s¤Ï¶ìÄˤǿȤâ¤À¤¨¤·¤¿¡£", m_name);
- else
- msg_format("%^s¤Ï¤°¤Ë¤ã¤°¤Ë¤ã¤ÈáÛÚ»¤·¤¿¡£", m_name);
+ if(percentage > 95) msg_format("%^s¤Ï¤Û¤È¤ó¤Éµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
+ else if(percentage > 75) msg_format("%^s¤Ï¤·¤ê¹þ¤ß¤·¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%^s¤Ï½Ì¤³¤Þ¤Ã¤¿¡£", m_name);
+ else if(percentage > 35) msg_format("%^s¤ÏÄˤߤ˿̤¨¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤Ï¿È¤â¤À¤¨¤·¤¿¡£", m_name);
+ else if(percentage > 10) msg_format("%^s¤Ï¶ìÄˤǿȤâ¤À¤¨¤·¤¿¡£", m_name);
+ else msg_format("%^s¤Ï¤°¤Ë¤ã¤°¤Ë¤ã¤ÈáÛÚ»¤·¤¿¡£", m_name);
#else
- if (percentage > 95)
- msg_format("%^s barely notices.", m_name);
- else if (percentage > 75)
- msg_format("%^s flinches.", m_name);
- else if (percentage > 50)
- msg_format("%^s squelches.", m_name);
- else if (percentage > 35)
- msg_format("%^s quivers in pain.", m_name);
- else if (percentage > 20)
- msg_format("%^s writhes about.", m_name);
- else if (percentage > 10)
- msg_format("%^s writhes in agony.", m_name);
- else
- msg_format("%^s jerks limply.", m_name);
+ if(percentage > 95) msg_format("%^s barely notices.", m_name);
+ else if(percentage > 75) msg_format("%^s flinches.", m_name);
+ else if(percentage > 50) msg_format("%^s squelches.", m_name);
+ else if(percentage > 35) msg_format("%^s quivers in pain.", m_name);
+ else if(percentage > 20) msg_format("%^s writhes about.", m_name);
+ else if(percentage > 10) msg_format("%^s writhes in agony.", m_name);
+ else msg_format("%^s jerks limply.", m_name);
#endif
-
}
-
- /* Fish */
- else if (my_strchr("l", r_ptr->d_char))
+ else if(my_strchr("l", r_ptr->d_char)) // Fish
{
- if (percentage > 95)
-#ifdef JP
-msg_format("%^s¤Ï¤Û¤È¤ó¤Éµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
-#else
- msg_format("%^s barely notices.", m_name);
-#endif
- else if (percentage > 75)
-#ifdef JP
-msg_format("%^s¤Ï¤·¤ê¹þ¤ß¤·¤¿¡£", m_name);
-#else
- msg_format("%^s flinches.", m_name);
-#endif
- else if (percentage > 50)
-#ifdef JP
-msg_format("%^s¤Ïí´í°¤·¤¿¡£", m_name);
-#else
- msg_format("%^s hesitates.", m_name);
-#endif
- else if (percentage > 35)
-#ifdef JP
-msg_format("%^s¤ÏÄˤߤ˿̤¨¤¿¡£", m_name);
-#else
- msg_format("%^s quivers in pain.", m_name);
-#endif
- else if (percentage > 20)
-#ifdef JP
-msg_format("%^s¤Ï¿È¤â¤À¤¨¤·¤¿¡£", m_name);
-#else
- msg_format("%^s writhes about.", m_name);
-#endif
- else if (percentage > 10)
#ifdef JP
-msg_format("%^s¤Ï¶ìÄˤǿȤâ¤À¤¨¤·¤¿¡£", m_name);
+ if(percentage > 95) msg_format("%^s¤Ï¤Û¤È¤ó¤Éµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
+ else if(percentage > 75) msg_format("%^s¤Ï¤·¤ê¹þ¤ß¤·¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%^s¤Ïí´í°¤·¤¿¡£", m_name);
+ else if(percentage > 35) msg_format("%^s¤ÏÄˤߤ˿̤¨¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤Ï¿È¤â¤À¤¨¤·¤¿¡£", m_name);
+ else if(percentage > 10) msg_format("%^s¤Ï¶ìÄˤǿȤâ¤À¤¨¤·¤¿¡£", m_name);
+ else msg_format("%^s¤Ï¤°¤Ë¤ã¤°¤Ë¤ã¤ÈáÛÚ»¤·¤¿¡£", m_name);
#else
- msg_format("%^s writhes in agony.", m_name);
-#endif
- else
+ if(percentage > 95) msg_format("%^s barely notices.", m_name);
+ else if(percentage > 75) msg_format("%^s flinches.", m_name);
+ else if(percentage > 50) msg_format("%^s hesitates.", m_name);
+ else if(percentage > 35) msg_format("%^s quivers in pain.", m_name);
+ else if(percentage > 20) msg_format("%^s writhes about.", m_name);
+ else if(percentage > 10) msg_format("%^s writhes in agony.", m_name);
+ else msg_format("%^s jerks limply.", m_name);
+#endif
+ }
+
+ else if(my_strchr("g#+<>", r_ptr->d_char)) // Golems, Walls, Doors, Stairs
+ {
#ifdef JP
-msg_format("%^s¤Ï¤°¤Ë¤ã¤°¤Ë¤ã¤ÈáÛÚ»¤·¤¿¡£", m_name);
+ if(percentage > 95) msg_format("%s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
+ else if(percentage > 75) msg_format("%s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%^s¤ÏÍëÌĤΤ褦¤ËËʤ¨¤¿¡£", m_name);
+ else if(percentage > 35) msg_format("%^s¤Ï¶ì¤·¤²¤ËËʤ¨¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤Ï¤¦¤á¤¤¤¿¡£", m_name);
+ else if(percentage > 10) msg_format("%^s¤Ïí´í°¤·¤¿¡£", m_name);
+ else msg_format("%^s¤Ï¤¯¤·¤ã¤¯¤·¤ã¤Ë¤Ê¤Ã¤¿¡£", m_name);
#else
- msg_format("%^s jerks limply.", m_name);
+ if(percentage > 95) msg_format("%^s ignores the attack.", m_name);
+ else if(percentage > 75) msg_format("%^s shrugs off the attack.", m_name);
+ else if(percentage > 50) msg_format("%^s roars thunderously.", m_name);
+ else if(percentage > 35) msg_format("%^s rumbles.", m_name);
+ else if(percentage > 20) msg_format("%^s grunts.", m_name);
+ else if(percentage > 10) msg_format("%^s hesitates.", m_name);
+ else msg_format("%^s crumples.", m_name);
#endif
}
-
- /* Golems, Walls, Doors, Stairs */
- else if (my_strchr("g#+<>", r_ptr->d_char))
+ else if(my_strchr("JMR", r_ptr->d_char) || !isalpha(r_ptr->d_char)) // Snakes, Hydrae, Reptiles, Mimics
{
- if (percentage > 95)
#ifdef JP
-msg_format("%s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
+ if(percentage > 95) msg_format("%^s¤Ï¤Û¤È¤ó¤Éµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
+ else if(percentage > 75) msg_format("%^s¤Ï¥·¡¼¥Ã¤ÈÌĤ¤¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%^s¤ÏÅܤäÆƬ¤ò¾å¤²¤¿¡£", m_name);
+ else if(percentage > 35) msg_format("%^s¤ÏÌÔÁ³¤È°Ò³Å¤·¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤Ï¿È¤â¤À¤¨¤·¤¿¡£", m_name);
+ else if(percentage > 10) msg_format("%^s¤Ï¶ìÄˤǿȤâ¤À¤¨¤·¤¿¡£", m_name);
+ else msg_format("%^s¤Ï¤°¤Ë¤ã¤°¤Ë¤ã¤ÈáÛÚ»¤·¤¿¡£", m_name);
#else
- msg_format("%^s ignores the attack.", m_name);
-#endif
- else if (percentage > 75)
-#ifdef JP
-msg_format("%s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
-#else
- msg_format("%^s shrugs off the attack.", m_name);
-#endif
- else if (percentage > 50)
-#ifdef JP
-msg_format("%^s¤ÏÍëÌĤΤ褦¤ËËʤ¨¤¿¡£", m_name);
-#else
- msg_format("%^s roars thunderously.", m_name);
-#endif
- else if (percentage > 35)
-#ifdef JP
-msg_format("%^s¤Ï¶ì¤·¤²¤ËËʤ¨¤¿¡£", m_name);
-#else
- msg_format("%^s rumbles.", m_name);
-#endif
- else if (percentage > 20)
-#ifdef JP
-msg_format("%^s¤Ï¤¦¤á¤¤¤¿¡£", m_name);
-#else
- msg_format("%^s grunts.", m_name);
-#endif
- else if (percentage > 10)
-#ifdef JP
-msg_format("%^s¤Ïí´í°¤·¤¿¡£", m_name);
-#else
- msg_format("%^s hesitates.", m_name);
-#endif
- else
-#ifdef JP
-msg_format("%^s¤Ï¤¯¤·¤ã¤¯¤·¤ã¤Ë¤Ê¤Ã¤¿¡£", m_name);
-#else
- msg_format("%^s crumples.", m_name);
+ if(percentage > 95) msg_format("%^s barely notices.", m_name);
+ else if(percentage > 75) msg_format("%^s hisses.", m_name);
+ else if(percentage > 50) msg_format("%^s rears up in anger.", m_name);
+ else if(percentage > 35) msg_format("%^s hisses furiously.", m_name);
+ else if(percentage > 20) msg_format("%^s writhes about.", m_name);
+ else if(percentage > 10) msg_format("%^s writhes in agony.", m_name);
+ else msg_format("%^s jerks limply.", m_name);
#endif
}
-
- /* Snakes, Hydrae, Reptiles, Mimics */
- else if (my_strchr("JMR", r_ptr->d_char) || !isalpha(r_ptr->d_char))
+ else if(my_strchr("f", r_ptr->d_char))
{
- if (percentage > 95)
-#ifdef JP
-msg_format("%^s¤Ï¤Û¤È¤ó¤Éµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
-#else
- msg_format("%^s barely notices.", m_name);
-#endif
- else if (percentage > 75)
#ifdef JP
-msg_format("%^s¤Ï¥·¡¼¥Ã¤ÈÌĤ¤¤¿¡£", m_name);
+ if(percentage > 95) msg_format("%s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
+ else if(percentage > 75) msg_format("%^s¤ÏËʤ¨¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%^s¤ÏÅܤäÆËʤ¨¤¿¡£", m_name);
+ else if(percentage > 35) msg_format("%^s¤ÏÄˤߤǥ·¡¼¥Ã¤ÈÌĤ¤¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤ÏÄˤߤǼ塹¤·¤¯ÌĤ¤¤¿¡£", m_name);
+ else if(percentage > 10) msg_format("%^s¤Ï¶ìÄˤˤ¦¤á¤¤¤¿¡£", m_name);
+ else msg_format("%s¤Ï°¥¤ì¤ÊÌĤÀ¼¤ò½Ð¤·¤¿¡£", m_name);
#else
- msg_format("%^s hisses.", m_name);
-#endif
- else if (percentage > 50)
-#ifdef JP
-msg_format("%^s¤ÏÅܤäÆƬ¤ò¾å¤²¤¿¡£", m_name);
-#else
- msg_format("%^s rears up in anger.", m_name);
-#endif
- else if (percentage > 35)
-#ifdef JP
-msg_format("%^s¤ÏÌÔÁ³¤È°Ò³Å¤·¤¿¡£", m_name);
-#else
- msg_format("%^s hisses furiously.", m_name);
-#endif
- else if (percentage > 20)
-#ifdef JP
-msg_format("%^s¤Ï¿È¤â¤À¤¨¤·¤¿¡£", m_name);
-#else
- msg_format("%^s writhes about.", m_name);
-#endif
- else if (percentage > 10)
-#ifdef JP
-msg_format("%^s¤Ï¶ìÄˤǿȤâ¤À¤¨¤·¤¿¡£", m_name);
-#else
- msg_format("%^s writhes in agony.", m_name);
-#endif
- else
-#ifdef JP
-msg_format("%^s¤Ï¤°¤Ë¤ã¤°¤Ë¤ã¤ÈáÛÚ»¤·¤¿¡£", m_name);
-#else
- msg_format("%^s jerks limply.", m_name);
+ if(percentage > 95) msg_format("%^s shrugs off the attack.", m_name);
+ else if(percentage > 75) msg_format("%^s roars.", m_name);
+ else if(percentage > 50) msg_format("%^s growls angrily.", m_name);
+ else if(percentage > 35) msg_format("%^s hisses with pain.", m_name);
+ else if(percentage > 20) msg_format("%^s mewls in pain.", m_name);
+ else if(percentage > 10) msg_format("%^s hisses in agony.", m_name);
+ else msg_format("%^s mewls pitifully.", m_name);
#endif
}
-
- /* Felines */
- else if (my_strchr("f", r_ptr->d_char))
+ else if(my_strchr("acFIKS", r_ptr->d_char)) // Ants, Centipedes, Flies, Insects, Beetles, Spiders
{
- if (percentage > 95)
-#ifdef JP
-msg_format("%s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
-#else
- msg_format("%^s shrugs off the attack.", m_name);
-#endif
- else if (percentage > 75)
-#ifdef JP
-msg_format("%^s¤ÏËʤ¨¤¿¡£", m_name);
-#else
- msg_format("%^s roars.", m_name);
-#endif
- else if (percentage > 50)
-#ifdef JP
-msg_format("%^s¤ÏÅܤäÆËʤ¨¤¿¡£", m_name);
-#else
- msg_format("%^s growls angrily.", m_name);
-#endif
- else if (percentage > 35)
-#ifdef JP
-msg_format("%^s¤ÏÄˤߤǥ·¡¼¥Ã¤ÈÌĤ¤¤¿¡£", m_name);
-#else
- msg_format("%^s hisses with pain.", m_name);
-#endif
- else if (percentage > 20)
-#ifdef JP
-msg_format("%^s¤ÏÄˤߤǼ塹¤·¤¯ÌĤ¤¤¿¡£", m_name);
-#else
- msg_format("%^s mewls in pain.", m_name);
-#endif
- else if (percentage > 10)
-#ifdef JP
-msg_format("%^s¤Ï¶ìÄˤˤ¦¤á¤¤¤¿¡£", m_name);
-#else
- msg_format("%^s hisses in agony.", m_name);
-#endif
- else
#ifdef JP
-msg_format("%s¤Ï°¥¤ì¤ÊÌĤÀ¼¤ò½Ð¤·¤¿¡£", m_name);
+ if(percentage > 95) msg_format("%s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
+ else if(percentage > 75) msg_format("%^s¤Ï¥¡¼¥¡¼ÌĤ¤¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%^s¤Ï¥è¥í¥è¥íƨ¤²²ó¤Ã¤¿¡£", m_name);
+ else if(percentage > 35) msg_format("%^s¤Ï¤¦¤ë¤µ¤¯ÌĤ¤¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤ÏÄˤߤËáÛÚ»¤·¤¿¡£", m_name);
+ else if(percentage > 10) msg_format("%^s¤Ï¶ìÄˤÇáÛÚ»¤·¤¿¡£", m_name);
+ else msg_format("%^s¤Ï¥Ô¥¯¥Ô¥¯¤Ò¤¤Ä¤Ã¤¿¡£", m_name);
#else
- msg_format("%^s mewls pitifully.", m_name);
+ if(percentage > 95) msg_format("%^s ignores the attack.", m_name);
+ else if(percentage > 75) msg_format("%^s chitters.", m_name);
+ else if(percentage > 50) msg_format("%^s scuttles about.", m_name);
+ else if(percentage > 35) msg_format("%^s twitters.", m_name);
+ else if(percentage > 20) msg_format("%^s jerks in pain.", m_name);
+ else if(percentage > 10) msg_format("%^s jerks in agony.", m_name);
+ else msg_format("%^s twitches.", m_name);
#endif
}
-
- /* Ants, Centipedes, Flies, Insects, Beetles, Spiders */
- else if (my_strchr("acFIKS", r_ptr->d_char))
- {
- if (percentage > 95)
-#ifdef JP
-msg_format("%s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
-#else
- msg_format("%^s ignores the attack.", m_name);
-#endif
- else if (percentage > 75)
-#ifdef JP
-msg_format("%^s¤Ï¥¡¼¥¡¼ÌĤ¤¤¿¡£", m_name);
-#else
- msg_format("%^s chitters.", m_name);
-#endif
-
- else if (percentage > 50)
-#ifdef JP
-msg_format("%^s¤Ï¥è¥í¥è¥íƨ¤²²ó¤Ã¤¿¡£", m_name);
-#else
- msg_format("%^s scuttles about.", m_name);
-#endif
-
- else if (percentage > 35)
-#ifdef JP
-msg_format("%^s¤Ï¤¦¤ë¤µ¤¯ÌĤ¤¤¿¡£", m_name);
-#else
- msg_format("%^s twitters.", m_name);
-#endif
-
- else if (percentage > 20)
-#ifdef JP
-msg_format("%^s¤ÏÄˤߤËáÛÚ»¤·¤¿¡£", m_name);
-#else
- msg_format("%^s jerks in pain.", m_name);
-#endif
-
- else if (percentage > 10)
-#ifdef JP
-msg_format("%^s¤Ï¶ìÄˤÇáÛÚ»¤·¤¿¡£", m_name);
-#else
- msg_format("%^s jerks in agony.", m_name);
-#endif
-
- else
+ else if(my_strchr("B", r_ptr->d_char)) // Birds
+ {
#ifdef JP
-msg_format("%^s¤Ï¥Ô¥¯¥Ô¥¯¤Ò¤¤Ä¤Ã¤¿¡£", m_name);
+ if(percentage > 95) msg_format("%^s¤Ï¤µ¤¨¤º¤Ã¤¿¡£", m_name);
+ else if(percentage > 75) msg_format("%^s¤Ï¥Ô¡¼¥Ô¡¼ÌĤ¤¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%^s¤Ï¥®¥ã¡¼¥®¥ã¡¼ÌĤ¤¤¿¡£", m_name);
+ else if(percentage > 35) msg_format("%^s¤Ï¥®¥ã¡¼¥®¥ã¡¼ÌĤ¤ï¤á¤¤¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤Ï¶ì¤·¤ó¤À¡£", m_name);
+ else if(percentage > 10) msg_format("%^s¤Ï¤Î¤¿¤¦¤Á²ó¤Ã¤¿¡£", m_name);
+ else msg_format("%^s¤Ï¥¡¼¥¡¼¤ÈÌĤ¶«¤ó¤À¡£", m_name);
#else
- msg_format("%^s twitches.", m_name);
+ if(percentage > 95) msg_format("%^s chirps.", m_name);
+ else if(percentage > 75) msg_format("%^s twitters.", m_name);
+ else if(percentage > 50) msg_format("%^s squawks.", m_name);
+ else if(percentage > 35) msg_format("%^s chatters.", m_name);
+ else if(percentage > 20) msg_format("%^s jeers.", m_name);
+ else if(percentage > 10) msg_format("%^s flutters about.", m_name);
+ else msg_format("%^s squeaks.", m_name);
#endif
-
}
-
- /* Birds */
- else if (my_strchr("B", r_ptr->d_char))
- {
- if (percentage > 95)
-#ifdef JP
-msg_format("%^s¤Ï¤µ¤¨¤º¤Ã¤¿¡£", m_name);
-#else
- msg_format("%^s chirps.", m_name);
-#endif
-
- else if (percentage > 75)
-#ifdef JP
-msg_format("%^s¤Ï¥Ô¡¼¥Ô¡¼ÌĤ¤¤¿¡£", m_name);
-#else
- msg_format("%^s twitters.", m_name);
-#endif
-
- else if (percentage > 50)
-#ifdef JP
-msg_format("%^s¤Ï¥®¥ã¡¼¥®¥ã¡¼ÌĤ¤¤¿¡£", m_name);
-#else
- msg_format("%^s squawks.", m_name);
-#endif
-
- else if (percentage > 35)
-#ifdef JP
-msg_format("%^s¤Ï¥®¥ã¡¼¥®¥ã¡¼ÌĤ¤ï¤á¤¤¤¿¡£", m_name);
-#else
- msg_format("%^s chatters.", m_name);
-#endif
-
- else if (percentage > 20)
+ else if(my_strchr("duDLUW", r_ptr->d_char)) // Dragons, Demons, High Undead
+ {
#ifdef JP
-msg_format("%^s¤Ï¶ì¤·¤ó¤À¡£", m_name);
+ if(percentage > 95) msg_format("%s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
+ else if(percentage > 75) msg_format("%^s¤Ï¤·¤ê¹þ¤ß¤·¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%^s¤ÏÄˤߤǥ·¡¼¥Ã¤ÈÌĤ¤¤¿¡£", m_name);
+ else if(percentage > 35) msg_format("%^s¤ÏÄˤߤǤ¦¤Ê¤Ã¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤ÏÄˤߤËËʤ¨¤¿¡£", m_name);
+ else if(percentage > 10) msg_format("%^s¤Ï¶ì¤·¤²¤Ë¶«¤ó¤À¡£", m_name);
+ else msg_format("%^s¤Ï¼å¡¹¤·¤¯¤¦¤Ê¤Ã¤¿¡£", m_name);
#else
- msg_format("%^s jeers.", m_name);
+ if(percentage > 95) msg_format("%^s ignores the attack.", m_name);
+ else if(percentage > 75) msg_format("%^s flinches.", m_name);
+ else if(percentage > 50) msg_format("%^s hisses in pain.", m_name);
+ else if(percentage > 35) msg_format("%^s snarls with pain.", m_name);
+ else if(percentage > 20) msg_format("%^s roars with pain.", m_name);
+ else if(percentage > 10) msg_format("%^s gasps.", m_name);
+ else msg_format("%^s snarls feebly.", m_name);
#endif
-
- else if (percentage > 10)
-#ifdef JP
-msg_format("%^s¤Ï¤Î¤¿¤¦¤Á²ó¤Ã¤¿¡£", m_name);
-#else
- msg_format("%^s flutters about.", m_name);
-#endif
-
- else
-#ifdef JP
-msg_format("%^s¤Ï¥¡¼¥¡¼¤ÈÌĤ¶«¤ó¤À¡£", m_name);
-#else
- msg_format("%^s squeaks.", m_name);
-#endif
-
}
-
- /* Dragons, Demons, High Undead */
- else if (my_strchr("duDLUW", r_ptr->d_char))
+ else if(my_strchr("s", r_ptr->d_char)) // Skeletons
{
- if (percentage > 95)
-#ifdef JP
-msg_format("%s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
-#else
- msg_format("%^s ignores the attack.", m_name);
-#endif
-
- else if (percentage > 75)
-#ifdef JP
-msg_format("%^s¤Ï¤·¤ê¹þ¤ß¤·¤¿¡£", m_name);
-#else
- msg_format("%^s flinches.", m_name);
-#endif
-
- else if (percentage > 50)
-#ifdef JP
-msg_format("%^s¤ÏÄˤߤǥ·¡¼¥Ã¤ÈÌĤ¤¤¿¡£", m_name);
-#else
- msg_format("%^s hisses in pain.", m_name);
-#endif
-
- else if (percentage > 35)
#ifdef JP
-msg_format("%^s¤ÏÄˤߤǤ¦¤Ê¤Ã¤¿¡£", m_name);
+ if(percentage > 95) msg_format("%s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
+ else if(percentage > 75) msg_format("%s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%^s¤Ï¥«¥¿¥«¥¿¤È¾Ð¤Ã¤¿¡£", m_name);
+ else if(percentage > 35) msg_format("%^s¤Ï¤è¤í¤á¤¤¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤Ï¥«¥¿¥«¥¿¸À¤Ã¤¿¡£", m_name);
+ else if(percentage > 10) msg_format("%^s¤Ï¤è¤í¤á¤¤¤¿¡£", m_name);
+ else msg_format("%^s¤Ï¥¬¥¿¥¬¥¿¸À¤Ã¤¿¡£", m_name);
#else
- msg_format("%^s snarls with pain.", m_name);
+ if(percentage > 95) msg_format("%^s ignores the attack.", m_name);
+ else if(percentage > 75) msg_format("%^s shrugs off the attack.", m_name);
+ else if(percentage > 50) msg_format("%^s rattles.", m_name);
+ else if(percentage > 35) msg_format("%^s stumbles.", m_name);
+ else if(percentage > 20) msg_format("%^s rattles.", m_name);
+ else if(percentage > 10) msg_format("%^s staggers.", m_name);
+ else msg_format("%^s clatters.", m_name);
#endif
-
- else if (percentage > 20)
-#ifdef JP
-msg_format("%^s¤ÏÄˤߤËËʤ¨¤¿¡£", m_name);
-#else
- msg_format("%^s roars with pain.", m_name);
-#endif
-
- else if (percentage > 10)
-#ifdef JP
-msg_format("%^s¤Ï¶ì¤·¤²¤Ë¶«¤ó¤À¡£", m_name);
-#else
- msg_format("%^s gasps.", m_name);
-#endif
-
- else
-#ifdef JP
-msg_format("%^s¤Ï¼å¡¹¤·¤¯¤¦¤Ê¤Ã¤¿¡£", m_name);
-#else
- msg_format("%^s snarls feebly.", m_name);
-#endif
-
}
-
- /* Skeletons */
- else if (my_strchr("s", r_ptr->d_char))
- {
- if (percentage > 95)
+ else if(my_strchr("z", r_ptr->d_char)) // Zombies
+ {
#ifdef JP
-msg_format("%s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
+ if(percentage > 95) msg_format("%s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
+ else if(percentage > 75) msg_format("%s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%^s¤Ï¤¦¤á¤¤¤¿¡£", m_name);
+ else if(percentage > 35) msg_format("%s¤Ï¶ì¤·¤²¤Ë¤¦¤á¤¤¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤Ïí´í°¤·¤¿¡£", m_name);
+ else if(percentage > 10) msg_format("%^s¤Ï¤¦¤Ê¤Ã¤¿¡£", m_name);
+ else msg_format("%^s¤Ï¤è¤í¤á¤¤¤¿¡£", m_name);
#else
- msg_format("%^s ignores the attack.", m_name);
+ if(percentage > 95) msg_format("%^s ignores the attack.", m_name);
+ else if(percentage > 75) msg_format("%^s shrugs off the attack.", m_name);
+ else if(percentage > 50) msg_format("%^s groans.", m_name);
+ else if(percentage > 35) msg_format("%^s moans.", m_name);
+ else if(percentage > 20) msg_format("%^s hesitates.", m_name);
+ else if(percentage > 10) msg_format("%^s grunts.", m_name);
+ else msg_format("%^s staggers.", m_name);
#endif
-
- else if (percentage > 75)
-#ifdef JP
-msg_format("%s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
-#else
- msg_format("%^s shrugs off the attack.", m_name);
-#endif
-
- else if (percentage > 50)
-#ifdef JP
-msg_format("%^s¤Ï¥«¥¿¥«¥¿¤È¾Ð¤Ã¤¿¡£", m_name);
-#else
- msg_format("%^s rattles.", m_name);
-#endif
-
- else if (percentage > 35)
-#ifdef JP
-msg_format("%^s¤Ï¤è¤í¤á¤¤¤¿¡£", m_name);
-#else
- msg_format("%^s stumbles.", m_name);
-#endif
-
- else if (percentage > 20)
-#ifdef JP
-msg_format("%^s¤Ï¥«¥¿¥«¥¿¸À¤Ã¤¿¡£", m_name);
-#else
- msg_format("%^s rattles.", m_name);
-#endif
-
- else if (percentage > 10)
-#ifdef JP
-msg_format("%^s¤Ï¤è¤í¤á¤¤¤¿¡£", m_name);
-#else
- msg_format("%^s staggers.", m_name);
-#endif
-
- else
-#ifdef JP
-msg_format("%^s¤Ï¥¬¥¿¥¬¥¿¸À¤Ã¤¿¡£", m_name);
-#else
- msg_format("%^s clatters.", m_name);
-#endif
-
}
-
- /* Zombies */
- else if (my_strchr("z", r_ptr->d_char))
+ else if(my_strchr("G", r_ptr->d_char)) // Ghosts
{
- if (percentage > 95)
-#ifdef JP
-msg_format("%s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
-#else
- msg_format("%^s ignores the attack.", m_name);
-#endif
-
- else if (percentage > 75)
-#ifdef JP
-msg_format("%s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
-#else
- msg_format("%^s shrugs off the attack.", m_name);
-#endif
-
- else if (percentage > 50)
-#ifdef JP
-msg_format("%^s¤Ï¤¦¤á¤¤¤¿¡£", m_name);
-#else
- msg_format("%^s groans.", m_name);
-#endif
-
- else if (percentage > 35)
#ifdef JP
-msg_format("%s¤Ï¶ì¤·¤²¤Ë¤¦¤á¤¤¤¿¡£", m_name);
+ if(percentage > 95) msg_format("%s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
+ else if(percentage > 75) msg_format("%s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%s¤Ï¤¦¤á¤¤¤¿¡£", m_name);
+ else if(percentage > 35) msg_format("%^s¤Ïµã¤¤ï¤á¤¤¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤ÏËʤ¨¤¿¡£", m_name);
+ else if(percentage > 10) msg_format("%s¤Ï¼å¡¹¤·¤¯¤¦¤á¤¤¤¿¡£", m_name);
+ else msg_format("%^s¤Ï¤«¤¹¤«¤Ë¤¦¤á¤¤¤¿¡£", m_name);
#else
- msg_format("%^s moans.", m_name);
+ if(percentage > 95) msg_format("%^s ignores the attack.", m_name);
+ else if(percentage > 75) msg_format("%^s shrugs off the attack.", m_name);
+ else if(percentage > 50) msg_format("%^s moans.", m_name);
+ else if(percentage > 35) msg_format("%^s wails.", m_name);
+ else if(percentage > 20) msg_format("%^s howls.", m_name);
+ else if(percentage > 10) msg_format("%^s moans softly.", m_name);
+ else msg_format("%^s sighs.", m_name);
#endif
-
- else if (percentage > 20)
-#ifdef JP
-msg_format("%^s¤Ïí´í°¤·¤¿¡£", m_name);
-#else
- msg_format("%^s hesitates.", m_name);
-#endif
-
- else if (percentage > 10)
-#ifdef JP
-msg_format("%^s¤Ï¤¦¤Ê¤Ã¤¿¡£", m_name);
-#else
- msg_format("%^s grunts.", m_name);
-#endif
-
- else
-#ifdef JP
-msg_format("%^s¤Ï¤è¤í¤á¤¤¤¿¡£", m_name);
-#else
- msg_format("%^s staggers.", m_name);
-#endif
-
}
-
- /* Ghosts */
- else if (my_strchr("G", r_ptr->d_char))
-
+ else if(my_strchr("CZ", r_ptr->d_char)) // Dogs and Hounds
{
- if (percentage > 95)
-#ifdef JP
-msg_format("%s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
-#else
- msg_format("%^s ignores the attack.", m_name);
-#endif
-
- else if (percentage > 75)
#ifdef JP
-msg_format("%s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
+ if(percentage > 95) msg_format("%^s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
+ else if(percentage > 75) msg_format("%^s¤ÏÄˤߤǤ¦¤Ê¤Ã¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%^s¤ÏÄˤߤǥ¥ã¥ó¥¥ã¥óËʤ¨¤¿¡£", m_name);
+ else if(percentage > 35) msg_format("%^s¤ÏÄˤߤÇÌĤ¤ï¤á¤¤¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤Ï¶ìÄˤΤ¢¤Þ¤êÌĤ¤ï¤á¤¤¤¿¡£", m_name);
+ else if(percentage > 10) msg_format("%^s¤Ï¶ìÄˤǤâ¤À¤¨¶ì¤·¤ó¤À¡£", m_name);
+ else msg_format("%^s¤Ï¼å¡¹¤·¤¯Ëʤ¨¤¿¡£", m_name);
#else
- msg_format("%^s shrugs off the attack.", m_name);
+ if(percentage > 95) msg_format("%^s shrugs off the attack.", m_name);
+ else if(percentage > 75) msg_format("%^s snarls with pain.", m_name);
+ else if(percentage > 50) msg_format("%^s yelps in pain.", m_name);
+ else if(percentage > 35) msg_format("%^s howls in pain.", m_name);
+ else if(percentage > 20) msg_format("%^s howls in agony.", m_name);
+ else if(percentage > 10) msg_format("%^s writhes in agony.", m_name);
+ else msg_format("%^s yelps feebly.", m_name);
#endif
-
- else if (percentage > 50)
-#ifdef JP
-msg_format("%s¤Ï¤¦¤á¤¤¤¿¡£", m_name);
-#else
- msg_format("%^s moans.", m_name);
-#endif
-
- else if (percentage > 35)
-#ifdef JP
-msg_format("%^s¤Ïµã¤¤ï¤á¤¤¤¿¡£", m_name);
-#else
- msg_format("%^s wails.", m_name);
-#endif
-
- else if (percentage > 20)
-#ifdef JP
-msg_format("%^s¤ÏËʤ¨¤¿¡£", m_name);
-#else
- msg_format("%^s howls.", m_name);
-#endif
-
- else if (percentage > 10)
-#ifdef JP
-msg_format("%s¤Ï¼å¡¹¤·¤¯¤¦¤á¤¤¤¿¡£", m_name);
-#else
- msg_format("%^s moans softly.", m_name);
-#endif
-
- else
-#ifdef JP
-msg_format("%^s¤Ï¤«¤¹¤«¤Ë¤¦¤á¤¤¤¿¡£", m_name);
-#else
- msg_format("%^s sighs.", m_name);
-#endif
-
}
-
- /* Dogs and Hounds */
- else if (my_strchr("CZ", r_ptr->d_char))
+ else if(my_strchr("Xbilqrt", r_ptr->d_char)) // One type of creatures (ignore,squeal,shriek)
{
#ifdef JP
- if (percentage > 95)
- msg_format("%^s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
- else if (percentage > 75)
- msg_format("%^s¤ÏÄˤߤǤ¦¤Ê¤Ã¤¿¡£", m_name);
- else if (percentage > 50)
- msg_format("%^s¤ÏÄˤߤǥ¥ã¥ó¥¥ã¥óËʤ¨¤¿¡£", m_name);
- else if (percentage > 35)
- msg_format("%^s¤ÏÄˤߤÇÌĤ¤ï¤á¤¤¤¿¡£", m_name);
- else if (percentage > 20)
- msg_format("%^s¤Ï¶ìÄˤΤ¢¤Þ¤êÌĤ¤ï¤á¤¤¤¿¡£", m_name);
- else if (percentage > 10)
- msg_format("%^s¤Ï¶ìÄˤǤâ¤À¤¨¶ì¤·¤ó¤À¡£", m_name);
- else
- msg_format("%^s¤Ï¼å¡¹¤·¤¯Ëʤ¨¤¿¡£", m_name);
+ if(percentage > 95) msg_format("%^s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
+ else if(percentage > 75) msg_format("%^s¤ÏÄˤߤǤ¦¤Ê¤Ã¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%^s¤ÏÄˤߤǶ«¤ó¤À¡£", m_name);
+ else if(percentage > 35) msg_format("%^s¤ÏÄˤߤÇÀ䶫¤·¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤Ï¶ìÄˤΤ¢¤Þ¤êÀ䶫¤·¤¿¡£", m_name);
+ else if(percentage > 10) msg_format("%^s¤Ï¶ìÄˤǤâ¤À¤¨¶ì¤·¤ó¤À¡£", m_name);
+ else msg_format("%^s¤Ï¼å¡¹¤·¤¯¶«¤ó¤À¡£", m_name);
#else
- if (percentage > 95)
- msg_format("%^s shrugs off the attack.", m_name);
- else if (percentage > 75)
- msg_format("%^s snarls with pain.", m_name);
- else if (percentage > 50)
- msg_format("%^s yelps in pain.", m_name);
- else if (percentage > 35)
- msg_format("%^s howls in pain.", m_name);
- else if (percentage > 20)
- msg_format("%^s howls in agony.", m_name);
- else if (percentage > 10)
- msg_format("%^s writhes in agony.", m_name);
- else
- msg_format("%^s yelps feebly.", m_name);
+ if(percentage > 95) msg_format("%^s ignores the attack.", m_name);
+ else if(percentage > 75) msg_format("%^s grunts with pain.", m_name);
+ else if(percentage > 50) msg_format("%^s squeals in pain.", m_name);
+ else if(percentage > 35) msg_format("%^s shrieks in pain.", m_name);
+ else if(percentage > 20) msg_format("%^s shrieks in agony.", m_name);
+ else if(percentage > 10) msg_format("%^s writhes in agony.", m_name);
+ else msg_format("%^s cries out feebly.", m_name);
#endif
-
}
- /* One type of monsters (ignore,squeal,shriek) */
- else if (my_strchr("Xbilqrt", r_ptr->d_char))
+ else // Another type of creatures (shrug,cry,scream)
{
#ifdef JP
- if (percentage > 95)
- msg_format("%^s¤Ï¹¶·â¤òµ¤¤Ë¤È¤á¤Æ¤¤¤Ê¤¤¡£", m_name);
- else if (percentage > 75)
- msg_format("%^s¤ÏÄˤߤǤ¦¤Ê¤Ã¤¿¡£", m_name);
- else if (percentage > 50)
- msg_format("%^s¤ÏÄˤߤǶ«¤ó¤À¡£", m_name);
- else if (percentage > 35)
- msg_format("%^s¤ÏÄˤߤÇÀ䶫¤·¤¿¡£", m_name);
- else if (percentage > 20)
- msg_format("%^s¤Ï¶ìÄˤΤ¢¤Þ¤êÀ䶫¤·¤¿¡£", m_name);
- else if (percentage > 10)
- msg_format("%^s¤Ï¶ìÄˤǤâ¤À¤¨¶ì¤·¤ó¤À¡£", m_name);
- else
- msg_format("%^s¤Ï¼å¡¹¤·¤¯¶«¤ó¤À¡£", m_name);
+ if(percentage > 95) msg_format("%^s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
+ else if(percentage > 75) msg_format("%^s¤ÏÄˤߤǤ¦¤Ê¤Ã¤¿¡£", m_name);
+ else if(percentage > 50) msg_format("%^s¤ÏÄˤߤǶ«¤ó¤À¡£", m_name);
+ else if(percentage > 35) msg_format("%^s¤ÏÄˤߤÇÀ䶫¤·¤¿¡£", m_name);
+ else if(percentage > 20) msg_format("%^s¤Ï¶ìÄˤΤ¢¤Þ¤êÀ䶫¤·¤¿¡£", m_name);
+ else if(percentage > 10) msg_format("%^s¤Ï¶ìÄˤǤâ¤À¤¨¶ì¤·¤ó¤À¡£", m_name);
+ else msg_format("%^s¤Ï¼å¡¹¤·¤¯¶«¤ó¤À¡£", m_name);
#else
- if (percentage > 95)
- msg_format("%^s ignores the attack.", m_name);
- else if (percentage > 75)
- msg_format("%^s grunts with pain.", m_name);
- else if (percentage > 50)
- msg_format("%^s squeals in pain.", m_name);
- else if (percentage > 35)
- msg_format("%^s shrieks in pain.", m_name);
- else if (percentage > 20)
- msg_format("%^s shrieks in agony.", m_name);
- else if (percentage > 10)
- msg_format("%^s writhes in agony.", m_name);
- else
- msg_format("%^s cries out feebly.", m_name);
+ if(percentage > 95) msg_format("%^s shrugs off the attack.", m_name);
+ else if(percentage > 75) msg_format("%^s grunts with pain.", m_name);
+ else if(percentage > 50) msg_format("%^s cries out in pain.", m_name);
+ else if(percentage > 35) msg_format("%^s screams in pain.", m_name);
+ else if(percentage > 20) msg_format("%^s screams in agony.", m_name);
+ else if(percentage > 10) msg_format("%^s writhes in agony.", m_name);
+ else msg_format("%^s cries out feebly.", m_name);
#endif
-
}
+}
- /* Another type of monsters (shrug,cry,scream) */
- else
- {
-#ifdef JP
- if (percentage > 95)
- msg_format("%^s¤Ï¹¶·â¤Ë¸ª¤ò¤¹¤¯¤á¤¿¡£", m_name);
- else if (percentage > 75)
- msg_format("%^s¤ÏÄˤߤǤ¦¤Ê¤Ã¤¿¡£", m_name);
- else if (percentage > 50)
- msg_format("%^s¤ÏÄˤߤǶ«¤ó¤À¡£", m_name);
- else if (percentage > 35)
- msg_format("%^s¤ÏÄˤߤÇÀ䶫¤·¤¿¡£", m_name);
- else if (percentage > 20)
- msg_format("%^s¤Ï¶ìÄˤΤ¢¤Þ¤êÀ䶫¤·¤¿¡£", m_name);
- else if (percentage > 10)
- msg_format("%^s¤Ï¶ìÄˤǤâ¤À¤¨¶ì¤·¤ó¤À¡£", m_name);
- else
- msg_format("%^s¤Ï¼å¡¹¤·¤¯¶«¤ó¤À¡£", m_name);
-#else
- if (percentage > 95)
- msg_format("%^s shrugs off the attack.", m_name);
- else if (percentage > 75)
- msg_format("%^s grunts with pain.", m_name);
- else if (percentage > 50)
- msg_format("%^s cries out in pain.", m_name);
- else if (percentage > 35)
- msg_format("%^s screams in pain.", m_name);
- else if (percentage > 20)
- msg_format("%^s screams in agony.", m_name);
- else if (percentage > 10)
- msg_format("%^s writhes in agony.", m_name);
- else
- msg_format("%^s cries out feebly.", m_name);
-#endif
- }
-}
/*