[Orxonox-commit 7024] r11643 - code/branches/Asteroid_HS17/src/modules/asteroids2D
vyang at orxonox.net
vyang at orxonox.net
Thu Dec 7 18:25:56 CET 2017
Author: vyang
Date: 2017-12-07 18:25:56 +0100 (Thu, 07 Dec 2017)
New Revision: 11643
Modified:
code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.cc
code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.h
Log:
Problem, dass Leben mehrmals durch einen Asteroiden abgezogen wird, wurde behoben
Modified: code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.cc
===================================================================
--- code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.cc 2017-12-07 08:25:39 UTC (rev 11642)
+++ code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.cc 2017-12-07 17:25:56 UTC (rev 11643)
@@ -96,8 +96,15 @@
inline bool Asteroids2DShip::collidesAgainst(WorldEntity* otherObject, const btCollisionShape* ownCollisionShape, btManifoldPoint& contactPoint)
{
- removeHealth(100);
- getGame()->addPoints(10);
+
+ orxout() << "touched" << endl;
+ Asteroids2DStone* stone = orxonox_cast<Asteroids2DStone*>(otherObject);
+ if(stone != nullptr && (stone != lastStone || lastStone == nullptr))
+ {
+ removeHealth(100);
+ lastStone = stone;
+
+ }
return false;
}
Modified: code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.h
===================================================================
--- code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.h 2017-12-07 08:25:39 UTC (rev 11642)
+++ code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.h 2017-12-07 17:25:56 UTC (rev 11643)
@@ -37,12 +37,15 @@
#include "asteroids2D/Asteroids2DPrereqs.h"
+
#include "core/XMLPort.h"
#include "worldentities/pawns/SpaceShip.h"
+#include "weapons/WeaponsPrereqs.h"
#include "graphics/Camera.h"
#include "Asteroids2D.h" // Is necessary for getGame function
//#include "Asteroids2DCenterPoint.h"
+#include "Asteroids2DStone.h"
#include "tools/Timer.h"
@@ -79,14 +82,10 @@
private:
Asteroids2D* getGame();
+
float width, height;
WeakPtr<Asteroids2D> game;
- WeakPtr<WorldEntity> lastEntity;
- struct Velocity
- {
- float x;
- float y;
- } velocity, desiredVelocity;
+ WeakPtr<Asteroids2DStone> lastStone;
Timer timer;
};
More information about the Orxonox-commit
mailing list