[Orxonox-commit 4535] r9207 - code/branches/newlevel2012/src/modules/towerdefense

mentzerf at orxonox.net mentzerf at orxonox.net
Fri May 18 15:34:51 CEST 2012


Author: mentzerf
Date: 2012-05-18 15:34:50 +0200 (Fri, 18 May 2012)
New Revision: 9207

Added:
   code/branches/newlevel2012/src/modules/towerdefense/TowerDefensePlayerStats.cc
   code/branches/newlevel2012/src/modules/towerdefense/TowerDefensePlayerStats.h
Modified:
   code/branches/newlevel2012/src/modules/towerdefense/CMakeLists.txt
   code/branches/newlevel2012/src/modules/towerdefense/TowerDefense.cc
   code/branches/newlevel2012/src/modules/towerdefense/TowerDefense.h
   code/branches/newlevel2012/src/modules/towerdefense/TowerDefenseHUDController.cc
   code/branches/newlevel2012/src/modules/towerdefense/TowerDefenseHUDController.h
   code/branches/newlevel2012/src/modules/towerdefense/TowerDefensePrereqs.h
Log:
+ Added new class 'TowerDefensePlayerStats' to manage stats
- Removed stats variables from TowerDefenseHUDController

Modified: code/branches/newlevel2012/src/modules/towerdefense/CMakeLists.txt
===================================================================
--- code/branches/newlevel2012/src/modules/towerdefense/CMakeLists.txt	2012-05-18 13:29:40 UTC (rev 9206)
+++ code/branches/newlevel2012/src/modules/towerdefense/CMakeLists.txt	2012-05-18 13:34:50 UTC (rev 9207)
@@ -3,6 +3,7 @@
   Tower.cc
   TowerDefenseCenterpoint.cc
   TowerDefenseHUDController.cc
+  TowerDefensePlayerStats.cc
 )
 
 ORXONOX_ADD_LIBRARY(TowerDefense

Modified: code/branches/newlevel2012/src/modules/towerdefense/TowerDefense.cc
===================================================================
--- code/branches/newlevel2012/src/modules/towerdefense/TowerDefense.cc	2012-05-18 13:29:40 UTC (rev 9206)
+++ code/branches/newlevel2012/src/modules/towerdefense/TowerDefense.cc	2012-05-18 13:34:50 UTC (rev 9207)
@@ -76,6 +76,7 @@
 #include "TowerDefense.h"
 #include "Tower.h"
 #include "TowerDefenseCenterpoint.h"
+#include "TowerDefensePlayerStats.h"
 
 #include "worldentities/SpawnPoint.h"
 #include "worldentities/pawns/Pawn.h"
@@ -100,6 +101,8 @@
 		
         this->setHUDTemplate("TowerDefenseHUD");
 
+		this->stats_ = new TowerDefensePlayerStats();
+
 		/* Temporary hack to allow the player to add towers */
 		this->dedicatedAddTower_ = createConsoleCommand( "addTower", createExecutor( createFunctor(&TowerDefense::addTower, this) ) );
 	

Modified: code/branches/newlevel2012/src/modules/towerdefense/TowerDefense.h
===================================================================
--- code/branches/newlevel2012/src/modules/towerdefense/TowerDefense.h	2012-05-18 13:29:40 UTC (rev 9206)
+++ code/branches/newlevel2012/src/modules/towerdefense/TowerDefense.h	2012-05-18 13:34:50 UTC (rev 9207)
@@ -40,8 +40,6 @@
 #include "towerdefense/TowerDefensePrereqs.h"
 #include "gametypes/Deathmatch.h"
 		 
-
-
 namespace orxonox
 {
 	class _OrxonoxExport TowerDefense : public Deathmatch
@@ -79,6 +77,9 @@
 	private:
 //		WeakPtr<TowerDefenseCenterpoint> center_;
 		TowerDefenseCenterpoint *center_;
+		
+		/* handles stats */
+		TowerDefensePlayerStats *stats_;
 	
 		bool hasTower(int x, int y);
 		

Modified: code/branches/newlevel2012/src/modules/towerdefense/TowerDefenseHUDController.cc
===================================================================
--- code/branches/newlevel2012/src/modules/towerdefense/TowerDefenseHUDController.cc	2012-05-18 13:29:40 UTC (rev 9206)
+++ code/branches/newlevel2012/src/modules/towerdefense/TowerDefenseHUDController.cc	2012-05-18 13:34:50 UTC (rev 9207)
@@ -36,14 +36,9 @@
 {
 	CreateFactory(TowerDefenseHUDController);
 	
-	const int kDefaultCredit = 200;
-	
     TowerDefenseHUDController::TowerDefenseHUDController(BaseObject* creator) : OverlayText(creator)
 	{
 		RegisterObject(TowerDefenseHUDController);
-		
-		this->credit_ = 200;
-		this->waveNumber_ = 0;
 	}
 	
 	TowerDefenseHUDController::~TowerDefenseHUDController()
@@ -54,8 +49,6 @@
     void TowerDefenseHUDController::tick(float dt)
 	{
 		SUPER(TowerDefenseHUDController, tick, dt);
-		
-		credit_;
 	}
 	
     void TowerDefenseHUDController::XMLPort(Element& xmlelement, XMLPort::Mode mode)

Modified: code/branches/newlevel2012/src/modules/towerdefense/TowerDefenseHUDController.h
===================================================================
--- code/branches/newlevel2012/src/modules/towerdefense/TowerDefenseHUDController.h	2012-05-18 13:29:40 UTC (rev 9206)
+++ code/branches/newlevel2012/src/modules/towerdefense/TowerDefenseHUDController.h	2012-05-18 13:34:50 UTC (rev 9207)
@@ -28,6 +28,7 @@
 	 
  /**
 	 @brief
+	 This subclass of OverlayText is used to display the stats of the player in the HUD
 	 
 	 @ingroup TowerDefense
  */
@@ -53,25 +54,6 @@
         virtual void tick(float dt);
         virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
 		virtual void changedOwner();
-		
-		inline int getCredit()
-			{ return credit_; }
-		
-		inline void setCredit(int credit)
-			{ credit_ = credit; }
-		
-		inline int getWaveNumber()
-			{ return waveNumber_; }
-		
-		inline void didLoadNextWave()
-			{ waveNumber_++; }
-		
-		
-		
-	private:
-		int credit_;
-		int waveNumber_;
-		//int baseHealth_;
     };
 }
 

Added: code/branches/newlevel2012/src/modules/towerdefense/TowerDefensePlayerStats.cc
===================================================================
--- code/branches/newlevel2012/src/modules/towerdefense/TowerDefensePlayerStats.cc	                        (rev 0)
+++ code/branches/newlevel2012/src/modules/towerdefense/TowerDefensePlayerStats.cc	2012-05-18 13:34:50 UTC (rev 9207)
@@ -0,0 +1,44 @@
+/*
+ *   ORXONOX - the hottest 3D action shooter ever to exist
+ *                    > www.orxonox.net <
+ *
+ *
+ *   License notice:
+ *
+ *   This program is free software; you can redistribute it and/or
+ *   modify it under the terms of the GNU General Public License
+ *   as published by the Free Software Foundation; either version 2
+ *   of the License, or (at your option) any later version.
+ *
+ *   This program is distributed in the hope that it will be useful,
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *   GNU General Public License for more details.
+ *
+ *   You should have received a copy of the GNU General Public License
+ *   along with this program; if not, write to the Free Software
+ *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ *
+ *   Author:
+ *
+ *   Co-authors:
+ *      ...
+ */
+ 
+#include "TowerDefensePlayerStats.h"
+
+namespace orxonox
+{
+	const int kDefaultCredit = 200;
+	
+    TowerDefensePlayerStats::TowerDefensePlayerStats()
+	{
+		this->credit_ = kDefaultCredit;
+		this->waveNumber_ = 0;
+	}
+	/*
+	TowerDefensePlayerStats::~TowerDefensePlayerStats()
+	{
+	}
+	*/		
+}

Added: code/branches/newlevel2012/src/modules/towerdefense/TowerDefensePlayerStats.h
===================================================================
--- code/branches/newlevel2012/src/modules/towerdefense/TowerDefensePlayerStats.h	                        (rev 0)
+++ code/branches/newlevel2012/src/modules/towerdefense/TowerDefensePlayerStats.h	2012-05-18 13:34:50 UTC (rev 9207)
@@ -0,0 +1,68 @@
+/*
+ *   ORXONOX - the hottest 3D action shooter ever to exist
+ *                    > www.orxonox.net <
+ *
+ *
+ *   License notice:
+ *
+ *   This program is free software; you can redistribute it and/or
+ *   modify it under the terms of the GNU General Public License
+ *   as published by the Free Software Foundation; either version 2
+ *   of the License, or (at your option) any later version.
+ *
+ *   This program is distributed in the hope that it will be useful,
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *   GNU General Public License for more details.
+ *
+ *   You should have received a copy of the GNU General Public License
+ *   along with this program; if not, write to the Free Software
+ *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ *
+ *   Author:
+ *
+ *   Co-authors:
+ *      ...
+ *
+ */
+	 
+ /**
+	 @brief
+	 This manages the stats of the player. It is used by 'TowerDefense', the gametype
+	
+	 @ingroup TowerDefense
+ */
+	 
+
+#ifndef _TowerDefensePlayerStats_H__
+#define _TowerDefensePlayerStats_H__
+
+#include "towerdefense/TowerDefensePrereqs.h"
+
+namespace orxonox
+{
+    class _TowerDefenseExport TowerDefensePlayerStats
+    {
+	public:
+		TowerDefensePlayerStats();
+		
+		inline int getCredit()
+			{ return credit_; }
+		
+		inline void setCredit(int credit)
+			{ credit_ = credit; }
+		
+		inline int getWaveNumber()
+			{ return waveNumber_; }
+		
+		inline void didLoadNextWave()
+			{ waveNumber_++; }
+		
+	private:
+		int credit_;
+		int waveNumber_;
+		//int baseHealth_;
+    };
+}
+
+#endif /* _TowerDefensePlayerStats_H__ */

Modified: code/branches/newlevel2012/src/modules/towerdefense/TowerDefensePrereqs.h
===================================================================
--- code/branches/newlevel2012/src/modules/towerdefense/TowerDefensePrereqs.h	2012-05-18 13:29:40 UTC (rev 9206)
+++ code/branches/newlevel2012/src/modules/towerdefense/TowerDefensePrereqs.h	2012-05-18 13:34:50 UTC (rev 9207)
@@ -67,6 +67,7 @@
     class TowerDefense;
 	class Tower;
     class TowerDefenseCenterpoint;
+	class TowerDefenseHUDController;
 	class TowerDefensePlayerStats;
 }
 




More information about the Orxonox-commit mailing list