[Orxonox-commit 6520] r11164 - in code/branches/sagerjFS16/src/orxonox: controllers weaponsystem worldentities

sagerj at orxonox.net sagerj at orxonox.net
Thu Apr 14 13:11:00 CEST 2016


Author: sagerj
Date: 2016-04-14 13:11:00 +0200 (Thu, 14 Apr 2016)
New Revision: 11164

Modified:
   code/branches/sagerjFS16/src/orxonox/controllers/HumanController.cc
   code/branches/sagerjFS16/src/orxonox/controllers/HumanController.h
   code/branches/sagerjFS16/src/orxonox/controllers/NewHumanController.cc
   code/branches/sagerjFS16/src/orxonox/controllers/NewHumanController.h
   code/branches/sagerjFS16/src/orxonox/weaponsystem/Weapon.cc
   code/branches/sagerjFS16/src/orxonox/weaponsystem/Weapon.h
   code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponMode.cc
   code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponMode.h
   code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponPack.cc
   code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponPack.h
   code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSet.cc
   code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSet.h
   code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSystem.cc
   code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSystem.h
   code/branches/sagerjFS16/src/orxonox/worldentities/ControllableEntity.cc
   code/branches/sagerjFS16/src/orxonox/worldentities/ControllableEntity.h
Log:
added orxout() for every release lvl for debug purpose

Modified: code/branches/sagerjFS16/src/orxonox/controllers/HumanController.cc
===================================================================
--- code/branches/sagerjFS16/src/orxonox/controllers/HumanController.cc	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/controllers/HumanController.cc	2016-04-14 11:11:00 UTC (rev 11164)
@@ -177,6 +177,7 @@
 
     void HumanController::release(unsigned int firemode)
     {
+        orxout() << "HumanController " << firemode << endl;
         if (HumanController::localController_s)
             HumanController::localController_s->doRelease(firemode);
     }

Modified: code/branches/sagerjFS16/src/orxonox/controllers/HumanController.h
===================================================================
--- code/branches/sagerjFS16/src/orxonox/controllers/HumanController.h	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/controllers/HumanController.h	2016-04-14 11:11:00 UTC (rev 11164)
@@ -62,9 +62,9 @@
 
             static void fire(unsigned int firemode);
             virtual void doFire(unsigned int firemode);
-            static void reload();
             static void release(unsigned int firemode);
             virtual void doRelease(unsigned int firemode);
+            static void reload();
 
             static void boost(const Vector2& value); // Static method, controls boosting.
             void startBoosting(void);

Modified: code/branches/sagerjFS16/src/orxonox/controllers/NewHumanController.cc
===================================================================
--- code/branches/sagerjFS16/src/orxonox/controllers/NewHumanController.cc	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/controllers/NewHumanController.cc	2016-04-14 11:11:00 UTC (rev 11164)
@@ -53,7 +53,7 @@
     SetConsoleCommand("NewHumanController", "changeMode", &NewHumanController::changeMode).keybindMode(KeybindMode::OnPress);
     SetConsoleCommand("NewHumanController", "accelerate", &NewHumanController::accelerate).keybindMode(KeybindMode::OnPress);
     SetConsoleCommand("NewHumanController", "decelerate", &NewHumanController::decelerate).keybindMode(KeybindMode::OnPress);
-    SetConsoleCommand("NewHumanController", "release",    &NewHumanController::release    ).keybindMode(KeybindMode::OnRelease).addShortcut();
+    //SetConsoleCommand("NewHumanController", "release",    &NewHumanController::release   ).keybindMode(KeybindMode::OnRelease).addShortcut();
 
     RegisterUnloadableClass(NewHumanController);
 
@@ -293,6 +293,25 @@
             HumanController::doFire(firemode); //call for formationflight
     }
 
+    /*void NewHumanController::release(unsigned int firemode)
+    {
+        if (NewHumanController::localController_s)
+            NewHumanController::localController_s->doRelease(firemode);
+        orxout() << "Trigger " << firemode << endl;
+    }
+
+    /void NewHumanController::doRelease(unsigned int firemode)
+    {
+        // this->firemode_ = -1; (outdated code from unfire)
+        // hideArrows();
+        if (!this->controllableEntity_)
+            return;
+
+        this->firemode_ = firemode;
+
+        HumanController::doRelease(firemode); //call for formationflight
+    }*/
+
     void NewHumanController::hit(Pawn* originator, btManifoldPoint& contactpoint, float damage)
     {
         //Used in HumanController for formationFlight
@@ -343,25 +362,6 @@
         }
     }
 
-    void NewHumanController::release(unsigned int firemode)
-    {
-        if (NewHumanController::localController_s)
-            NewHumanController::localController_s->doRelease();
-        orxout() << "Trigger" << endl;
-    }
-
-    void NewHumanController::doRelease(unsigned int firemode)
-    {
-        // this->firemode_ = -1; (outdated code from unfire)
-        // hideArrows();
-        if (!this->controllableEntity_)
-            return;
-
-        this->firemode_ = firemode;
-
-        HumanController::doRelease(firemode); //call for formationflight
-    }
-
     void NewHumanController::centerCursor()
     {
         this->currentYaw_ = 0;

Modified: code/branches/sagerjFS16/src/orxonox/controllers/NewHumanController.h
===================================================================
--- code/branches/sagerjFS16/src/orxonox/controllers/NewHumanController.h	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/controllers/NewHumanController.h	2016-04-14 11:11:00 UTC (rev 11164)
@@ -54,12 +54,11 @@
             static void decelerate();
 
             virtual void doFire(unsigned int firemode) override;
+            /*virtual void release(unsigned int firemode);
+            virtual void doRelease(unsigned int firemode);*/
 
             virtual void hit(Pawn* originator, btManifoldPoint& contactpoint, float damage) override;
 
-            static void release(unsigned int firemode);
-            virtual void doRelease(unsigned int firemode);
-
             void centerCursor();
 
             static void changeMode();

Modified: code/branches/sagerjFS16/src/orxonox/weaponsystem/Weapon.cc
===================================================================
--- code/branches/sagerjFS16/src/orxonox/weaponsystem/Weapon.cc	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/weaponsystem/Weapon.cc	2016-04-14 11:11:00 UTC (rev 11164)
@@ -133,6 +133,9 @@
         }
     }
 
+    void Weapon::release(unsigned int mode)
+    {orxout() << "release weapon " << mode << endl;}
+
     /**
     @brief
         Reload all @ref orxonox::WeaponMode weapon modes of this weapon.

Modified: code/branches/sagerjFS16/src/orxonox/weaponsystem/Weapon.h
===================================================================
--- code/branches/sagerjFS16/src/orxonox/weaponsystem/Weapon.h	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/weaponsystem/Weapon.h	2016-04-14 11:11:00 UTC (rev 11164)
@@ -52,6 +52,7 @@
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode) override;
 
             void fire(unsigned int mode);
+            void release(unsigned int mode);
             void reload();
 
             void addWeaponmode(WeaponMode* weaponmode);

Modified: code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponMode.cc
===================================================================
--- code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponMode.cc	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponMode.cc	2016-04-14 11:11:00 UTC (rev 11164)
@@ -168,7 +168,8 @@
         }
     }
 
-    void WeaponMode::release()
+    void WeaponMode::release(float* reloadTime)
+    {orxout() << "release wmode " << reloadTime << endl;}
 
     bool WeaponMode::reload()
     {

Modified: code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponMode.h
===================================================================
--- code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponMode.h	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponMode.h	2016-04-14 11:11:00 UTC (rev 11164)
@@ -57,6 +57,7 @@
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode) override;
 
             virtual bool fire(float* reloadTime);
+            virtual void release(float* reloadTime);
             bool reload();
 
             // Munition

Modified: code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponPack.cc
===================================================================
--- code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponPack.cc	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponPack.cc	2016-04-14 11:11:00 UTC (rev 11164)
@@ -79,6 +79,13 @@
             weapon->fire(weaponmode);
     }
 
+    void WeaponPack::release(unsigned int weaponmode)
+    {
+        for (Weapon* weapon : this->weapons_)
+            weapon->release(weaponmode);
+        orxout() << "release wpack " << weaponmode << endl;
+    }
+
     /**
     @brief
         Reload all weapons in this WeaponSet.

Modified: code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponPack.h
===================================================================
--- code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponPack.h	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponPack.h	2016-04-14 11:11:00 UTC (rev 11164)
@@ -46,6 +46,7 @@
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode) override;
 
             void fire(unsigned int weaponmode);
+            void release(unsigned int weaponmode);
             void reload();
 
             void addWeapon(Weapon * weapon);

Modified: code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSet.cc
===================================================================
--- code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSet.cc	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSet.cc	2016-04-14 11:11:00 UTC (rev 11164)
@@ -67,6 +67,17 @@
                 mapEntry.first->fire(mapEntry.second);
     }
 
+    void WeaponSet::release()
+    {
+        
+        // Fire all WeaponPacks with their defined weaponmode
+        for (const auto& mapEntry : this->weaponpacks_)
+            if (mapEntry.second != WeaponSystem::WEAPON_MODE_UNASSIGNED)
+                mapEntry.first->release(mapEntry.second);
+        orxout() << "release wset " << endl;
+        
+    }
+
     void WeaponSet::reload()
     {
         // Reload all WeaponPacks with their defined weaponmode

Modified: code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSet.h
===================================================================
--- code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSet.h	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSet.h	2016-04-14 11:11:00 UTC (rev 11164)
@@ -46,6 +46,7 @@
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode) override;
 
             void fire();
+            void release();
             void reload();
 
             void setWeaponmodeLink(WeaponPack* weaponpack, unsigned int weaponmode);

Modified: code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSystem.cc
===================================================================
--- code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSystem.cc	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSystem.cc	2016-04-14 11:11:00 UTC (rev 11164)
@@ -298,6 +298,7 @@
         std::map<unsigned int, WeaponSet *>::iterator it = this->weaponSets_.find(firemode);
         if (it != this->weaponSets_.end() && it->second)
             it->second->release();
+        orxout() << "release wsys " << firemode << endl;
     }
 
     void WeaponSystem::reload()

Modified: code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSystem.h
===================================================================
--- code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSystem.h	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/weaponsystem/WeaponSystem.h	2016-04-14 11:11:00 UTC (rev 11164)
@@ -74,8 +74,8 @@
             void changeWeaponmode(WeaponPack * wPack, WeaponSet * wSet, unsigned int weaponmode);
 
             void fire(unsigned int firemode);
+            void release(unsigned int firemode);
             void reload();
-            void release(unsigned int firemode);
 
             Munition * getMunition(SubclassIdentifier<Munition> * identifier);
             void addMunition(Munition* munition);

Modified: code/branches/sagerjFS16/src/orxonox/worldentities/ControllableEntity.cc
===================================================================
--- code/branches/sagerjFS16/src/orxonox/worldentities/ControllableEntity.cc	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/worldentities/ControllableEntity.cc	2016-04-14 11:11:00 UTC (rev 11164)
@@ -302,14 +302,30 @@
     {
         if(GameMode::isMaster())
         {
+            orxout() << "f CE IF " << firemode << endl;
             this->fired(firemode);
         }
         else
         {
+            orxout() << "f CE EL " << firemode << endl;
             callMemberNetworkFunction(&ControllableEntity::fire, this->getObjectID(), 0, firemode);
         }
     }
 
+    void ControllableEntity::release(unsigned int firemode)
+    {
+        if(GameMode::isMaster())
+        {
+            orxout() << "r CE IF " << firemode << endl;
+            this->released(firemode);
+        }
+        else
+        {
+            orxout() << "r CE EL " << firemode << endl;
+            callMemberNetworkFunction(&ControllableEntity::fire, this->getObjectID(), 0, firemode);
+        }
+    }
+
     void ControllableEntity::setController(Controller* val)
     {
         this->controller_ = val;

Modified: code/branches/sagerjFS16/src/orxonox/worldentities/ControllableEntity.h
===================================================================
--- code/branches/sagerjFS16/src/orxonox/worldentities/ControllableEntity.h	2016-04-14 11:00:08 UTC (rev 11163)
+++ code/branches/sagerjFS16/src/orxonox/worldentities/ControllableEntity.h	2016-04-14 11:11:00 UTC (rev 11164)
@@ -96,7 +96,9 @@
                 { this->rotateRoll(Vector2(value, 0)); }
 
             void fire(unsigned int firemode);
+            void release(unsigned int firemode);
             virtual void fired(unsigned int firemode) {}
+            virtual void released(unsigned int firemode) {}
             virtual void reload() {}
 
             /**




More information about the Orxonox-commit mailing list