• R/O
  • HTTP
  • SSH
  • HTTPS

hengband: Commit

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


Commit MetaInfo

Revisione3bff5f6b733779ca120910b782f01b9cf0536de (tree)
Time2019-04-15 23:48:06
Authordeskull <deskull@user...>
Commiterdeskull

Log Message

[Refactor] #37353 RF?_* を monster_race 構造体へ移動。

Change Summary

Incremental Difference

--- a/src/defines.h
+++ b/src/defines.h
@@ -2516,339 +2516,6 @@
25162516 #define RBE_STUN 35 /*!< モンスターの攻撃効果: 朦朧とさせる*/
25172517
25182518
2519-/*** Monster flag values (hard-coded) ***/
2520-
2521-
2522-/*
2523- * New monster race bit flags
2524- */
2525-#define RF1_UNIQUE 0x00000001 /*!< モンスター特性: ユニーク / Unique Monster */
2526-#define RF1_QUESTOR 0x00000002 /*!< モンスター特性: クエストモンスター / Quest Monster */
2527-#define RF1_MALE 0x00000004 /*!< モンスター特性: 男性 / Male gender */
2528-#define RF1_FEMALE 0x00000008 /*!< モンスター特性: 女性 / Female gender */
2529-#define RF1_CHAR_CLEAR 0x00000010 /*!< モンスター特性: シンボルが完全に透明 / Absorbs symbol */
2530-#define RF1_SHAPECHANGER 0x00000020 /*!< モンスター特性: シンボルアルファベットがランダムになる / TY: shapechanger */
2531-#define RF1_ATTR_CLEAR 0x00000040 /*!< モンスター特性: シンボルカラーが透明色になる(地形と同じ色になる) / Absorbs color */
2532-#define RF1_ATTR_MULTI 0x00000080 /*!< モンスター特性: シンボルカラーがランダムに変化する(基本7色) / Changes color */
2533-#define RF1_FORCE_DEPTH 0x00000100 /*!< モンスター特性: 指定階未満では生成されない / Start at "correct" depth */
2534-#define RF1_FORCE_MAXHP 0x00000200 /*!< モンスター特性: 通常生成時必ずHPがダイス最大値になる / Start with max hitpoints */
2535-#define RF1_FORCE_SLEEP 0x00000400 /*!< モンスター特性: 通常生成時必ず寝ている / Start out sleeping */
2536-#define RF1_FORCE_EXTRA 0x00000800 /*!< モンスター特性: (未使用) / Start out something */
2537-#define RF1_ATTR_SEMIRAND 0x00001000 /*!< モンスター特性: シンボルカラーがランダムに変化する(15色) / Color is determined semi-randomly */
2538-#define RF1_FRIENDS 0x00002000 /*!< モンスター特性: 同種の友軍を用意している / Arrive with some friends */
2539-#define RF1_ESCORT 0x00004000 /*!< モンスター特性: 護衛を用意している/ Arrive with an escort */
2540-#define RF1_ESCORTS 0x00008000 /*!< モンスター特性: さらに大量の護衛を用意している / Arrive with some escorts */
2541-#define RF1_NEVER_BLOW 0x00010000 /*!< モンスター特性: 打撃を一切行わない / Never make physical blow */
2542-#define RF1_NEVER_MOVE 0x00020000 /*!< モンスター特性: 移動を一切行わない / Never make physical move */
2543-#define RF1_RAND_25 0x00040000 /*!< モンスター特性: ランダムに移動する確率+25%/ Moves randomly (25%) */
2544-#define RF1_RAND_50 0x00080000 /*!< モンスター特性: ランダムに移動する確率+50%/ Moves randomly (50%) */
2545-#define RF1_ONLY_GOLD 0x00100000 /*!< モンスター特性: 財宝しか落とさない / Drop only gold */
2546-#define RF1_ONLY_ITEM 0x00200000 /*!< モンスター特性: アイテムしか落とさない / Drop only items */
2547-#define RF1_DROP_60 0x00400000 /*!< モンスター特性: 落とすアイテム数60%で+1/ Drop an item/gold (60%) */
2548-#define RF1_DROP_90 0x00800000 /*!< モンスター特性: 落とすアイテム数90%で+1 / Drop an item/gold (90%) */
2549-#define RF1_DROP_1D2 0x01000000 /*!< モンスター特性: 落とすアイテム数+1d2 / Drop 1d2 items/gold */
2550-#define RF1_DROP_2D2 0x02000000 /*!< モンスター特性: 落とすアイテム数+2d2 / Drop 2d2 items/gold */
2551-#define RF1_DROP_3D2 0x04000000 /*!< モンスター特性: 落とすアイテム数+3d2 / Drop 3d2 items/gold */
2552-#define RF1_DROP_4D2 0x08000000 /*!< モンスター特性: 落とすアイテム数+4d2 / Drop 4d2 items/gold */
2553-#define RF1_DROP_GOOD 0x10000000 /*!< モンスター特性: 必ず上質品をドロップする / Drop good items */
2554-#define RF1_DROP_GREAT 0x20000000 /*!< モンスター特性: 必ず高級品をドロップする / Drop great items */
2555-#define RF1_XXX2 0x40000000 /*!< モンスター特性: 未使用 / XXX */
2556-#define RF1_XXX3 0x80000000 /*!< モンスター特性: 未使用 / XXX */
2557-
2558-/*
2559- * New monster race bit flags
2560- */
2561-#define RF2_STUPID 0x00000001 /*!< モンスター特性: 愚かな行動を取る / Monster is stupid */
2562-#define RF2_SMART 0x00000002 /*!< モンスター特性: 賢い行動を取る / Monster is smart */
2563-#define RF2_CAN_SPEAK 0x00000004 /*!< モンスター特性: 台詞をしゃべる / TY: can speak */
2564-#define RF2_REFLECTING 0x00000008 /*!< モンスター特性: 矢やボルト魔法を反射する / Reflects bolts */
2565-#define RF2_INVISIBLE 0x00000010 /*!< モンスター特性: 透明視力がないと見えない / Monster avoids vision */
2566-#define RF2_COLD_BLOOD 0x00000020 /*!< モンスター特性: 冷血動物である / Monster avoids infra */
2567-#define RF2_EMPTY_MIND 0x00000040 /*!< モンスター特性: 知性を持たない(テレパシー回避) / Monster avoids telepathy */
2568-#define RF2_WEIRD_MIND 0x00000080 /*!< モンスター特性: 異質な知性(テレパシーで感知づらい) / Monster avoids telepathy? */
2569-#define RF2_MULTIPLY 0x00000100 /*!< モンスター特性: 増殖する / Monster reproduces */
2570-#define RF2_REGENERATE 0x00000200 /*!< モンスター特性: 急激に回復する / Monster regenerates */
2571-#define RF2_CHAR_MULTI 0x00000400 /*!< モンスター特性: 未使用 / (Not implemented) */
2572-#define RF2_ATTR_ANY 0x00000800 /*!< モンスター特性: ATTR_MULTIの色数が増える / TY: Attr_any */
2573-#define RF2_POWERFUL 0x00001000 /*!< モンスター特性: 強力に魔法をあやつる / Monster has strong breath */
2574-#define RF2_ELDRITCH_HORROR 0x00002000 /*!< モンスター特性: 狂気を呼び起こす / Sanity-blasting horror */
2575-#define RF2_AURA_FIRE 0x00004000 /*!< モンスター特性: 火炎のオーラを持つ / Burns in melee */
2576-#define RF2_AURA_ELEC 0x00008000 /*!< モンスター特性: 電撃のオーラを持つ / Shocks in melee */
2577-#define RF2_OPEN_DOOR 0x00010000 /*!< モンスター特性: ドアを開けることができる / Monster can open doors */
2578-#define RF2_BASH_DOOR 0x00020000 /*!< モンスター特性: ドアを破壊することができる / Monster can bash doors */
2579-#define RF2_PASS_WALL 0x00040000 /*!< モンスター特性: 壁を抜けることができる / Monster can pass walls */
2580-#define RF2_KILL_WALL 0x00080000 /*!< モンスター特性: 壁を破壊して進む / Monster can destroy walls */
2581-#define RF2_MOVE_BODY 0x00100000 /*!< モンスター特性: 道中の弱いモンスターを押しのけることができる / Monster can move monsters */
2582-#define RF2_KILL_BODY 0x00200000 /*!< モンスター特性: 道中の弱いモンスターを殺して進む / Monster can kill monsters */
2583-#define RF2_TAKE_ITEM 0x00400000 /*!< モンスター特性: 道中のアイテムを拾う / Monster can pick up items */
2584-#define RF2_KILL_ITEM 0x00800000 /*!< モンスター特性: 道中のアイテムを破壊する / Monster can crush items */
2585-#define RF2_XXX1 0x01000000 /*!< モンスター特性: 未使用 / XXX */
2586-#define RF2_XXX2 0x02000000 /*!< モンスター特性: 未使用 / XXX */
2587-#define RF2_XXX3 0x04000000 /*!< モンスター特性: 未使用 / XXX */
2588-#define RF2_XXX4 0x08000000 /*!< モンスター特性: 未使用 / XXX */
2589-#define RF2_XXX5 0x10000000 /*!< モンスター特性: 未使用 / XXX */
2590-#define RF2_XXX6 0x20000000 /*!< モンスター特性: 未使用 / XXX */
2591-#define RF2_HUMAN 0x40000000 /*!< モンスター特性: 人間 / Human */
2592-#define RF2_QUANTUM 0x80000000 /*!< モンスター特性: 量子的な振る舞いをする / Monster has quantum behavior */
2593-
2594-/*
2595- * New monster race bit flags
2596- */
2597-#define RF3_ORC 0x00000001 /*!< モンスター特性: オーク / Orc */
2598-#define RF3_TROLL 0x00000002 /*!< モンスター特性: トロル / Troll */
2599-#define RF3_GIANT 0x00000004 /*!< モンスター特性: 巨人 / Giant */
2600-#define RF3_DRAGON 0x00000008 /*!< モンスター特性: ドラゴン / Dragon */
2601-#define RF3_DEMON 0x00000010 /*!< モンスター特性: 悪魔 / Demon */
2602-#define RF3_UNDEAD 0x00000020 /*!< モンスター特性: アンデッド / Undead */
2603-#define RF3_EVIL 0x00000040 /*!< モンスター特性: 邪悪 / Evil */
2604-#define RF3_ANIMAL 0x00000080 /*!< モンスター特性: 動物 / Animal */
2605-#define RF3_AMBERITE 0x00000100 /*!< モンスター特性: アンバーの血族 / TY: Amberite */
2606-#define RF3_GOOD 0x00000200 /*!< モンスター特性: 善良 / Good */
2607-#define RF3_AURA_COLD 0x00000400 /*!< モンスター特性: 冷気オーラ / Freezes in melee */
2608-#define RF3_NONLIVING 0x00000800 /*!< モンスター特性: 無生物 / TY: Non-Living (?) */
2609-#define RF3_HURT_LITE 0x00001000 /*!< モンスター特性: 通常の光(GF_WEAK_LITE)でダメージを受ける / Hurt by lite */
2610-#define RF3_HURT_ROCK 0x00002000 /*!< モンスター特性: 岩石溶解(GF_KILL_WALL)でダメージを受ける / Hurt by rock remover */
2611-#define RF3_HURT_FIRE 0x00004000 /*!< モンスター特性: 火炎が弱点 / Hurt badly by fire */
2612-#define RF3_HURT_COLD 0x00008000 /*!< モンスター特性: 冷気が弱点 / Hurt badly by cold */
2613-#define RF3_ANGEL 0x00010000 /*!< モンスター特性: 天使 / ANGEL */
2614-#define RF3_XXX17 0x00020000 /*!< モンスター特性: 未使用 / XXX */
2615-#define RF3_XXX18 0x00040000 /*!< モンスター特性: 未使用 / XXX */
2616-#define RF3_XXX19 0x00080000 /*!< モンスター特性: 未使用 / XXX */
2617-#define RF3_XXX20 0x00100000 /*!< モンスター特性: 未使用 / XXX */
2618-#define RF3_XXX21 0x00200000 /*!< モンスター特性: 未使用 / XXX */
2619-#define RF3_XXX22 0x00400000 /*!< モンスター特性: 未使用 / XXX */
2620-#define RF3_XXX23 0x00800000 /*!< モンスター特性: 未使用 / XXX */
2621-#define RF3_XXX24 0x01000000 /*!< モンスター特性: 未使用 / XXX */
2622-#define RF3_XXX25 0x02000000 /*!< モンスター特性: 未使用 / XXX */
2623-#define RF3_XXX26 0x04000000 /*!< モンスター特性: 未使用 / XXX */
2624-#define RF3_XXX27 0x08000000 /*!< モンスター特性: 未使用 / XXX */
2625-#define RF3_NO_FEAR 0x10000000 /*!< モンスター特性: 恐怖しない / Cannot be scared */
2626-#define RF3_NO_STUN 0x20000000 /*!< モンスター特性: 朦朧としない / Cannot be stunned */
2627-#define RF3_NO_CONF 0x40000000 /*!< モンスター特性: 混乱しない / Cannot be confused and resist confusion */
2628-#define RF3_NO_SLEEP 0x80000000 /*!< モンスター特性: 眠らない / Cannot be slept */
2629-
2630-/*
2631- * New monster race bit flags
2632- */
2633-#define RF4_SHRIEK 0x00000001 /*!< モンスター能力: 叫ぶ / Shriek for help */
2634-#define RF4_XXX1 0x00000002 /*!< モンスター能力: 未使用 / XXX */
2635-#define RF4_DISPEL 0x00000004 /*!< モンスター能力: 魔力消去 / Dispel magic */
2636-#define RF4_ROCKET 0x00000008 /*!< モンスター能力: ロケット / TY: Rocket */
2637-#define RF4_SHOOT 0x00000010 /*!< モンスター能力: 射撃/ Fire missiles */
2638-#define RF4_XXX2 0x00000020 /*!< モンスター能力: 未使用 / XXX */
2639-#define RF4_XXX3 0x00000040 /*!< モンスター能力: 未使用 / XXX */
2640-#define RF4_XXX4 0x00000080 /*!< モンスター能力: 未使用 / XXX */
2641-#define RF4_BR_ACID 0x00000100 /*!< モンスター能力: 酸のブレス / Breathe Acid */
2642-#define RF4_BR_ELEC 0x00000200 /*!< モンスター能力: 電撃のブレス / Breathe Elec */
2643-#define RF4_BR_FIRE 0x00000400 /*!< モンスター能力: 火炎のブレス / Breathe Fire */
2644-#define RF4_BR_COLD 0x00000800 /*!< モンスター能力: 冷気のブレス / Breathe Cold */
2645-#define RF4_BR_POIS 0x00001000 /*!< モンスター能力: 毒のブレス / Breathe Poison */
2646-#define RF4_BR_NETH 0x00002000 /*!< モンスター能力: 地獄のブレス / Breathe Nether */
2647-#define RF4_BR_LITE 0x00004000 /*!< モンスター能力: 閃光のブレス / Breathe Lite */
2648-#define RF4_BR_DARK 0x00008000 /*!< モンスター能力: 暗黒のブレス / Breathe Dark */
2649-#define RF4_BR_CONF 0x00010000 /*!< モンスター能力: 混乱のブレス / Breathe Confusion */
2650-#define RF4_BR_SOUN 0x00020000 /*!< モンスター能力: 轟音のブレス / Breathe Sound */
2651-#define RF4_BR_CHAO 0x00040000 /*!< モンスター能力: カオスのブレス / Breathe Chaos */
2652-#define RF4_BR_DISE 0x00080000 /*!< モンスター能力: 劣化のブレス / Breathe Disenchant */
2653-#define RF4_BR_NEXU 0x00100000 /*!< モンスター能力: 因果混乱のブレス / Breathe Nexus */
2654-#define RF4_BR_TIME 0x00200000 /*!< モンスター能力: 時間逆転のブレス / Breathe Time */
2655-#define RF4_BR_INER 0x00400000 /*!< モンスター能力: 遅鈍のブレス / Breathe Inertia */
2656-#define RF4_BR_GRAV 0x00800000 /*!< モンスター能力: 重力のブレス / Breathe Gravity */
2657-#define RF4_BR_SHAR 0x01000000 /*!< モンスター能力: 破片のブレス / Breathe Shards */
2658-#define RF4_BR_PLAS 0x02000000 /*!< モンスター能力: プラズマのブレス / Breathe Plasma */
2659-#define RF4_BR_WALL 0x04000000 /*!< モンスター能力: フォースのブレス / Breathe Force */
2660-#define RF4_BR_MANA 0x08000000 /*!< モンスター能力: 魔力のブレス / Breathe Mana */
2661-#define RF4_BA_NUKE 0x10000000 /*!< モンスター能力: 放射能球 / TY: Nuke Ball */
2662-#define RF4_BR_NUKE 0x20000000 /*!< モンスター能力: 放射性廃棄物のブレス / TY: Toxic Breath */
2663-#define RF4_BA_CHAO 0x40000000 /*!< モンスター能力: ログルス球 / TY: Logrus Ball */
2664-#define RF4_BR_DISI 0x80000000 /*!< モンスター能力: 分解のブレス / Breathe Disintegration */
2665-
2666-/*
2667- * New monster race bit flags
2668- */
2669-#define RF5_BA_ACID 0x00000001 /*!< モンスター能力: アシッド・ボール / Acid Ball */
2670-#define RF5_BA_ELEC 0x00000002 /*!< モンスター能力: サンダー・ボール / Elec Ball */
2671-#define RF5_BA_FIRE 0x00000004 /*!< モンスター能力: ファイア・ボール / Fire Ball */
2672-#define RF5_BA_COLD 0x00000008 /*!< モンスター能力: アイス・ボール / Cold Ball */
2673-#define RF5_BA_POIS 0x00000010 /*!< モンスター能力: 悪臭雲 / Poison Ball */
2674-#define RF5_BA_NETH 0x00000020 /*!< モンスター能力: 地獄球 / Nether Ball */
2675-#define RF5_BA_WATE 0x00000040 /*!< モンスター能力: ウォーター・ボール / Water Ball */
2676-#define RF5_BA_MANA 0x00000080 /*!< モンスター能力: 魔力の嵐 / Mana Storm */
2677-#define RF5_BA_DARK 0x00000100 /*!< モンスター能力: 暗黒の嵐 / Darkness Storm */
2678-#define RF5_DRAIN_MANA 0x00000200 /*!< モンスター能力: 魔力吸収 / Drain Mana */
2679-#define RF5_MIND_BLAST 0x00000400 /*!< モンスター能力: 精神攻撃 / Blast Mind */
2680-#define RF5_BRAIN_SMASH 0x00000800 /*!< モンスター能力: 脳攻撃 / Smash Brain */
2681-#define RF5_CAUSE_1 0x00001000 /*!< モンスター能力: 軽傷の呪い / Cause Light Wound */
2682-#define RF5_CAUSE_2 0x00002000 /*!< モンスター能力: 重症の頃い / Cause Serious Wound */
2683-#define RF5_CAUSE_3 0x00004000 /*!< モンスター能力: 致命傷の呪い / Cause Critical Wound */
2684-#define RF5_CAUSE_4 0x00008000 /*!< モンスター能力: 秘孔を突く / Cause Mortal Wound */
2685-#define RF5_BO_ACID 0x00010000 /*!< モンスター能力: アシッド・ボルト / Acid Bolt */
2686-#define RF5_BO_ELEC 0x00020000 /*!< モンスター能力: サンダー・ボルト / Elec Bolt */
2687-#define RF5_BO_FIRE 0x00040000 /*!< モンスター能力: ファイア・ボルト / Fire Bolt */
2688-#define RF5_BO_COLD 0x00080000 /*!< モンスター能力: アイス・ボルト / Cold Bolt */
2689-#define RF5_BA_LITE 0x00100000 /*!< モンスター能力: スター・バースト / StarBurst */
2690-#define RF5_BO_NETH 0x00200000 /*!< モンスター能力: 地獄の矢 / Nether Bolt */
2691-#define RF5_BO_WATE 0x00400000 /*!< モンスター能力: ウォーター・ボルト / Water Bolt */
2692-#define RF5_BO_MANA 0x00800000 /*!< モンスター能力: 魔力の矢 / Mana Bolt */
2693-#define RF5_BO_PLAS 0x01000000 /*!< モンスター能力: プラズマ・ボルト / Plasma Bolt */
2694-#define RF5_BO_ICEE 0x02000000 /*!< モンスター能力: 極寒の矢 / Ice Bolt */
2695-#define RF5_MISSILE 0x04000000 /*!< モンスター能力: マジック・ミサイルt / Magic Missile */
2696-#define RF5_SCARE 0x08000000 /*!< モンスター能力: 恐慌 / Frighten Player */
2697-#define RF5_BLIND 0x10000000 /*!< モンスター能力: 盲目 / Blind Player */
2698-#define RF5_CONF 0x20000000 /*!< モンスター能力: 混乱 / Confuse Player */
2699-#define RF5_SLOW 0x40000000 /*!< モンスター能力: 減速 / Slow Player */
2700-#define RF5_HOLD 0x80000000 /*!< モンスター能力: 麻痺 / Paralyze Player */
2701-
2702-/*
2703- * New monster race bit flags
2704- */
2705-#define RF6_HASTE 0x00000001 /* Speed self */
2706-#define RF6_HAND_DOOM 0x00000002 /* Hand of Doom */
2707-#define RF6_HEAL 0x00000004 /* Heal self */
2708-#define RF6_INVULNER 0x00000008 /* INVULNERABILITY! */
2709-#define RF6_BLINK 0x00000010 /* Teleport Short */
2710-#define RF6_TPORT 0x00000020 /* Teleport Long */
2711-#define RF6_WORLD 0x00000040 /* world */
2712-#define RF6_SPECIAL 0x00000080 /* Special Attack */
2713-#define RF6_TELE_TO 0x00000100 /* Move player to monster */
2714-#define RF6_TELE_AWAY 0x00000200 /* Move player far away */
2715-#define RF6_TELE_LEVEL 0x00000400 /* Move player vertically */
2716-#define RF6_PSY_SPEAR 0x00000800 /* Psyco-spear */
2717-#define RF6_DARKNESS 0x00001000 /* Create Darkness */
2718-#define RF6_TRAPS 0x00002000 /* Create Traps */
2719-#define RF6_FORGET 0x00004000 /* Cause amnesia */
2720-#define RF6_RAISE_DEAD 0x00008000 /* Raise Dead */
2721-#define RF6_S_KIN 0x00010000 /* Summon "kin" */
2722-#define RF6_S_CYBER 0x00020000 /* Summon Cyberdemons! */
2723-#define RF6_S_MONSTER 0x00040000 /* Summon Monster */
2724-#define RF6_S_MONSTERS 0x00080000 /* Summon Monsters */
2725-#define RF6_S_ANT 0x00100000 /* Summon Ants */
2726-#define RF6_S_SPIDER 0x00200000 /* Summon Spiders */
2727-#define RF6_S_HOUND 0x00400000 /* Summon Hounds */
2728-#define RF6_S_HYDRA 0x00800000 /* Summon Hydras */
2729-#define RF6_S_ANGEL 0x01000000 /* Summon Angel */
2730-#define RF6_S_DEMON 0x02000000 /* Summon Demon */
2731-#define RF6_S_UNDEAD 0x04000000 /* Summon Undead */
2732-#define RF6_S_DRAGON 0x08000000 /* Summon Dragon */
2733-#define RF6_S_HI_UNDEAD 0x10000000 /* Summon Greater Undead */
2734-#define RF6_S_HI_DRAGON 0x20000000 /* Summon Ancient Dragon */
2735-#define RF6_S_AMBERITES 0x40000000 /* Summon Amberites */
2736-#define RF6_S_UNIQUE 0x80000000 /* Summon Unique Monster */
2737-
2738-/*
2739- * New monster race bit flags
2740- */
2741-#define RF7_AQUATIC 0x00000001 /* Aquatic monster */
2742-#define RF7_CAN_SWIM 0x00000002 /* Monster can swim */
2743-#define RF7_CAN_FLY 0x00000004 /* Monster can fly */
2744-#define RF7_FRIENDLY 0x00000008 /* Monster is friendly */
2745-#define RF7_NAZGUL 0x00000010 /* Is a "Nazgul" unique */
2746-#define RF7_UNIQUE2 0x00000020 /* Fake unique */
2747-#define RF7_RIDING 0x00000040 /* Good for riding */
2748-#define RF7_KAGE 0x00000080 /* Is kage */
2749-#define RF7_HAS_LITE_1 0x00000100 /* Monster carries light */
2750-#define RF7_SELF_LITE_1 0x00000200 /* Monster lights itself */
2751-#define RF7_HAS_LITE_2 0x00000400 /* Monster carries light */
2752-#define RF7_SELF_LITE_2 0x00000800 /* Monster lights itself */
2753-#define RF7_GUARDIAN 0x00001000 /* Guardian of a dungeon */
2754-#define RF7_CHAMELEON 0x00002000 /* Chameleon can change */
2755-#define RF7_XXXX4XXX 0x00004000 /* Now Empty */
2756-#define RF7_TANUKI 0x00008000 /* Tanuki disguise */
2757-#define RF7_HAS_DARK_1 0x00010000 /* Monster carries darkness */
2758-#define RF7_SELF_DARK_1 0x00020000 /* Monster darkens itself */
2759-#define RF7_HAS_DARK_2 0x00040000 /* Monster carries darkness */
2760-#define RF7_SELF_DARK_2 0x00080000 /* Monster darkens itself */
2761-
2762-/*
2763- * Monster race flags
2764- */
2765-#define RF8_WILD_ONLY 0x00000001
2766-#define RF8_WILD_TOWN 0x00000002
2767-#define RF8_XXX8X02 0x00000004
2768-#define RF8_WILD_SHORE 0x00000008
2769-#define RF8_WILD_OCEAN 0x00000010
2770-#define RF8_WILD_WASTE 0x00000020
2771-#define RF8_WILD_WOOD 0x00000040
2772-#define RF8_WILD_VOLCANO 0x00000080
2773-#define RF8_XXX8X08 0x00000100
2774-#define RF8_WILD_MOUNTAIN 0x00000200
2775-#define RF8_WILD_GRASS 0x00000400
2776-#define RF8_WILD_ALL 0x80000000
2777-
2778-/*
2779- * Monster drop info
2780- */
2781-#define RF9_DROP_CORPSE 0x00000001
2782-#define RF9_DROP_SKELETON 0x00000002
2783-#define RF9_EAT_BLIND 0x00000004
2784-#define RF9_EAT_CONF 0x00000008
2785-#define RF9_EAT_MANA 0x00000010
2786-#define RF9_EAT_NEXUS 0x00000020
2787-#define RF9_EAT_SLEEP 0x00000040
2788-#define RF9_EAT_BERSERKER 0x00000080
2789-#define RF9_EAT_ACIDIC 0x00000100
2790-#define RF9_EAT_SPEED 0x00000200
2791-#define RF9_EAT_CURE 0x00000400
2792-#define RF9_EAT_FIRE_RES 0x00000800
2793-#define RF9_EAT_COLD_RES 0x00001000
2794-#define RF9_EAT_ACID_RES 0x00002000
2795-#define RF9_EAT_ELEC_RES 0x00004000
2796-#define RF9_EAT_POIS_RES 0x00008000
2797-#define RF9_EAT_INSANITY 0x00010000
2798-#define RF9_EAT_DRAIN_EXP 0x00020000
2799-#define RF9_EAT_POISONOUS 0x00040000
2800-#define RF9_EAT_GIVE_STR 0x00080000
2801-#define RF9_EAT_GIVE_INT 0x00100000
2802-#define RF9_EAT_GIVE_WIS 0x00200000
2803-#define RF9_EAT_GIVE_DEX 0x00400000
2804-#define RF9_EAT_GIVE_CON 0x00800000
2805-#define RF9_EAT_GIVE_CHR 0x01000000
2806-#define RF9_EAT_LOSE_STR 0x02000000
2807-#define RF9_EAT_LOSE_INT 0x04000000
2808-#define RF9_EAT_LOSE_WIS 0x08000000
2809-#define RF9_EAT_LOSE_DEX 0x10000000
2810-#define RF9_EAT_LOSE_CON 0x20000000
2811-#define RF9_EAT_LOSE_CHR 0x40000000
2812-#define RF9_EAT_DRAIN_MANA 0x80000000
2813-
2814-/*
2815- * Monster bit flags of racial resistances
2816- * Note: Resist confusion was merged to RFR_NO_CONF
2817- */
2818-#define RFR_IM_ACID 0x00000001 /* Immunity acid */
2819-#define RFR_IM_ELEC 0x00000002 /* Immunity elec */
2820-#define RFR_IM_FIRE 0x00000004 /* Immunity fire */
2821-#define RFR_IM_COLD 0x00000008 /* Immunity cold */
2822-#define RFR_IM_POIS 0x00000010 /* Immunity poison */
2823-#define RFR_RES_LITE 0x00000020 /* Resist lite */
2824-#define RFR_RES_DARK 0x00000040 /* Resist dark */
2825-#define RFR_RES_NETH 0x00000080 /* Resist nether */
2826-#define RFR_RES_WATE 0x00000100 /* Resist water */
2827-#define RFR_RES_PLAS 0x00000200 /* Resist plasma */
2828-#define RFR_RES_SHAR 0x00000400 /* Resist shards */
2829-#define RFR_RES_SOUN 0x00000800 /* Resist sound */
2830-#define RFR_RES_CHAO 0x00001000 /* Resist chaos */
2831-#define RFR_RES_NEXU 0x00002000 /* Resist nexus */
2832-#define RFR_RES_DISE 0x00004000 /* Resist disenchantment */
2833-#define RFR_RES_WALL 0x00008000 /* Resist force */
2834-#define RFR_RES_INER 0x00010000 /* Resist inertia */
2835-#define RFR_RES_TIME 0x00020000 /* Resist time */
2836-#define RFR_RES_GRAV 0x00040000 /* Resist gravity */
2837-#define RFR_RES_ALL 0x00080000 /* Resist all */
2838-#define RFR_RES_TELE 0x00100000 /* Resist teleportation */
2839-#define RFR_XXX21 0x00200000
2840-#define RFR_XXX22 0x00400000
2841-#define RFR_XXX23 0x00800000
2842-#define RFR_XXX24 0x01000000
2843-#define RFR_XXX25 0x02000000
2844-#define RFR_XXX26 0x04000000
2845-#define RFR_XXX27 0x08000000
2846-#define RFR_XXX28 0x10000000
2847-#define RFR_XXX29 0x20000000
2848-#define RFR_XXX30 0x40000000
2849-#define RFR_XXX31 0x80000000
2850-
2851-
28522519 /*
28532520 * Hack -- "torch" masks
28542521 */
--- a/src/types.h
+++ b/src/types.h
@@ -316,16 +316,313 @@ struct monster_race
316316 RARITY freq_spell; /*!< 魔法&特殊能力仕様頻度(1/n) / Spell frequency */
317317
318318 BIT_FLAGS flags1; /* Flags 1 (general) */
319+ #define RF1_UNIQUE 0x00000001 /*!< モンスター特性: ユニーク / Unique Monster */
320+ #define RF1_QUESTOR 0x00000002 /*!< モンスター特性: クエストモンスター / Quest Monster */
321+ #define RF1_MALE 0x00000004 /*!< モンスター特性: 男性 / Male gender */
322+ #define RF1_FEMALE 0x00000008 /*!< モンスター特性: 女性 / Female gender */
323+ #define RF1_CHAR_CLEAR 0x00000010 /*!< モンスター特性: シンボルが完全に透明 / Absorbs symbol */
324+ #define RF1_SHAPECHANGER 0x00000020 /*!< モンスター特性: シンボルアルファベットがランダムになる / TY: shapechanger */
325+ #define RF1_ATTR_CLEAR 0x00000040 /*!< モンスター特性: シンボルカラーが透明色になる(地形と同じ色になる) / Absorbs color */
326+ #define RF1_ATTR_MULTI 0x00000080 /*!< モンスター特性: シンボルカラーがランダムに変化する(基本7色) / Changes color */
327+ #define RF1_FORCE_DEPTH 0x00000100 /*!< モンスター特性: 指定階未満では生成されない / Start at "correct" depth */
328+ #define RF1_FORCE_MAXHP 0x00000200 /*!< モンスター特性: 通常生成時必ずHPがダイス最大値になる / Start with max hitpoints */
329+ #define RF1_FORCE_SLEEP 0x00000400 /*!< モンスター特性: 通常生成時必ず寝ている / Start out sleeping */
330+ #define RF1_FORCE_EXTRA 0x00000800 /*!< モンスター特性: (未使用) / Start out something */
331+ #define RF1_ATTR_SEMIRAND 0x00001000 /*!< モンスター特性: シンボルカラーがランダムに変化する(15色) / Color is determined semi-randomly */
332+ #define RF1_FRIENDS 0x00002000 /*!< モンスター特性: 同種の友軍を用意している / Arrive with some friends */
333+ #define RF1_ESCORT 0x00004000 /*!< モンスター特性: 護衛を用意している/ Arrive with an escort */
334+ #define RF1_ESCORTS 0x00008000 /*!< モンスター特性: さらに大量の護衛を用意している / Arrive with some escorts */
335+ #define RF1_NEVER_BLOW 0x00010000 /*!< モンスター特性: 打撃を一切行わない / Never make physical blow */
336+ #define RF1_NEVER_MOVE 0x00020000 /*!< モンスター特性: 移動を一切行わない / Never make physical move */
337+ #define RF1_RAND_25 0x00040000 /*!< モンスター特性: ランダムに移動する確率+25%/ Moves randomly (25%) */
338+ #define RF1_RAND_50 0x00080000 /*!< モンスター特性: ランダムに移動する確率+50%/ Moves randomly (50%) */
339+ #define RF1_ONLY_GOLD 0x00100000 /*!< モンスター特性: 財宝しか落とさない / Drop only gold */
340+ #define RF1_ONLY_ITEM 0x00200000 /*!< モンスター特性: アイテムしか落とさない / Drop only items */
341+ #define RF1_DROP_60 0x00400000 /*!< モンスター特性: 落とすアイテム数60%で+1/ Drop an item/gold (60%) */
342+ #define RF1_DROP_90 0x00800000 /*!< モンスター特性: 落とすアイテム数90%で+1 / Drop an item/gold (90%) */
343+ #define RF1_DROP_1D2 0x01000000 /*!< モンスター特性: 落とすアイテム数+1d2 / Drop 1d2 items/gold */
344+ #define RF1_DROP_2D2 0x02000000 /*!< モンスター特性: 落とすアイテム数+2d2 / Drop 2d2 items/gold */
345+ #define RF1_DROP_3D2 0x04000000 /*!< モンスター特性: 落とすアイテム数+3d2 / Drop 3d2 items/gold */
346+ #define RF1_DROP_4D2 0x08000000 /*!< モンスター特性: 落とすアイテム数+4d2 / Drop 4d2 items/gold */
347+ #define RF1_DROP_GOOD 0x10000000 /*!< モンスター特性: 必ず上質品をドロップする / Drop good items */
348+ #define RF1_DROP_GREAT 0x20000000 /*!< モンスター特性: 必ず高級品をドロップする / Drop great items */
349+ #define RF1_XXX2 0x40000000 /*!< モンスター特性: 未使用 / XXX */
350+ #define RF1_XXX3 0x80000000 /*!< モンスター特性: 未使用 / XXX */
351+
319352 BIT_FLAGS flags2; /* Flags 2 (abilities) */
353+ #define RF2_STUPID 0x00000001 /*!< モンスター特性: 愚かな行動を取る / Monster is stupid */
354+ #define RF2_SMART 0x00000002 /*!< モンスター特性: 賢い行動を取る / Monster is smart */
355+ #define RF2_CAN_SPEAK 0x00000004 /*!< モンスター特性: 台詞をしゃべる / TY: can speak */
356+ #define RF2_REFLECTING 0x00000008 /*!< モンスター特性: 矢やボルト魔法を反射する / Reflects bolts */
357+ #define RF2_INVISIBLE 0x00000010 /*!< モンスター特性: 透明視力がないと見えない / Monster avoids vision */
358+ #define RF2_COLD_BLOOD 0x00000020 /*!< モンスター特性: 冷血動物である / Monster avoids infra */
359+ #define RF2_EMPTY_MIND 0x00000040 /*!< モンスター特性: 知性を持たない(テレパシー回避) / Monster avoids telepathy */
360+ #define RF2_WEIRD_MIND 0x00000080 /*!< モンスター特性: 異質な知性(テレパシーで感知づらい) / Monster avoids telepathy? */
361+ #define RF2_MULTIPLY 0x00000100 /*!< モンスター特性: 増殖する / Monster reproduces */
362+ #define RF2_REGENERATE 0x00000200 /*!< モンスター特性: 急激に回復する / Monster regenerates */
363+ #define RF2_CHAR_MULTI 0x00000400 /*!< モンスター特性: 未使用 / (Not implemented) */
364+ #define RF2_ATTR_ANY 0x00000800 /*!< モンスター特性: ATTR_MULTIの色数が増える / TY: Attr_any */
365+ #define RF2_POWERFUL 0x00001000 /*!< モンスター特性: 強力に魔法をあやつる / Monster has strong breath */
366+ #define RF2_ELDRITCH_HORROR 0x00002000 /*!< モンスター特性: 狂気を呼び起こす / Sanity-blasting horror */
367+ #define RF2_AURA_FIRE 0x00004000 /*!< モンスター特性: 火炎のオーラを持つ / Burns in melee */
368+ #define RF2_AURA_ELEC 0x00008000 /*!< モンスター特性: 電撃のオーラを持つ / Shocks in melee */
369+ #define RF2_OPEN_DOOR 0x00010000 /*!< モンスター特性: ドアを開けることができる / Monster can open doors */
370+ #define RF2_BASH_DOOR 0x00020000 /*!< モンスター特性: ドアを破壊することができる / Monster can bash doors */
371+ #define RF2_PASS_WALL 0x00040000 /*!< モンスター特性: 壁を抜けることができる / Monster can pass walls */
372+ #define RF2_KILL_WALL 0x00080000 /*!< モンスター特性: 壁を破壊して進む / Monster can destroy walls */
373+ #define RF2_MOVE_BODY 0x00100000 /*!< モンスター特性: 道中の弱いモンスターを押しのけることができる / Monster can move monsters */
374+ #define RF2_KILL_BODY 0x00200000 /*!< モンスター特性: 道中の弱いモンスターを殺して進む / Monster can kill monsters */
375+ #define RF2_TAKE_ITEM 0x00400000 /*!< モンスター特性: 道中のアイテムを拾う / Monster can pick up items */
376+ #define RF2_KILL_ITEM 0x00800000 /*!< モンスター特性: 道中のアイテムを破壊する / Monster can crush items */
377+ #define RF2_XXX1 0x01000000 /*!< モンスター特性: 未使用 / XXX */
378+ #define RF2_XXX2 0x02000000 /*!< モンスター特性: 未使用 / XXX */
379+ #define RF2_XXX3 0x04000000 /*!< モンスター特性: 未使用 / XXX */
380+ #define RF2_XXX4 0x08000000 /*!< モンスター特性: 未使用 / XXX */
381+ #define RF2_XXX5 0x10000000 /*!< モンスター特性: 未使用 / XXX */
382+ #define RF2_XXX6 0x20000000 /*!< モンスター特性: 未使用 / XXX */
383+ #define RF2_HUMAN 0x40000000 /*!< モンスター特性: 人間 / Human */
384+ #define RF2_QUANTUM 0x80000000 /*!< モンスター特性: 量子的な振る舞いをする / Monster has quantum behavior */
385+
320386 BIT_FLAGS flags3; /* Flags 3 (race/resist) */
387+ #define RF3_ORC 0x00000001 /*!< モンスター特性: オーク / Orc */
388+ #define RF3_TROLL 0x00000002 /*!< モンスター特性: トロル / Troll */
389+ #define RF3_GIANT 0x00000004 /*!< モンスター特性: 巨人 / Giant */
390+ #define RF3_DRAGON 0x00000008 /*!< モンスター特性: ドラゴン / Dragon */
391+ #define RF3_DEMON 0x00000010 /*!< モンスター特性: 悪魔 / Demon */
392+ #define RF3_UNDEAD 0x00000020 /*!< モンスター特性: アンデッド / Undead */
393+ #define RF3_EVIL 0x00000040 /*!< モンスター特性: 邪悪 / Evil */
394+ #define RF3_ANIMAL 0x00000080 /*!< モンスター特性: 動物 / Animal */
395+ #define RF3_AMBERITE 0x00000100 /*!< モンスター特性: アンバーの血族 / TY: Amberite */
396+ #define RF3_GOOD 0x00000200 /*!< モンスター特性: 善良 / Good */
397+ #define RF3_AURA_COLD 0x00000400 /*!< モンスター特性: 冷気オーラ / Freezes in melee */
398+ #define RF3_NONLIVING 0x00000800 /*!< モンスター特性: 無生物 / TY: Non-Living (?) */
399+ #define RF3_HURT_LITE 0x00001000 /*!< モンスター特性: 通常の光(GF_WEAK_LITE)でダメージを受ける / Hurt by lite */
400+ #define RF3_HURT_ROCK 0x00002000 /*!< モンスター特性: 岩石溶解(GF_KILL_WALL)でダメージを受ける / Hurt by rock remover */
401+ #define RF3_HURT_FIRE 0x00004000 /*!< モンスター特性: 火炎が弱点 / Hurt badly by fire */
402+ #define RF3_HURT_COLD 0x00008000 /*!< モンスター特性: 冷気が弱点 / Hurt badly by cold */
403+ #define RF3_ANGEL 0x00010000 /*!< モンスター特性: 天使 / ANGEL */
404+ #define RF3_XXX17 0x00020000 /*!< モンスター特性: 未使用 / XXX */
405+ #define RF3_XXX18 0x00040000 /*!< モンスター特性: 未使用 / XXX */
406+ #define RF3_XXX19 0x00080000 /*!< モンスター特性: 未使用 / XXX */
407+ #define RF3_XXX20 0x00100000 /*!< モンスター特性: 未使用 / XXX */
408+ #define RF3_XXX21 0x00200000 /*!< モンスター特性: 未使用 / XXX */
409+ #define RF3_XXX22 0x00400000 /*!< モンスター特性: 未使用 / XXX */
410+ #define RF3_XXX23 0x00800000 /*!< モンスター特性: 未使用 / XXX */
411+ #define RF3_XXX24 0x01000000 /*!< モンスター特性: 未使用 / XXX */
412+ #define RF3_XXX25 0x02000000 /*!< モンスター特性: 未使用 / XXX */
413+ #define RF3_XXX26 0x04000000 /*!< モンスター特性: 未使用 / XXX */
414+ #define RF3_XXX27 0x08000000 /*!< モンスター特性: 未使用 / XXX */
415+ #define RF3_NO_FEAR 0x10000000 /*!< モンスター特性: 恐怖しない / Cannot be scared */
416+ #define RF3_NO_STUN 0x20000000 /*!< モンスター特性: 朦朧としない / Cannot be stunned */
417+ #define RF3_NO_CONF 0x40000000 /*!< モンスター特性: 混乱しない / Cannot be confused and resist confusion */
418+ #define RF3_NO_SLEEP 0x80000000 /*!< モンスター特性: 眠らない / Cannot be slept */
419+
321420 BIT_FLAGS flags4; /* Flags 4 (inate/breath) */
421+ #define RF4_SHRIEK 0x00000001 /*!< モンスター能力: 叫ぶ / Shriek for help */
422+ #define RF4_XXX1 0x00000002 /*!< モンスター能力: 未使用 / XXX */
423+ #define RF4_DISPEL 0x00000004 /*!< モンスター能力: 魔力消去 / Dispel magic */
424+ #define RF4_ROCKET 0x00000008 /*!< モンスター能力: ロケット / TY: Rocket */
425+ #define RF4_SHOOT 0x00000010 /*!< モンスター能力: 射撃/ Fire missiles */
426+ #define RF4_XXX2 0x00000020 /*!< モンスター能力: 未使用 / XXX */
427+ #define RF4_XXX3 0x00000040 /*!< モンスター能力: 未使用 / XXX */
428+ #define RF4_XXX4 0x00000080 /*!< モンスター能力: 未使用 / XXX */
429+ #define RF4_BR_ACID 0x00000100 /*!< モンスター能力: 酸のブレス / Breathe Acid */
430+ #define RF4_BR_ELEC 0x00000200 /*!< モンスター能力: 電撃のブレス / Breathe Elec */
431+ #define RF4_BR_FIRE 0x00000400 /*!< モンスター能力: 火炎のブレス / Breathe Fire */
432+ #define RF4_BR_COLD 0x00000800 /*!< モンスター能力: 冷気のブレス / Breathe Cold */
433+ #define RF4_BR_POIS 0x00001000 /*!< モンスター能力: 毒のブレス / Breathe Poison */
434+ #define RF4_BR_NETH 0x00002000 /*!< モンスター能力: 地獄のブレス / Breathe Nether */
435+ #define RF4_BR_LITE 0x00004000 /*!< モンスター能力: 閃光のブレス / Breathe Lite */
436+ #define RF4_BR_DARK 0x00008000 /*!< モンスター能力: 暗黒のブレス / Breathe Dark */
437+ #define RF4_BR_CONF 0x00010000 /*!< モンスター能力: 混乱のブレス / Breathe Confusion */
438+ #define RF4_BR_SOUN 0x00020000 /*!< モンスター能力: 轟音のブレス / Breathe Sound */
439+ #define RF4_BR_CHAO 0x00040000 /*!< モンスター能力: カオスのブレス / Breathe Chaos */
440+ #define RF4_BR_DISE 0x00080000 /*!< モンスター能力: 劣化のブレス / Breathe Disenchant */
441+ #define RF4_BR_NEXU 0x00100000 /*!< モンスター能力: 因果混乱のブレス / Breathe Nexus */
442+ #define RF4_BR_TIME 0x00200000 /*!< モンスター能力: 時間逆転のブレス / Breathe Time */
443+ #define RF4_BR_INER 0x00400000 /*!< モンスター能力: 遅鈍のブレス / Breathe Inertia */
444+ #define RF4_BR_GRAV 0x00800000 /*!< モンスター能力: 重力のブレス / Breathe Gravity */
445+ #define RF4_BR_SHAR 0x01000000 /*!< モンスター能力: 破片のブレス / Breathe Shards */
446+ #define RF4_BR_PLAS 0x02000000 /*!< モンスター能力: プラズマのブレス / Breathe Plasma */
447+ #define RF4_BR_WALL 0x04000000 /*!< モンスター能力: フォースのブレス / Breathe Force */
448+ #define RF4_BR_MANA 0x08000000 /*!< モンスター能力: 魔力のブレス / Breathe Mana */
449+ #define RF4_BA_NUKE 0x10000000 /*!< モンスター能力: 放射能球 / TY: Nuke Ball */
450+ #define RF4_BR_NUKE 0x20000000 /*!< モンスター能力: 放射性廃棄物のブレス / TY: Toxic Breath */
451+ #define RF4_BA_CHAO 0x40000000 /*!< モンスター能力: ログルス球 / TY: Logrus Ball */
452+ #define RF4_BR_DISI 0x80000000 /*!< モンスター能力: 分解のブレス / Breathe Disintegration */
453+
322454 BIT_FLAGS flags7; /* Flags 7 (movement related abilities) */
455+ #define RF7_AQUATIC 0x00000001 /* Aquatic monster */
456+ #define RF7_CAN_SWIM 0x00000002 /* Monster can swim */
457+ #define RF7_CAN_FLY 0x00000004 /* Monster can fly */
458+ #define RF7_FRIENDLY 0x00000008 /* Monster is friendly */
459+ #define RF7_NAZGUL 0x00000010 /* Is a "Nazgul" unique */
460+ #define RF7_UNIQUE2 0x00000020 /* Fake unique */
461+ #define RF7_RIDING 0x00000040 /* Good for riding */
462+ #define RF7_KAGE 0x00000080 /* Is kage */
463+ #define RF7_HAS_LITE_1 0x00000100 /* Monster carries light */
464+ #define RF7_SELF_LITE_1 0x00000200 /* Monster lights itself */
465+ #define RF7_HAS_LITE_2 0x00000400 /* Monster carries light */
466+ #define RF7_SELF_LITE_2 0x00000800 /* Monster lights itself */
467+ #define RF7_GUARDIAN 0x00001000 /* Guardian of a dungeon */
468+ #define RF7_CHAMELEON 0x00002000 /* Chameleon can change */
469+ #define RF7_XXXX4XXX 0x00004000 /* Now Empty */
470+ #define RF7_TANUKI 0x00008000 /* Tanuki disguise */
471+ #define RF7_HAS_DARK_1 0x00010000 /* Monster carries darkness */
472+ #define RF7_SELF_DARK_1 0x00020000 /* Monster darkens itself */
473+ #define RF7_HAS_DARK_2 0x00040000 /* Monster carries darkness */
474+ #define RF7_SELF_DARK_2 0x00080000 /* Monster darkens itself */
475+
323476 BIT_FLAGS flags8; /* Flags 8 (wilderness info) */
477+ #define RF8_WILD_ONLY 0x00000001
478+ #define RF8_WILD_TOWN 0x00000002
479+ #define RF8_XXX8X02 0x00000004
480+ #define RF8_WILD_SHORE 0x00000008
481+ #define RF8_WILD_OCEAN 0x00000010
482+ #define RF8_WILD_WASTE 0x00000020
483+ #define RF8_WILD_WOOD 0x00000040
484+ #define RF8_WILD_VOLCANO 0x00000080
485+ #define RF8_XXX8X08 0x00000100
486+ #define RF8_WILD_MOUNTAIN 0x00000200
487+ #define RF8_WILD_GRASS 0x00000400
488+ #define RF8_WILD_ALL 0x80000000
489+
324490 BIT_FLAGS flags9; /* Flags 9 (drops info) */
491+ #define RF9_DROP_CORPSE 0x00000001
492+ #define RF9_DROP_SKELETON 0x00000002
493+ #define RF9_EAT_BLIND 0x00000004
494+ #define RF9_EAT_CONF 0x00000008
495+ #define RF9_EAT_MANA 0x00000010
496+ #define RF9_EAT_NEXUS 0x00000020
497+ #define RF9_EAT_SLEEP 0x00000040
498+ #define RF9_EAT_BERSERKER 0x00000080
499+ #define RF9_EAT_ACIDIC 0x00000100
500+ #define RF9_EAT_SPEED 0x00000200
501+ #define RF9_EAT_CURE 0x00000400
502+ #define RF9_EAT_FIRE_RES 0x00000800
503+ #define RF9_EAT_COLD_RES 0x00001000
504+ #define RF9_EAT_ACID_RES 0x00002000
505+ #define RF9_EAT_ELEC_RES 0x00004000
506+ #define RF9_EAT_POIS_RES 0x00008000
507+ #define RF9_EAT_INSANITY 0x00010000
508+ #define RF9_EAT_DRAIN_EXP 0x00020000
509+ #define RF9_EAT_POISONOUS 0x00040000
510+ #define RF9_EAT_GIVE_STR 0x00080000
511+ #define RF9_EAT_GIVE_INT 0x00100000
512+ #define RF9_EAT_GIVE_WIS 0x00200000
513+ #define RF9_EAT_GIVE_DEX 0x00400000
514+ #define RF9_EAT_GIVE_CON 0x00800000
515+ #define RF9_EAT_GIVE_CHR 0x01000000
516+ #define RF9_EAT_LOSE_STR 0x02000000
517+ #define RF9_EAT_LOSE_INT 0x04000000
518+ #define RF9_EAT_LOSE_WIS 0x08000000
519+ #define RF9_EAT_LOSE_DEX 0x10000000
520+ #define RF9_EAT_LOSE_CON 0x20000000
521+ #define RF9_EAT_LOSE_CHR 0x40000000
522+ #define RF9_EAT_DRAIN_MANA 0x80000000
523+
325524 BIT_FLAGS flagsr; /* Flags R (resistances info) */
525+ #define RFR_IM_ACID 0x00000001 /* Immunity acid */
526+ #define RFR_IM_ELEC 0x00000002 /* Immunity elec */
527+ #define RFR_IM_FIRE 0x00000004 /* Immunity fire */
528+ #define RFR_IM_COLD 0x00000008 /* Immunity cold */
529+ #define RFR_IM_POIS 0x00000010 /* Immunity poison */
530+ #define RFR_RES_LITE 0x00000020 /* Resist lite */
531+ #define RFR_RES_DARK 0x00000040 /* Resist dark */
532+ #define RFR_RES_NETH 0x00000080 /* Resist nether */
533+ #define RFR_RES_WATE 0x00000100 /* Resist water */
534+ #define RFR_RES_PLAS 0x00000200 /* Resist plasma */
535+ #define RFR_RES_SHAR 0x00000400 /* Resist shards */
536+ #define RFR_RES_SOUN 0x00000800 /* Resist sound */
537+ #define RFR_RES_CHAO 0x00001000 /* Resist chaos */
538+ #define RFR_RES_NEXU 0x00002000 /* Resist nexus */
539+ #define RFR_RES_DISE 0x00004000 /* Resist disenchantment */
540+ #define RFR_RES_WALL 0x00008000 /* Resist force */
541+ #define RFR_RES_INER 0x00010000 /* Resist inertia */
542+ #define RFR_RES_TIME 0x00020000 /* Resist time */
543+ #define RFR_RES_GRAV 0x00040000 /* Resist gravity */
544+ #define RFR_RES_ALL 0x00080000 /* Resist all */
545+ #define RFR_RES_TELE 0x00100000 /* Resist teleportation */
546+ #define RFR_XXX21 0x00200000
547+ #define RFR_XXX22 0x00400000
548+ #define RFR_XXX23 0x00800000
549+ #define RFR_XXX24 0x01000000
550+ #define RFR_XXX25 0x02000000
551+ #define RFR_XXX26 0x04000000
552+ #define RFR_XXX27 0x08000000
553+ #define RFR_XXX28 0x10000000
554+ #define RFR_XXX29 0x20000000
555+ #define RFR_XXX30 0x40000000
556+ #define RFR_XXX31 0x80000000
326557
327558 BIT_FLAGS a_ability_flags1; /* Activate Ability Flags 5 (normal spells) */
559+ #define RF5_BA_ACID 0x00000001 /*!< モンスター能力: アシッド・ボール / Acid Ball */
560+ #define RF5_BA_ELEC 0x00000002 /*!< モンスター能力: サンダー・ボール / Elec Ball */
561+ #define RF5_BA_FIRE 0x00000004 /*!< モンスター能力: ファイア・ボール / Fire Ball */
562+ #define RF5_BA_COLD 0x00000008 /*!< モンスター能力: アイス・ボール / Cold Ball */
563+ #define RF5_BA_POIS 0x00000010 /*!< モンスター能力: 悪臭雲 / Poison Ball */
564+ #define RF5_BA_NETH 0x00000020 /*!< モンスター能力: 地獄球 / Nether Ball */
565+ #define RF5_BA_WATE 0x00000040 /*!< モンスター能力: ウォーター・ボール / Water Ball */
566+ #define RF5_BA_MANA 0x00000080 /*!< モンスター能力: 魔力の嵐 / Mana Storm */
567+ #define RF5_BA_DARK 0x00000100 /*!< モンスター能力: 暗黒の嵐 / Darkness Storm */
568+ #define RF5_DRAIN_MANA 0x00000200 /*!< モンスター能力: 魔力吸収 / Drain Mana */
569+ #define RF5_MIND_BLAST 0x00000400 /*!< モンスター能力: 精神攻撃 / Blast Mind */
570+ #define RF5_BRAIN_SMASH 0x00000800 /*!< モンスター能力: 脳攻撃 / Smash Brain */
571+ #define RF5_CAUSE_1 0x00001000 /*!< モンスター能力: 軽傷の呪い / Cause Light Wound */
572+ #define RF5_CAUSE_2 0x00002000 /*!< モンスター能力: 重症の頃い / Cause Serious Wound */
573+ #define RF5_CAUSE_3 0x00004000 /*!< モンスター能力: 致命傷の呪い / Cause Critical Wound */
574+ #define RF5_CAUSE_4 0x00008000 /*!< モンスター能力: 秘孔を突く / Cause Mortal Wound */
575+ #define RF5_BO_ACID 0x00010000 /*!< モンスター能力: アシッド・ボルト / Acid Bolt */
576+ #define RF5_BO_ELEC 0x00020000 /*!< モンスター能力: サンダー・ボルト / Elec Bolt */
577+ #define RF5_BO_FIRE 0x00040000 /*!< モンスター能力: ファイア・ボルト / Fire Bolt */
578+ #define RF5_BO_COLD 0x00080000 /*!< モンスター能力: アイス・ボルト / Cold Bolt */
579+ #define RF5_BA_LITE 0x00100000 /*!< モンスター能力: スター・バースト / StarBurst */
580+ #define RF5_BO_NETH 0x00200000 /*!< モンスター能力: 地獄の矢 / Nether Bolt */
581+ #define RF5_BO_WATE 0x00400000 /*!< モンスター能力: ウォーター・ボルト / Water Bolt */
582+ #define RF5_BO_MANA 0x00800000 /*!< モンスター能力: 魔力の矢 / Mana Bolt */
583+ #define RF5_BO_PLAS 0x01000000 /*!< モンスター能力: プラズマ・ボルト / Plasma Bolt */
584+ #define RF5_BO_ICEE 0x02000000 /*!< モンスター能力: 極寒の矢 / Ice Bolt */
585+ #define RF5_MISSILE 0x04000000 /*!< モンスター能力: マジック・ミサイルt / Magic Missile */
586+ #define RF5_SCARE 0x08000000 /*!< モンスター能力: 恐慌 / Frighten Player */
587+ #define RF5_BLIND 0x10000000 /*!< モンスター能力: 盲目 / Blind Player */
588+ #define RF5_CONF 0x20000000 /*!< モンスター能力: 混乱 / Confuse Player */
589+ #define RF5_SLOW 0x40000000 /*!< モンスター能力: 減速 / Slow Player */
590+ #define RF5_HOLD 0x80000000 /*!< モンスター能力: 麻痺 / Paralyze Player */
591+
328592 BIT_FLAGS a_ability_flags2; /* Activate Ability Flags 6 (special spells) */
593+ #define RF6_HASTE 0x00000001 /* Speed self */
594+ #define RF6_HAND_DOOM 0x00000002 /* Hand of Doom */
595+ #define RF6_HEAL 0x00000004 /* Heal self */
596+ #define RF6_INVULNER 0x00000008 /* INVULNERABILITY! */
597+ #define RF6_BLINK 0x00000010 /* Teleport Short */
598+ #define RF6_TPORT 0x00000020 /* Teleport Long */
599+ #define RF6_WORLD 0x00000040 /* world */
600+ #define RF6_SPECIAL 0x00000080 /* Special Attack */
601+ #define RF6_TELE_TO 0x00000100 /* Move player to monster */
602+ #define RF6_TELE_AWAY 0x00000200 /* Move player far away */
603+ #define RF6_TELE_LEVEL 0x00000400 /* Move player vertically */
604+ #define RF6_PSY_SPEAR 0x00000800 /* Psyco-spear */
605+ #define RF6_DARKNESS 0x00001000 /* Create Darkness */
606+ #define RF6_TRAPS 0x00002000 /* Create Traps */
607+ #define RF6_FORGET 0x00004000 /* Cause amnesia */
608+ #define RF6_RAISE_DEAD 0x00008000 /* Raise Dead */
609+ #define RF6_S_KIN 0x00010000 /* Summon "kin" */
610+ #define RF6_S_CYBER 0x00020000 /* Summon Cyberdemons! */
611+ #define RF6_S_MONSTER 0x00040000 /* Summon Monster */
612+ #define RF6_S_MONSTERS 0x00080000 /* Summon Monsters */
613+ #define RF6_S_ANT 0x00100000 /* Summon Ants */
614+ #define RF6_S_SPIDER 0x00200000 /* Summon Spiders */
615+ #define RF6_S_HOUND 0x00400000 /* Summon Hounds */
616+ #define RF6_S_HYDRA 0x00800000 /* Summon Hydras */
617+ #define RF6_S_ANGEL 0x01000000 /* Summon Angel */
618+ #define RF6_S_DEMON 0x02000000 /* Summon Demon */
619+ #define RF6_S_UNDEAD 0x04000000 /* Summon Undead */
620+ #define RF6_S_DRAGON 0x08000000 /* Summon Dragon */
621+ #define RF6_S_HI_UNDEAD 0x10000000 /* Summon Greater Undead */
622+ #define RF6_S_HI_DRAGON 0x20000000 /* Summon Ancient Dragon */
623+ #define RF6_S_AMBERITES 0x40000000 /* Summon Amberites */
624+ #define RF6_S_UNIQUE 0x80000000 /* Summon Unique Monster */
625+
329626 BIT_FLAGS a_ability_flags3; /* Activate Ability Flags 7 (implementing) */
330627 BIT_FLAGS a_ability_flags4; /* Activate Ability Flags 8 (implementing) */
331628
Show on old repository browser