• R/O
  • HTTP
  • SSH
  • HTTPS

hengband: Commit

変愚蛮怒のメインリポジトリです


Commit MetaInfo

Revisionaa1cbef4410e28ccbd3718c504030acd90e54ffa (tree)
Time2019-05-25 19:08:23
Authordeskull <deskull@user...>
Commiterdeskull

Log Message

[Refactor] #37353 地形特性ID(FF_*)定義を feature.h へ移動.

Change Summary

Incremental Difference

--- a/src/defines.h
+++ b/src/defines.h
@@ -429,133 +429,6 @@
429429 #define ROW_MAP 0
430430 #define COL_MAP 12
431431
432-/*
433- * Number of feats we change to (Excluding default). Used in f_info.txt.
434- */
435-#define MAX_FEAT_STATES 8
436-
437-/*
438- * Feature flags - should be used instead of feature indexes unless generating.
439- * Originally from UnAngband, and modified into TR-like style in Hengband
440- */
441-
442-#define FF_LOS 0 /*!< 視界が通る地形である */
443-#define FF_PROJECT 1 /*!< 飛び道具が通過できる地形である */
444-#define FF_MOVE 2 /*!< 移動可能な地形である */
445-#define FF_PLACE 3 /*!< モンスター配置をしても良い地形である(cave_empty_bold/cave_empty_gridで利用) */
446-#define FF_DROP 4 /*!< アイテムを落としてよい地形である */
447-#define FF_SECRET 5 /*!< 隠し扉やトラップが潜んでいる地形である */
448-#define FF_NOTICE 6 /*!< 何か興味を引くものがある地形である(シフトキー+方向で走行中の時に止まる基準) */
449-#define FF_REMEMBER 7 /*!< 常に記憶対象となる地形である(記憶喪失時に忘れたりしなくなる) */
450-#define FF_OPEN 8 /*!< 開けるコマンドの対象となる地形である */
451-#define FF_CLOSE 9 /*!< 閉じるコマンドの対象となる地形である */
452-#define FF_BASH 10 /*!< 体当たりコマンドの対象となる地形である */
453-#define FF_SPIKE 11 /*!< くさびを打つコマンドの対象となる地形である */
454-#define FF_DISARM 12 /*!< 解除コマンドの対象となる地形である */
455-#define FF_STORE 13 /*!< 店舗の入口となる地形である */
456-#define FF_TUNNEL 14 /*!< 魔王変化などで掘り進められる地形である */
457-#define FF_MAY_HAVE_GOLD 15 /*!< 何か財宝を隠した可能性のある地形である?(f_infoに使用している地形なし) */
458-#define FF_HAS_GOLD 16 /*!< 財宝を含んだ地形である */
459-#define FF_HAS_ITEM 17 /*!< アイテムを含んだ地形である */
460-#define FF_DOOR 18 /*!< ドアのある地形である */
461-#define FF_TRAP 19 /*!< トラップのある地形である */
462-#define FF_STAIRS 20 /*!< 階段のある地形である */
463-#define FF_GLYPH 21 /*!< 守りのルーンが張られた地形である */
464-#define FF_LESS 22 /*!< 階上に通じる地形である */
465-#define FF_MORE 23 /*!< 階下に通じる地形である */
466-#define FF_AVOID_RUN 24 /*!< 自動移動機能時に障害として迂回すべき地形である */
467-#define FF_FLOOR 25 /*!< 床のある地形である */
468-#define FF_WALL 26 /*!< 壁のある地形である */
469-#define FF_PERMANENT 27 /*!< 絶対に破壊できない永久地形である */
470-/* #define FF_XXX00 28 未定義 */
471-/* #define FF_XXX01 29 未定義 */
472-/* #define FF_XXX02 30 未定義 */
473-#define FF_HIT_TRAP 31 /*!< トラップのある地形である(TRAPと常に重複している?) */
474-/* #define FF_BRIDGE 32 未使用 */
475-/* #define FF_RIVER 33 未使用 */
476-/* #define FF_LAKE 34 未使用 */
477-/* #define FF_BRIDGED 35 未使用 */
478-/* #define FF_COVERED 36 未使用 */
479-#define FF_GLOW 37 /*!< 常に光っている地形である */
480-#define FF_ENSECRET 38 /*!< 不明(f_info.txt上で利用している地形がない) */
481-#define FF_WATER 39 /*!< 水のある地形である */
482-#define FF_LAVA 40 /*!< 溶岩のある地形である */
483-#define FF_SHALLOW 41 /*!< 浅い地形である */
484-#define FF_DEEP 42 /*!< 深い地形である */
485-#define FF_POISON_PUDDLE 43 /*!< 毒溜まりがある */
486-#define FF_HURT_ROCK 44 /*!< 岩石溶解の対象となる地形である */
487-/* #define FF_HURT_FIRE 45 */ /*!< 未使用 */
488-/* #define FF_HURT_COLD 46 */ /*!< 未使用 */
489-/* #define FF_HURT_ACID 47 */ /*!< 未使用 */
490-#define FF_COLD_PUDDLE 48 /*!< 冷気溜まりがある */
491-#define FF_ACID_PUDDLE 49 /*!< 酸溜まりがある */
492-/* #define FF_OIL 50 */ /*!< 未使用 */
493-#define FF_ELEC_PUDDLE 51 /*!< 接地部が帯電している */
494-/* #define FF_CAN_CLIMB 52 */ /*!< 未使用 */
495-#define FF_CAN_FLY 53 /*!< 飛行可能な地形である */
496-#define FF_CAN_SWIM 54 /*!< 泳ぐことが可能な地形である */
497-#define FF_CAN_PASS 55 /*!< 通過可能な地形である */
498-/* #define FF_CAN_OOZE 56 */ /*!< 未使用 */
499-#define FF_CAN_DIG 57 /*!< 掘削コマンドの対象となる地形である */
500-/* #define FF_HIDE_ITEM 58 未使用 */
501-/* #define FF_HIDE_SNEAK 59 未使用 */
502-/* #define FF_HIDE_SWIM 60 未使用 */
503-/* #define FF_HIDE_DIG 61 未使用 */
504-/* #define FF_KILL_HUGE 62 未使用 */
505-/* #define FF_KILL_MOVE 63 未使用 */
506-/* #define FF_PICK_TRAP 64 未使用 */
507-/* #define FF_PICK_DOOR 65 未使用 */
508-/* #define FF_ALLOC 66 未使用 */
509-/* #define FF_CHEST 67 未使用 */
510-/* #define FF_DROP_1D2 68 未使用 */
511-/* #define FF_DROP_2D2 69 未使用 */
512-/* #define FF_DROP_GOOD 70 未使用 */
513-/* #define FF_DROP_GREAT 71 未使用 */
514-/* #define FF_HURT_POIS 72 未使用 */
515-/* #define FF_HURT_ELEC 73 未使用 */
516-/* #define FF_HURT_WATER 74 未使用 */
517-/* #define FF_HURT_BWATER 75 未使用 */
518-/* #define FF_USE_FEAT 76 未使用 */
519-/* #define FF_GET_FEAT 77 未使用 */
520-/* #define FF_GROUND 78 未使用 */
521-/* #define FF_OUTSIDE 79 未使用 */
522-/* #define FF_EASY_HIDE 80 未使用 */
523-/* #define FF_EASY_CLIMB 81 未使用 */
524-/* #define FF_MUST_CLIMB 82 未使用 */
525-#define FF_TREE 83 /*!< 木の生えた地形である */
526-/* #define FF_NEED_TREE 84 未使用 */
527-/* #define FF_BLOOD 85 未使用 */
528-/* #define FF_DUST 86 未使用 */
529-/* #define FF_SLIME 87 未使用 */
530-#define FF_PLANT 88 /*!< 植物の生えた地形である */
531-/* #define FF_XXX2 89 未定義 */
532-/* #define FF_INSTANT 90 未使用 */
533-/* #define FF_EXPLODE 91 未使用 */
534-/* #define FF_TIMED 92 未使用 */
535-/* #define FF_ERUPT 93 未使用 */
536-/* #define FF_STRIKE 94 未使用 */
537-/* #define FF_SPREAD 95 未使用 */
538-#define FF_SPECIAL 96 /*!< クエストやダンジョンに関わる特別な地形である */
539-#define FF_HURT_DISI 97 /*!< 分解属性の対象となる地形である */
540-#define FF_QUEST_ENTER 98 /*!< クエストの入り口である */
541-#define FF_QUEST_EXIT 99 /*!< クエストの出口である */
542-#define FF_QUEST 100 /*!< クエストに関する地形である */
543-#define FF_SHAFT 101 /*!< 坑道である。(2階層移動する階段である) */
544-#define FF_MOUNTAIN 102 /*!< ダンジョンの山地形である */
545-#define FF_BLDG 103 /*!< 施設の入り口である */
546-#define FF_MINOR_GLYPH 104 /*!< 爆発のルーンのある地形である */
547-#define FF_PATTERN 105 /*!< パターンのある地形である */
548-#define FF_TOWN 106 /*!< 広域マップ用の街がある地形である */
549-#define FF_ENTRANCE 107 /*!< 広域マップ用のダンジョンがある地形である */
550-#define FF_MIRROR 108 /*!< 鏡使いの鏡が張られた地形である */
551-#define FF_UNPERM 109 /*!< 破壊不能な地形である(K:フラグ向け?) */
552-#define FF_TELEPORTABLE 110 /*!< テレポート先の対象となる地形である */
553-#define FF_CONVERT 111 /*!< 地形生成処理中の疑似フラグ */
554-#define FF_GLASS 112 /*!< ガラス製の地形である */
555-
556-
557-#define FF_FLAG_MAX 113
558-#define FF_FLAG_SIZE (1 + ((FF_FLAG_MAX - 1) / 32))
559432
560433 /* Which features are dynamic */
561434 #define have_dynamic_flags(ARRAY) \
--- a/src/feature.h
+++ b/src/feature.h
@@ -1,5 +1,132 @@
11 #pragma once
22
3+/*
4+ * Number of feats we change to (Excluding default). Used in f_info.txt.
5+ */
6+#define MAX_FEAT_STATES 8
7+
8+ /*
9+ * Feature flags - should be used instead of feature indexes unless generating.
10+ * Originally from UnAngband, and modified into TR-like style in Hengband
11+ */
12+
13+#define FF_LOS 0 /*!< 視界が通る地形である */
14+#define FF_PROJECT 1 /*!< 飛び道具が通過できる地形である */
15+#define FF_MOVE 2 /*!< 移動可能な地形である */
16+#define FF_PLACE 3 /*!< モンスター配置をしても良い地形である(cave_empty_bold/cave_empty_gridで利用) */
17+#define FF_DROP 4 /*!< アイテムを落としてよい地形である */
18+#define FF_SECRET 5 /*!< 隠し扉やトラップが潜んでいる地形である */
19+#define FF_NOTICE 6 /*!< 何か興味を引くものがある地形である(シフトキー+方向で走行中の時に止まる基準) */
20+#define FF_REMEMBER 7 /*!< 常に記憶対象となる地形である(記憶喪失時に忘れたりしなくなる) */
21+#define FF_OPEN 8 /*!< 開けるコマンドの対象となる地形である */
22+#define FF_CLOSE 9 /*!< 閉じるコマンドの対象となる地形である */
23+#define FF_BASH 10 /*!< 体当たりコマンドの対象となる地形である */
24+#define FF_SPIKE 11 /*!< くさびを打つコマンドの対象となる地形である */
25+#define FF_DISARM 12 /*!< 解除コマンドの対象となる地形である */
26+#define FF_STORE 13 /*!< 店舗の入口となる地形である */
27+#define FF_TUNNEL 14 /*!< 魔王変化などで掘り進められる地形である */
28+#define FF_MAY_HAVE_GOLD 15 /*!< 何か財宝を隠した可能性のある地形である?(f_infoに使用している地形なし) */
29+#define FF_HAS_GOLD 16 /*!< 財宝を含んだ地形である */
30+#define FF_HAS_ITEM 17 /*!< アイテムを含んだ地形である */
31+#define FF_DOOR 18 /*!< ドアのある地形である */
32+#define FF_TRAP 19 /*!< トラップのある地形である */
33+#define FF_STAIRS 20 /*!< 階段のある地形である */
34+#define FF_GLYPH 21 /*!< 守りのルーンが張られた地形である */
35+#define FF_LESS 22 /*!< 階上に通じる地形である */
36+#define FF_MORE 23 /*!< 階下に通じる地形である */
37+#define FF_AVOID_RUN 24 /*!< 自動移動機能時に障害として迂回すべき地形である */
38+#define FF_FLOOR 25 /*!< 床のある地形である */
39+#define FF_WALL 26 /*!< 壁のある地形である */
40+#define FF_PERMANENT 27 /*!< 絶対に破壊できない永久地形である */
41+ /* #define FF_XXX00 28 未定義 */
42+ /* #define FF_XXX01 29 未定義 */
43+ /* #define FF_XXX02 30 未定義 */
44+#define FF_HIT_TRAP 31 /*!< トラップのある地形である(TRAPと常に重複している?) */
45+/* #define FF_BRIDGE 32 未使用 */
46+/* #define FF_RIVER 33 未使用 */
47+/* #define FF_LAKE 34 未使用 */
48+/* #define FF_BRIDGED 35 未使用 */
49+/* #define FF_COVERED 36 未使用 */
50+#define FF_GLOW 37 /*!< 常に光っている地形である */
51+#define FF_ENSECRET 38 /*!< 不明(f_info.txt上で利用している地形がない) */
52+#define FF_WATER 39 /*!< 水のある地形である */
53+#define FF_LAVA 40 /*!< 溶岩のある地形である */
54+#define FF_SHALLOW 41 /*!< 浅い地形である */
55+#define FF_DEEP 42 /*!< 深い地形である */
56+#define FF_POISON_PUDDLE 43 /*!< 毒溜まりがある */
57+#define FF_HURT_ROCK 44 /*!< 岩石溶解の対象となる地形である */
58+/* #define FF_HURT_FIRE 45 */ /*!< 未使用 */
59+/* #define FF_HURT_COLD 46 */ /*!< 未使用 */
60+/* #define FF_HURT_ACID 47 */ /*!< 未使用 */
61+#define FF_COLD_PUDDLE 48 /*!< 冷気溜まりがある */
62+#define FF_ACID_PUDDLE 49 /*!< 酸溜まりがある */
63+/* #define FF_OIL 50 */ /*!< 未使用 */
64+#define FF_ELEC_PUDDLE 51 /*!< 接地部が帯電している */
65+/* #define FF_CAN_CLIMB 52 */ /*!< 未使用 */
66+#define FF_CAN_FLY 53 /*!< 飛行可能な地形である */
67+#define FF_CAN_SWIM 54 /*!< 泳ぐことが可能な地形である */
68+#define FF_CAN_PASS 55 /*!< 通過可能な地形である */
69+/* #define FF_CAN_OOZE 56 */ /*!< 未使用 */
70+#define FF_CAN_DIG 57 /*!< 掘削コマンドの対象となる地形である */
71+/* #define FF_HIDE_ITEM 58 未使用 */
72+/* #define FF_HIDE_SNEAK 59 未使用 */
73+/* #define FF_HIDE_SWIM 60 未使用 */
74+/* #define FF_HIDE_DIG 61 未使用 */
75+/* #define FF_KILL_HUGE 62 未使用 */
76+/* #define FF_KILL_MOVE 63 未使用 */
77+/* #define FF_PICK_TRAP 64 未使用 */
78+/* #define FF_PICK_DOOR 65 未使用 */
79+/* #define FF_ALLOC 66 未使用 */
80+/* #define FF_CHEST 67 未使用 */
81+/* #define FF_DROP_1D2 68 未使用 */
82+/* #define FF_DROP_2D2 69 未使用 */
83+/* #define FF_DROP_GOOD 70 未使用 */
84+/* #define FF_DROP_GREAT 71 未使用 */
85+/* #define FF_HURT_POIS 72 未使用 */
86+/* #define FF_HURT_ELEC 73 未使用 */
87+/* #define FF_HURT_WATER 74 未使用 */
88+/* #define FF_HURT_BWATER 75 未使用 */
89+/* #define FF_USE_FEAT 76 未使用 */
90+/* #define FF_GET_FEAT 77 未使用 */
91+/* #define FF_GROUND 78 未使用 */
92+/* #define FF_OUTSIDE 79 未使用 */
93+/* #define FF_EASY_HIDE 80 未使用 */
94+/* #define FF_EASY_CLIMB 81 未使用 */
95+/* #define FF_MUST_CLIMB 82 未使用 */
96+#define FF_TREE 83 /*!< 木の生えた地形である */
97+/* #define FF_NEED_TREE 84 未使用 */
98+/* #define FF_BLOOD 85 未使用 */
99+/* #define FF_DUST 86 未使用 */
100+/* #define FF_SLIME 87 未使用 */
101+#define FF_PLANT 88 /*!< 植物の生えた地形である */
102+/* #define FF_XXX2 89 未定義 */
103+/* #define FF_INSTANT 90 未使用 */
104+/* #define FF_EXPLODE 91 未使用 */
105+/* #define FF_TIMED 92 未使用 */
106+/* #define FF_ERUPT 93 未使用 */
107+/* #define FF_STRIKE 94 未使用 */
108+/* #define FF_SPREAD 95 未使用 */
109+#define FF_SPECIAL 96 /*!< クエストやダンジョンに関わる特別な地形である */
110+#define FF_HURT_DISI 97 /*!< 分解属性の対象となる地形である */
111+#define FF_QUEST_ENTER 98 /*!< クエストの入り口である */
112+#define FF_QUEST_EXIT 99 /*!< クエストの出口である */
113+#define FF_QUEST 100 /*!< クエストに関する地形である */
114+#define FF_SHAFT 101 /*!< 坑道である。(2階層移動する階段である) */
115+#define FF_MOUNTAIN 102 /*!< ダンジョンの山地形である */
116+#define FF_BLDG 103 /*!< 施設の入り口である */
117+#define FF_MINOR_GLYPH 104 /*!< 爆発のルーンのある地形である */
118+#define FF_PATTERN 105 /*!< パターンのある地形である */
119+#define FF_TOWN 106 /*!< 広域マップ用の街がある地形である */
120+#define FF_ENTRANCE 107 /*!< 広域マップ用のダンジョンがある地形である */
121+#define FF_MIRROR 108 /*!< 鏡使いの鏡が張られた地形である */
122+#define FF_UNPERM 109 /*!< 破壊不能な地形である(K:フラグ向け?) */
123+#define FF_TELEPORTABLE 110 /*!< テレポート先の対象となる地形である */
124+#define FF_CONVERT 111 /*!< 地形生成処理中の疑似フラグ */
125+#define FF_GLASS 112 /*!< ガラス製の地形である */
126+
127+#define FF_FLAG_MAX 113
128+#define FF_FLAG_SIZE (1 + ((FF_FLAG_MAX - 1) / 32))
129+
3130 /*!
4131 * @struct feature_state
5132 * @brief 地形状態変化指定構造体 / Feature state structure
Show on old repository browser