[12114] | 1 | |
---|
| 2 | |
---|
[12049] | 3 | #include "WagnisProvince.h" |
---|
| 4 | #include "core/CoreIncludes.h" |
---|
| 5 | #include "BulletDynamics/Dynamics/btRigidBody.h" |
---|
[12102] | 6 | #include "worldentities/StaticEntity.h" |
---|
[12049] | 7 | #include <vector> |
---|
| 8 | |
---|
[12119] | 9 | #define WAGNIS_PROVINCE_MAX_HEALTH 1000000.0f |
---|
[12107] | 10 | |
---|
| 11 | /**TODO |
---|
| 12 | * |
---|
| 13 | * |
---|
| 14 | * |
---|
| 15 | **/ |
---|
| 16 | |
---|
[12049] | 17 | namespace orxonox |
---|
| 18 | { |
---|
| 19 | RegisterClass(WagnisProvince); |
---|
| 20 | |
---|
| 21 | //Constructor |
---|
[12107] | 22 | WagnisProvince::WagnisProvince(Context* context) : Pawn(context){ |
---|
[12049] | 23 | RegisterObject(WagnisProvince); |
---|
[12133] | 24 | this->owner_ID = -1; |
---|
[12049] | 25 | this->troops = 0; |
---|
| 26 | this->ID = -1; |
---|
| 27 | this->continent = -1; |
---|
[12050] | 28 | this->neighbors = std::vector<WagnisProvince*>(); |
---|
[12102] | 29 | this->markerBillboard = nullptr; |
---|
[12132] | 30 | |
---|
| 31 | this->initialHealth_ = WAGNIS_PROVINCE_MAX_HEALTH; |
---|
[12107] | 32 | this->maxHealth_ = WAGNIS_PROVINCE_MAX_HEALTH; |
---|
[12119] | 33 | this->health_ = WAGNIS_PROVINCE_MAX_HEALTH; |
---|
[12049] | 34 | } |
---|
| 35 | //Destructor |
---|
| 36 | WagnisProvince::~WagnisProvince(){ |
---|
| 37 | |
---|
| 38 | } |
---|
| 39 | |
---|
[12051] | 40 | //XML Port |
---|
| 41 | void WagnisProvince::XMLPort(Element& xmlelement,XMLPort::Mode mode){ |
---|
[12067] | 42 | SUPER(WagnisProvince, XMLPort, xmlelement, mode); |
---|
| 43 | |
---|
[12102] | 44 | XMLPortObject(WagnisProvince, Billboard, "MarkerBillboard", addMarkerBillboard, getMarkerBillboard, xmlelement, mode); |
---|
[12051] | 45 | XMLPortParam(WagnisProvince, "ID", setID, getID, xmlelement, mode); |
---|
| 46 | XMLPortParam(WagnisProvince, "continent", setContinent, getContinent, xmlelement, mode); |
---|
| 47 | } |
---|
[12049] | 48 | |
---|
[12102] | 49 | void WagnisProvince::addMarkerBillboard(Billboard* billi){ |
---|
| 50 | this->markerBillboard = billi; |
---|
| 51 | attach(billi); |
---|
| 52 | } |
---|
| 53 | Billboard* WagnisProvince::getMarkerBillboard(unsigned int i) const{ |
---|
| 54 | if(i != 0) return nullptr; |
---|
| 55 | return this->markerBillboard; |
---|
| 56 | } |
---|
[12049] | 57 | |
---|
| 58 | |
---|
[12051] | 59 | |
---|
[12102] | 60 | |
---|
[12049] | 61 | //SET() |
---|
| 62 | |
---|
| 63 | //set owner_ID |
---|
| 64 | void WagnisProvince::setOwner_ID(int owner){ |
---|
| 65 | this->owner_ID = owner; |
---|
| 66 | } |
---|
| 67 | //set troops |
---|
| 68 | void WagnisProvince::setTroops(int troops){ |
---|
| 69 | this->troops = troops; |
---|
| 70 | } |
---|
| 71 | //set ID |
---|
| 72 | void WagnisProvince::setID(int id){ |
---|
| 73 | this->ID = id; |
---|
| 74 | } |
---|
| 75 | //set Continent |
---|
| 76 | void WagnisProvince::setContinent(int cont){ |
---|
| 77 | this->continent = cont; |
---|
| 78 | } |
---|
| 79 | |
---|
| 80 | |
---|
| 81 | //GET() |
---|
| 82 | |
---|
| 83 | //get owner_ID |
---|
[12051] | 84 | int WagnisProvince::getOwner_ID() const{ |
---|
[12049] | 85 | return this->owner_ID; |
---|
| 86 | } |
---|
| 87 | //get troops |
---|
[12051] | 88 | int WagnisProvince::getTroops() const{ |
---|
[12049] | 89 | return this->troops; |
---|
| 90 | } |
---|
| 91 | //get ID |
---|
[12051] | 92 | int WagnisProvince::getID() const{ |
---|
[12049] | 93 | return this->ID; |
---|
| 94 | } |
---|
| 95 | //get continent |
---|
[12051] | 96 | int WagnisProvince::getContinent() const{ |
---|
[12049] | 97 | return this-> continent; |
---|
| 98 | } |
---|
| 99 | |
---|
[12072] | 100 | //Adds a connection to neighbors. |
---|
[12049] | 101 | void WagnisProvince::addNeighbor(WagnisProvince* prov){ |
---|
| 102 | neighbors.push_back(prov); |
---|
| 103 | } |
---|
[12114] | 104 | |
---|
| 105 | void WagnisProvince::setBillbardVisibility(bool b){ |
---|
| 106 | //TODO set visibility of billboard |
---|
| 107 | } |
---|
[12049] | 108 | } |
---|