X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2Fdefines.h;h=e8484cad7b857b040d524ff926dc00f7ed59ec4f;hb=ca9730259711719009cd9194a1344a3a9deb18b9;hp=1cf2681e73df4854bf9f75576b68b1b06b5523db;hpb=66abb5c6692a4ff7fa162842c87d4824e67ceae4;p=hengband%2Fhengband.git diff --git a/src/defines.h b/src/defines.h index 1cf2681e7..e8484cad7 100644 --- a/src/defines.h +++ b/src/defines.h @@ -53,7 +53,7 @@ #define FAKE_VER_MAJOR 12 /*!< ゲームのバージョン番号定義(メジャー番号 + 10) */ #define FAKE_VER_MINOR 2 /*!< ゲームのバージョン番号定義(マイナー番号) */ #define FAKE_VER_PATCH 1 /*!< ゲームのバージョン番号定義(パッチ番号) */ -#define FAKE_VER_EXTRA 5 /*!< ゲームのバージョン番号定義(エクストラ番号) */ +#define FAKE_VER_EXTRA 7 /*!< ゲームのバージョン番号定義(エクストラ番号) */ /*! @@ -181,7 +181,7 @@ #define MAX_OWNERS 32 /*!< 各店舗毎の店主定義最大数 / Total number of owners per store (see "store.c", etc) */ #define MAX_SEXES 2 /*!< 性別の定義最大数 / Maximum number of player "sex" types (see "table.c", etc) */ #define MAX_CLASS 28 /*!< 職業の最大定義数 Maximum number of player "class" types (see "table.c", etc) */ -#define MAX_SEIKAKU 12 /*!< 性格の最大定義数 */ +#define MAX_SEIKAKU 13 /*!< 性格の最大定義数 */ #define MAX_PATRON 16 /*!< カオスパトロンの最大定義数 / The number of "patrons" available (for Chaos Warriors) */ /* ELDRITCH_HORRORによるsanity blast処理に関するメッセージの最大数 / Number of entries in the sanity-blast descriptions */ @@ -189,150 +189,9 @@ #define MAX_SAN_FUNNY 22 /*!< 恐ろしい対象の形容数(幻覚時) */ #define MAX_SAN_COMMENT 5 /*!< 恐ろしい対象を見たときの絶叫メッセージ数(幻覚時) */ -/* カオスパトロンからの報酬種別定義 / Chaos Warrior: Reward types: */ -#define REW_POLY_SLF 1 /*!< カオスパトロンからの報酬: 自己変容 */ -#define REW_GAIN_EXP 2 /*!< カオスパトロンからの報酬: 経験値増加 */ -#define REW_LOSE_EXP 3 /*!< カオスパトロンからの報酬: 経験値減少 */ -#define REW_GOOD_OBJ 4 /*!< カオスパトロンからの報酬: GOODなアイテム単体の下賜 */ -#define REW_GREA_OBJ 5 /*!< カオスパトロンからの報酬: GREATなアイテム単体の下賜 */ -#define REW_CHAOS_WP 6 /*!< カオスパトロンからの報酬: 混沌武器の下賜 */ -#define REW_GOOD_OBS 7 /*!< カオスパトロンからの報酬: GOODなアイテム複数の下賜 */ -#define REW_GREA_OBS 8 /*!< カオスパトロンからの報酬: GREATなアイテム複数の下賜 */ -#define REW_TY_CURSE 9 /*!< カオスパトロンからの報酬: 太古の怨念 */ -#define REW_SUMMON_M 10 /*!< カオスパトロンからの報酬: 敵対的なモンスターの召喚(通常) */ -#define REW_H_SUMMON 11 /*!< カオスパトロンからの報酬: 敵対的なモンスターの召喚(hi-summon) */ -#define REW_DO_HAVOC 12 /*!< カオスパトロンからの報酬: 混沌招来 */ -#define REW_GAIN_ABL 13 /*!< カオスパトロンからの報酬: 増強 */ -#define REW_LOSE_ABL 14 /*!< カオスパトロンからの報酬: 1能力低下 */ -#define REW_RUIN_ABL 15 /*!< カオスパトロンからの報酬: 全能力低下 */ -#define REW_AUGM_ABL 16 /*!< カオスパトロンからの報酬: 1能力上昇 */ -#define REW_POLY_WND 17 /*!< カオスパトロンからの報酬: 傷の変化 */ -#define REW_HEAL_FUL 18 /*!< カオスパトロンからの報酬: 完全回復 */ -#define REW_HURT_LOT 19 /*!< カオスパトロンからの報酬: 分解の球によるダメージ */ -#define REW_CURSE_WP 20 /*!< カオスパトロンからの報酬: 武器呪縛 */ -#define REW_CURSE_AR 21 /*!< カオスパトロンからの報酬: 防具呪縛 */ -#define REW_PISS_OFF 22 /*!< カオスパトロンからの報酬: 苛立ち */ -#define REW_WRATH 23 /*!< カオスパトロンからの報酬: 怒り */ -#define REW_DESTRUCT 24 /*!< カオスパトロンからの報酬: *破壊* */ -#define REW_GENOCIDE 25 /*!< カオスパトロンからの報酬: シンボル抹殺 */ -#define REW_MASS_GEN 26 /*!< カオスパトロンからの報酬: 周辺抹殺 */ -#define REW_DISPEL_C 27 /*!< カオスパトロンからの報酬: モンスター退散 */ -#define REW_UNUSED_1 28 /*!< カオスパトロンからの報酬: 未使用 */ -#define REW_UNUSED_2 29 /*!< カオスパトロンからの報酬: 未使用 */ -#define REW_UNUSED_3 30 /*!< カオスパトロンからの報酬: 未使用 */ -#define REW_UNUSED_4 31 /*!< カオスパトロンからの報酬: 未使用 */ -#define REW_UNUSED_5 32 /*!< カオスパトロンからの報酬: 未使用 */ -#define REW_IGNORE 33 /*!< カオスパトロンからの報酬: 無視 */ -#define REW_SER_UNDE 34 /*!< カオスパトロンからの報酬: アンデッドの下僕下賜 */ -#define REW_SER_DEMO 35 /*!< カオスパトロンからの報酬: 悪魔の下僕下賜 */ -#define REW_SER_MONS 36 /*!< カオスパトロンからの報酬: モンスターの下僕下賜 */ /* カオスの変異 / Chaos mutations */ -/* レイシャル型の変異 / "Activatable" mutations must be in MUT1_* */ -#define MUT1_SPIT_ACID 0x00000001L /*!< 突然変異: 酸の唾 */ -#define MUT1_BR_FIRE 0x00000002L /*!< 突然変異: 炎のブレス */ -#define MUT1_HYPN_GAZE 0x00000004L /*!< 突然変異: 催眠睨み */ -#define MUT1_TELEKINES 0x00000008L /*!< 突然変異: 念動力 */ -#define MUT1_VTELEPORT 0x00000010L /*!< 突然変異: テレポート / Voluntary teleport */ -#define MUT1_MIND_BLST 0x00000020L /*!< 突然変異: 精神攻撃 */ -#define MUT1_RADIATION 0x00000040L /*!< 突然変異: 放射能 */ -#define MUT1_VAMPIRISM 0x00000080L /*!< 突然変異: 吸血 */ -#define MUT1_SMELL_MET 0x00000100L /*!< 突然変異: 金属嗅覚 */ -#define MUT1_SMELL_MON 0x00000200L /*!< 突然変異: 敵臭嗅覚 */ -#define MUT1_BLINK 0x00000400L /*!< 突然変異: ショート・テレポート */ -#define MUT1_EAT_ROCK 0x00000800L /*!< 突然変異: 岩喰い */ -#define MUT1_SWAP_POS 0x00001000L /*!< 突然変異: 位置交換 */ -#define MUT1_SHRIEK 0x00002000L /*!< 突然変異: 叫び */ -#define MUT1_ILLUMINE 0x00004000L /*!< 突然変異: 照明 */ -#define MUT1_DET_CURSE 0x00008000L /*!< 突然変異: 呪い感知 */ -#define MUT1_BERSERK 0x00010000L /*!< 突然変異: 狂戦士化 */ -#define MUT1_POLYMORPH 0x00020000L /*!< 突然変異: 変身 */ -#define MUT1_MIDAS_TCH 0x00040000L /*!< 突然変異: ミダスの手 */ -#define MUT1_GROW_MOLD 0x00080000L /*!< 突然変異: カビ発生 */ -#define MUT1_RESIST 0x00100000L /*!< 突然変異: エレメント耐性 */ -#define MUT1_EARTHQUAKE 0x00200000L /*!< 突然変異: 地震 */ -#define MUT1_EAT_MAGIC 0x00400000L /*!< 突然変異: 魔力喰い */ -#define MUT1_WEIGH_MAG 0x00800000L /*!< 突然変異: 魔力感知 */ -#define MUT1_STERILITY 0x01000000L /*!< 突然変異: 増殖阻止 */ -#define MUT1_PANIC_HIT 0x02000000L /*!< 突然変異: ヒットアンドアウェイ */ -#define MUT1_DAZZLE 0x04000000L /*!< 突然変異: 眩惑 */ -#define MUT1_LASER_EYE 0x08000000L /*!< 突然変異: レーザー・アイ */ -#define MUT1_RECALL 0x10000000L /*!< 突然変異: 帰還 */ -#define MUT1_BANISH 0x20000000L /*!< 突然変異: 邪悪消滅 */ -#define MUT1_COLD_TOUCH 0x40000000L /*!< 突然変異: 凍結の手 */ -#define MUT1_LAUNCHER 0x80000000L /*!< 突然変異: アイテム投げ */ - -/* 常時効果つきの変異1 / Randomly activating mutations must be MUT2_* */ -#define MUT2_BERS_RAGE 0x00000001L /*!< 突然変異: 狂戦士化の発作 */ -#define MUT2_COWARDICE 0x00000002L /*!< 突然変異: 臆病 */ -#define MUT2_RTELEPORT 0x00000004L /*!< 突然変異: ランダムテレポート / Random teleport, instability */ -#define MUT2_ALCOHOL 0x00000008L /*!< 突然変異: アルコール分泌 */ -#define MUT2_HALLU 0x00000010L /*!< 突然変異: 幻覚を引き起こす精神錯乱 */ -#define MUT2_FLATULENT 0x00000020L /*!< 突然変異: 猛烈な屁 */ -#define MUT2_SCOR_TAIL 0x00000040L /*!< 突然変異: サソリの尻尾 */ -#define MUT2_HORNS 0x00000080L /*!< 突然変異: ツノ */ -#define MUT2_BEAK 0x00000100L /*!< 突然変異: クチバシ */ -#define MUT2_ATT_DEMON 0x00000200L /*!< 突然変異: デーモンを引き付ける */ -#define MUT2_PROD_MANA 0x00000400L /*!< 突然変異: 制御できない魔力のエネルギー */ -#define MUT2_SPEED_FLUX 0x00000800L /*!< 突然変異: ランダムな加減速 */ -#define MUT2_BANISH_ALL 0x00001000L /*!< 突然変異: ランダムなモンスター消滅 */ -#define MUT2_EAT_LIGHT 0x00002000L /*!< 突然変異: 光源喰い */ -#define MUT2_TRUNK 0x00004000L /*!< 突然変異: 象の鼻 */ -#define MUT2_ATT_ANIMAL 0x00008000L /*!< 突然変異: 動物を引き寄せる */ -#define MUT2_TENTACLES 0x00010000L /*!< 突然変異: 邪悪な触手 */ -#define MUT2_RAW_CHAOS 0x00020000L /*!< 突然変異: 純カオス */ -#define MUT2_NORMALITY 0x00040000L /*!< 突然変異: ランダムな変異の消滅 */ -#define MUT2_WRAITH 0x00080000L /*!< 突然変異: ランダムな幽体化 */ -#define MUT2_POLY_WOUND 0x00100000L /*!< 突然変異: ランダムな傷の変化 */ -#define MUT2_WASTING 0x00200000L /*!< 突然変異: 衰弱 */ -#define MUT2_ATT_DRAGON 0x00400000L /*!< 突然変異: ドラゴンを引き寄せる */ -#define MUT2_WEIRD_MIND 0x00800000L /*!< 突然変異: ランダムなテレパシー */ -#define MUT2_NAUSEA 0x01000000L /*!< 突然変異: 落ち着きの無い胃 */ -#define MUT2_CHAOS_GIFT 0x02000000L /*!< 突然変異: カオスパトロン */ -#define MUT2_WALK_SHAD 0x04000000L /*!< 突然変異: ランダムな現実変容 */ -#define MUT2_WARNING 0x08000000L /*!< 突然変異: 警告 */ -#define MUT2_INVULN 0x10000000L /*!< 突然変異: ランダムな無敵化 */ -#define MUT2_SP_TO_HP 0x20000000L /*!< 突然変異: ランダムなMPからHPへの変換 */ -#define MUT2_HP_TO_SP 0x40000000L /*!< 突然変異: ランダムなHPからMPへの変換 */ -#define MUT2_DISARM 0x80000000L /*!< 突然変異: ランダムな武器落とし */ - - -/* 常時効果つきの変異2 / Other mutations will be mainly in MUT3_* */ -#define MUT3_HYPER_STR 0x00000001L /*!< 突然変異: 超人的な力 */ -#define MUT3_PUNY 0x00000002L /*!< 突然変異: 虚弱 */ -#define MUT3_HYPER_INT 0x00000004L /*!< 突然変異: 生体コンピュータ */ -#define MUT3_MORONIC 0x00000008L /*!< 突然変異: 精神薄弱 */ -#define MUT3_RESILIENT 0x00000010L /*!< 突然変異: 弾力のある体 */ -#define MUT3_XTRA_FAT 0x00000020L /*!< 突然変異: 異常な肥満 */ -#define MUT3_ALBINO 0x00000040L /*!< 突然変異: アルビノ */ -#define MUT3_FLESH_ROT 0x00000080L /*!< 突然変異: 腐敗した肉体 */ -#define MUT3_SILLY_VOI 0x00000100L /*!< 突然変異: 間抜けなキーキー声 */ -#define MUT3_BLANK_FAC 0x00000200L /*!< 突然変異: のっぺらぼう */ -#define MUT3_ILL_NORM 0x00000400L /*!< 突然変異: 幻影に覆われた体 */ -#define MUT3_XTRA_EYES 0x00000800L /*!< 突然変異: 第三の目 */ -#define MUT3_MAGIC_RES 0x00001000L /*!< 突然変異: 魔法防御 */ -#define MUT3_XTRA_NOIS 0x00002000L /*!< 突然変異: 騒音 */ -#define MUT3_INFRAVIS 0x00004000L /*!< 突然変異: 赤外線視力 */ -#define MUT3_XTRA_LEGS 0x00008000L /*!< 突然変異: 追加の脚 */ -#define MUT3_SHORT_LEG 0x00010000L /*!< 突然変異: 短い脚 */ -#define MUT3_ELEC_TOUC 0x00020000L /*!< 突然変異: 電撃オーラ */ -#define MUT3_FIRE_BODY 0x00040000L /*!< 突然変異: 火炎オーラ */ -#define MUT3_WART_SKIN 0x00080000L /*!< 突然変異: イボ肌 */ -#define MUT3_SCALES 0x00100000L /*!< 突然変異: 鱗肌 */ -#define MUT3_IRON_SKIN 0x00200000L /*!< 突然変異: 鉄の肌 */ -#define MUT3_WINGS 0x00400000L /*!< 突然変異: 翼 */ -#define MUT3_FEARLESS 0x00800000L /*!< 突然変異: 恐れ知らず */ -#define MUT3_REGEN 0x01000000L /*!< 突然変異: 急回復 */ -#define MUT3_ESP 0x02000000L /*!< 突然変異: テレパシー */ -#define MUT3_LIMBER 0x04000000L /*!< 突然変異: しなやかな肉体 */ -#define MUT3_ARTHRITIS 0x08000000L /*!< 突然変異: 関節の痛み */ -#define MUT3_BAD_LUCK 0x10000000L /*!< 突然変異: 黒いオーラ(不運) */ -#define MUT3_VULN_ELEM 0x20000000L /*!< 突然変異: 元素攻撃弱点 */ -#define MUT3_MOTION 0x40000000L /*!< 突然変異: 正確で力強い動作 */ -#define MUT3_GOOD_LUCK 0x80000000L /*!< 突然変異: 白いオーラ(幸運) */ - - #define MAX_MA 17 /*!< 修行僧マーシャルアーツの技数 / Monk martial arts... */ #define MA_KNEE 1 /*!< 金的効果ID */ @@ -637,7 +496,7 @@ #define REALM_DEATH 5 #define REALM_TRUMP 6 #define REALM_ARCANE 7 -#define REALM_CRAFT 8 +#define REALM_CRAFT 8 #define REALM_DAEMON 9 #define REALM_CRUSADE 10 #define MAX_MAGIC 10 @@ -719,12 +578,13 @@ /* * Indexes of the various "stats" (hard-coded by savefiles, etc). */ -#define A_STR 0 -#define A_INT 1 -#define A_WIS 2 -#define A_DEX 3 -#define A_CON 4 -#define A_CHR 5 +#define A_STR 0 +#define A_INT 1 +#define A_WIS 2 +#define A_DEX 3 +#define A_CON 4 +#define A_CHR 5 +#define A_MAX 6 /* * Player sex constants (hard-coded by save-files, arrays, etc) @@ -773,11 +633,12 @@ #define RACE_S_FAIRY 34 #define RACE_KUTAR 35 #define RACE_ANDROID 36 +#define RACE_MERFOLK 37 /* * Maximum number of player "race" types (see "table.c", etc) */ -#define MAX_RACES 37 +#define MAX_RACES 38 /* @@ -824,6 +685,7 @@ #define SEIKAKU_LUCKY 9 #define SEIKAKU_GAMAN 10 #define SEIKAKU_MUNCHKIN 11 +#define SEIKAKU_CHARGEMAN 12 /*** Screen Locations ***/ @@ -880,14 +742,14 @@ #define ROW_CURSP 15 #define COL_CURSP 0 /* "Cur SP xxxxx" */ -#define ROW_RIDING_INFO 16 -#define COL_RIDING_INFO 0 /* "xxxxxxxxxxxx" */ +#define ROW_RIDING_INFO 16 +#define COL_RIDING_INFO 0 /* "xxxxxxxxxxxx" */ #define ROW_INFO 17 #define COL_INFO 0 /* "xxxxxxxxxxxx" */ -#define ROW_MAP 0 -#define COL_MAP 12 +#define ROW_MAP 0 +#define COL_MAP 12 #define ROW_CUT 18 #define COL_CUT 0 /* */ @@ -988,15 +850,15 @@ #define FF_LAVA 40 /*!< 溶岩のある地形である */ #define FF_SHALLOW 41 /*!< 浅い地形である */ #define FF_DEEP 42 /*!< 深い地形である */ -/* #define FF_FILLED 43 */ /*!< 未使用 */ +#define FF_POISON_PUDDLE 43 /*!< 毒溜まりがある */ #define FF_HURT_ROCK 44 /*!< 岩石溶解の対象となる地形である */ /* #define FF_HURT_FIRE 45 */ /*!< 未使用 */ /* #define FF_HURT_COLD 46 */ /*!< 未使用 */ /* #define FF_HURT_ACID 47 */ /*!< 未使用 */ -/* #define FF_ICE 48 */ /*!< 未使用 */ -/* #define FF_ACID 49 */ /*!< 未使用 */ +#define FF_COLD_PUDDLE 48 /*!< 冷気溜まりがある */ +#define FF_ACID_PUDDLE 49 /*!< 酸溜まりがある */ /* #define FF_OIL 50 */ /*!< 未使用 */ -/* #define FF_XXX04 51 */ /*!< 未使用 */ +#define FF_ELEC_PUDDLE 51 /*!< 接地部が帯電している */ /* #define FF_CAN_CLIMB 52 */ /*!< 未使用 */ #define FF_CAN_FLY 53 /*!< 飛行可能な地形である */ #define FF_CAN_SWIM 54 /*!< 泳ぐことが可能な地形である */ @@ -1107,36 +969,6 @@ feat_door[(DOOR_TYPE)].jammed[randint0(feat_door[(DOOR_TYPE)].num_jammed)] : feat_none) -/* Types of normal traps */ -#define NOT_TRAP -1 -#define TRAP_TRAPDOOR 0 -#define TRAP_PIT 1 -#define TRAP_SPIKED_PIT 2 -#define TRAP_POISON_PIT 3 -#define TRAP_TY_CURSE 4 -#define TRAP_TELEPORT 5 -#define TRAP_FIRE 6 -#define TRAP_ACID 7 -#define TRAP_SLOW 8 -#define TRAP_LOSE_STR 9 -#define TRAP_LOSE_DEX 10 -#define TRAP_LOSE_CON 11 -#define TRAP_BLIND 12 -#define TRAP_CONFUSE 13 -#define TRAP_POISON 14 -#define TRAP_SLEEP 15 -#define TRAP_TRAPS 16 -#define TRAP_ALARM 17 - - -/* Types of special traps */ -#define TRAP_OPEN 18 -#define TRAP_ARMAGEDDON 19 -#define TRAP_PIRANHA 20 - - -/* Maximum locked/jammed doors */ -#define MAX_LJ_DOORS 8 /* Types of pattern tiles */ @@ -1762,8 +1594,8 @@ #define ACT_XTRA_SPEED 96 #define ACT_WRAITH 97 #define ACT_INVULN 98 -#define ACT_HELO 99 -#define ACT_HELO_SPEED 100 +#define ACT_HERO 99 +#define ACT_HERO_SPEED 100 #define ACT_RESIST_ACID 101 #define ACT_RESIST_FIRE 102 #define ACT_RESIST_COLD 103 @@ -2399,7 +2231,7 @@ #define SV_POTION_POISON 6 #define SV_POTION_BLINDNESS 7 /* xxx */ -#define SV_POTION_CONFUSION 9 +#define SV_POTION_BOOZE 9 /* xxx */ #define SV_POTION_SLEEP 11 /* xxx */ @@ -2543,27 +2375,6 @@ /* - * project()関数に用いられる、遠隔攻撃特性ビットフラグ / Bit flags for the "project()" function - */ -#define PROJECT_JUMP 0x0001 /*!< 遠隔攻撃特性: 発動者からの軌跡を持たず、指定地点に直接発生する(予め置いたトラップ、上空からの発生などのイメージ) / Jump directly to the target location (this is a hack) */ -#define PROJECT_BEAM 0x0002 /*!< 遠隔攻撃特性: ビーム範囲を持つ。 / Work as a beam weapon (affect every grid passed through) */ -#define PROJECT_THRU 0x0004 /*!< 遠隔攻撃特性: 目標地点に到達しても射程と遮蔽の限り引き延ばす。 / Continue "through" the target (used for "bolts"/"beams") */ -#define PROJECT_STOP 0x0008 /*!< 遠隔攻撃特性: 道中にプレイヤーかモンスターがいた時点で到達地点を更新して停止する(壁や森はPROJECT_DISIがない限り最初から貫通しない) */ -#define PROJECT_GRID 0x0010 /*!< 遠隔攻撃特性: 射程内の地形に影響を及ぼす / Affect each grid in the "blast area" in some way */ -#define PROJECT_ITEM 0x0020 /*!< 遠隔攻撃特性: 射程内のアイテムに影響を及ぼす / Affect each object in the "blast area" in some way */ -#define PROJECT_KILL 0x0040 /*!< 遠隔攻撃特性: 射程内のモンスターに影響を及ぼす / Affect each monster in the "blast area" in some way */ -#define PROJECT_HIDE 0x0080 /*!< 遠隔攻撃特性: / Hack -- disable "visual" feedback from projection */ -#define PROJECT_DISI 0x0100 /*!< 遠隔攻撃特性: / Disintegrate non-permanent features */ -#define PROJECT_PLAYER 0x0200 /*!< 遠隔攻撃特性: / Main target is player (used for riding player) */ -#define PROJECT_AIMED 0x0400 /*!< 遠隔攻撃特性: / Target is only player or monster, so don't affect another. Depend on PROJECT_PLAYER. (used for minimum (rad == 0) balls on riding player) */ -#define PROJECT_REFLECTABLE 0x0800 /*!< 遠隔攻撃特性: 反射可能(ボルト系魔法に利用) / Refrectable spell attacks (used for "bolts") */ -#define PROJECT_NO_HANGEKI 0x1000 /*!< 遠隔攻撃特性: / Avoid counter attacks of monsters */ -#define PROJECT_PATH 0x2000 /*!< 遠隔攻撃特性: / Only used for printing project path */ -#define PROJECT_FAST 0x4000 /*!< 遠隔攻撃特性: / Hide "visual" of flying bolts until blast */ -#define PROJECT_LOS 0x8000 /*!< 遠隔攻撃特性: / */ - - -/* * Special caster ID for project() */ #define PROJECT_WHO_UNCTRL_POWER -1 /*!< 魔法効果の自然発生要因: 名状し難い力の解放 */ @@ -2596,83 +2407,24 @@ #define CHECK_DEFAULT_Y 0x08 -/* - * Some bit-flags for the "smart" field - */ -#define SM_RES_ACID 0x00000001 /*!< モンスターの学習フラグ: プレイヤーに酸耐性あり */ -#define SM_RES_ELEC 0x00000002 /*!< モンスターの学習フラグ: プレイヤーに電撃耐性あり */ -#define SM_RES_FIRE 0x00000004 /*!< モンスターの学習フラグ: プレイヤーに火炎耐性あり */ -#define SM_RES_COLD 0x00000008 /*!< モンスターの学習フラグ: プレイヤーに冷気耐性あり */ -#define SM_RES_POIS 0x00000010 /*!< モンスターの学習フラグ: プレイヤーに毒耐性あり */ -#define SM_RES_NETH 0x00000020 /*!< モンスターの学習フラグ: プレイヤーに地獄耐性あり */ -#define SM_RES_LITE 0x00000040 /*!< モンスターの学習フラグ: プレイヤーに閃光耐性あり */ -#define SM_RES_DARK 0x00000080 /*!< モンスターの学習フラグ: プレイヤーに暗黒耐性あり */ -#define SM_RES_FEAR 0x00000100 /*!< モンスターの学習フラグ: プレイヤーに恐怖耐性あり */ -#define SM_RES_CONF 0x00000200 /*!< モンスターの学習フラグ: プレイヤーに混乱耐性あり */ -#define SM_RES_CHAOS 0x00000400 /*!< モンスターの学習フラグ: プレイヤーにカオス耐性あり */ -#define SM_RES_DISEN 0x00000800 /*!< モンスターの学習フラグ: プレイヤーに劣化耐性あり */ -#define SM_RES_BLIND 0x00001000 /*!< モンスターの学習フラグ: プレイヤーに盲目耐性あり */ -#define SM_RES_NEXUS 0x00002000 /*!< モンスターの学習フラグ: プレイヤーに因果混乱耐性あり */ -#define SM_RES_SOUND 0x00004000 /*!< モンスターの学習フラグ: プレイヤーに轟音耐性あり */ -#define SM_RES_SHARD 0x00008000 /*!< モンスターの学習フラグ: プレイヤーに破片耐性あり */ -#define SM_OPP_ACID 0x00010000 /*!< モンスターの学習フラグ: プレイヤーに二重酸耐性あり */ -#define SM_OPP_ELEC 0x00020000 /*!< モンスターの学習フラグ: プレイヤーに二重電撃耐性あり */ -#define SM_OPP_FIRE 0x00040000 /*!< モンスターの学習フラグ: プレイヤーに二重火炎耐性あり */ -#define SM_OPP_COLD 0x00080000 /*!< モンスターの学習フラグ: プレイヤーに二重冷気耐性あり */ -#define SM_OPP_POIS 0x00100000 /*!< モンスターの学習フラグ: プレイヤーに二重毒耐性あり */ -#define SM_OPP_XXX1 0x00200000 /*!< 未使用 / (unused) */ -#define SM_CLONED 0x00400000 /*!< クローンである / Cloned */ -#define SM_PET 0x00800000 /*!< ペットである / Pet */ -#define SM_IMM_ACID 0x01000000 /*!< モンスターの学習フラグ: プレイヤーに酸免疫あり */ -#define SM_IMM_ELEC 0x02000000 /*!< モンスターの学習フラグ: プレイヤーに電撃免疫あり */ -#define SM_IMM_FIRE 0x04000000 /*!< モンスターの学習フラグ: プレイヤーに火炎免疫あり */ -#define SM_IMM_COLD 0x08000000 /*!< モンスターの学習フラグ: プレイヤーに冷気免疫あり */ -#define SM_FRIENDLY 0x10000000 /*!< 友好的である / Friendly */ -#define SM_IMM_REFLECT 0x20000000 /*!< モンスターの学習フラグ: プレイヤーに反射あり */ -#define SM_IMM_FREE 0x40000000 /*!< モンスターの学習フラグ: プレイヤーに麻痺耐性あり */ -#define SM_IMM_MANA 0x80000000 /*!< モンスターの学習フラグ: プレイヤーにMPがない */ /* * get_item()関数でアイテムの選択を行うフラグ / Bit flags for the "get_item" function */ -#define USE_EQUIP 0x01 /*!< アイテム選択範囲: 装備品からの選択を許可する / Allow equip items */ -#define USE_INVEN 0x02 /*!< アイテム選択範囲: 所持品からの選択を許可する / Allow inven items */ -#define USE_FLOOR 0x04 /*!< アイテム選択範囲: 床下のアイテムからの選択を許可する / Allow floor items */ +#define USE_EQUIP 0x01 /*!< アイテム表示/選択範囲: 装備品からの選択を許可する / Allow equip items */ +#define USE_INVEN 0x02 /*!< アイテム表示/選択範囲: 所持品からの選択を許可する / Allow inven items */ +#define USE_FLOOR 0x04 /*!< アイテム表示/選択範囲: 床下のアイテムからの選択を許可する / Allow floor items */ +#define USE_FORCE 0x08 /*!< 特殊: wキーで錬気術への切り替えを許可する */ +#define IGNORE_BOTHHAND_SLOT 0x10 /*!< アイテム表示/選択範囲: 両手持ちスロットを選択に含めない */ +#define USE_FULL 0x20 /*!< アイテム表示/選択範囲: 空欄まですべて表示する*/ -/* - * p_ptr->noticeに充てるアイテム更新処理要求 / Bit flags for the "p_ptr->notice" variable - */ -#define PN_COMBINE 0x00000001L /*!< アイテム処理フラグ: アイテムの結合を要する / Combine the pack */ -#define PN_REORDER 0x00000002L /*!< アイテム処理フラグ: アイテムの並び替えを要する / Reorder the pack */ -#define PN_AUTODESTROY 0x00000004L /*!< アイテム処理フラグ: アイテムの自動破壊を要する / Auto-destroy marked item */ -/* xxx (many) */ /* * p_ptr->updateに充てるプレイヤーステータス更新処理要求 / Bit flags for the "p_ptr->update" variable */ -#define PU_BONUS 0x00000001L /*!< ステータス更新フラグ: 能力値修正 / Calculate bonuses */ -#define PU_TORCH 0x00000002L /*!< ステータス更新フラグ: 光源半径 / Calculate torch radius */ -/* xxx (many) */ -#define PU_HP 0x00000010L /*!< ステータス更新フラグ: HP / Calculate chp and mhp */ -#define PU_MANA 0x00000020L /*!< ステータス更新フラグ: MP / Calculate csp and msp */ -#define PU_SPELLS 0x00000040L /*!< ステータス更新フラグ: 魔法学習数 / Calculate spells */ -/* xxx (many) */ -/* xxx (many) */ -#define PU_UN_VIEW 0x00010000L /*!< ステータス更新フラグ: 地形の視界外化 / Forget view */ -#define PU_UN_LITE 0x00020000L /*!< ステータス更新フラグ: 明暗範囲の視界外化 / Forget lite */ -/* xxx (many) */ -#define PU_VIEW 0x00100000L /*!< ステータス更新フラグ: 視界 / Update view */ -#define PU_LITE 0x00200000L /*!< ステータス更新フラグ: 明暗範囲 / Update lite */ -#define PU_MON_LITE 0x00400000L /*!< ステータス更新フラグ: モンスターの光源範囲 / Monster illumination */ -#define PU_DELAY_VIS 0x00800000L /*!< ステータス更新フラグ: 視界の追加更新 / Mega-Hack -- Delayed visual update */ -#define PU_MONSTERS 0x01000000L /*!< ステータス更新フラグ: モンスターのステータス / Update monsters */ -#define PU_DISTANCE 0x02000000L /*!< ステータス更新フラグ: プレイヤーとモンスターの距離 / Update distances */ -/* xxx */ -#define PU_FLOW 0x10000000L /*!< ステータス更新フラグ: プレイヤーから各マスへの到達距離 / Update flow */ -/* xxx (many) */ /* @@ -2732,21 +2484,6 @@ #define PW_BORG_1 0x00004000L /*!<サブウィンドウ描画フラグ: ボーグメッセージ / Display borg messages */ #define PW_BORG_2 0x00008000L /*!<サブウィンドウ描画フラグ: ボーグステータス / Display borg status */ -/* - * Bit flags for the place_monster_???() (etc) - */ -#define PM_ALLOW_SLEEP 0x00000001 /*!< モンスター生成フラグ: 眠っている状態で生成されても良い */ -#define PM_ALLOW_GROUP 0x00000002 /*!< モンスター生成フラグ: 集団生成されても良い */ -#define PM_FORCE_FRIENDLY 0x00000004 /*!< モンスター生成フラグ: 必ず友好的に生成される */ -#define PM_FORCE_PET 0x00000008 /*!< モンスター生成フラグ: 必ずペットとして生成される */ -#define PM_NO_KAGE 0x00000010 /*!< モンスター生成フラグ: 必ずあやしい影としては生成されない */ -#define PM_NO_PET 0x00000020 /*!< モンスター生成フラグ: 必ずペットとして生成されない */ -#define PM_ALLOW_UNIQUE 0x00000040 /*!< モンスター生成フラグ: ユニークの選択生成を許可する */ -#define PM_IGNORE_TERRAIN 0x00000080 /*!< モンスター生成フラグ: 侵入可能地形を考慮せずに生成する */ -#define PM_HASTE 0x00000100 /*!< モンスター生成フラグ: 加速状態で生成する */ -#define PM_KAGE 0x00000200 /*!< モンスター生成フラグ: 必ずあやしい影として生成する */ -#define PM_MULTIPLY 0x00000400 /*!< モンスター生成フラグ: 増殖処理時として生成する */ - /* Bit flags for monster_desc() */ #define MD_OBJECTIVE 0x00000001 /* Objective (or Reflexive) */ @@ -3099,7 +2836,7 @@ * OM_NOMSG --- temporary flag to suppress messages which were * already printed in autopick_pickup_items(). */ -#define OM_FOUND 0x01 /* original boolean flag */ +#define OM_FOUND 0x01 /*!< アイテムを一度でも視界に収めたことがあるか */ #define OM_NOMSG 0x02 /* temporary flag to suppress messages */ #define OM_NO_QUERY 0x04 /* Query for auto-pick was already answered as 'No' */ #define OM_AUTODESTROY 0x08 /* Destroy later to avoid illegal inventry shift */ @@ -3110,7 +2847,7 @@ * Special Monster Flags (all temporary) */ #define MFLAG_VIEW 0x01 /* Monster is in line of sight */ -#define MFLAG_TEMP 0x02 /* Monster is marked for project_hack() */ +#define MFLAG_TEMP 0x02 /* Monster is marked for project_all_los() */ #define MFLAG_XXX2 0x04 /* (unused) */ #define MFLAG_XXX3 0x08 /* (unused) */ #define MFLAG_BORN 0x10 /* Monster is still being born */ @@ -4660,6 +4397,8 @@ extern int PlayerUID; #define GINOU_SUDE 0 #define GINOU_NITOURYU 1 #define GINOU_RIDING 2 +#define GINOU_SHIELD 3 +#define GINOU_TEMPMAX 4 #define GINOU_MAX 10 /* Proficiency level */ @@ -5117,6 +4856,7 @@ extern int PlayerUID; #define MON_WYRM_SPACE 1064 #define MON_JIZOTAKO 1065 #define MON_TANUKI 1067 +#define MON_ALIEN_JURAL 1082 #define MON_HATOPOPPO 1083 #define MON_KOGAN 1096 @@ -5256,8 +4996,8 @@ extern int PlayerUID; #define DF1_CAVE 0x00000400L #define DF1_CAVERN 0x00000800L #define DF1_ARCADE 0x00001000L -#define DF1_XXX13 0x00002000L -#define DF1_XXX14 0x00004000L +#define DF1_LAKE_ACID 0x00002000L +#define DF1_LAKE_POISONOUS 0x00004000L #define DF1_XXX15 0x00008000L #define DF1_FORGET 0x00010000L #define DF1_LAKE_WATER 0x00020000L @@ -5273,10 +5013,10 @@ extern int PlayerUID; #define DF1_NO_MELEE 0x08000000L #define DF1_CHAMELEON 0x10000000L #define DF1_DARKNESS 0x20000000L -#define DF1_XXX30 0x40000000L -#define DF1_XXX31 0x80000000L +#define DF1_ACID_RIVER 0x40000000L +#define DF1_POISONOUS_RIVER 0x80000000L -#define DF1_LAKE_MASK (DF1_LAKE_WATER | DF1_LAKE_LAVA | DF1_LAKE_RUBBLE | DF1_LAKE_TREE) +#define DF1_LAKE_MASK (DF1_LAKE_WATER | DF1_LAKE_LAVA | DF1_LAKE_RUBBLE | DF1_LAKE_TREE | DF1_LAKE_POISONOUS | DF1_LAKE_ACID) #define DUNGEON_ANGBAND 1 #define DUNGEON_GALGALS 2 @@ -5303,21 +5043,6 @@ extern int PlayerUID; /* - * Flags for change floor mode - */ -#define CFM_UP 0x0001 /* Move up */ -#define CFM_DOWN 0x0002 /* Move down */ -#define CFM_LONG_STAIRS 0x0004 /* Randomly occurred long stairs/shaft */ -#define CFM_XXX 0x0008 /* XXX */ -#define CFM_SHAFT 0x0010 /* Shaft */ -#define CFM_RAND_PLACE 0x0020 /* Arrive at random grid */ -#define CFM_RAND_CONNECT 0x0040 /* Connect with random stairs */ -#define CFM_SAVE_FLOORS 0x0080 /* Save floors */ -#define CFM_NO_RETURN 0x0100 /* Flee from random quest etc... */ -#define CFM_FIRST_FLOOR 0x0200 /* Create exit from the dungeon */ - - -/* * Flags for save/load temporal saved floor file */ #define SLF_SECOND 0x0001 /* Called from another save/load function */ @@ -5416,6 +5141,9 @@ extern int PlayerUID; #define P_PTR_KI (p_ptr->magic_num1[0]) +#define IS_WIZARD_CLASS() \ + (p_ptr->pclass == CLASS_MAGE || p_ptr->pclass == CLASS_HIGH_MAGE || p_ptr->pclass == CLASS_SORCERER || p_ptr->pclass == CLASS_MAGIC_EATER || p_ptr->pclass == CLASS_BLUE_MAGE) + /* Multishadow effects is determined by turn */ #define CHECK_MULTISHADOW() (p_ptr->multishadow && (turn & 1))