[Orxonox-commit 6556] r11196 - in code/branches/tgidronFS16: data/levels data/overlays src/modules/hover

tgidron at orxonox.net tgidron at orxonox.net
Thu May 26 14:49:44 CEST 2016


Author: tgidron
Date: 2016-05-26 14:49:44 +0200 (Thu, 26 May 2016)
New Revision: 11196

Modified:
   code/branches/tgidronFS16/data/levels/Hover.oxw
   code/branches/tgidronFS16/data/overlays/HoverHUD.oxo
   code/branches/tgidronFS16/src/modules/hover/Hover.cc
   code/branches/tgidronFS16/src/modules/hover/Hover.h
   code/branches/tgidronFS16/src/modules/hover/HoverOrigin.cc
   code/branches/tgidronFS16/src/modules/hover/HoverOrigin.h
   code/branches/tgidronFS16/src/modules/hover/TFlagsLivesLevelHUD.cc
   code/branches/tgidronFS16/src/modules/hover/TFlagsLivesLevelHUD.h
Log:
Final Project

Modified: code/branches/tgidronFS16/data/levels/Hover.oxw
===================================================================
--- code/branches/tgidronFS16/data/levels/Hover.oxw	2016-05-26 12:49:13 UTC (rev 11195)
+++ code/branches/tgidronFS16/data/levels/Hover.oxw	2016-05-26 12:49:44 UTC (rev 11196)
@@ -2,7 +2,7 @@
  name = "Hover level"
  description = "Level for Minigame Hover"
  tags = "minigame"
- screenshot = "Hover.png"
+ screenshot = "hover.png"
 />
 
 <?lua
@@ -177,6 +177,7 @@
           numCells="<?lua print(MAZE_NUM_CELLS)?>"
           cellSize="<?lua print(MAZE_CELL_SIZE)?>"
           cellHeight="<?lua print(MAZE_CELL_HEIGHT)?>"
+          wallThickness="<?lua print(MAZE_WALL_THICKNESS)?>"
           obstacletemplate=obstacle
           pickuptemplate=destroyhoverpickup
           pickuprepresentationtemplate=destroyhoverpickupRepresentation

Modified: code/branches/tgidronFS16/data/overlays/HoverHUD.oxo
===================================================================
--- code/branches/tgidronFS16/data/overlays/HoverHUD.oxo	2016-05-26 12:49:13 UTC (rev 11195)
+++ code/branches/tgidronFS16/data/overlays/HoverHUD.oxo	2016-05-26 12:49:44 UTC (rev 11196)
@@ -86,6 +86,7 @@
      showFlags = true
      showLives = false
      showLevel = false
+     levelUpgrade = false
 
      />
 
@@ -99,6 +100,7 @@
      showFlags = false
      showLives = true
      showLevel = false
+     levelUpgrade = false
 
      />
 
@@ -112,10 +114,25 @@
      showFlags = false
      showLives = false
      showLevel = true
+     levelUpgrade = false
 
      />
 
+     <TFlagsLivesLevelHUD
+     position  = "0.3, 0.45"
+     pickpoint = "0.0, 0.0"
+     font      = "ShareTechMono"
+     textsize  = 0.04
+     colour    = "1.0, 1.0, 1.0, 1.0"
+     align     = "left"
+     showFlags = false
+     showLives = false
+     showLevel = false
+     levelUpgrade = true
 
+     />
+
+
   </OverlayGroup>
 
 </Template>

Modified: code/branches/tgidronFS16/src/modules/hover/Hover.cc
===================================================================
--- code/branches/tgidronFS16/src/modules/hover/Hover.cc	2016-05-26 12:49:13 UTC (rev 11195)
+++ code/branches/tgidronFS16/src/modules/hover/Hover.cc	2016-05-26 12:49:44 UTC (rev 11196)
@@ -23,6 +23,7 @@
  *      Manuel Meier
  *   Co-authors:
  *      Cyrill Burgener
+ *      Tomer Gidron
  *
  */
 
@@ -63,7 +64,7 @@
         cellSize = 0;
         cellHeight = 0;
 
-        bShowLevel = false;
+        bLevelUpgradeHUD = false;
 
         totFlags = 0;
 
@@ -82,19 +83,10 @@
             cellSize = this->origin_->getCellSize();
             cellHeight = this->origin_->getCellHeight();
 
-            /*
-            bool occupiedCells[numCells][numCells];
+            //TODO
+            //create boolean array/vector to assert that no two objects are placed in the same way
+            
 
-            for(int i = 0; i < numCells; i++)
-            {
-                for(int j = 0; j < numCells; j++)
-                {
-                    occupiedCells[i][j] = false;
-                }
-            }
-            occupiedCells[0][0] = true;
-            */
-
             MazeGenerator generator(numCells);
             generator.generateMaze();
             generator.renderMaze();
@@ -204,56 +196,32 @@
             {
                 GSLevel::startMainMenu();
             }
-            // Debug
-            orxout() << this->origin_->getPickupTemplate() << endl;
-            orxout() << this->origin_->getPickupRepresentationTemplate() << endl;
-
-
-            orxout() << this->origin_->getPickupTemplateSpeed() << endl;
-            orxout() << this->origin_->getPickupRepresentationTemplateSpeed() << endl;
-
-            orxout() << this->origin_->getObstacleTemplate() << endl;
-            //orxout() << crate->getPosition() << endl;
+            
         }
     }
 
 
-    // Start new level
+    // generate new Flags
     void Hover::createFlags()
     {
-        //Generate 5 flags randomly (test only 1 flag)
+        //TODO
+        //Generate flags randomly using bool array
 
-          /*  do
-            {
-                int i = 0;
+        //Generate 5 flags randomly on field
+        for ( int i = 0; i < 5; i++ )
+        {
+            HoverFlag* flag = new HoverFlag(origin_->getContext());
+            flag->init(rand()%numCells, rand()%numCells, cellSize);
+            flags_.push_back(flag);
 
-                HoverFlag* flag = new HoverFlag(origin_->getContext());
-                int x = rand()%numCells;
-                int y = rand()%numCells;
-                flag->init(x, y, cellSize);
-                flags_.push_back(flag);
-
-                occupiedCells[x][y] = true;
-
-                i++;
-
-            }while( i<5 || occupiedCells[x][y] == true);
-            */
-
-            for ( int i = 0; i < 5; i++ )
-            {
-                HoverFlag* flag = new HoverFlag(origin_->getContext());
-                flag->init(rand()%numCells, rand()%numCells, cellSize);
-                flags_.push_back(flag);
-
             
 
-                if(flags_[i]->getPosition() == get3dCoordinates(0,0,-60))
-                {
-                    flags_[i]->destroyLater();
-                    flags_.erase(flags_.begin()+i);
-                }
+            if(flags_[i]->getPosition() == get3dCoordinates(0,0,-60))
+            {
+                flags_[i]->destroyLater();
+                flags_.erase(flags_.begin()+i);
             }
+        }
             
     }
 
@@ -274,7 +242,6 @@
                     //ChatManager::message("Level Up!");
                     
                     levelUp();
-                    //GSLevel::startMainMenu();
                 }
             }
 
@@ -286,6 +253,7 @@
             }
     }
 
+    //start new level - call to create new flags
     void Hover::levelUp()
     {
         level++;
@@ -296,8 +264,13 @@
         }
         createFlags();
         toggleShowLevel();
-        showLevelTimer.setTimer(1.0f, false, createExecutor(createFunctor(&Hover::toggleShowLevel, this)));
+        showLevelTimer.setTimer(2.0f, false, createExecutor(createFunctor(&Hover::toggleShowLevel, this)));
 
+        //spawn one additional crate randomly
+        Pawn* crate = new Pawn(origin_->getContext());
+        crate->addTemplate(origin_->getObstacleTemplate());  
+        crate->setPosition(get3dCoordinates(rand()%numCells, rand()%numCells, 43.0f));
+
     }
 
     Vector3 Hover::get3dCoordinates(int x, int y, float heightOffset)
@@ -305,6 +278,7 @@
         return Vector3(x*cellSize*1.0f + cellSize/2, heightOffset, y*cellSize*1.0f + cellSize/2);
     }
 
+    //if killed, subtract number of lives. If lives == 0, end game
     void Hover::costLife()
     {
         lives--;

Modified: code/branches/tgidronFS16/src/modules/hover/Hover.h
===================================================================
--- code/branches/tgidronFS16/src/modules/hover/Hover.h	2016-05-26 12:49:13 UTC (rev 11195)
+++ code/branches/tgidronFS16/src/modules/hover/Hover.h	2016-05-26 12:49:44 UTC (rev 11196)
@@ -23,6 +23,7 @@
  *      Manuel Meier
  *   Co-authors:
  *      Cyrill Burgener
+ *      Tomer Gidron
  *
  */
 
@@ -76,7 +77,7 @@
             inline int getLevel() const
                 { return this->level; }
 
-            bool bShowLevel;
+            bool bLevelUpgradeHUD;
 
         private:
 
@@ -96,7 +97,7 @@
 
             std::vector<PickupSpawner*> pickupSpawners_;
 
-            void toggleShowLevel(){bShowLevel = !bShowLevel;}
+            void toggleShowLevel(){bLevelUpgradeHUD = !bLevelUpgradeHUD;}
 
             Timer showLevelTimer;
     };

Modified: code/branches/tgidronFS16/src/modules/hover/HoverOrigin.cc
===================================================================
--- code/branches/tgidronFS16/src/modules/hover/HoverOrigin.cc	2016-05-26 12:49:13 UTC (rev 11195)
+++ code/branches/tgidronFS16/src/modules/hover/HoverOrigin.cc	2016-05-26 12:49:44 UTC (rev 11196)
@@ -22,7 +22,7 @@
  *   Author:
  *      Manuel Meier
  *   Co-authors:
- *      ...
+ *      Tomer Gidron
  *
  */
 
@@ -45,7 +45,7 @@
         RegisterObject(HoverOrigin);
         checkGametype();
 
-        //not needed
+        //Initialization of variables (not really needed)
 
         pickupTemplate_ = "";
         pickupRepresentationTemplate_ = "";
@@ -65,6 +65,7 @@
         XMLPortParam(HoverOrigin, "numCells", setNumCells, getNumCells, xmlelement, mode);
         XMLPortParam(HoverOrigin, "cellSize", setCellSize, getCellSize, xmlelement, mode);
         XMLPortParam(HoverOrigin, "cellHeight", setCellHeight, getCellHeight, xmlelement, mode);
+        XMLPortParam(HoverOrigin, "wallThickness", setWallThickness, getWallThickness, xmlelement, mode);
         XMLPortParam(HoverOrigin, "pickuptemplate", setPickupTemplate, getPickupTemplate, xmlelement, mode);
         XMLPortParam(HoverOrigin, "pickuprepresentationtemplate", setPickupRepresentationTemplate, getPickupRepresentationTemplate, xmlelement, mode);
         XMLPortParam(HoverOrigin, "pickuptemplatespeed", setPickupTemplateSpeed, getPickupTemplateSpeed, xmlelement, mode);

Modified: code/branches/tgidronFS16/src/modules/hover/HoverOrigin.h
===================================================================
--- code/branches/tgidronFS16/src/modules/hover/HoverOrigin.h	2016-05-26 12:49:13 UTC (rev 11195)
+++ code/branches/tgidronFS16/src/modules/hover/HoverOrigin.h	2016-05-26 12:49:44 UTC (rev 11196)
@@ -22,7 +22,7 @@
  *   Author:
  *      Manuel Meier
  *   Co-authors:
- *      ...
+ *      Tomer Gidron
  *
  */
 
@@ -65,6 +65,11 @@
             inline int getCellHeight() const
                 { return this->cellHeight_; }
 
+            inline void setWallTickness(int wallTickness)
+                { this->wallTickness_ = wallTickness; }
+            inline int getWallTickness() const
+                { return this->wallTickness_; }
+
             //pickup template set and get for destroy hover pickup
 
             inline void setPickupTemplate(std::string pickupTemplate)
@@ -123,6 +128,7 @@
             int numCells_;
             int cellSize_;
             int cellHeight_;
+            int wallThickness_;
 
             // Tempaltes for the destroy hover pickup
             std::string pickupTemplate_;

Modified: code/branches/tgidronFS16/src/modules/hover/TFlagsLivesLevelHUD.cc
===================================================================
--- code/branches/tgidronFS16/src/modules/hover/TFlagsLivesLevelHUD.cc	2016-05-26 12:49:13 UTC (rev 11195)
+++ code/branches/tgidronFS16/src/modules/hover/TFlagsLivesLevelHUD.cc	2016-05-26 12:49:44 UTC (rev 11196)
@@ -45,6 +45,7 @@
         showLives_ = true;
         showLevel_ = true;
         showTotFlags_= true;
+        levelUpgrade_ = true;
     }
 
     void TFlagsLivesLevelHUD::XMLPort(Element& xmlelement, XMLPort::Mode mode)
@@ -54,6 +55,7 @@
         XMLPortParam(TFlagsLivesLevelHUD,"showPoints", setShowTot, getShowTot, xmlelement, mode);
         XMLPortParam(TFlagsLivesLevelHUD, "showLives", setShowLives, getShowLives, xmlelement, mode);
         XMLPortParam(TFlagsLivesLevelHUD, "showLevel", setShowLevel, getShowLevel, xmlelement, mode);
+        XMLPortParam(TFlagsLivesLevelHUD, "levelUpgrade", setLevelUpgrade, getLevelUpgrade, xmlelement, mode);
     }
 
     void TFlagsLivesLevelHUD::tick(float dt)
@@ -64,6 +66,7 @@
             const std::string& lives = multi_cast<std::string>(this->hoverGame_->getLives());
             const std::string& level = multi_cast<std::string>(this->hoverGame_->getLevel());
 
+            //Display total Flags taken
             if(showTotFlags_ == true){
                 setTextSize(0.04);
                 setPosition(Vector2(0.18, 0.08));
@@ -71,7 +74,7 @@
                 this->setCaption(flags);
             }
 
-
+            //Display remaining lives
             if(showLives_ == true){
                 setTextSize(0.04);
                 setPosition(Vector2(0.18, 0.12));
@@ -79,6 +82,7 @@
                 this->setCaption(lives);
             }
 
+            //Display current level
             if(showLevel_ == true){
                 setTextSize(0.04);
                 setPosition(Vector2(0.18, 0.16));
@@ -87,14 +91,19 @@
                 
             }
             
-            if(this->hoverGame_->bShowLevel)
+            //New Level pop up
+            if(this->hoverGame_->bLevelUpgradeHUD  && levelUpgrade_)
                 {
-                    setTextSize(0.2);
-                    setPosition(Vector2(0.3, 0.55));
-                    std::stringstream sstm;
-                    sstm << "Level " << level;
-                    this->setCaption(sstm.str());
+                setTextSize(0.2);
+                setPosition(Vector2(0.3, 0.45));
+                std::stringstream sstm;
+                sstm << "Level " << level;
+                this->setCaption(sstm.str());
+
+                //TODO
+                //make others stop blinking when new level pop-up is activated
                 }
+
     }
 
     void TFlagsLivesLevelHUD::changedOwner()

Modified: code/branches/tgidronFS16/src/modules/hover/TFlagsLivesLevelHUD.h
===================================================================
--- code/branches/tgidronFS16/src/modules/hover/TFlagsLivesLevelHUD.h	2016-05-26 12:49:13 UTC (rev 11195)
+++ code/branches/tgidronFS16/src/modules/hover/TFlagsLivesLevelHUD.h	2016-05-26 12:49:44 UTC (rev 11196)
@@ -52,7 +52,7 @@
             /// sets TOTAL flags taken
             inline void setShowTot(int totFlags)
                 { this->totFlags_ = totFlags; }
-            /// returns total flags >=0
+            /// returns TOTAL flags >=0
             inline int getShowTot() const
                 { return this->totFlags_; }
 
@@ -84,7 +84,14 @@
             inline int getTotLevel() const
                 { return this->totLevel_; }
 
+            /// sets level Upgrade
+            void setLevelUpgrade(const bool levelUpgrade)
+                { levelUpgrade_ = levelUpgrade; }
+            /// gets level Upgrade
+            const bool getLevelUpgrade() const
+                { return levelUpgrade_; }
 
+
         private:
             Hover* hoverGame_;
             int totFlags_;
@@ -92,6 +99,7 @@
             bool showLives_;
             bool showLevel_;
             bool showTotFlags_;
+            bool levelUpgrade_;
     };
 }
 #endif /* _TFlagsLivesLevelHUD_H__ */
\ No newline at end of file




More information about the Orxonox-commit mailing list