OSDN Git Service

[Refactor] #3453 wiz_debug_spell() から呼ばれているget_string をinput_value() に変えた
[hengbandforosx/hengbandosx.git] / src / wizard / wizard-spells.h
index 91faf6b..e09014b 100644 (file)
@@ -1,37 +1,49 @@
 #pragma once
 
+#include "effect/attribute-types.h"
 #include "system/angband.h"
 
-#define SPELL_MAX 3
+enum class MonsterRaceId : int16_t;
 
+class FloorType;
+class PlayerType;
 typedef union spell_functions {
     struct debug_spell_type1 {
-        bool (*spell_function)(player_type *, floor_type *);
+        bool (*spell_function)(PlayerType *, FloorType *);
     } spell1;
 
     struct debug_spell_type2 {
-        bool (*spell_function)(player_type *);
+        bool (*spell_function)(PlayerType *);
     } spell2;
 
     struct debug_spell_type3 {
-        bool (*spell_function)(player_type *, HIT_POINT);
+        bool (*spell_function)(PlayerType *, int);
     } spell3;
 
+    struct debug_spell_type4 { // 実質 ty curse
+        bool (*spell_function)(PlayerType *, bool, int *);
+    } spell4;
+
+    struct debug_spell_type5 {
+        void (*spell_function)(PlayerType *);
+    } spell5;
+
 } spell_functions;
 
-typedef struct debug_spell_command {
+struct debug_spell_command {
     int type;
-    char *command_name;
+    concptr command_name;
     spell_functions command_function;
-} debug_spell_command;
-
-extern debug_spell_command debug_spell_commands_list[SPELL_MAX];
-
-bool wiz_debug_spell(player_type *creature_ptr);
-void wiz_dimension_door(player_type *caster_ptr);
-void wiz_summon_horde(player_type *caster_ptr);
-void wiz_teleport_back(player_type *caster_ptr);
-void wiz_learn_blue_magic_all(player_type *caster_ptr);
-void wiz_summon_random_enemy(player_type *caster_ptr, int num);
-void wiz_summon_specific_enemy(player_type *summoner_ptr, MONRACE_IDX r_idx);
-void wiz_summon_pet(player_type *summoner_ptr, MONRACE_IDX r_idx);
+};
+
+void wiz_debug_spell(PlayerType *player_ptr);
+void wiz_dimension_door(PlayerType *player_ptr);
+void wiz_summon_horde(PlayerType *player_ptr);
+void wiz_teleport_back(PlayerType *player_ptr);
+void wiz_learn_blue_magic_all(PlayerType *player_ptr);
+void wiz_fillup_all_smith_essences(PlayerType *player_ptr);
+void wiz_generate_random_monster(PlayerType *player_ptr, int num);
+void wiz_summon_random_monster(PlayerType *player_ptr, int num);
+void wiz_summon_specific_monster(PlayerType *player_ptr, MonsterRaceId r_idx);
+void wiz_summon_pet(PlayerType *player_ptr, MonsterRaceId r_idx);
+void wiz_kill_target(PlayerType *player_ptr, int initial_dam = 1000000, AttributeType effect_idx = AttributeType::DEBUG, const bool self = false);