[Orxonox-commit 7562] r12165 - in code/branches/TowerDefense_HS18: data/levels src/modules/towerdefense

zdenis at orxonox.net zdenis at orxonox.net
Fri Dec 7 10:18:21 CET 2018


Author: zdenis
Date: 2018-12-07 10:18:21 +0100 (Fri, 07 Dec 2018)
New Revision: 12165

Added:
   code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefenseRangeViewer.cc
   code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefenseRangeViewer.h
Modified:
   code/branches/TowerDefense_HS18/data/levels/towerDefense.oxw
   code/branches/TowerDefense_HS18/src/modules/towerdefense/CMakeLists.txt
   code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefense.cc
   code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefense.h
   code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefenseField.cc
   code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefensePrereqs.h
Log:
Swiggidy swooty im comitting for that booty


Modified: code/branches/TowerDefense_HS18/data/levels/towerDefense.oxw
===================================================================
--- code/branches/TowerDefense_HS18/data/levels/towerDefense.oxw	2018-12-06 19:45:47 UTC (rev 12164)
+++ code/branches/TowerDefense_HS18/data/levels/towerDefense.oxw	2018-12-07 09:18:21 UTC (rev 12165)
@@ -662,6 +662,15 @@
   </TowerDefenseEnemy>
 </Template>
 
+<Template name=therangeviewer>
+  <TowerDefenseRangeViewer>
+      <attached>
+        <Model yaw=0 pitch=0 roll=0 scale3D="1000,1000,10" mesh="cylinder.mesh" /> 
+      </attached>
+    </TowerDefenseRangeViewer>
+</Template>
+
+
 <Level plugins = "towerdefense" gametype = "TowerDefense">
   <templates>
     <Template link=lodtemplate_default />

Modified: code/branches/TowerDefense_HS18/src/modules/towerdefense/CMakeLists.txt
===================================================================
--- code/branches/TowerDefense_HS18/src/modules/towerdefense/CMakeLists.txt	2018-12-06 19:45:47 UTC (rev 12164)
+++ code/branches/TowerDefense_HS18/src/modules/towerdefense/CMakeLists.txt	2018-12-07 09:18:21 UTC (rev 12165)
@@ -10,6 +10,7 @@
   TowerDefenseField.cc
   TDCoordinate.cc
   TowerDefenseController.cc
+  TowerDefenseRangeViewer.cc
 )
 
 ORXONOX_ADD_LIBRARY(towerdefense

Modified: code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefense.cc
===================================================================
--- code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefense.cc	2018-12-06 19:45:47 UTC (rev 12164)
+++ code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefense.cc	2018-12-07 09:18:21 UTC (rev 12165)
@@ -75,6 +75,7 @@
 #include "TowerDefenseTower.h"
 #include "TowerDefenseCenterpoint.h"
 #include "worldentities/SpawnPoint.h"
+#include "worldentities/StaticEntity.h"
 #include "TowerDefenseController.h" //muss ich noch in den richtigen Ordner verschieben
 #include "graphics/Model.h"
 #include "infos/PlayerInfo.h"
@@ -81,7 +82,10 @@
 #include "chat/ChatManager.h"
 #include "core/CoreIncludes.h"
 #include "Highscore.h"
+#include "util/Output.h"
+#include "TowerDefenseRangeViewer.h"
 
+
 namespace orxonox
 {
     RegisterUnloadableClass(TowerDefense);
@@ -91,6 +95,7 @@
         RegisterObject(TowerDefense);
 
         selecter = nullptr;
+        rangeViewer = nullptr;
         this->player_ = nullptr;
         this->setHUDTemplate("TowerDefenseHUD");
         this->waveNumber_ = 0;
@@ -123,8 +128,14 @@
             {
                 selecter = new TowerDefenseSelecter(this->center_->getContext());                
             }
+            if(rangeViewer == nullptr){
+                rangeViewer = new TowerDefenseRangeViewer(this->center_->getContext());
+            }
             selecter->addTemplate(center_->getSelecterTemplate());
+            rangeViewer->addTemplate("therangeviewer");
+            rangeViewer->setPosition(-10000,0,-500);
             center_->attach(selecter);
+            center_->attach(rangeViewer);
         }
         else // If no centerpoint was specified, an error is thrown and the level is exited.
         {
@@ -135,6 +146,7 @@
         enemies_.clear();
 
         createFields();
+
         TeamDeathmatch::start();
 
         //set initial credits, lifes and WaveNumber
@@ -282,6 +294,12 @@
         timeUntilNextWave_ -= dt;
         timeSinceLastSpawn_ += dt;
 
+        if(selecter != nullptr && getField(selecter->selectedPos_)->canUpgrade() == true ){
+            rangeViewer->setPosition(((selecter->selectedPos_->GetX())-8)*100, ((selecter->selectedPos_->GetY())-8)*100, 200);
+        } else {
+            rangeViewer->setPosition(-10000,0,-500);
+        }
+
         //build/upgrade tower at selecter position
         if (selecter != nullptr && selecter->buildTower_ == true)
         {

Modified: code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefense.h
===================================================================
--- code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefense.h	2018-12-06 19:45:47 UTC (rev 12164)
+++ code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefense.h	2018-12-07 09:18:21 UTC (rev 12165)
@@ -37,6 +37,7 @@
 #include "TowerDefenseEnemy.h"
 #include "util/Output.h"
 #include "TowerDefenseField.h"
+#include "TowerDefenseRangeViewer.h"
 
 namespace orxonox
 {
@@ -75,7 +76,8 @@
         void upgradeTower(int x, int y); 
         virtual TDCoordinate* getNextStreetCoord(TDCoordinate*);
         
-        TowerDefenseSelecter* selecter;        
+        TowerDefenseSelecter* selecter;   
+        TowerDefenseRangeViewer* rangeViewer;     
 
     private:
         void createFields();

Modified: code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefenseField.cc
===================================================================
--- code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefenseField.cc	2018-12-06 19:45:47 UTC (rev 12164)
+++ code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefenseField.cc	2018-12-07 09:18:21 UTC (rev 12165)
@@ -1,3 +1,4 @@
+
 /*
  *   ORXONOX - the hottest 3D action shooter ever to exist
  *                    > www.orxonox.net <
@@ -281,6 +282,7 @@
                         break;
                 }
             }
+            
         }                           
     }
 

Modified: code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefensePrereqs.h
===================================================================
--- code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefensePrereqs.h	2018-12-06 19:45:47 UTC (rev 12164)
+++ code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefensePrereqs.h	2018-12-07 09:18:21 UTC (rev 12165)
@@ -67,7 +67,7 @@
     class TowerDefense;
 
     class TowerDefenseTower;
-
+    class TowerDefenseRangeViewer;
     class TowerDefenseCenterpoint;
     class TowerDefenseHUDController;
     class TowerDefensePlayerStats;

Added: code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefenseRangeViewer.cc
===================================================================
--- code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefenseRangeViewer.cc	                        (rev 0)
+++ code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefenseRangeViewer.cc	2018-12-07 09:18:21 UTC (rev 12165)
@@ -0,0 +1,23 @@
+#include "core/CoreIncludes.h"
+#include "worldentities/StaticEntity.h"
+#include "TowerDefenseRangeViewer.h"
+
+
+#include "util/Output.h"
+
+namespace orxonox {
+	RegisterClass(TowerDefenseRangeViewer);
+	TowerDefenseRangeViewer::TowerDefenseRangeViewer(Context* context) : StaticEntity(context)
+	{
+		RegisterObject(TowerDefenseRangeViewer);
+	}
+
+	TowerDefenseRangeViewer::~TowerDefenseRangeViewer()
+    {
+
+    }
+
+	void TowerDefenseRangeViewer::XMLPort(Element& xmlelement, XMLPort::Mode mode){
+		SUPER(TowerDefenseRangeViewer, XMLPort, xmlelement, mode);
+	}
+}
\ No newline at end of file

Added: code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefenseRangeViewer.h
===================================================================
--- code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefenseRangeViewer.h	                        (rev 0)
+++ code/branches/TowerDefense_HS18/src/modules/towerdefense/TowerDefenseRangeViewer.h	2018-12-07 09:18:21 UTC (rev 12165)
@@ -0,0 +1,18 @@
+#ifndef _TowerDefenseRangeViewer_H__
+#define _TowerDefenseRangeViewer_H__
+#include "towerdefense/TowerDefensePrereqs.h"
+#include "util/Output.h"
+#include "worldentities/StaticEntity.h"
+
+namespace orxonox
+{
+    class _TowerDefenseExport TowerDefenseRangeViewer : public StaticEntity
+    {
+    public:
+        TowerDefenseRangeViewer(Context* context);
+        virtual ~TowerDefenseRangeViewer();
+        virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
+    };
+}
+
+#endif /* _TowerDefenseRangeViewer_H__ */



More information about the Orxonox-commit mailing list