OSDN Git Service

[Modify] 色々怪しいがビルドは通るところまで。 / Various suspicious but the build passes...
[deeangband/Deeangband-new.git] / Deeangband / Trap.h
1 /*!
2 * @file Trap.h
3 * @brief \83Q\81[\83\80\92\86\82Ì\83g\83\89\83b\83v\82Ì\83v\83\8d\83g\83^\83C\83v
4 * @date 2014/01/26
5 * @author Deskull
6 * 2014 Sikabane Works.
7 */
8
9 #pragma once
10
11 #include "stdafx.h"
12 #include "Coordinates.h"
13 #include "GameInstance.h"
14 #include "TrapBase.h"
15
16 namespace Deeangband
17 {
18
19         /*! 
20         * @class Trap
21         * @brief \83g\83\89\83b\83v\82Ì\83N\83\89\83X
22         * @details
23         * <H1>\8aT\97v</H1>
24         * Trap\83N\83\89\83X\82Í\81A\83t\83\8d\83A\82É\94z\92u\82³\82ê\82é\83g\83\89\83b\83v\82Ì\8e©\91Ì\82ð\92è\8b`\82·\82é\81B
25         * <H2>\83X\83e\81[\83^\83X\97v\91f</H2>
26         * \83g\83\89\83b\83v\82Í\88È\89º\82Ì\83X\83e\81[\83^\83X\97v\91f\82ð\8e\9d\82Á\82Ä\82¢\82é\81B
27         * <ul>
28         * <li>\94z\92u\83t\83\8d\83AID/FieldID</li>
29         * <li>\94z\92u\8dÀ\95W/Position</li>
30         * <li>\8c»\8dÝ\91Ï\8bv\93x/CurrentHP</li>
31         * <li>\8dÅ\91å\91Ï\8bv\93x/MaxHP</li>
32         * <li>\89ð\8f\9c\93ï\93x/Difficulty</li>
33         * </ul>
34         */
35         class Trap : public GameInstance
36         {
37         private:
38
39                 TAG trapBaseTag; //!<\83g\83\89\83b\83v\83x\81[\83X\83^\83O
40                 Coordinates position; //!<\8f\8a\8dÝ\8dÀ\95W
41                 HP curHP; //!<\8c»\8dÝ\91Ï\8bv\93x
42                 HP maxHP; //!<\8dÅ\91å\91Ï\8bv\93x
43                 POWER difficulty; //!<\89ð\8f\9c\93ï\93x
44
45
46                 /*!
47                 * @brief \83N\83\89\83X\82Ì\83V\83\8a\83A\83\89\83C\83Y\82ð\90Ý\92è\82·\82é
48                 * @param archive \83A\81[\83J\83C\83u\89»\82·\82é\83N\83\89\83X\82Ì\83A\83h\83\8c\83X
49                 * @param version \83t\83@\83C\83\8b\83o\81[\83W\83\87\83\93
50                 * @return XMLSerialize\83e\83\93\83v\83\8c\81[\83g
51                 */
52                 template<class Archive> void serialize(Archive &archive, const unsigned int version) 
53                 {
54                         if(version > 0)
55                         {
56                         }
57                 }
58
59         public:
60
61                 /*! 
62                 * @brief Trap\83N\83\89\83X\83R\83\93\83X\83g\83\89\83N\83^
63                 */
64                 Trap::Trap(void);
65
66                 /*! 
67                 * @brief Trap\83N\83\89\83X\83R\83\93\83X\83g\83\89\83N\83^
68                 */
69                 Trap::Trap(std::map<TAG, std::shared_ptr<TrapBase>>::iterator trapBaseIt, Coordinates *position);
70
71                 /*! 
72                 * @brief Trap\83N\83\89\83X\83f\83X\83g\83\89\83N\83^
73                 */
74                 Trap::~Trap(void);
75
76                 /*! 
77                 * @brief \83_\83~\81[\83f\81[\83^\82Ì\90Ý\92è
78                 * @return \82È\82µ
79                 */
80                 void Trap::WipeData(void);
81
82         };
83
84 }
85