OSDN Git Service

Merge branch 'master' of git.osdn.net:/gitroot/hengband/hengband
[hengband/hengband.git] / src / object-activation / activation-others.c
index 6652ad9..9b15a22 100644 (file)
 #include "core/asking-player.h"
 #include "core/hp-mp-processor.h"
 #include "effect/effect-characteristics.h"
+#include "effect/effect-processor.h"
 #include "game-option/special-options.h"
 #include "monster-race/monster-race.h"
 #include "monster-race/race-flags1.h"
 #include "monster/monster-status.h"
-#include "player/avatar.h"
 #include "player-attack/player-attack.h"
+#include "player-info/avatar.h"
 #include "player/player-damage.h"
-#include "spell/spell-types.h"
+#include "spell-kind/earthquake.h"
+#include "spell-kind/magic-item-recharger.h"
 #include "spell-kind/spells-beam.h"
 #include "spell-kind/spells-curse-removal.h"
 #include "spell-kind/spells-detection.h"
@@ -33,7 +35,7 @@
 #include "spell-kind/spells-teleport.h"
 #include "spell-kind/spells-world.h"
 #include "spell-realm/spells-hex.h"
-#include "spell/process-effect.h"
+#include "spell/spell-types.h"
 #include "spell/spells-status.h"
 #include "status/bad-status-setter.h"
 #include "status/buff-setter.h"
@@ -276,3 +278,71 @@ bool activate_door_destroy(player_type *user_ptr)
     destroy_doors_touch(user_ptr);
     return TRUE;
 }
+
+bool activate_earthquake(player_type *user_ptr)
+{
+    earthquake(user_ptr, user_ptr->y, user_ptr->x, 5, 0);
+    return TRUE;
+}
+
+bool activate_recharge(player_type *user_ptr)
+{
+    recharge(user_ptr, 130);
+    return TRUE;
+}
+
+bool activate_recharge_extra(player_type *user_ptr, concptr name)
+{
+    msg_format(_("%s\82ª\94\92\82­\8bP\82¢\82½\81D\81D\81D", "The %s gleams with blinding light..."), name);
+    return recharge(user_ptr, 1000);
+}
+
+bool activate_shikofumi(player_type *user_ptr)
+{
+    msg_print(_("\97Í\8b­\82­\8el\8cÒ\82ð\93¥\82ñ\82¾\81B", "You stamp. (as if you are in a ring.)"));
+    (void)set_afraid(user_ptr, 0);
+    (void)set_hero(user_ptr, randint1(20) + 20, FALSE);
+    (void)dispel_evil(user_ptr, user_ptr->lev * 3);
+    return TRUE;
+}
+
+bool activate_terror(player_type *user_ptr)
+{
+    turn_monsters(user_ptr, 40 + user_ptr->lev);
+    return TRUE;
+}
+
+bool activate_map_light(player_type *user_ptr)
+{
+    msg_print(_("á¿\82µ\82­\8bP\82¢\82½...", "It shines brightly..."));
+    map_area(user_ptr, DETECT_RAD_MAP);
+    lite_area(user_ptr, damroll(2, 15), 3);
+    return TRUE;
+}
+
+bool activate_exploding_rune(player_type *user_ptr)
+{
+    msg_print(_("\96¾\82é\82¢\90Ô\90F\82É\8bP\82¢\82Ä\82¢\82é...", "It glows bright red..."));
+    explosive_rune(user_ptr, user_ptr->y, user_ptr->x);
+    return TRUE;
+}
+
+bool activate_protection_rune(player_type *user_ptr)
+{
+    msg_print(_("\83u\83\8b\81[\82É\96¾\82é\82­\8bP\82¢\82Ä\82¢\82é...", "It glows light blue..."));
+    warding_glyph(user_ptr);
+    return TRUE;
+}
+
+bool activate_light(player_type *user_ptr, concptr name)
+{
+    msg_format(_("%s\82©\82ç\90\9f\82ñ\82¾\8cõ\82ª\82 \82Ó\82ê\8fo\82½...", "The %s wells with clear light..."), name);
+    lite_area(user_ptr, damroll(2, 15), 3);
+    return TRUE;
+}
+
+bool activate_recall(player_type *user_ptr)
+{
+    msg_print(_("\82â\82í\82ç\82©\82È\94\92\90F\82É\8bP\82¢\82Ä\82¢\82é...", "It glows soft white..."));
+    return recall_player(user_ptr, randint0(21) + 15);
+}