X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2Fh-type.h;h=4d4d6d6d682928421b0e7447774a268253a7ad12;hb=d480af68ee076f76aebb7f801dec34ee07bae7a9;hp=a6bcc99f6be0d4214723335a363cf4dc2b23b32d;hpb=e716051f1abee030f8b06dc5adf5247e6402b608;p=hengband%2Fhengband.git diff --git a/src/h-type.h b/src/h-type.h index a6bcc99f6..4d4d6d6d6 100644 --- a/src/h-type.h +++ b/src/h-type.h @@ -1,8 +1,7 @@ /*! * @file h-type.h - * @brief ゲーム中に用いる変数型定義 / - * Basic "types". - * @date 2014/08/17 + * @brief ゲーム中に用いる変数型定義 / Basic "types". + * @date 2017/12/03 * @author * 不明(変愚蛮怒スタッフ?) * @details @@ -43,7 +42,7 @@ /*** Special 4 letter names for some standard types ***/ typedef void *vptr; /*!< void型ポインタ定義 / A standard pointer (to "void" because ANSI C says so) */ -typedef const char *cptr; /*!< 文字列定数用ポインタ定義 / A simple pointer (to unmodifiable strings) */ +typedef const char *concptr; /*!< 文字列定数用ポインタ定義 / A simple pointer (to unmodifiable strings) */ typedef double real; /*!< doubleをreal型として定義 / Since float's are silly, hard code real numbers as doubles */ @@ -104,17 +103,158 @@ typedef unsigned long u32b; #endif -typedef s16b idx; /*!< ゲーム中のID型を定義 */ -typedef byte position; /*!< ゲーム中の座標型を定義 */ -typedef s16b hit_point; /*!< ゲーム中のHP/ダメージ型を定義 */ -typedef s16b hit_prob; /*!< ゲーム中の命中修正値を定義 */ -typedef s16b base_status; /*!< ゲーム中の基礎能力値型を定義 */ -typedef byte item_number; /*!< ゲーム中のアイテム数型を定義 */ -typedef s16b action_energy; /*!< ゲーム中の行動エネルギー型を定義 */ -typedef s16b armour_class; /*!< ゲーム中の行動アーマークラス型を定義 */ -typedef s16b time_effect; /*!< ゲーム中の時限期間の型を定義 */ -typedef byte character_idx; /*!< ゲーム中のキャラクター特性各種IDの型を定義 */ -typedef byte discount_rate; /*!< ゲーム中の値引き率の型を定義 */ +typedef s16b IDX; /*!< ゲーム中のID型を定義 */ + +typedef s16b TOWN_IDX; /*!< ゲーム中の町ID型を定義 */ +typedef s16b FEAT_IDX; /*!< ゲーム中の地形ID型を定義 */ +typedef s16b FLOOR_IDX; /*!< ゲーム中のフロアID型を定義 */ + +typedef byte SEX_IDX; /*!< ゲーム中のプレイヤー性別ID型を定義 */ +typedef s16b RACE_IDX; /*!< ゲーム中のプレイヤー種族ID型を定義 */ +typedef s16b CLASS_IDX; /*!< ゲーム中のプレイヤー職業ID型を定義 */ +typedef s16b CHARACTER_IDX; /*!< ゲーム中のプレイヤー性格ID型を定義 */ +typedef s16b MIMIC_RACE_IDX; /*!< ゲーム中のプレイヤー変身種族ID型を定義 */ +typedef s16b PATRON_IDX; /*!< ゲーム中のプレイヤーパトロンID型を定義 */ +typedef s32b ACTION_IDX; /*!< プレイヤーが現在取っている常時行動のID定義 */ +typedef s16b BACT_IDX; /*!< 町の施設処理のID定義 */ +typedef s16b BACT_RESTRICT_IDX; /*!< 町の施設処理の規制処理ID定義 */ + +typedef s16b MONRACE_IDX; /*!< ゲーム中のモンスター種族ID型を定義 */ +typedef s16b MONSTER_IDX; /*!< ゲーム中のモンスター個体ID型を定義 */ +typedef s16b DUNGEON_IDX; /*!< ゲーム中のダンジョンID型を定義 */ +typedef s16b REALM_IDX; /*!< ゲーム中の魔法領域ID型を定義 */ +typedef s16b ARTIFACT_IDX; /*!< ゲーム中のアーティファクトID型を定義 */ +typedef s16b EGO_IDX; /*!< アイテムエゴのID型を定義 */ +typedef s16b ACTIVATION_IDX; /*!< アイテムの発動効果ID型を定義 */ +typedef s16b VIRTUES_IDX; /*!< ゲーム中の徳ID型を定義 */ +typedef s16b QUEST_IDX; /*!< ゲーム中のクエストID型を定義 */ +typedef byte ROOM_IDX; /*!< 部屋のID型を定義 */ + +typedef s16b INVENTORY_IDX; /*!< ゲーム中の所持品ID型を定義 */ +typedef s16b OBJECT_IDX; /*!< ゲーム中のアイテムID型を定義 */ +typedef s32b ESSENCE_IDX; /*!< 鍛冶エッセンスのID型 */ +typedef s16b KIND_OBJECT_IDX; /*!< ゲーム中のベースアイテムID型を定義 */ +typedef s16b VAULT_IDX; /*!< 固定部屋のID型を定義 */ + +typedef s32b POSITION; /*!< ゲーム中の座標型を定義 */ +typedef s16b POSITION_IDX; /*!< ゲーム中の座標リストID型 */ + +typedef s32b ALIGNMENT; /*!< 善悪属性の型定義 */ +typedef byte FEAT_SUBTYPE; /*!< 地形情報の副値 (トラップ種別/パターン種別/店舗種別)*/ + +typedef char GAME_TEXT; /*!< ゲーム中のテキスト型定義 */ + + +/*! + * @var typedef s32b HIT_POINT + * @brief HPとその増減量の型定義 + * @details + * HIT_POINTはプレイヤー及びモンスターのHPの各値とその増減量の型である。 + */ +typedef s32b HIT_POINT; + +/*! + * @var typedef s32b MANA_POINT + * @brief MPとその増減量の型定義 + * @details + * MANA_POINTはプレイヤーのMPの各地とその増減量の型である。 + */ +typedef s32b MANA_POINT; /*!< ゲーム中のMP型を定義 */ + +typedef int ARTIFACT_BIAS_IDX; /*!< ランダムアーティファクトのバイアス型 */ + +typedef s16b HIT_PROB; /*!< ゲーム中の装備命中修正値を定義 */ +typedef int HIT_RELIABILITY; /*!< 最終算出命中力を定義 */ +typedef s16b BASE_STATUS; /*!< ゲーム中の基礎能力値型を定義 */ + +typedef s32b MONSTER_NUMBER; /*!< ゲーム中のモンスター数型を定義 */ +typedef s32b ITEM_NUMBER; /*!< ゲーム中のアイテム数型を定義 */ + +typedef s16b ACTION_ENERGY; /*!< ゲーム中の行動エネルギー型を定義 */ +typedef s16b ARMOUR_CLASS; /*!< ゲーム中の行動アーマークラス型を定義 */ +typedef s16b TIME_EFFECT; /*!< ゲーム中の時限期間の型を定義 */ +typedef byte DISCOUNT_RATE; /*!< ゲーム中の値引き率の型を定義 */ +typedef s16b SPEED; /*!< ゲーム中の加速値の型定義 */ + +/*! + * @var typedef s16b ENEGRY + * @brief 行動エネルギーの型定義 + * @details + * ENERGYはプレイヤーとモンスターの行動順を定める行動エネルギーを示す型定義である。 + */ +typedef s16b ENERGY; /*!< ゲーム中の行動エネルギーの型定義 */ + + +typedef s16b SLEEP_DEGREE; /*!< モンスターの睡眠度の型定義 */ + +typedef s16b PLAYER_LEVEL; /*!< ゲーム中のプレイヤーレベルの型を定義 */ +typedef int DIRECTION; /*!< ゲーム中の方角の型定義 */ +typedef s32b EXP; /*!< ゲーム中の主経験値の型定義 */ +typedef s16b SUB_EXP; /*!< ゲーム中の副経験値の型定義 */ + +typedef s32b OBJECT_TYPE_VALUE; /*!< ゲーム中のアイテム主分類の型定義 */ +typedef s32b OBJECT_SUBTYPE_VALUE; /*!< ゲーム中のアイテム副分類の型定義 */ +typedef s16b PARAMETER_VALUE; /*!< ゲーム中のアイテム能力値の型定義 */ +typedef s32b WEIGHT; /*!< ゲーム中の重量の型定義(ポンド) */ + +typedef int DICE_NUMBER; /*!< ゲーム中のダイス数の型定義 */ +typedef int DICE_SID; /*!< ゲーム中のダイス面の型定義 */ +typedef s32b PRICE; /*!< ゲーム中の金額価値の型定義 */ +typedef s16b FEED; /*!< ゲーム中の滋養度の型定義 */ + +typedef u32b STR_OFFSET; /*!< テキストオフセットの型定義 */ + +typedef int POWER; /*!< 魔法の効力定義*/ + +typedef s32b DEPTH; /*!< ゲーム中の階層レベルの型定義 */ +typedef byte RARITY; /*!< ゲーム中の希少度の型定義 */ + +typedef s32b GAME_TURN; /*!< ゲーム中のターンの型定義 */ +typedef u32b REAL_TIME; /*!< 実時刻の型定義 */ + +typedef s32b PERCENTAGE; /*!< ゲーム中のパーセント表記の型定義(/100倍) */ +typedef s16b MULTIPLY; /*!< ゲーム中の倍率の型定義(/10倍) */ + +typedef u32b BIT_FLAGS; /*!< 32ビットのフラグ配列の型定義 */ +typedef u16b BIT_FLAGS16; /*!< 16ビットのフラグ配列の型定義 */ +typedef byte BIT_FLAGS8; /*!< 8ビットのフラグ配列の型定義 */ + +typedef s16b XTRA16; /*!< 汎用変数16ビットの型定義 */ +typedef byte XTRA8; /*!< 汎用変数8ビットの型定義 */ + +typedef s16b COMMAND_CODE; /*!< コマンド内容の型定義 */ +typedef s16b COMMAND_ARG; /*!< コマンド引数の型定義 */ +typedef s16b COMMAND_NUM; /*!< コマンド数の型定義 */ + +typedef int TERM_LEN; /*!< コンソール表示座標の型定義 */ +typedef byte TERM_COLOR; /*!< テキスト表示色の型定義 */ +typedef char SYMBOL_CODE; /*!< キャラの文字の型定義 */ + +typedef s32b MAGIC_NUM1; /*!< プレイヤーの汎用魔法情報配列1の型定義*/ +typedef byte MAGIC_NUM2; /*!< プレイヤーの汎用魔法情報配列2の型定義*/ + +typedef s32b SPELL_IDX; /*!< 各魔法領域/職業能力ごとの呪文ID型定義 */ +typedef s16b PROB; /*!< 確率の重みの型定義 */ +typedef byte FEAT_POWER; /*!< 地形強度の型定義 */ + +typedef int QUANTITY; /*!< インターフェース上の指定個数 */ + +typedef byte BLOW_METHOD; /*!< モンスターの打撃手段ID */ +typedef byte BLOW_EFFECT; /*!< モンスターの打撃効果ID */ + +typedef int EFFECT_ID; /*!< 効果属性ID */ + +typedef s16b QUEST_TYPE; /*!< クエストの種別ID */ +typedef s16b QUEST_STATUS; /*!< クエストの状態ID */ + +typedef s16b ACTION_SKILL_POWER; /*!< 行動技能値 */ + +typedef int PET_COMMAND_IDX; /*!< ペットへの指示ID */ +typedef byte FF_FLAGS_IDX; /*!< 地形特性ID */ + +typedef s16b FEAT_PRIORITY; /*!< 地形の縮小表示優先順位 */ + +typedef BIT_FLAGS SPOP_FLAGS; /*1< スペル用オプション */ /*** Pointers to all the basic types defined above ***/ @@ -132,7 +272,7 @@ typedef u16b *u16b_ptr; typedef s32b *s32b_ptr; typedef u32b *u32b_ptr; typedef vptr *vptr_ptr; -typedef cptr *cptr_ptr; +typedef concptr *cptr_ptr;