-#include "angband.h"
-#include "core.h"
+#include "system/angband.h"
+#include "core/stuff-handler.h"
#include "util.h"
-#include "cmd-dump.h"
-#include "floor.h"
-#include "grid.h"
+#include "io/write-diary.h"
+#include "cmd/cmd-dump.h"
+#include "floor/floor.h"
+#include "grid/grid.h"
#include "melee.h"
#include "sort.h"
-#include "player-move.h"
-#include "player-status.h"
-#include "player-effects.h"
-#include "player-skill.h"
-#include "player-class.h"
-#include "player-damage.h"
-#include "object-hook.h"
-#include "monster.h"
-#include "monster-status.h"
+#include "player/player-move.h"
+#include "player/player-status.h"
+#include "player/player-effects.h"
+#include "player/player-skill.h"
+#include "player/player-class.h"
+#include "player/player-damage.h"
+#include "object/object-hook.h"
+#include "monster/monster.h"
+#include "monster/monster-status.h"
#include "cmd-pet.h"
#include "cmd-basic.h"
-#include "view-mainwindow.h"
+#include "view/display-main-window.h"
#include "targeting.h"
-#include "world.h"
+#include "world/world.h"
+#include "effect/spells-effect-util.h"
int total_friends = 0;
MONSTER_IDX old_riding = creature_ptr->riding;
bool old_riding_ryoute = creature_ptr->riding_ryoute;
bool old_old_riding_ryoute = creature_ptr->old_riding_ryoute;
- bool old_pf_ryoute = (creature_ptr->pet_extra_flags & PF_RYOUTE) ? TRUE : FALSE;
+ bool old_pf_ryoute = (creature_ptr->pet_extra_flags & PF_TWO_HANDS) ? TRUE : FALSE;
/* Hack -- prevent "icky" message */
current_world_ptr->character_xtra = TRUE;
else
{
creature_ptr->riding = 0;
- creature_ptr->pet_extra_flags &= ~(PF_RYOUTE);
+ creature_ptr->pet_extra_flags &= ~(PF_TWO_HANDS);
creature_ptr->riding_ryoute = creature_ptr->old_riding_ryoute = FALSE;
}
creature_ptr->update |= PU_BONUS;
- handle_stuff();
+ handle_stuff(creature_ptr);
p_can_enter = player_can_enter(creature_ptr, g_ptr->feat, CEM_P_CAN_ENTER_PATTERN);
creature_ptr->riding = old_riding;
- if (old_pf_ryoute) creature_ptr->pet_extra_flags |= (PF_RYOUTE);
- else creature_ptr->pet_extra_flags &= ~(PF_RYOUTE);
+ if (old_pf_ryoute) creature_ptr->pet_extra_flags |= (PF_TWO_HANDS);
+ else creature_ptr->pet_extra_flags &= ~(PF_TWO_HANDS);
creature_ptr->riding_ryoute = old_riding_ryoute;
creature_ptr->old_riding_ryoute = old_old_riding_ryoute;
creature_ptr->update |= PU_BONUS;
- handle_stuff();
+ handle_stuff(creature_ptr);
current_world_ptr->character_xtra = old_character_xtra;
return p_can_enter;
}
-
-/*!
-* @brief ペットの維持コスト計算
-* @return 維持コスト(%)
-*/
-PERCENTAGE calculate_upkeep(player_type *creature_ptr)
-{
- MONSTER_IDX m_idx;
- bool have_a_unique = FALSE;
- DEPTH total_friend_levels = 0;
-
- total_friends = 0;
-
- for (m_idx = creature_ptr->current_floor_ptr->m_max - 1; m_idx >= 1; m_idx--)
- {
- monster_type *m_ptr;
- monster_race *r_ptr;
-
- m_ptr = &creature_ptr->current_floor_ptr->m_list[m_idx];
- if (!monster_is_valid(m_ptr)) continue;
- r_ptr = &r_info[m_ptr->r_idx];
-
- if (is_pet(m_ptr))
- {
- total_friends++;
- if (r_ptr->flags1 & RF1_UNIQUE)
- {
- if (creature_ptr->pclass == CLASS_CAVALRY)
- {
- if (creature_ptr->riding == m_idx)
- total_friend_levels += (r_ptr->level + 5) * 2;
- else if (!have_a_unique && (r_info[m_ptr->r_idx].flags7 & RF7_RIDING))
- total_friend_levels += (r_ptr->level + 5) * 7 / 2;
- else
- total_friend_levels += (r_ptr->level + 5) * 10;
- have_a_unique = TRUE;
- }
- else
- total_friend_levels += (r_ptr->level + 5) * 10;
- }
- else
- total_friend_levels += r_ptr->level;
-
- }
- }
-
- if (total_friends)
- {
- int upkeep_factor;
- upkeep_factor = (total_friend_levels - (creature_ptr->lev * 80 / (cp_ptr->pet_upkeep_div)));
- if (upkeep_factor < 0) upkeep_factor = 0;
- if (upkeep_factor > 1000) upkeep_factor = 1000;
- return upkeep_factor;
- }
- else
- return 0;
-}
-
/*!
* @brief ペットを開放するコマンドのメインルーチン
* @return なし
delete_this = FALSE;
kakunin = ((pet_ctr == creature_ptr->riding) || (m_ptr->nickname));
- monster_desc(friend_name, m_ptr, MD_ASSUME_VISIBLE);
+ monster_desc(creature_ptr, friend_name, m_ptr, MD_ASSUME_VISIBLE);
if (!all_pets)
{
/* Hack -- health bar for this monster */
- health_track(pet_ctr);
- handle_stuff();
+ health_track(creature_ptr, pet_ctr);
+ handle_stuff(creature_ptr);
msg_format(_("%sを放しますか? [Yes/No/Unnamed (%d体)]", "Dismiss %s? [Yes/No/Unnamed (%d remain)]"), friend_name, max_pet - i);
{
GAME_TEXT m_name[MAX_NLEN];
- monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
- exe_write_diary(creature_ptr, NIKKI_NAMED_PET, RECORD_NAMED_PET_DISMISS, m_name);
+ monster_desc(creature_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
+ exe_write_diary(creature_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_DISMISS, m_name);
}
if (pet_ctr == creature_ptr->riding)
creature_ptr->update |= (PU_BONUS);
creature_ptr->window |= (PW_MESSAGE);
- delete_monster_idx(pet_ctr);
+ delete_monster_idx(creature_ptr, pet_ctr);
Dismissed++;
}
}
if (Dismissed == 0 && all_pets)
msg_print(_("'U'nnamed は、乗馬以外の名前のないペットだけを全て解放します。", "'U'nnamed means all your pets except named pets and your mount."));
- handle_stuff();
+ handle_stuff(creature_ptr);
}
/* Skip non-empty grids */
if (!player_can_ride_aux(creature_ptr, g_ptr, FALSE))
{
- msg_print(_("そちらには降りられません。", "You cannot go to that direction."));
+ msg_print(_("そちらには降りられません。", "You cannot go that direction."));
return FALSE;
}
}
creature_ptr->riding = 0;
- creature_ptr->pet_extra_flags &= ~(PF_RYOUTE);
+ creature_ptr->pet_extra_flags &= ~(PF_TWO_HANDS);
creature_ptr->riding_ryoute = creature_ptr->old_riding_ryoute = FALSE;
}
else
if (!g_ptr->m_idx || !m_ptr->ml)
{
- msg_print(_("その場所にはモンスターはいません。", "Here is no monster."));
+ msg_print(_("その場所にはモンスターはいません。", "There is no monster here."));
return FALSE;
}
if (!is_pet(m_ptr) && !force)
#ifdef JP
msg_format("そのモンスターは%sの%sにいる。", f_name + f_ptr->name,
((!have_flag(f_ptr->flags, FF_MOVE) && !have_flag(f_ptr->flags, FF_CAN_FLY)) ||
- (!have_flag(f_ptr->flags, FF_LOS) && !have_flag(f_ptr->flags, FF_TREE))) ?
+ (!have_flag(f_ptr->flags, FF_LOS) && !have_flag(f_ptr->flags, FF_TREE))) ?
"中" : "上");
#else
msg_format("This monster is %s the %s.",
((!have_flag(f_ptr->flags, FF_MOVE) && !have_flag(f_ptr->flags, FF_CAN_FLY)) ||
- (!have_flag(f_ptr->flags, FF_LOS) && !have_flag(f_ptr->flags, FF_TREE))) ?
+ (!have_flag(f_ptr->flags, FF_LOS) && !have_flag(f_ptr->flags, FF_TREE))) ?
"in" : "on", f_name + f_ptr->name);
#endif
if (MON_CSLEEP(m_ptr))
{
GAME_TEXT m_name[MAX_NLEN];
- monster_desc(m_name, m_ptr, 0);
- (void)set_monster_csleep(g_ptr->m_idx, 0);
- msg_format(_("%sを起こした。", "You have waked %s up."), m_name);
+ monster_desc(creature_ptr, m_name, m_ptr, 0);
+ (void)set_monster_csleep(creature_ptr, g_ptr->m_idx, 0);
+ msg_format(_("%sを起こした。", "You have woken %s up."), m_name);
}
if (creature_ptr->action == ACTION_KAMAE) set_action(creature_ptr, ACTION_NONE);
creature_ptr->riding = g_ptr->m_idx;
/* Hack -- remove tracked monster */
- if (creature_ptr->riding == creature_ptr->health_who) health_track(0);
+ if (creature_ptr->riding == creature_ptr->health_who) health_track(creature_ptr, 0);
}
take_turn(creature_ptr, 100);
bool old_target_pet = target_pet;
target_pet = TRUE;
- if (!target_set(TARGET_KILL))
+ if (!target_set(creature_ptr, TARGET_KILL))
{
target_pet = old_target_pet;
return;
}
+
target_pet = old_target_pet;
if (creature_ptr->current_floor_ptr->grid_array[target_row][target_col].m_idx)
msg_print(_("そのモンスターの名前は変えられない!", "You cannot change name of this monster!"));
return;
}
- monster_desc(m_name, m_ptr, 0);
+ monster_desc(creature_ptr, m_name, m_ptr, 0);
msg_format(_("%sに名前をつける。", "Name %s."), m_name);
msg_print(NULL);
m_ptr->nickname = quark_add(out_val);
if (record_named_pet)
{
- monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
- exe_write_diary(creature_ptr, NIKKI_NAMED_PET, RECORD_NAMED_PET_NAME, m_name);
+ monster_desc(creature_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
+ exe_write_diary(creature_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_NAME, m_name);
}
}
else
{
if (record_named_pet && old_name)
{
- monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
- exe_write_diary(creature_ptr, NIKKI_NAMED_PET, RECORD_NAMED_PET_UNNAME, m_name);
+ monster_desc(creature_ptr, m_name, m_ptr, MD_INDEF_VISIBLE);
+ exe_write_diary(creature_ptr, DIARY_NAMED_PET, RECORD_NAMED_PET_UNNAME, m_name);
}
m_ptr->nickname = 0;
}
num = 0;
- if(creature_ptr->wild_mode) return;
+ if (creature_ptr->wild_mode) return;
power_desc[num] = _("ペットを放す", "dismiss pets");
powers[num++] = PET_DISMISS;
(creature_ptr->hidarite && (empty_hands(creature_ptr, FALSE) == EMPTY_HAND_RARM) &&
object_allow_two_hands_wielding(&creature_ptr->inventory_list[INVEN_LARM])))
{
- if (creature_ptr->pet_extra_flags & PF_RYOUTE)
+ if (creature_ptr->pet_extra_flags & PF_TWO_HANDS)
{
- power_desc[num] = _("武器を片手で持つ", "use one hand to control a riding pet");
+ power_desc[num] = _("武器を片手で持つ", "use one hand to control the pet you are riding");
}
else
{
power_desc[num] = _("武器を両手で持つ", "use both hands for a weapon");
}
- powers[num++] = PET_RYOUTE;
+ powers[num++] = PET_TWO_HANDS;
}
else
{
case CLASS_BERSERKER:
if (empty_hands(creature_ptr, FALSE) == (EMPTY_HAND_RARM | EMPTY_HAND_LARM))
{
- if (creature_ptr->pet_extra_flags & PF_RYOUTE)
+ if (creature_ptr->pet_extra_flags & PF_TWO_HANDS)
{
- power_desc[num] = _("片手で格闘する", "use one hand to control a riding pet");
+ power_desc[num] = _("片手で格闘する", "use one hand to control the pet you are riding");
}
else
{
power_desc[num] = _("両手で格闘する", "use both hands for melee");
}
- powers[num++] = PET_RYOUTE;
+ powers[num++] = PET_TWO_HANDS;
}
else if ((empty_hands(creature_ptr, FALSE) != EMPTY_HAND_NONE) && !has_melee_weapon(creature_ptr, INVEN_RARM) && !has_melee_weapon(creature_ptr, INVEN_LARM))
{
- if (creature_ptr->pet_extra_flags & PF_RYOUTE)
+ if (creature_ptr->pet_extra_flags & PF_TWO_HANDS)
{
- power_desc[num] = _("格闘を行わない", "use one hand to control a riding pet");
+ power_desc[num] = _("格闘を行わない", "use one hand to control the pet you are riding");
}
else
{
power_desc[num] = _("格闘を行う", "use one hand for melee");
}
- powers[num++] = PET_RYOUTE;
+ powers[num++] = PET_TWO_HANDS;
}
break;
}
case PET_TARGET:
{
project_length = -1;
- if (!target_set(TARGET_KILL)) creature_ptr->pet_t_m_idx = 0;
+ if (!target_set(creature_ptr, TARGET_KILL)) creature_ptr->pet_t_m_idx = 0;
else
{
grid_type *g_ptr = &creature_ptr->current_floor_ptr->grid_array[target_row][target_col];
if (is_pet(m_ptr))
{
- monster_drop_carried_objects(m_ptr);
+ monster_drop_carried_objects(creature_ptr, m_ptr);
}
}
}
break;
}
- case PET_RYOUTE:
+ case PET_TWO_HANDS:
{
- if (creature_ptr->pet_extra_flags & PF_RYOUTE) creature_ptr->pet_extra_flags &= ~(PF_RYOUTE);
- else creature_ptr->pet_extra_flags |= (PF_RYOUTE);
+ if (creature_ptr->pet_extra_flags & PF_TWO_HANDS) creature_ptr->pet_extra_flags &= ~(PF_TWO_HANDS);
+ else creature_ptr->pet_extra_flags |= (PF_TWO_HANDS);
creature_ptr->update |= (PU_BONUS);
- handle_stuff();
+ handle_stuff(creature_ptr);
break;
}
}
}
if (!sn)
{
- monster_desc(m_name, m_ptr, 0);
+ monster_desc(creature_ptr, m_name, m_ptr, 0);
msg_format(_("%sから振り落とされそうになって、壁にぶつかった。", "You have nearly fallen from %s, but bumped into wall."), m_name);
take_hit(creature_ptr, DAMAGE_NOESCAPE, r_ptr->level + 3, _("壁への衝突", "bumping into wall"), -1);
return FALSE;
creature_ptr->x = sx;
/* Redraw the old spot */
- lite_spot(oy, ox);
+ lite_spot(creature_ptr, oy, ox);
/* Redraw the new spot */
- lite_spot(creature_ptr->y, creature_ptr->x);
+ lite_spot(creature_ptr, creature_ptr->y, creature_ptr->x);
/* Check for new panel */
- verify_panel();
+ verify_panel(creature_ptr);
}
creature_ptr->riding = 0;
- creature_ptr->pet_extra_flags &= ~(PF_RYOUTE);
+ creature_ptr->pet_extra_flags &= ~(PF_TWO_HANDS);
creature_ptr->riding_ryoute = creature_ptr->old_riding_ryoute = FALSE;
creature_ptr->update |= (PU_BONUS | PU_VIEW | PU_LITE | PU_FLOW | PU_MON_LITE | PU_MONSTERS);
- handle_stuff();
+ handle_stuff(creature_ptr);
creature_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
if (creature_ptr->levitation && !force)
{
- monster_desc(m_name, m_ptr, 0);
+ monster_desc(creature_ptr, m_name, m_ptr, 0);
msg_format(_("%sから落ちたが、空中でうまく体勢を立て直して着地した。", "You are thrown from %s, but make a good landing."), m_name);
}
else
return fall_dam;
}
-