[Orxonox-commit 4466] r9137 - in code/branches/newlevel2012: data/levels src/modules/towerdefense

mentzerf at orxonox.net mentzerf at orxonox.net
Sun Apr 29 11:17:39 CEST 2012


Author: mentzerf
Date: 2012-04-29 11:17:38 +0200 (Sun, 29 Apr 2012)
New Revision: 9137

Modified:
   code/branches/newlevel2012/data/levels/towerDefense.oxw
   code/branches/newlevel2012/src/modules/towerdefense/Tower.h
   code/branches/newlevel2012/src/modules/towerdefense/TowerDefense.cc
Log:
+ 'addTower' now adds a "tower" (actually a green cube) at 0,0

Modified: code/branches/newlevel2012/data/levels/towerDefense.oxw
===================================================================
--- code/branches/newlevel2012/data/levels/towerDefense.oxw	2012-04-29 09:08:26 UTC (rev 9136)
+++ code/branches/newlevel2012/data/levels/towerDefense.oxw	2012-04-29 09:17:38 UTC (rev 9137)
@@ -47,7 +47,7 @@
 <Template name=towertemplate>
   <Tower>
     <attached>
-      <Model position="15,0,0" mesh="crate.mesh" scale=1 />
+      <Model position="15,0,0" mesh="cube_green.mesh" scale=1 />
     </attached>
   </Tower>
 </Template>

Modified: code/branches/newlevel2012/src/modules/towerdefense/Tower.h
===================================================================
--- code/branches/newlevel2012/src/modules/towerdefense/Tower.h	2012-04-29 09:08:26 UTC (rev 9136)
+++ code/branches/newlevel2012/src/modules/towerdefense/Tower.h	2012-04-29 09:17:38 UTC (rev 9137)
@@ -23,8 +23,10 @@
 		virtual void moveFrontBack(const Vector2& value); //!< Overloaded the function to steer the bat up and down.
 		virtual void moveRightLeft(const Vector2& value); //!< Overloaded the function to steer the bat up and down.
 		
-		
-		
+		void setGame(TowerDefense* towerdefense)
+		{ assert(towerdefense); game_ = towerdefense; }
+	private:
+		TowerDefense* game_;
     };
 }
 

Modified: code/branches/newlevel2012/src/modules/towerdefense/TowerDefense.cc
===================================================================
--- code/branches/newlevel2012/src/modules/towerdefense/TowerDefense.cc	2012-04-29 09:08:26 UTC (rev 9136)
+++ code/branches/newlevel2012/src/modules/towerdefense/TowerDefense.cc	2012-04-29 09:17:38 UTC (rev 9137)
@@ -55,6 +55,9 @@
  */
 
 #include "TowerDefense.h"
+#include "Tower.h"
+#include "TowerDefenseCenterpoint.h"
+
 #include "worldentities/SpawnPoint.h"
 #include "worldentities/pawns/Pawn.h"
 #include "worldentities/pawns/SpaceShip.h"
@@ -109,16 +112,23 @@
 	
 	void TowerDefense::addTower(int x, int y)
 	{
-		orxout()<< "Should add tower at (" << x << "," << y << ")" << endl;
-		
 		if (x > 16 || y > 16)
 		{
 			orxout() << "x and y should be between 1 and 16" << endl;
 			return;
 		}
 		
+		orxout()<< "Should add tower at (" << x << "," << y << ")" << endl;
 		
+		Tower* newTower = new Tower(this->center_);
+		newTower->addTemplate(this->center_->getTowerTemplate());
 		
+		this->center_->attach(newTower);
+		
+		newTower->setPosition(0,0,0);
+		newTower->setGame(this);
+		
+		
 		// TODO: create Tower mesh
 		// TODO: load Tower mesh
 	}




More information about the Orxonox-commit mailing list