[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