<ClCompile Include="..\..\src\save\player-writer.c" />\r
<ClCompile Include="..\..\src\save\save-util.c" />\r
<ClCompile Include="..\..\src\specific-object\death-crimson.c" />\r
+ <ClCompile Include="..\..\src\specific-object\muramasa.c" />\r
<ClCompile Include="..\..\src\spell-kind\blood-curse.c" />\r
<ClCompile Include="..\..\src\spell-kind\spells-enchant.c" />\r
<ClCompile Include="..\..\src\spell-kind\spells-equipment.c" />\r
<ClInclude Include="..\..\src\save\player-writer.h" />\r
<ClInclude Include="..\..\src\save\save-util.h" />\r
<ClInclude Include="..\..\src\specific-object\death-crimson.h" />\r
+ <ClInclude Include="..\..\src\specific-object\muramasa.h" />\r
<ClInclude Include="..\..\src\spell-kind\blood-curse.h" />\r
<ClInclude Include="..\..\src\spell-kind\spells-enchant.h" />\r
<ClInclude Include="..\..\src\spell-kind\spells-equipment.h" />\r
<ClCompile Include="..\..\src\object-activation\activation-resistance.c">
<Filter>object-activation</Filter>
</ClCompile>
+ <ClCompile Include="..\..\src\specific-object\muramasa.c">
+ <Filter>specific-object</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\src\combat\shoot.h">
<ClInclude Include="..\..\src\object-activation\activation-resistance.h">
<Filter>object-activation</Filter>
</ClInclude>
+ <ClInclude Include="..\..\src\specific-object\muramasa.h">
+ <Filter>specific-object</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="..\..\src\wall.bmp" />
specific-object/chest.c specific-object/chest.h \
specific-object/death-crimson.c specific-object/death-crimson.h \
specific-object/death-scythe.c specific-object/death-scythe.h \
+ specific-object/muramasa.c specific-object/muramasa.h \
specific-object/torch.c specific-object/torch.h \
\
spell/process-effect.c spell/process-effect.h \
#include "player/special-defense-types.h"
#include "racial/racial-android.h"
#include "specific-object/death-crimson.h"
+#include "specific-object/muramasa.h"
#include "spell-kind/earthquake.h"
#include "spell-kind/magic-item-recharger.h"
#include "spell-kind/spells-beam.h"
}
}
+bool activate_teleport_level(player_type *user_ptr)
+{
+ if (!get_check(_("本当に他の階にテレポートしますか?", "Are you sure? (Teleport Level)")))
+ return FALSE;
+
+ teleport_level(user_ptr, 0);
+ return TRUE;
+}
+
bool switch_activation(player_type *user_ptr, object_type *o_ptr, const activation_type *const act_ptr, concptr name)
{
switch (act_ptr->index) {
(void)project(user_ptr, 0, 8, user_ptr->y, user_ptr->x, (randint1(100) + 200) * 2, GF_HOLY_FIRE, PROJECT_KILL | PROJECT_ITEM | PROJECT_GRID, -1);
return TRUE;
case ACT_TELEPORT_LEVEL:
- if (!get_check(_("本当に他の階にテレポートしますか?", "Are you sure? (Teleport Level)")))
- return FALSE;
-
- teleport_level(user_ptr, 0);
- return TRUE;
+ return activate_teleport_level(user_ptr);
case ACT_STRAIN_HASTE:
msg_format(_("%sはあなたの体力を奪った...", "The %s drains your vitality..."), name);
take_hit(user_ptr, DAMAGE_LOSELIFE, damroll(3, 8), _("加速した疲労", "the strain of haste"), -1);
mitokohmon(user_ptr);
return TRUE;
case ACT_MURAMASA:
- if (o_ptr->name1 != ART_MURAMASA)
- return FALSE;
-
- if (!get_check(_("本当に使いますか?", "Are you sure?!")))
- return TRUE;
-
- msg_print(_("村正が震えた...", "The Muramasa pulsates..."));
- do_inc_stat(user_ptr, A_STR);
- if (one_in_(2)) {
- msg_print(_("村正は壊れた!", "The Muramasa is destroyed!"));
- curse_weapon_object(user_ptr, TRUE, o_ptr);
- }
-
- return TRUE;
+ return activate_muramasa(user_ptr, o_ptr);
case ACT_BLOODY_MOON:
if (o_ptr->name1 != ART_BLOOD)
return FALSE;
--- /dev/null
+#include "specific-object/muramasa.h"
+#include "core/asking-player.h"
+#include "art-definition/art-sword-types.h"
+#include "spell/spells-object.h"
+#include "status/base-status.h"
+#include "system/object-type-definition.h"
+#include "view/display-messages.h"
+
+bool activate_muramasa(player_type *user_ptr, object_type *o_ptr)
+{
+ if (o_ptr->name1 != ART_MURAMASA)
+ return FALSE;
+
+ if (!get_check(_("\96{\93\96\82É\8eg\82¢\82Ü\82·\82©\81H", "Are you sure?!")))
+ return TRUE;
+
+ msg_print(_("\91º\90³\82ª\90k\82¦\82½\81D\81D\81D", "The Muramasa pulsates..."));
+ do_inc_stat(user_ptr, A_STR);
+ if (one_in_(2)) {
+ msg_print(_("\91º\90³\82Í\89ó\82ê\82½\81I", "The Muramasa is destroyed!"));
+ curse_weapon_object(user_ptr, TRUE, o_ptr);
+ }
+
+ return TRUE;
+}
--- /dev/null
+#pragma once
+
+#include "system/angband.h"
+
+bool activate_muramasa(player_type *user_ptr, object_type *o_ptr);