OSDN Git Service

ede12ad409e7286b1b7c614cc3ca5803c7d9f574
[hengband/hengband.git] / src / world.h
1 #pragma once
2 #include "bldg.h"
3
4 typedef struct {
5
6         POSITION max_wild_x; /*!< Maximum size of the wilderness */
7         POSITION max_wild_y; /*!< Maximum size of the wilderness */
8         GAME_TURN game_turn;                    /*!< 画面表示上のゲーム時間基準となるターン / Current game turn */
9         GAME_TURN game_turn_limit;              /*!< game_turnの最大値 / Limit of game_turn */
10         GAME_TURN dungeon_turn;                 /*!< NASTY生成の計算に関わる内部ターン値 / Game current_world_ptr->game_turn in dungeon */
11         GAME_TURN dungeon_turn_limit;   /*!< dungeon_turnの最大値 / Limit of game_turn in dungeon */
12         GAME_TURN arena_start_turn;             /*!< 闘技場賭博の開始ターン値 */
13         u32b start_time;
14
15         MONSTER_IDX timewalk_m_idx;     /*!< 現在時間停止を行っているモンスターのID */
16
17         MONRACE_IDX bounty_r_idx[MAX_KUBI];
18
19         u32b play_time; /*!< 実プレイ時間 */
20
21         u32b seed_flavor;               /* Hack -- consistent object colors */
22         u32b seed_town;                 /* Hack -- consistent town layout */
23
24         bool is_loading_now;    /*!< ロード処理中フラグ...ロード直後にcalc_bonus()時の徳変化、及びsanity_blast(p_ptr, )による異常を抑止する */
25
26         /*
27          * Savefile version
28          */
29         byte h_ver_major; /* Savefile version for Hengband 1.1.1 and later */
30         byte h_ver_minor;
31         byte h_ver_patch;
32         byte h_ver_extra;
33
34         byte sf_extra;          /* Savefile's encoding key */
35
36         byte z_major;           /* Savefile version for Hengband */
37         byte z_minor;
38         byte z_patch;
39
40         /*
41          * Savefile information
42          */
43         u32b sf_system;                 /* Operating system info */
44         u32b sf_when;                   /* Time when savefile created */
45         u16b sf_lives;                  /* Number of past "lives" with this file */
46         u16b sf_saves;                  /* Number of "saves" during this life */
47
48         bool character_generated;       /* The character exists */
49         bool character_dungeon;         /* The character has a dungeon */
50         bool character_loaded;          /* The character was loaded from a savefile */
51         bool character_saved;           /* The character was just saved to a savefile */
52
53         bool character_icky;            /* The game is in an icky full screen mode */
54         bool character_xtra;            /* The game is in an icky startup mode */
55
56         bool creating_savefile;         /* New savefile is currently created */
57
58         bool wizard;              /* This world under wizard mode */
59
60         OBJECT_IDX max_o_idx; /*!< Maximum number of objects in the level */
61         MONSTER_IDX max_m_idx; /*!< Maximum number of monsters in the level */
62
63         DUNGEON_IDX max_d_idx;
64
65 } world_type;
66
67 extern bool is_daytime(void);
68 extern void extract_day_hour_min(int *day, int *hour, int *min);
69 extern world_type *current_world_ptr;