[Orxonox-commit 5477] r10140 - in code/branches/towerdefenseHS14: data/levels data/levels/templates data/overlays src/modules/towerdefense
maxima at orxonox.net
maxima at orxonox.net
Wed Nov 26 16:30:11 CET 2014
Author: maxima
Date: 2014-11-26 16:30:10 +0100 (Wed, 26 Nov 2014)
New Revision: 10140
Modified:
code/branches/towerdefenseHS14/data/levels/templates/tower.oxt
code/branches/towerdefenseHS14/data/levels/towerDefense.oxw
code/branches/towerdefenseHS14/data/overlays/towerdefenseHUD.oxo
code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefense.cc
code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefense.h
code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefenseEnemy.cc
code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefenseHUDController.cc
code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefenseHUDController.h
Log:
nhaenni. HUD angepasst.
Modified: code/branches/towerdefenseHS14/data/levels/templates/tower.oxt
===================================================================
--- code/branches/towerdefenseHS14/data/levels/templates/tower.oxt 2014-11-26 15:19:03 UTC (rev 10139)
+++ code/branches/towerdefenseHS14/data/levels/templates/tower.oxt 2014-11-26 15:30:10 UTC (rev 10140)
@@ -8,7 +8,7 @@
reloadwaittime = 1
collisionType = "dynamic"
- team = 2
+ team = 0
>
Modified: code/branches/towerdefenseHS14/data/levels/towerDefense.oxw
===================================================================
--- code/branches/towerdefenseHS14/data/levels/towerDefense.oxw 2014-11-26 15:19:03 UTC (rev 10139)
+++ code/branches/towerdefenseHS14/data/levels/towerDefense.oxw 2014-11-26 15:30:10 UTC (rev 10140)
@@ -20,7 +20,7 @@
include("templates/spaceshipAssff.oxt")
include("templates/spaceshipPirate.oxt")
include("templates/tower.oxt")
- include("templates/enemytowerdefense.oxt")
+ include("templates/enemyTowerdefense.oxt")
?>
<!-- Specify the position of the camera -->
Modified: code/branches/towerdefenseHS14/data/overlays/towerdefenseHUD.oxo
===================================================================
--- code/branches/towerdefenseHS14/data/overlays/towerdefenseHUD.oxo 2014-11-26 15:19:03 UTC (rev 10139)
+++ code/branches/towerdefenseHS14/data/overlays/towerdefenseHUD.oxo 2014-11-26 15:30:10 UTC (rev 10140)
@@ -1,14 +1,82 @@
<Template name="TowerDefenseHUD">
+
+
<OverlayGroup name="TowerDefenseHUD" scale = "1, 1">
+
+
<OverlayText
- position = "0.05, 0.05"
+ position = "0.83, 0.05"
pickpoint = "0.0, 0.0"
font = "ShareTechMono"
textsize = 0.05
colour = "1.0, 1.0, 1.0, 1.0"
align = "left"
- caption = "Hello World"
+ caption = "Cash:"
/>
+
+
+ <TowerDefenseHUDController
+ position = "0.88, 0.10"
+ pickpoint = "0.0, 0.0"
+ font = "ShareTechMono"
+ textsize = 0.05
+ colour = "1.0, 1.0, 1.0, 1.0"
+ align = "left"
+ showlives = false
+ showcredits = true
+ showwaves = false
+ />
+
+ <OverlayText
+ position = "0.83, 0.22"
+ pickpoint = "0.0, 0.0"
+ font = "ShareTechMono"
+ textsize = 0.05
+ colour = "1.0, 1.0, 1.0, 1.0"
+ align = "left"
+
+ caption = "Lives:"
+ />
+
+ <TowerDefenseHUDController
+ position = "0.88, 0.27"
+ pickpoint = "0.0, 0.0"
+ font = "ShareTechMono"
+ textsize = 0.05
+ colour = "1.0, 1.0, 1.0, 1.0"
+ align = "left"
+ showlives = true
+ showcredits = false
+ showwaves = false
+ />
+
+ <OverlayText
+ position = "0.83, 0.39"
+ pickpoint = "0.0, 0.0"
+ font = "ShareTechMono"
+ textsize = 0.05
+ colour = "1.0, 1.0, 1.0, 1.0"
+ align = "left"
+
+ caption = "Waves:"
+ />
+
+ <TowerDefenseHUDController
+ position = "0.88, 0.44"
+ pickpoint = "0.0, 0.0"
+ font = "ShareTechMono"
+ textsize = 0.05
+ colour = "1.0, 1.0, 1.0, 1.0"
+ align = "left"
+ showlives = false
+ showcredits = false
+ showwaves = true
+
+ />
+
+
</OverlayGroup>
</Template>
+
+
Modified: code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefense.cc
===================================================================
--- code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefense.cc 2014-11-26 15:19:03 UTC (rev 10139)
+++ code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefense.cc 2014-11-26 15:30:10 UTC (rev 10140)
@@ -129,7 +129,9 @@
orxout() << "test0" << endl;
Deathmatch::start();
-
+ credits = 5000;
+ life = 20;
+ waves = 0;
time=0.0;
/*
@@ -157,26 +159,11 @@
// Generates a TowerDefenseEnemy. Uses Template "enemytowerdefense". Sets position at first waypoint of path.
- void TowerDefense::addTowerDefenseEnemy(std::vector<TDCoordinate*> path, int templatenr){
+ void TowerDefense::addTowerDefenseEnemy(std::vector<TDCoordinate*> path){
TowerDefenseEnemy* en1 = new TowerDefenseEnemy(this->center_->getContext());
-
- switch(templatenr)
- {
- case 1 :
- en1->addTemplate("enemytowerdefense1");
- en1->setScale(3);
- break;
- case 2 :
- en1->addTemplate("enemytowerdefense2");
- en1->setScale(2);
- break;
- case 3 :
- en1->addTemplate("enemytowerdefense3");
- en1->setScale(1);
- break;
- }
-
+ en1->addTemplate("enemytowerdefense");
+ en1->setScale(3);
en1->getController();
en1->setPosition(path.at(0)->get3dcoordinate());
@@ -297,8 +284,7 @@
if(time>1 && TowerDefenseEnemyvector.size() < 30)
{
-
- addTowerDefenseEnemy(path, rand() %3 +1 );
+ addTowerDefenseEnemy(path);
time = time-1;
}
Modified: code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefense.h
===================================================================
--- code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefense.h 2014-11-26 15:19:03 UTC (rev 10139)
+++ code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefense.h 2014-11-26 15:30:10 UTC (rev 10140)
@@ -55,13 +55,16 @@
std::vector<TowerDefenseEnemy*> TowerDefenseEnemyvector;
- void addTowerDefenseEnemy(std::vector<TDCoordinate*> path, int templatenr);
+ void addTowerDefenseEnemy(std::vector<TDCoordinate*> path);
virtual void start(); //<! The function is called when the gametype starts
virtual void end();
virtual void tick(float dt);
//virtual void playerEntered(PlayerInfo* player);
//virtual bool playerLeft(PlayerInfo* player);
+ int credits;
+ int life;
+ int waves;
//virtual void pawnKilled(Pawn* victim, Pawn* killer = 0);
//virtual void playerScored(PlayerInfo* player, int score);
Modified: code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefenseEnemy.cc
===================================================================
--- code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefenseEnemy.cc 2014-11-26 15:19:03 UTC (rev 10139)
+++ code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefenseEnemy.cc 2014-11-26 15:30:10 UTC (rev 10140)
@@ -47,7 +47,9 @@
float distance = ship.distance(*endpoint);
+ orxout() << "distance" << distance << endl;
if(distance <50){
+ orxout() << "ENEMY KILLED!!!!" << endl;
this->destroy(); }
}
Modified: code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefenseHUDController.cc
===================================================================
--- code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefenseHUDController.cc 2014-11-26 15:19:03 UTC (rev 10139)
+++ code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefenseHUDController.cc 2014-11-26 15:30:10 UTC (rev 10140)
@@ -31,7 +31,6 @@
#include "core/XMLPort.h"
#include "util/Convert.h"
-
namespace orxonox
{
RegisterClass(TowerDefenseHUDController);
@@ -49,22 +48,41 @@
void TowerDefenseHUDController::tick(float dt)
{
SUPER(TowerDefenseHUDController, tick, dt);
+
+ if(showlives == true)
+ this->setCaption(multi_cast<std::string>(this->td->life));
+ else if(showcredits == true)
+ this->setCaption(multi_cast<std::string>(this->td->credits));
+ else if(showwaves == true)
+ this->setCaption(multi_cast<std::string>(this->td->waves));
+
+
}
void TowerDefenseHUDController::XMLPort(Element& xmlelement, XMLPort::Mode mode)
{
SUPER(TowerDefenseHUDController, XMLPort, xmlelement, mode);
+
+ XMLPortParam(TowerDefenseHUDController, "showlives", setShowlives, getShowlives, xmlelement, mode);
+ XMLPortParam(TowerDefenseHUDController, "showcredits", setShowcredits, getShowcredits, xmlelement, mode);
+ XMLPortParam(TowerDefenseHUDController, "showwaves", setShowwaves, getShowwaves, xmlelement, mode);
+
}
void TowerDefenseHUDController::changedOwner()
- {
- SUPER(TowerDefenseHUDController, changedOwner);
- /*
- if (this->getOwner() != NULL && this->getOwner()->getGametype())
- this->owner_ = orxonox_cast<Pong*>(this->getOwner()->getGametype().get());
- else
- this->owner_ = 0;
- */
- }
+ {
+ SUPER(TowerDefenseHUDController, changedOwner);
+ td = orxonox_cast<TowerDefense*>(this->getOwner()->getGametype().get());
+
+ /*if (this->getOwner() != NULL && this->getOwner()->getGametype())
+ {
+ this->owner_ = orxonox_cast<TowerDefense*>(this->getOwner()->getGametype().get());
+ }
+ else
+ {
+ this->owner_ = NULL;
+ }*/
+ }
+
}
Modified: code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefenseHUDController.h
===================================================================
--- code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefenseHUDController.h 2014-11-26 15:19:03 UTC (rev 10139)
+++ code/branches/towerdefenseHS14/src/modules/towerdefense/TowerDefenseHUDController.h 2014-11-26 15:30:10 UTC (rev 10140)
@@ -41,8 +41,8 @@
#include "tools/interfaces/Tickable.h"
#include "overlays/OverlayText.h"
+#include "TowerDefense.h"
-
namespace orxonox
{
class _TowerDefenseExport TowerDefenseHUDController : public OverlayText, public Tickable
@@ -51,9 +51,31 @@
TowerDefenseHUDController(Context* context);
virtual ~TowerDefenseHUDController();
+
virtual void tick(float dt);
virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
virtual void changedOwner();
+ void setShowlives(bool temp)
+ { this->showlives = temp; }
+ unsigned int getShowlives(void) const
+ { return this->showlives; }
+
+ void setShowcredits(bool temp)
+ { this->showcredits = temp; }
+ unsigned int getShowcredits(void) const
+ { return this->showcredits; }
+
+ void setShowwaves(bool temp)
+ { this->showwaves = temp; }
+ unsigned int getShowwaves(void) const
+ { return this->showwaves; }
+
+ private:
+ TowerDefense* td;
+
+ bool showcredits;
+ bool showlives;
+ bool showwaves;
};
}
More information about the Orxonox-commit
mailing list