3 * @brief
\83Q
\81[
\83\80\92\86\82Ì
\83N
\83\8a\81[
\83`
\83\83\81[
\8eí
\95Ê
\82Ì
\83v
\83\8d\83g
\83^
\83C
\83v
10 #include "GameElement.h"
11 #include "BaseStatusTable.h"
20 * @brief
\83N
\83\8a\81[
\83`
\83\83\81[
\8eí
\95Ê
\82Ì
\83N
\83\89\83X
22 class Species : public GameElement
27 SOUL baseSoul; //!<
\8aî
\96{
\83\
\83E
\83\8b\97Ê
29 HEIGHT averageHeight; //!<
\95½
\8bÏ
\90g
\92·
30 HEIGHT averageWeight; //!<
\95½
\8bÏ
\91Ì
\8fd
32 FEED baseFeed; //!<
\8aî
\96{
\8e \97{
\92l
33 LEVEL divineLevel; //!<
\8aî
\96{
\90_
\90«
\83\8c\83x
\83\8b
35 TAG baseCamp; //!<
\8aî
\96{
\8f\8a\91®
\90w
\89c
37 BaseStatusTable baseStatus; //!<
\8aî
\96{
\83X
\83e
\81[
\83^
\83X
39 std::map<TAG, SKILL_EXP> skillExpList; //!<
\83X
\83L
\83\8b\8co
\8c±
\92l
\83\8a\83X
\83g
41 NUMBER currentCreationNumber; //!<
\8c»
\8dÝ
\90¶
\90¬
\90\94
42 NUMBER currentDeadNumber; //!<
\8c»
\8dÝ
\8e\80\96S
\90\94
43 NUMBER maxCreationNumber; //!<
\8dÅ
\91å
\90¶
\90¬
\90\94
45 TAG baseFirstRace; //!<
\8aî
\96{
\8eí
\91°
\83^
\83O1
46 TAG baseSecondRace; //!<
\8aî
\96{
\8eí
\91°
\83^
\83O2
48 std::vector<TAG> authorityTags; //!<
\8c \94\
\83^
\83O
\94z
\97ñ
50 friend class boost::serialization::access;
51 template<class Archive> void serialize(Archive &archive, const unsigned int)
53 archive & boost::serialization::make_nvp("Name", name);
54 archive & boost::serialization::make_nvp("BaseFirstRace", baseFirstRace);
55 archive & boost::serialization::make_nvp("BaseSecondRace", baseSecondRace);
56 archive & boost::serialization::make_nvp("BaseSoul", baseSoul);
57 archive & boost::serialization::make_nvp("AverageHeight", averageHeight);
58 archive & boost::serialization::make_nvp("AverageWeight", averageWeight);
59 archive & boost::serialization::make_nvp("BaseFeed", baseFeed);
60 archive & boost::serialization::make_nvp("DivineLevel", divineLevel);
61 archive & boost::serialization::make_nvp("BaseCamp", baseCamp);
62 archive & boost::serialization::make_nvp("BaseStatus", baseStatus);
68 * @brief Species
\83N
\83\89\83X
\83R
\83\93\83X
\83g
\83\89\83N
\83^(GameElement
\83\81\83\93\83o
\91Î
\89\9e)
69 * @param id GameElement
\82ÌID
70 * @param tag GameElement
\82Ì
\83^
\83O
71 * @param gameWorld
\8f\8a\91®
\8c³gameWorld
\8eQ
\8fÆ
\83|
\83C
\83\93\83^
73 Species::Species(ID id, TAG tag, GameWorld *gameWorld);
76 * @brief Species
\83N
\83\89\83X
\83R
\83\93\83X
\83g
\83\89\83N
\83^
78 Species::Species(void);
81 * @brief Species
\83N
\83\89\83X
\83f
\83X
\83g
\83\89\83N
\83^
83 Species::~Species(void);
86 * @brief
\83f
\81[
\83^
\8f\89\8aú
\89»
88 void Species::WipeData(void);
91 * @brief
\83N
\83\8a\81[
\83`
\83\83\81[
\8eí
\95Ê
\82Ì
\8aî
\96{
\83\
\83E
\83\8b\97Ê
\82ð
\8bA
\82·
92 * @return
\83\
\83E
\83\8b\97Ê
94 SOUL Species::GetBaseSoul(void);
97 * @brief
\83N
\83\8a\81[
\83`
\83\83\81[
\8eí
\95Ê
\82Ì
\95½
\8bÏ
\90g
\92·
\82ð
\95Ô
\82·
98 * @return
\95½
\8bÏ
\90g
\92·
100 HEIGHT Species::GetAverageHeight(void);
103 * @brief
\83N
\83\8a\81[
\83`
\83\83\81[
\8eí
\95Ê
\82Ì
\95½
\8bÏ
\91Ì
\8fd
\82ð
\95Ô
\82·
104 * @return
\95½
\8bÏ
\91Ì
\8fd
106 WEIGHT Species::GetAverageWeight(void);
109 * @brief
\83N
\83\8a\81[
\83`
\83\83\81[
\8eí
\95Ê
\82Ì
\8aî
\96{
\8e \97{
\93x
\82ð
\95Ô
\82·
110 * @return
\8aî
\96{
\8e \97{
\93x
112 FEED Species::GetBaseFeed(void);
115 * @brief
\83N
\83\8a\81[
\83`
\83\83\81[
\8eí
\95Ê
\82Ì
\83X
\83L
\83\8b\8aî
\96{
\8co
\8c±
\92l
\82ð
\95Ô
\82·
116 * @param tag
\8eæ
\93¾
\82µ
\82½
\82¢
\83X
\83L
\83\8b\82Ì
\83^
\83O
117 * @return
\8aY
\93\96\83X
\83L
\83\8b\82Ì
\8aî
\96{
\8co
\8c±
\92l
\81A
\91S
\82
\82Ì
\96¢
\8co
\8c±
\82È
\82ç
\82Î0
\82ð
\95Ô
\82·
119 SKILL_EXP Species::GetSkillExp(TAG tag);
122 * @brief
\83N
\83\8a\81[
\83`
\83\83\81[
\8eí
\95Ê
\82Ì
\8aî
\96{
\8f\8a\91®
\90w
\89c
\82ð
\95Ô
\82·
123 * @return
\8aî
\96{
\8f\8a\91®
\90w
\89c
\82Ì
\83^
\83O
125 TAG Species::GetBaseCampTAG(void);
128 * @brief
\8f\8a\8e\9d\8c \94\
\82Ì
\88ê
\97\97\82ð
\95Ô
\82·
129 * @return
\8f\8a\8e\9d\8c \94\
\88ê
\97\97\82Ìvector
131 std::vector<TAG> GetAuthorityTags(void);
137 BOOST_CLASS_VERSION(Deeangband::Species, 10);