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"
16 #include "Authority.h"
20 #include "CreatureTrait.h"
24 #include "FixedArtifact.h"
25 #include "GameMessage.h"
28 #include "ItemTrait.h"
35 #include "StartingClass.h"
43 BOOST_CLASS_VERSION(GameWorld, 1);
50 * @brief
\83Q
\81[
\83\80\90¢
\8aE
\82Ì
\83N
\83\89\83X
56 //
\90Ã
\93I
\83f
\81[
\83^
\83\8a\83X
\83g
57 std::map<TAG, boost::shared_ptr<Air>> airList; /*!<
\91S
\91å
\8bC
\92n
\8c`
\83\8a\83X
\83g*/
58 std::map<TAG, boost::shared_ptr<Ability>> abilityList; /*!<
\91S
\94
\93®
\8bZ
\94\
\83\8a\83X
\83g*/
59 std::map<TAG, boost::shared_ptr<Authority>> authorityList; /*!<
\91S
\8c \94\
\83\8a\83X
\83g*/
60 std::map<TAG, boost::shared_ptr<Building>> buildingList; /*!<
\91S
\8e{
\90Ý
\83\8a\83X
\83g*/
61 std::map<TAG, boost::shared_ptr<Camp>> campList; /*!<
\91S
\90w
\89c
\83\8a\83X
\83g*/
62 std::map<TAG, boost::shared_ptr<CreatureTrait>> creatureTraitList; /*!<
\91S
\83N
\83\8a\81[
\83`
\83\83\81[
\93Á
\90«
\83\8a\83X
\83g*/
63 std::map<TAG, boost::shared_ptr<Dungeon>> dungeonList; /*!<
\91S
\83_
\83\93\83W
\83\87\83\93\83\8a\83X
\83g*/
64 std::map<TAG, boost::shared_ptr<Effect>> effectList; /*!<
\91S
\8cø
\89Ê
\91®
\90«
\83\8a\83X
\83g*/
65 std::map<TAG, boost::shared_ptr<Floor>> floorList; /*!<
\91S
\8f°
\92n
\8c`
\83\8a\83X
\83g*/
66 std::map<TAG, boost::shared_ptr<FixedArtifact>> fixedArtifactList; /*!<
\91S
\8cÅ
\92è
\83A
\81[
\83e
\83B
\83t
\83@
\83N
\83g
\83\8a\83X
\83g*/
67 std::map<TAG, boost::shared_ptr<ItemBase>> itemBaseList; /*!<
\91S
\83A
\83C
\83e
\83\80\83x
\81[
\83X
\83\8a\83X
\83g*/
68 std::map<TAG, boost::shared_ptr<ItemEgo>> itemEgoList; /*!<
\91S
\83A
\83C
\83e
\83\80\83G
\83S
\83\8a\83X
\83g*/
69 std::map<TAG, boost::shared_ptr<ItemTrait>> itemTraitList; /*!<
\91S
\83A
\83C
\83e
\83\80\93Á
\90«
\83\8a\83X
\83g*/
70 std::map<TAG, boost::shared_ptr<Karma>> karmaList; /*!<
\91S
\83J
\83\8b\83}
\83\8a\83X
\83g*/
71 std::map<TAG, boost::shared_ptr<Quest>> questList; /*!<
\91S
\83N
\83G
\83X
\83g
\93Á
\90«
\83\8a\83X
\83g*/
72 std::map<TAG, boost::shared_ptr<Space>> spaceList; /*!<
\91S
\8bó
\8aÔ
\92n
\8c`
\83\8a\83X
\83g*/
73 std::map<TAG, boost::shared_ptr<Skill>> skillList; /*!<
\91S
\83X
\83L
\83\8b\83\8a\83X
\83g*/
74 std::map<TAG, boost::shared_ptr<Species>> speciesList; /*!<
\91S
\83N
\83\8a\81[
\83`
\83\83\81[
\8eí
\95Ê
\83\8a\83X
\83g*/
75 std::map<TAG, boost::shared_ptr<StartingClass>> startingClassList; /*!<
\91S
\8fo
\8e©
\83\8a\83X
\83g*/
76 std::map<TAG, boost::shared_ptr<Race>> raceList; /*!<
\91S
\8eí
\91°
\83\8a\83X
\83g*/
77 std::map<TAG, boost::shared_ptr<TrapBase>> trapBaseList; /*!<
\91S
\83g
\83\89\83b
\83v
\83x
\81[
\83X
\8eí
\95Ê
\83\8a\83X
\83g*/
79 //
\93®
\93I
\83f
\81[
\83^
\83\8a\83X
\83g
80 std::map<ID, boost::shared_ptr<Item>> itemList; /*!<
\91S
\83A
\83C
\83e
\83\80\83\8a\83X
\83g*/
81 std::map<ID, boost::shared_ptr<Creature>> creatureList; /*!<
\91S
\83N
\83\8a\81[
\83`
\83\83\81[
\83\8a\83X
\83g*/
82 std::map<ID, boost::shared_ptr<Field>> fieldList; /*!<
\91S
\83t
\83\8d\83A
\83\8a\83X
\83g*/
83 std::map<ID, boost::shared_ptr<Trap>> trapList; /*!<
\91S
\83g
\83\89\83b
\83v
\83\8a\83X
\83g*/
85 ID itemID; //!<
\8bó
\82«
\83A
\83C
\83e
\83\80ID
86 ID creatureID; //!<
\8bó
\82«
\83N
\83\8a\81[
\83`
\83\83\81[ID
87 ID fieldID; //!<
\8bó
\82«
\83t
\83B
\81[
\83\8b\83hID
88 ID trapID; //!<
\8bó
\82«
\83g
\83\89\83b
\83vID
90 std::vector<boost::shared_ptr<HaveGameTime>> actionList; /*!<
\8ds
\93®
\8f\87\83\8a\83X
\83g*/
92 Creature *playerPtr; //!<
\83v
\83\8c\83C
\83\84\81[
\83N
\83\8a\81[
\83`
\83\83\81[
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
93 GAME_TIME gameTime; //!<
\83Q
\81[
\83\80\8e\9e\8aÔ
95 friend class boost::serialization::access;
98 * @brief
\91å
\8bC
\92n
\8c`
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
99 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
100 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
102 bool GameWorld::xmlSaveAir(void);
105 * @brief
\94
\93®
\8bZ
\94\
\82Ì
\83Z
\81[
\83u
106 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
107 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
109 bool GameWorld::xmlSaveAbility(void);
112 * @brief
\8c \94\
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
113 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
114 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
116 bool GameWorld::xmlSaveAuthority(void);
119 * @brief
\8e{
\90Ý
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
120 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
121 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
123 bool GameWorld::xmlSaveBuilding(void);
126 * @brief
\90w
\89c
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
127 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
128 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
130 bool GameWorld::xmlSaveCamp(void);
133 * @brief
\83N
\83\8a\81[
\83`
\83\83\81[
\93Á
\90«
\82Ì
\83Z
\81[
\83u
134 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
135 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
137 bool GameWorld::xmlSaveCreatureTrait(void);
140 * @brief
\83_
\83\93\83W
\83\87\83\93\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
141 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
142 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
144 bool GameWorld::xmlSaveDungeon(void);
147 * @brief
\8cø
\89Ê
\91®
\90«
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
148 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
149 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
151 bool GameWorld::xmlSaveEffect(void);
154 * @brief
\92n
\8c`
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
155 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
156 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
158 bool GameWorld::xmlSaveFloor(void);
161 * @brief
\8cÅ
\92è
\83A
\81[
\83e
\83B
\83t
\83@
\83N
\83g
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
162 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
163 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
165 bool GameWorld::xmlSaveFixedArtifact(void);
168 * @brief
\83x
\81[
\83X
\83A
\83C
\83e
\83\80\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
169 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
170 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
172 bool GameWorld::xmlSaveItemBase(void);
175 * @brief
\83A
\83C
\83e
\83\80\83G
\83S
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
176 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
177 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
179 bool GameWorld::xmlSaveItemEgo(void);
182 * @brief
\83A
\83C
\83e
\83\80\93Á
\90«
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
183 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
184 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
186 bool GameWorld::xmlSaveItemTrait(void);
189 * @brief
\83J
\83\8b\83}
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
190 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
191 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
193 bool GameWorld::xmlSaveKarma(void);
196 * @brief
\83N
\83G
\83X
\83g
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
197 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
198 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
200 bool GameWorld::xmlSaveQuest(void);
203 * @brief
\83N
\83G
\83X
\83g
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
204 * @return
\8f\91\82«
\8d\9e\82Ý
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
205 * @todo
\8f\91\82«
\8d\9e\82Ý
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
207 bool GameWorld::xmlSaveRace(void);
210 * @brief
\83X
\83L
\83\8b\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
211 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
212 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
214 bool GameWorld::xmlSaveSkill(void);
217 * @brief
\8bó
\8aÔ
\92n
\8c`
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
218 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
219 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
221 bool GameWorld::xmlSaveSpace(void);
224 * @brief
\83N
\83\8a\81[
\83`
\83\83\81[
\8eí
\95Ê
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
225 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
226 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
228 bool GameWorld::xmlSaveSpecie(void);
231 * @brief
\8fo
\8e©
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
232 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
233 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
235 bool GameWorld::xmlSaveStartingClass(void);
238 * @brief
\83x
\81[
\83X
\83g
\83\89\83b
\83v
\8fî
\95ñ
\82Ì
\83Z
\81[
\83u
239 * @return
\95Û
\91¶
\82É
\90¬
\8c÷
\82·
\82ê
\82ÎTRUE
\82ð
\95Ô
\82·
240 * @todo
\95Û
\91¶
\8f\88\97\9d\82Ì
\83G
\83\89\81[
\94»
\92è
242 bool GameWorld::xmlSaveTrapBase(void);
244 bool GameWorld::xmlLoadAir(void);
245 bool GameWorld::xmlLoadAbility(void);
246 bool GameWorld::xmlLoadAuthority(void);
247 bool GameWorld::xmlLoadBuilding(void);
248 bool GameWorld::xmlLoadCamp(void);
249 bool GameWorld::xmlLoadCreatureTrait(void);
250 bool GameWorld::xmlLoadDungeon(void);
251 bool GameWorld::xmlLoadEffect(void);
252 bool GameWorld::xmlLoadFloor(void);
253 bool GameWorld::xmlLoadFixedArtifact(void);
254 bool GameWorld::xmlLoadItemBase(void);
255 bool GameWorld::xmlLoadItemEgo(void);
256 bool GameWorld::xmlLoadItemTrait(void);
257 bool GameWorld::xmlLoadKarma(void);
258 bool GameWorld::xmlLoadQuest(void);
259 bool GameWorld::xmlLoadRace(void);
260 bool GameWorld::xmlLoadSpace(void);
261 bool GameWorld::xmlLoadSkill(void);
262 bool GameWorld::xmlLoadSpecie(void);
263 bool GameWorld::xmlLoadStartingClass(void);
264 bool GameWorld::xmlLoadTrapBase(void);
267 * @brief
\83N
\83\89\83X
\82Ì
\83V
\83\8a\83A
\83\89\83C
\83Y
\82ð
\90Ý
\92è
\82·
\82é
268 * @param archive
\83A
\81[
\83J
\83C
\83u
\89»
\82·
\82é
\83N
\83\89\83X
\82Ì
\83A
\83h
\83\8c\83X
269 * @param version
\83t
\83@
\83C
\83\8b\83o
\81[
\83W
\83\87\83\93
270 * @return XMLSerialize
\83e
\83\93\83v
\83\8c\81[
\83g
272 template<class Archive> void serialize(Archive &archive, const unsigned int version)
276 archive & boost::serialization::make_nvp("Authorities", authorityList);
277 archive & boost::serialization::make_nvp("Buildings", buildingList);
278 archive & boost::serialization::make_nvp("Camps", campList);
279 archive & boost::serialization::make_nvp("Dungeons", dungeonList);
280 archive & boost::serialization::make_nvp("Effects", effectList);
281 archive & boost::serialization::make_nvp("Floors", floorList);
282 archive & boost::serialization::make_nvp("FixedArtifacts", fixedArtifactList);
283 archive & boost::serialization::make_nvp("ItemBases", itemBaseList);
284 archive & boost::serialization::make_nvp("ItemEgos", itemEgoList);
285 archive & boost::serialization::make_nvp("ItemTraits", itemTraitList);
286 archive & boost::serialization::make_nvp("Karmas", karmaList);
287 archive & boost::serialization::make_nvp("Quests", questList);
288 archive & boost::serialization::make_nvp("Skills", skillList);
289 archive & boost::serialization::make_nvp("Species", speciesList);
290 archive & boost::serialization::make_nvp("TrapBases", trapBaseList);
292 archive & boost::serialization::make_nvp("Authorities", authorityList);
293 archive & boost::serialization::make_nvp("Creatures", creatureList);
294 archive & boost::serialization::make_nvp("Items", itemList);
295 archive & boost::serialization::make_nvp("Fields", fieldList);
296 archive & boost::serialization::make_nvp("Traps", trapList);
303 * @brief GameWorld
\83N
\83\89\83X
\82Ì
\83R
\83\93\83X
\83g
\83\89\83N
\83^
304 * @param gSurface
\83Q
\81[
\83\80\82Ì
\83C
\83\93\83^
\81[
\83t
\83F
\83C
\83X
\82Æ
\82È
\82é GameSurface
\8eQ
\8fÆ
306 GameWorld::GameWorld(void);
309 * @brief GameWorld
\83N
\83\89\83X
\82Ì
\83f
\83X
\83g
\83\89\83N
\83^
311 GameWorld::~GameWorld(void);
314 * @brief
\83N
\83\8a\81[
\83`
\83\83\81[
\82ð
\90¶
\90¬
\82µGameWorld
\92\86\82Ì
\8f\94\97v
\91f
\82Æ
\98A
\8cg
\82³
\82¹
\82é
315 * @param creatureTag
\83N
\83\8a\81[
\83`
\83\83\81[
\83^
\83O
316 * @return
\90¶
\90¬
\82É
\90¬
\8c÷
\82µ
\82½
\8fê
\8d\87true
\82ð
\95Ô
\82·
318 bool GameWorld::GenerateCreature(TAG creatureTag);
321 * @brief
\83N
\83\8a\81[
\83`
\83\83\81[
\82ð
\90¶
\90¬
\82µGameWorld
\92\86\82Ì
\8f\94\97v
\91f
\82Æ
\98A
\8cg
\82³
\82¹
\82é
322 * @param creatureTag
\83N
\83\8a\81[
\83`
\83\83\81[
\83^
\83O
323 * @param fieldID
\94z
\92u
\90æ
\83t
\83B
\81[
\83\8b\83hID
324 * @param x
\94z
\92u
\90æX
\8dÀ
\95W
325 * @param y
\94z
\92u
\90æY
\8dÀ
\95W
326 * @return
\90¶
\90¬
\82É
\90¬
\8c÷
\82µ
\82½
\8fê
\8d\87true
\82ð
\95Ô
\82·
328 bool GameWorld::GenerateCreature(TAG creatureTag, ID fieldID, int x, int y);
331 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\8c \94\
\82ð
\95Ô
\82·
332 * @param tag
\8c \94\
\82Ì
\83^
\83O
333 * @return
\8c \94\
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
335 Authority *GameWorld::GetAuthority(TAG tag);
338 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83N
\83\8a\81[
\83`
\83\83\81[
\93Á
\90«
\82ð
\95Ô
\82·
339 * @param tag
\83N
\83\8a\81[
\83`
\83\83\81[
\93Á
\90«
\82Ì
\83^
\83O
340 * @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
342 CreatureTrait *GameWorld::GetCreatureTrait(TAG tag);
345 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\8cø
\89Ê
\91®
\90«
\82ð
\95Ô
\82·
346 * @param tag
\8cø
\89Ê
\91®
\90«
\82Ì
\83^
\83O
347 * @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
349 Effect *GameWorld::GetEffect(TAG tag);
352 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\8cÅ
\92è
\83A
\81[
\83e
\83B
\83t
\83@
\83N
\83g
\82ð
\95Ô
\82·
353 * @param tag
\8cø
\89Ê
\91®
\90«
\82Ì
\83^
\83O
354 * @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
356 FixedArtifact *GameWorld::GetFixedArtifact(TAG tag);
359 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\92n
\8c`
\82ð
\95Ô
\82·
360 * @param tag
\92n
\8c`
\82Ì
\83^
\83O
361 * @return
\92n
\8c`
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
363 Floor *GameWorld::GetFloor(TAG tag);
366 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83x
\81[
\83X
\83A
\83C
\83e
\83\80\82ð
\95Ô
\82·
367 * @param tag
\83x
\81[
\83X
\83A
\83C
\83e
\83\80\82Ì
\83^
\83O
368 * @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
370 ItemBase *GameWorld::GetItemBase(TAG tag);
373 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83A
\83C
\83e
\83\80\83G
\83S
\82ð
\95Ô
\82·
374 * @param tag
\83A
\83C
\83e
\83\80\83G
\83S
\82Ì
\83^
\83O
375 * @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
377 ItemEgo *GameWorld::GetItemEgo(TAG tag);
380 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83A
\83C
\83e
\83\80\93Á
\90«
\82ð
\95Ô
\82·
381 * @param tag
\83A
\83C
\83e
\83\80\93Á
\90«
\82Ì
\83^
\83O
382 * @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
384 ItemTrait *GameWorld::GetItemTrait(TAG tag);
387 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83J
\83\8b\83}
\82ð
\95Ô
\82·
388 * @param tag
\83J
\83\8b\83}
\82Ì
\83^
\83O
389 * @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
391 Karma *GameWorld::GetKarma(TAG tag);
394 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83X
\83L
\83\8b\82ð
\95Ô
\82·
395 * @param tag
\83X
\83L
\83\8b\82Ì
\83^
\83O
396 * @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
398 Skill *GameWorld::GetSkill(TAG tag);
401 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83X
\83L
\83\8b\82ð
\95Ô
\82·
402 * @param tag
\83X
\83L
\83\8b\82Ì
\83^
\83O
403 * @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
405 Species *GameWorld::GetSpecies(TAG tag);
408 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83g
\83\89\83b
\83v
\8eí
\95Ê
\82ð
\95Ô
\82·
409 * @param tag
\83g
\83\89\83b
\83v
\8eí
\95Ê
\82Ì
\83^
\83O
410 * @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
412 TrapBase *GameWorld::GetTrapBase(TAG tag);
415 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\8e{
\90Ý
\82ð
\95Ô
\82·
416 * @param tag
\8e{
\90Ý
\82Ì
\83^
\83O
417 * @return
\8e{
\90Ý
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
419 Building *GameWorld::GetBuilding(TAG tag);
422 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\90w
\89c
\82ð
\95Ô
\82·
423 * @param tag
\90w
\89c
\82Ì
\83^
\83O
424 * @return
\90w
\89c
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¯
\82ê
\82ÎNULL
\82ð
\95Ô
\82·
\81B
426 Camp *GameWorld::GetCamp(TAG tag);
429 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83_
\83\93\83W
\83\87\83\93\82ð
\95Ô
\82·
430 * @param tag
\83_
\83\93\83W
\83\87\83\93\82Ì
\83^
\83O
431 * @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
433 Dungeon *GameWorld::GetDungeon(TAG tag);
436 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83A
\83C
\83e
\83\80\82ð
\95Ô
\82·
437 * @param id
\83A
\83C
\83e
\83\80\82ÌID
438 * @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
440 Item *GameWorld::GetItem(ID id);
443 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83t
\83\8d\83A
\82ð
\95Ô
\82·
444 * @param id
\83t
\83\8d\83A
\82ÌID
445 * @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
447 Field *GameWorld::GetField(ID id);
450 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83N
\83\8a\81[
\83`
\83\83\81[
\82ð
\95Ô
\82·
451 * @param id
\83N
\83\8a\81[
\83`
\83\83\81[
\82ÌID
452 * @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
454 Creature *GameWorld::GetCreature(ID id);
457 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\94
\93®
\8bZ
\94\
\82ð
\95Ô
\82·
458 * @return
\91S
\94
\93®
\8bZ
\94\
\82Ì
\83\8a\83X
\83g
460 std::map<TAG, boost::shared_ptr<Ability>> *GameWorld::GetAbilityList(void);
463 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83N
\83\8a\81[
\83`
\83\83\81[
\82ð
\95Ô
\82·
464 * @return
\91S
\83N
\83\8a\81[
\83`
\83\83\81[
\82Ì
\83\8a\83X
\83g
466 std::map<ID, boost::shared_ptr<Creature>> *GameWorld::GetCreatureList(void);
469 * @brief GameWorld
\92\86\82É
\91¶
\8dÝ
\82·
\82é
\83N
\83G
\83X
\83g
\82ð
\95Ô
\82·
470 * @param tag
\83N
\83G
\83X
\83g
\82Ì
\83^
\83O
471 * @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
473 Quest *GameWorld::GetQuest(TAG tag);
476 * @brief
\83Q
\81[
\83\80\8e\9e\8aÔ
\82ð
\95Ô
\82·
477 * @return
\83Q
\81[
\83\80\8e\9e\8aÔ
479 GAME_TIME GameWorld::GetGameTime(void);
482 * @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
485 bool GameWorld::XMLSave(void);
488 * @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
491 void GameWorld::XMLLoad(void);
494 * @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é
497 void GameWorld::WipeCreature(ID id);
500 * @brief
\83v
\83\8c\83C
\83\84\81[
\83N
\83\8a\81[
\83`
\83\83\81[
\82ð
\95Ô
\82·
501 * @return
\83v
\83\8c\83C
\83\84\81[
\83N
\83\8a\81[
\83`
\83\83\81[
\82Ì
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
503 Creature *GameWorld::GetPlayerCreature(void);
506 * @brief
\8ds
\93®
\8f\87\83\8a\83X
\83g
\82ð
\95Ô
\82·
507 * @return
\8ds
\93®
\8f\87\83\8a\83X
\83g
509 std::vector<boost::shared_ptr<HaveGameTime>>* GameWorld::GetActionList(void);
512 * @brief
\8ew
\92è
\83t
\83B
\81[
\83\8b\83h
\8by
\82Ñ
\8dÀ
\95W
\82É
\91¶
\8dÝ
\82·
\82é
\83N
\83\8a\81[
\83`
\83\83\81[
\82ª
\82¢
\82é
\82©
\82ð
\94»
\95Ê
\82µ
\83N
\83\8a\81[
\83`
\83\83\81[
\82ð
\95Ô
\82·
\81B
513 * @param fieldID
\83t
\83B
\81[
\83\8b\83hID
514 * @param positionPtr
\8dÀ
\95W
\83|
\83C
\83\93\83^
515 * @param
\91¶
\8dÝ
\82·
\82é
\83N
\83\8a\81[
\83`
\83\83\81[
\82Ì
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¢
\8fê
\8d\87NULL
\81B
517 Creature *GameWorld::GetCreatureFromPosition(ID fieldID, Coordinates *positionPtr);
520 * @brief
\8ew
\92è
\83t
\83B
\81[
\83\8b\83h
\8by
\82Ñ
\8dÀ
\95W
\82É
\91¶
\8dÝ
\82·
\82é
\92n
\8c`
\8fî
\95ñ
\82ð
\95Ô
\82·
\81B
521 * @param fieldID
\83t
\83B
\81[
\83\8b\83hID
522 * @param positionPtr
\8dÀ
\95W
\83|
\83C
\83\93\83^
523 * @param
\91¶
\8dÝ
\82·
\82é
\83N
\83\8a\81[
\83`
\83\83\81[
\82Ì
\83|
\83C
\83\93\83^
\81A
\91¶
\8dÝ
\82µ
\82È
\82¢
\8fê
\8d\87NULL
\81B
525 Floor *GameWorld::GetFloorFromPosition(ID fieldID, Coordinates *positionPtr);
527 std::map<TAG, boost::shared_ptr<Floor>> *GameWorld::GetFloorList(void);
529 std::map<TAG, boost::shared_ptr<Species>> *GameWorld::GetSpeciesList(void);