#include "monsterrace-hook.h"
#include "player-status.h"
#include "player-effects.h"
+#include "spells.h"
#include "cmd-basic.h"
#include "cmd-spell.h"
#include "dungeon-file.h"
#include "files.h"
#include "player-class.h"
+#include "player-move.h"
+#include "spells.h"
/*
*/
extern const player_sex sex_info[MAX_SEXES];
extern const player_race race_info[MAX_RACES];
extern const player_class class_info[MAX_CLASS];
-extern const magic_type technic_info[NUM_TECHNIC][32];
extern const player_seikaku seikaku_info[MAX_SEIKAKU];
extern const player_race mimic_info[];
extern const u32b fake_spell_flags[4];
#include "feature.h"
#include "artifact.h"
#include "avatar.h"
+#include "spells.h"
#include "spells-status.h"
#include "object.h"
#include "object-hook.h"
#define MAX_GF 117
-
+extern const magic_type technic_info[NUM_TECHNIC][32];
/* spells3.c */
extern bool teleport_away(MONSTER_IDX m_idx, POSITION dis, BIT_FLAGS mode);
int project_length = 0; /*!< 投射の射程距離 */
+/*!
+ * @brief 歌、剣術、呪術領域情報テーブル
+ */
+const magic_type technic_info[NUM_TECHNIC][32] =
+{
+ {
+ /* Music */
+ { 1, 1, 10, 2},
+ { 2, 1, 10, 2},
+ { 3, 2, 20, 3},
+ { 4, 2, 20, 4},
+ { 5, 2, 20, 6},
+ { 7, 4, 30, 8},
+ { 9, 3, 30, 10},
+ { 10, 2, 30, 12},
+
+ { 12, 3, 40, 20},
+ { 15, 16, 42, 35},
+ { 17, 18, 40, 25},
+ { 18, 2, 45, 30},
+ { 23, 8, 50, 38},
+ { 28, 30, 50, 41},
+ { 33, 35, 60, 42},
+ { 38, 35, 70, 46},
+
+ { 10, 4, 20, 13},
+ { 22, 5, 30, 26},
+ { 23, 3, 35, 27},
+ { 26, 28, 37, 29},
+ { 32, 37, 41, 36},
+ { 33, 22, 43, 40},
+ { 37, 35, 46, 42},
+ { 45, 60, 50, 56},
+
+ { 23, 18, 20, 23},
+ { 30, 30, 30, 26},
+ { 33, 65, 41, 30},
+ { 37, 35, 43, 35},
+ { 40, 30, 46, 50},
+ { 42, 75, 50, 68},
+ { 45, 58, 62, 73},
+ { 49, 48, 70, 200}
+ },
+
+ {
+ /* Hissatsu */
+ { 1, 15, 0, 0},
+ { 3, 10, 0, 0},
+ { 6, 15, 0, 0},
+ { 9, 8, 0, 0},
+ { 10, 12, 0, 0},
+ { 12, 25, 0, 0},
+ { 14, 7, 0, 0},
+ { 17, 20, 0, 0},
+
+ { 19, 10, 0, 0},
+ { 22, 20, 0, 0},
+ { 24, 30, 0, 0},
+ { 25, 10, 0, 0},
+ { 27, 15, 0, 0},
+ { 29, 45, 0, 0},
+ { 32, 70, 0, 0},
+ { 35, 50, 0, 0},
+
+ { 18, 40, 0, 0},
+ { 22, 22, 0, 0},
+ { 24, 30, 0, 0},
+ { 26, 35, 0, 0},
+ { 30, 30, 0, 0},
+ { 32, 60, 0, 0},
+ { 36, 40, 0, 0},
+ { 39, 80, 0, 0},
+
+ { 26, 20, 0, 0},
+ { 29, 40, 0, 0},
+ { 31, 35, 0, 0},
+ { 36, 80, 0, 0},
+ { 39, 100, 0, 0},
+ { 42, 110, 0, 0},
+ { 45, 130, 0, 0},
+ { 50, 255, 0, 0}
+ },
+
+ {
+ /* Hex */
+ { 1, 2, 20, 2},
+ { 1, 2, 20, 2},
+ { 3, 2, 30, 3},
+ { 5, 3, 30, 4},
+ { 7, 3, 40, 6},
+ { 8, 10, 60, 8},
+ { 9, 3, 30, 10},
+ { 10, 5, 40, 12},
+
+ { 12, 8, 40, 15},
+ { 12, 9, 35, 15},
+ { 15, 10, 50, 20},
+ { 20, 12, 45, 35},
+ { 25, 15, 50, 50},
+ { 30, 12, 60, 70},
+ { 35, 10, 60, 80},
+ { 40, 16, 70, 100},
+
+ { 15, 8, 20, 20},
+ { 18, 15, 50, 20},
+ { 22, 10, 65, 35},
+ { 25, 28, 70, 50},
+ { 28, 10, 70, 60},
+ { 30, 20, 60, 60},
+ { 36, 22, 70, 80},
+ { 40, 28, 70, 100},
+
+ { 5, 6, 35, 5},
+ { 22, 24, 70, 40},
+ { 25, 2, 65, 50},
+ { 32, 20, 50, 70},
+ { 35, 35, 70, 80},
+ { 38, 32, 70, 90},
+ { 42, 24, 70, 120},
+ { 46, 45, 80, 200}
+ },
+};
+
+
/*!
* @brief 配置した鏡リストの次を取得する /
/*!
- * @brief 歌、剣術、呪術領域情報テーブル
- */
-const magic_type technic_info[NUM_TECHNIC][32] =
-{
- {
- /* Music */
- { 1, 1, 10, 2},
- { 2, 1, 10, 2},
- { 3, 2, 20, 3},
- { 4, 2, 20, 4},
- { 5, 2, 20, 6},
- { 7, 4, 30, 8},
- { 9, 3, 30, 10},
- { 10, 2, 30, 12},
-
- { 12, 3, 40, 20},
- { 15, 16, 42, 35},
- { 17, 18, 40, 25},
- { 18, 2, 45, 30},
- { 23, 8, 50, 38},
- { 28, 30, 50, 41},
- { 33, 35, 60, 42},
- { 38, 35, 70, 46},
-
- { 10, 4, 20, 13},
- { 22, 5, 30, 26},
- { 23, 3, 35, 27},
- { 26, 28, 37, 29},
- { 32, 37, 41, 36},
- { 33, 22, 43, 40},
- { 37, 35, 46, 42},
- { 45, 60, 50, 56},
-
- { 23, 18, 20, 23},
- { 30, 30, 30, 26},
- { 33, 65, 41, 30},
- { 37, 35, 43, 35},
- { 40, 30, 46, 50},
- { 42, 75, 50, 68},
- { 45, 58, 62, 73},
- { 49, 48, 70, 200}
- },
-
- {
- /* Hissatsu */
- { 1, 15, 0, 0},
- { 3, 10, 0, 0},
- { 6, 15, 0, 0},
- { 9, 8, 0, 0},
- { 10, 12, 0, 0},
- { 12, 25, 0, 0},
- { 14, 7, 0, 0},
- { 17, 20, 0, 0},
-
- { 19, 10, 0, 0},
- { 22, 20, 0, 0},
- { 24, 30, 0, 0},
- { 25, 10, 0, 0},
- { 27, 15, 0, 0},
- { 29, 45, 0, 0},
- { 32, 70, 0, 0},
- { 35, 50, 0, 0},
-
- { 18, 40, 0, 0},
- { 22, 22, 0, 0},
- { 24, 30, 0, 0},
- { 26, 35, 0, 0},
- { 30, 30, 0, 0},
- { 32, 60, 0, 0},
- { 36, 40, 0, 0},
- { 39, 80, 0, 0},
-
- { 26, 20, 0, 0},
- { 29, 40, 0, 0},
- { 31, 35, 0, 0},
- { 36, 80, 0, 0},
- { 39, 100, 0, 0},
- { 42, 110, 0, 0},
- { 45, 130, 0, 0},
- { 50, 255, 0, 0}
- },
-
- {
- /* Hex */
- { 1, 2, 20, 2},
- { 1, 2, 20, 2},
- { 3, 2, 30, 3},
- { 5, 3, 30, 4},
- { 7, 3, 40, 6},
- { 8, 10, 60, 8},
- { 9, 3, 30, 10},
- { 10, 5, 40, 12},
-
- { 12, 8, 40, 15},
- { 12, 9, 35, 15},
- { 15, 10, 50, 20},
- { 20, 12, 45, 35},
- { 25, 15, 50, 50},
- { 30, 12, 60, 70},
- { 35, 10, 60, 80},
- { 40, 16, 70, 100},
-
- { 15, 8, 20, 20},
- { 18, 15, 50, 20},
- { 22, 10, 65, 35},
- { 25, 28, 70, 50},
- { 28, 10, 70, 60},
- { 30, 20, 60, 60},
- { 36, 22, 70, 80},
- { 40, 28, 70, 100},
-
- { 5, 6, 35, 5},
- { 22, 24, 70, 40},
- { 25, 2, 65, 50},
- { 32, 20, 50, 70},
- { 35, 35, 70, 80},
- { 38, 32, 70, 90},
- { 42, 24, 70, 120},
- { 46, 45, 80, 200}
- },
-};
-
-
-/*!
* 魔法領域フラグ管理テーブル /
* Zangband uses this array instead of the spell flags table, as there
* are 5 realms of magic, each with 4 spellbooks and 8 spells per book -- TY