3 * @brief
\83Q
\81[
\83\80\90¢
\8aE
\82Ì
\83v
\83\8d\83g
\83^
\83C
\83v
\90é
\8c¾
6 * 2013-2014 Sikabane Works.
12 #include "Deeangband.h"
15 #include "Authority.h"
19 #include "CreatureTrait.h"
23 #include "FixedArtifact.h"
26 #include "ItemTrait.h"
32 #include "StartingClass.h"
40 BOOST_CLASS_VERSION(GameWorld, 1);
47 * @brief
\83Q
\81[
\83\80\90¢
\8aE
\82Ì
\83N
\83\89\83X
53 //
\90Ã
\93I
\83f
\81[
\83^
\83\8a\83X
\83g
54 std::map<TAG, boost::shared_ptr<Ability>> abilityList; /*!<
\91S
\94
\93®
\8bZ
\94\
\83\8a\83X
\83g*/
55 std::map<TAG, boost::shared_ptr<Authority>> authorityList; /*!<
\91S
\8c \94\
\83\8a\83X
\83g*/
56 std::map<TAG, boost::shared_ptr<Building>> buildingList; /*!<
\91S
\8e{
\90Ý
\83\8a\83X
\83g*/
57 std::map<TAG, boost::shared_ptr<Camp>> campList; /*!<
\91S
\90w
\89c
\83\8a\83X
\83g*/
58 std::map<TAG, boost::shared_ptr<CreatureTrait>> creatureTraitList; /*!<
\91S
\83N
\83\8a\81[
\83`
\83\83\81[
\93Á
\90«
\83\8a\83X
\83g*/
59 std::map<TAG, boost::shared_ptr<Dungeon>> dungeonList; /*!<
\91S
\83_
\83\93\83W
\83\87\83\93\83\8a\83X
\83g*/
60 std::map<TAG, boost::shared_ptr<Effect>> effectList; /*!<
\91S
\8cø
\89Ê
\91®
\90«
\83\8a\83X
\83g*/
61 std::map<TAG, boost::shared_ptr<Feature>> featureList; /*!<
\91S
\92n
\8c`
\83\8a\83X
\83g*/
62 std::map<TAG, boost::shared_ptr<FixedArtifact>> fixedArtifactList; /*!<
\91S
\8cÅ
\92è
\83A
\81[
\83e
\83B
\83t
\83@
\83N
\83g
\83\8a\83X
\83g*/
63 std::map<TAG, boost::shared_ptr<ItemBase>> itemBaseList; /*!<
\91S
\83A
\83C
\83e
\83\80\83x
\81[
\83X
\83\8a\83X
\83g*/
64 std::map<TAG, boost::shared_ptr<ItemEgo>> itemEgoList; /*!<
\91S
\83A
\83C
\83e
\83\80\83G
\83S
\83\8a\83X
\83g*/
65 std::map<TAG, boost::shared_ptr<ItemTrait>> itemTraitList; /*!<
\91S
\83A
\83C
\83e
\83\80\93Á
\90«
\83\8a\83X
\83g*/
66 std::map<TAG, boost::shared_ptr<Karma>> karmaList; /*!<
\91S
\83J
\83\8b\83}
\83\8a\83X
\83g*/
67 std::map<TAG, boost::shared_ptr<Quest>> questList; /*!<
\91S
\83N
\83G
\83X
\83g
\93Á
\90«
\83\8a\83X
\83g*/
68 std::map<TAG, boost::shared_ptr<Skill>> skillList; /*!<
\91S
\83X
\83L
\83\8b\83\8a\83X
\83g*/
69 std::map<TAG, boost::shared_ptr<Species>> speciesList; /*!<
\91S
\83N
\83\8a\81[
\83`
\83\83\81[
\8eí
\95Ê
\83\8a\83X
\83g*/
70 std::map<TAG, boost::shared_ptr<StartingClass>> startingClassList; /*!<
\91S
\8fo
\8e©
\83\8a\83X
\83g*/
71 std::map<TAG, boost::shared_ptr<Race>> raceList; /*!<
\91S
\8eí
\91°
\83\8a\83X
\83g*/
72 std::map<TAG, boost::shared_ptr<TrapBase>> trapBaseList; /*!<
\91S
\83g
\83\89\83b
\83v
\83x
\81[
\83X
\8eí
\95Ê
\83\8a\83X
\83g*/
74 //
\93®
\93I
\83f
\81[
\83^
\83\8a\83X
\83g
75 std::map<ID, boost::shared_ptr<Item>> itemList; /*!<
\91S
\83A
\83C
\83e
\83\80\83\8a\83X
\83g*/
76 std::map<ID, boost::shared_ptr<Creature>> creatureList; /*!<
\91S
\83N
\83\8a\81[
\83`
\83\83\81[
\83\8a\83X
\83g*/
77 std::map<ID, boost::shared_ptr<Floor>> floorList; /*!<
\91S
\83t
\83\8d\83A
\83\8a\83X
\83g*/
78 std::map<ID, boost::shared_ptr<Trap>> trapList; /*!<
\91S
\83g
\83\89\83b
\83v
\83\8a\83X
\83g*/
80 Creature *playerPtr; //!<
\83v
\83\8c\83C
\83\84\81[
\83N
\83\8a\81[
\83`
\83\83\81[
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
81 GAME_TIME gameTime; //!<
\83Q
\81[
\83\80\8e\9e\8aÔ
83 friend class boost::serialization::access;
86 * @brief
\8c \94\
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
87 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
88 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
90 bool GameWorld::xmlSaveAuthority(void);
93 * @brief
\8e{
\90Ý
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
94 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
95 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
97 bool GameWorld::xmlSaveBuilding(void);
100 * @brief
\90w
\89c
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
101 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
102 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
104 bool GameWorld::xmlSaveCamp(void);
107 * @brief
\83N
\83\8a\81[
\83`
\83\83\81[
\93Á
\90«
\82Ì
\83Z
\81[
\83u
108 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
109 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
111 bool GameWorld::xmlSaveCreatureTrait(void);
114 * @brief
\83_
\83\93\83W
\83\87\83\93\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
115 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
116 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
118 bool GameWorld::xmlSaveDungeon(void);
121 * @brief
\8cø
\89Ê
\91®
\90«
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
122 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
123 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
125 bool GameWorld::xmlSaveEffect(void);
128 * @brief
\92n
\8c`
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
129 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
130 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
132 bool GameWorld::xmlSaveFeature(void);
135 * @brief
\8cÅ
\92è
\83A
\81[
\83e
\83B
\83t
\83@
\83N
\83g
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
136 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
137 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
139 bool GameWorld::xmlSaveFixedArtifact(void);
142 * @brief
\83x
\81[
\83X
\83A
\83C
\83e
\83\80\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
143 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
144 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
146 bool GameWorld::xmlSaveItemBase(void);
149 * @brief
\83A
\83C
\83e
\83\80\83G
\83S
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
150 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
151 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
153 bool GameWorld::xmlSaveItemEgo(void);
156 * @brief
\83A
\83C
\83e
\83\80\93Á
\90«
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
157 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
158 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
160 bool GameWorld::xmlSaveItemTrait(void);
163 * @brief
\83J
\83\8b\83}
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
164 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
165 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
167 bool GameWorld::xmlSaveKarma(void);
170 * @brief
\83N
\83G
\83X
\83g
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
171 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
172 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
174 bool GameWorld::xmlSaveQuest(void);
177 * @brief
\83N
\83G
\83X
\83g
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
178 * @return
\8f\91\82«
\8d\9e\82Ý
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
179 * @todo
\8f\91\82«
\8d\9e\82Ý
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
181 bool GameWorld::xmlSaveRace(void);
184 * @brief
\83X
\83L
\83\8b\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
185 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
186 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
188 bool GameWorld::xmlSaveSkill(void);
191 * @brief
\83N
\83\8a\81[
\83`
\83\83\81[
\8eí
\95Ê
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
192 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
193 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
195 bool GameWorld::xmlSaveSpecie(void);
198 * @brief
\8fo
\8e©
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
199 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
200 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
202 bool GameWorld::xmlSaveStartingClass(void);
205 * @brief
\83x
\81[
\83X
\83g
\83\89\83b
\83v
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
206 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
207 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
209 bool GameWorld::xmlSaveTrapBase(void);
211 bool GameWorld::xmlLoadAuthority(void);
212 bool GameWorld::xmlLoadBuilding(void);
213 bool GameWorld::xmlLoadCamp(void);
214 bool GameWorld::xmlLoadCreatureTrait(void);
215 bool GameWorld::xmlLoadDungeon(void);
216 bool GameWorld::xmlLoadEffect(void);
217 bool GameWorld::xmlLoadFeature(void);
218 bool GameWorld::xmlLoadFixedArtifact(void);
219 bool GameWorld::xmlLoadItemBase(void);
220 bool GameWorld::xmlLoadItemEgo(void);
221 bool GameWorld::xmlLoadItemTrait(void);
222 bool GameWorld::xmlLoadKarma(void);
223 bool GameWorld::xmlLoadQuest(void);
224 bool GameWorld::xmlLoadRace(void);
225 bool GameWorld::xmlLoadSkill(void);
226 bool GameWorld::xmlLoadSpecie(void);
227 bool GameWorld::xmlLoadStartingClass(void);
228 bool GameWorld::xmlLoadTrapBase(void);
231 * @brief
\83N
\83\89\83X
\82Ì
\83V
\83\8a\83A
\83\89\83C
\83Y
\82ð
\90Ý
\92è
\82·
\82é
232 * @param archive
\83A
\81[
\83J
\83C
\83u
\89»
\82·
\82é
\83N
\83\89\83X
\82Ì
\83A
\83h
\83\8c\83X
233 * @param version
\83t
\83@
\83C
\83\8b\83o
\81[
\83W
\83\87\83\93
234 * @return XMLSerialize
\83e
\83\93\83v
\83\8c\81[
\83g
236 template<class Archive> void serialize(Archive &archive, const unsigned int version)
240 archive & boost::serialization::make_nvp("Authorities", authorityList);
241 archive & boost::serialization::make_nvp("Buildings", buildingList);
242 archive & boost::serialization::make_nvp("Camps", campList);
243 archive & boost::serialization::make_nvp("Dungeons", dungeonList);
244 archive & boost::serialization::make_nvp("Effects", effectList);
245 archive & boost::serialization::make_nvp("Features", featureList);
246 archive & boost::serialization::make_nvp("FixedArtifacts", fixedArtifactList);
247 archive & boost::serialization::make_nvp("ItemBases", itemBaseList);
248 archive & boost::serialization::make_nvp("ItemEgos", itemEgoList);
249 archive & boost::serialization::make_nvp("ItemTraits", itemTraitList);
250 archive & boost::serialization::make_nvp("Karmas", karmaList);
251 archive & boost::serialization::make_nvp("Quests", questList);
252 archive & boost::serialization::make_nvp("Skills", skillList);
253 archive & boost::serialization::make_nvp("Species", speciesList);
254 archive & boost::serialization::make_nvp("TrapBases", trapBaseList);
256 archive & boost::serialization::make_nvp("Authorities", authorityList);
257 archive & boost::serialization::make_nvp("Creatures", creatureList);
258 archive & boost::serialization::make_nvp("Items", itemList);
259 archive & boost::serialization::make_nvp("Floors", floorList);
260 archive & boost::serialization::make_nvp("Traps", trapList);
267 * @brief GameWorld
\83N
\83\89\83X
\82Ì
\83R
\83\93\83X
\83g
\83\89\83N
\83^
268 * @param gSurface
\83Q
\81[
\83\80\82Ì
\83C
\83\93\83^
\81[
\83t
\83F
\83C
\83X
\82Æ
\82È
\82é GameSurface
\8eQ
\8fÆ
270 GameWorld::GameWorld(void);
273 * @brief GameWorld
\83N
\83\89\83X
\82Ì
\83f
\83X
\83g
\83\89\83N
\83^
275 GameWorld::~GameWorld(void);
278 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\8c \94\
\82ð
\95Ô
\82·
279 * @param tag
\8c \94\
\82Ì
\83^
\83O
280 * @return
\8c \94\
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
282 Authority *GameWorld::GetAuthority(TAG tag);
285 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83N
\83\8a\81[
\83`
\83\83\81[
\93Á
\90«
\82ð
\95Ô
\82·
286 * @param tag
\83N
\83\8a\81[
\83`
\83\83\81[
\93Á
\90«
\82Ì
\83^
\83O
287 * @return
\83N
\83\8a\81[
\83`
\83\83\81[
\93Á
\90«
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
289 CreatureTrait *GameWorld::GetCreatureTrait(TAG tag);
292 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\8cø
\89Ê
\91®
\90«
\82ð
\95Ô
\82·
293 * @param tag
\8cø
\89Ê
\91®
\90«
\82Ì
\83^
\83O
294 * @return
\8cø
\89Ê
\91®
\90«
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
296 Effect *GameWorld::GetEffect(TAG tag);
299 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\8cÅ
\92è
\83A
\81[
\83e
\83B
\83t
\83@
\83N
\83g
\82ð
\95Ô
\82·
300 * @param tag
\8cø
\89Ê
\91®
\90«
\82Ì
\83^
\83O
301 * @return
\8cÅ
\92è
\83A
\81[
\83e
\83B
\83t
\83@
\83N
\83g
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
303 FixedArtifact *GameWorld::GetFixedArtifact(TAG tag);
306 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\92n
\8c`
\82ð
\95Ô
\82·
307 * @param tag
\92n
\8c`
\82Ì
\83^
\83O
308 * @return
\92n
\8c`
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
310 Feature *GameWorld::GetFeature(TAG tag);
313 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83x
\81[
\83X
\83A
\83C
\83e
\83\80\82ð
\95Ô
\82·
314 * @param tag
\83x
\81[
\83X
\83A
\83C
\83e
\83\80\82Ì
\83^
\83O
315 * @return
\83x
\81[
\83X
\83A
\83C
\83e
\83\80\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
317 ItemBase *GameWorld::GetItemBase(TAG tag);
320 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83A
\83C
\83e
\83\80\83G
\83S
\82ð
\95Ô
\82·
321 * @param tag
\83A
\83C
\83e
\83\80\83G
\83S
\82Ì
\83^
\83O
322 * @return
\83A
\83C
\83e
\83\80\83G
\83S
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
324 ItemEgo *GameWorld::GetItemEgo(TAG tag);
327 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83A
\83C
\83e
\83\80\93Á
\90«
\82ð
\95Ô
\82·
328 * @param tag
\83A
\83C
\83e
\83\80\93Á
\90«
\82Ì
\83^
\83O
329 * @return
\83A
\83C
\83e
\83\80\93Á
\90«
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
331 ItemTrait *GameWorld::GetItemTrait(TAG tag);
334 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83J
\83\8b\83}
\82ð
\95Ô
\82·
335 * @param tag
\83J
\83\8b\83}
\82Ì
\83^
\83O
336 * @return
\83J
\83\8b\83}
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
338 Karma *GameWorld::GetKarma(TAG tag);
341 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83X
\83L
\83\8b\82ð
\95Ô
\82·
342 * @param tag
\83X
\83L
\83\8b\82Ì
\83^
\83O
343 * @return
\83X
\83L
\83\8b\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
345 Skill *GameWorld::GetSkill(TAG tag);
348 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83X
\83L
\83\8b\82ð
\95Ô
\82·
349 * @param tag
\83X
\83L
\83\8b\82Ì
\83^
\83O
350 * @return
\83X
\83L
\83\8b\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
352 Species *GameWorld::GetSpecies(TAG tag);
355 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83g
\83\89\83b
\83v
\8eí
\95Ê
\82ð
\95Ô
\82·
356 * @param tag
\83g
\83\89\83b
\83v
\8eí
\95Ê
\82Ì
\83^
\83O
357 * @return
\83g
\83\89\83b
\83v
\8eí
\95Ê
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
359 TrapBase *GameWorld::GetTrapBase(TAG tag);
362 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\8e{
\90Ý
\82ð
\95Ô
\82·
363 * @param tag
\8e{
\90Ý
\82Ì
\83^
\83O
364 * @return
\8e{
\90Ý
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
366 Building *GameWorld::GetBuilding(TAG tag);
369 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\90w
\89c
\82ð
\95Ô
\82·
370 * @param tag
\90w
\89c
\82Ì
\83^
\83O
371 * @return
\90w
\89c
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
373 Camp *GameWorld::GetCamp(TAG tag);
376 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83_
\83\93\83W
\83\87\83\93\82ð
\95Ô
\82·
377 * @param tag
\83_
\83\93\83W
\83\87\83\93\82Ì
\83^
\83O
378 * @return
\83_
\83\93\83W
\83\87\83\93\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
380 Dungeon *GameWorld::GetDungeon(TAG tag);
383 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83A
\83C
\83e
\83\80\82ð
\95Ô
\82·
384 * @param id
\83A
\83C
\83e
\83\80\82ÌID
385 * @return
\83A
\83C
\83e
\83\80\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
387 Item *GameWorld::GetItem(ID id);
390 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83t
\83\8d\83A
\82ð
\95Ô
\82·
391 * @param id
\83t
\83\8d\83A
\82ÌID
392 * @return
\83t
\83\8d\83A
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
394 Floor *GameWorld::GetFloor(ID id);
397 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83N
\83\8a\81[
\83`
\83\83\81[
\82ð
\95Ô
\82·
398 * @param id
\83N
\83\8a\81[
\83`
\83\83\81[
\82ÌID
399 * @return
\83N
\83\8a\81[
\83`
\83\83\81[
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
401 Creature *GameWorld::GetCreature(ID id);
404 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\94
\93®
\8bZ
\94\
\82ð
\95Ô
\82·
405 * @return
\91S
\94
\93®
\8bZ
\94\
\82Ì
\83\8a\83X
\83g
407 std::map<TAG, boost::shared_ptr<Ability>> *GameWorld::GetAbilityList(void);
410 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83N
\83\8a\81[
\83`
\83\83\81[
\82ð
\95Ô
\82·
411 * @return
\91S
\83N
\83\8a\81[
\83`
\83\83\81[
\82Ì
\83\8a\83X
\83g
413 std::map<ID, boost::shared_ptr<Creature>> *GameWorld::GetCreatureList(void);
416 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83N
\83G
\83X
\83g
\82ð
\95Ô
\82·
417 * @param tag
\83N
\83G
\83X
\83g
\82Ì
\83^
\83O
418 * @return
\83N
\83G
\83X
\83g
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
420 Quest *GameWorld::GetQuest(TAG tag);
423 * @brief
\83Q
\81[
\83\80\8e\9e\8aÔ
\82ð
\95Ô
\82·
424 * @return
\83Q
\81[
\83\80\8e\9e\8aÔ
426 GAME_TIME GameWorld::GetGameTime(void);
429 * @brief XML
\83V
\83\8a\83A
\83\89\83C
\83Y
\82É
\82æ
\82é
\83Q
\81[
\83\80\83f
\81[
\83^
\95Û
\91¶
\8f\88\97\9d
432 bool GameWorld::XMLSave(void);
435 * @brief XML
\83f
\83V
\83\8a\83A
\83\89\83C
\83Y
\82É
\82æ
\82é
\83Q
\81[
\83\80\83f
\81[
\83^
\93Ç
\8d\9e\8f\88\97\9d
438 void GameWorld::XMLLoad(void);
441 * @brief
\91Î
\89\9e\82µ
\82½ID
\82Ì
\83N
\83\8a\81[
\83`
\83\83\81[
\82ð
\83\8a\83X
\83g
\82©
\82ç
\8f\9c\8aO
\82·
\82é
444 void GameWorld::WipeCreature(ID id);
447 * @brief
\83v
\83\8c\83C
\83\84\81[
\83N
\83\8a\81[
\83`
\83\83\81[
\82ð
\95Ô
\82·
448 * @return
\83v
\83\8c\83C
\83\84\81[
\83N
\83\8a\81[
\83`
\83\83\81[
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
450 Creature *GameWorld::GetPlayerCreature(void);