[Orxonox-commit 6251] r10908 - in code/branches/particleEffectsHS15: data/levels/includes src/modules/weapons/projectiles src/modules/weapons/weaponmodes
fvultier at orxonox.net
fvultier at orxonox.net
Mon Nov 30 22:55:38 CET 2015
Author: fvultier
Date: 2015-11-30 22:55:38 +0100 (Mon, 30 Nov 2015)
New Revision: 10908
Removed:
code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile2.cc
code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile2.h
Modified:
code/branches/particleEffectsHS15/data/levels/includes/weaponSettingsEscort.oxi
code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile.cc
code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile.h
code/branches/particleEffectsHS15/src/modules/weapons/weaponmodes/MineGun.h
Log:
Mine damages pawns within range.
Modified: code/branches/particleEffectsHS15/data/levels/includes/weaponSettingsEscort.oxi
===================================================================
--- code/branches/particleEffectsHS15/data/levels/includes/weaponSettingsEscort.oxi 2015-11-30 21:25:57 UTC (rev 10907)
+++ code/branches/particleEffectsHS15/data/levels/includes/weaponSettingsEscort.oxi 2015-11-30 21:55:38 UTC (rev 10908)
@@ -13,10 +13,10 @@
<DefaultWeaponmodeLink firemode=1 weaponmode=1 />
</links>
<Weapon>
- <MineGun mode=0 munitionpershot=0 delay=0.125 damage=9.3 muzzleoffset=" 0.1, 1.4,-3" maxtimeuntilexplosion=5 timeuntilactivation=1.5/>
+ <MineGun mode=0 munitionpershot=0 delay=0.125 damage=50 shielddamage=15 healthdamage=10 muzzleoffset=" 0.1, 1.4,-3" maxtimeuntilexplosion=25 timeuntilactivation=2.5/>
</Weapon>
<Weapon>
- <SplitGun mode=0 munitionpershot=0 delay=0.125 damage=9.3 muzzleoffset=" 0.1, 1.4,-3" />
+ <IceGun mode=0 munitionpershot=0 delay=0.125 damage=9.3 muzzleoffset=" 0.1, 1.4,-3" freezefactor=0.5 freezetime=2.0 />
</Weapon>
</WeaponPack>
<WeaponPack>
Modified: code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile.cc
===================================================================
--- code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile.cc 2015-11-30 21:25:57 UTC (rev 10907)
+++ code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile.cc 2015-11-30 21:55:38 UTC (rev 10908)
@@ -20,6 +20,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
* Author:
+ * Jannis Holzer
* Fabien Vultier
* Co-authors:
* ...
@@ -34,47 +35,84 @@
#include "MineProjectile.h"
#include "core/CoreIncludes.h"
+#include "graphics/Model.h"
#include "core/command/Executor.h"
+#include "graphics/ParticleSpawner.h"
+#include "worldentities/pawns/Pawn.h"
#include "core/EventIncludes.h"
-#include "graphics/Model.h"
+#include "sound/WorldSound.h"
namespace orxonox
{
RegisterClass(MineProjectile);
+ const float MineProjectile::collisionShapeRadius_ = 15.0f;
+ const float MineProjectile::damageRadius_ = 200.0f;
+ const float MineProjectile::triggerRadius_ = 100.0f;
+
MineProjectile::MineProjectile(Context* context) : MovableEntity(context), BasicProjectile()
{
RegisterObject(MineProjectile);
- this->bActive_ = false;
+ this->bAllowExplosion_ = false;
this->maxTimeUntilExplosion_ = 10.0f;
this->timeUntilActivation_ = 1.0f;
- rings_ = new MovableEntity(this->getContext());
- this->attach(rings_);
- rings_->setPosition(Vector3(0.0,0.0,0.0));
- rings_->setAngularVelocity(Vector3(0.0,5.0,0.0));
+ //Create movable entities
+ rings1_ = new MovableEntity(this->getContext());
+ this->attach(rings1_);
+ rings1_->setPosition(Vector3(0.0,0.0,0.0));
+ rings1_->setAngularVelocity(Vector3(0.0,5.0,0.0));
+ rings2_ = new MovableEntity(this->getContext());
+ this->attach(rings2_);
+ rings2_->setPosition(Vector3(0.0,0.0,0.0));
+ rings2_->setAngularVelocity(Vector3(0.0,0.0,5.0));
+
+ core_ = new MovableEntity(this->getContext());
+ this->attach(core_);
+ core_->setPosition(Vector3(0.0,0.0,0.0));
+ core_->setAngularVelocity(Vector3(2.5,2.5,0.0));
+
+ //Create Models
+ //Core
modelCore_ = new Model(this->getContext());
modelCore_->setMeshSource("Mine_Core.mesh");
modelCore_->setScale(15.0);
- this->attach(modelCore_);
+ core_->attach(modelCore_);
modelCore_->setPosition(Vector3(0,0,0));
+ //Ring 1
modelRing1_ = new Model(this->getContext());
modelRing1_->setMeshSource("Mine_Ring.mesh");
modelRing1_->setScale(15.0);
- rings_->attach(modelRing1_);
+ rings1_->attach(modelRing1_);
modelRing1_->setPosition(Vector3(0,0,0));
modelRing1_->yaw(Degree(0));
-
+ //Ring 2
modelRing2_ = new Model(this->getContext());
modelRing2_->setMeshSource("Mine_Ring.mesh");
modelRing2_->setScale(15.0);
- rings_->attach(modelRing2_);
+ rings1_->attach(modelRing2_);
modelRing2_->setPosition(Vector3(0,0,0));
modelRing2_->yaw(Degree(180));
+ //Ring 3
+ modelRing3_ = new Model(this->getContext());
+ modelRing3_->setMeshSource("Mine_Ring.mesh");
+ modelRing3_->setScale(15.0);
+ rings2_->attach(modelRing3_);
+ modelRing3_->setPosition(Vector3(0,0,0));
+ modelRing3_->yaw(Degree(90));
+ //Ring 4
+ modelRing4_ = new Model(this->getContext());
+ modelRing4_->setMeshSource("Mine_Ring.mesh");
+ modelRing4_->setScale(15.0);
+ rings2_->attach(modelRing4_);
+ modelRing4_->setPosition(Vector3(0,0,0));
+ modelRing4_->yaw(Degree(270));
+ emitter_ = NULL;
+
if (GameMode::isMaster())
{
this->setMass(10.0f);
@@ -85,16 +123,17 @@
// Create a sphere collision shape and attach it to the projectile.
collisionShape_ = new SphereCollisionShape(this->getContext());
- collisionShape_->setRadius(10.0f);
+ collisionShape_->setRadius(collisionShapeRadius_);
this->attachCollisionShape(collisionShape_);
+ collisionShape_->setPosition(Vector3(0,0,0));
// Create a distance trigger and attach it to the projectile.
distanceTrigger_ = new DistanceTrigger(this->getContext());
this->attach(distanceTrigger_);
distanceTrigger_->setPosition(Vector3(0,0,0));
- distanceTrigger_->setDistance(40.0f);
+ distanceTrigger_->setDistance(triggerRadius_);
distanceTrigger_->addTarget("Pawn");
- distanceTrigger_->setStayActive(true);
+ distanceTrigger_->setStayActive(false);
this->addEventSource(distanceTrigger_, "explode");
}
@@ -104,19 +143,29 @@
{
if (this->isInitialized())
{
- /*if (modelCore_ != NULL)
+ modelCore_->destroy();
+ modelRing1_->destroy();
+ modelRing2_->destroy();
+ modelRing3_->destroy();
+ modelRing4_->destroy();
+
+ distanceTrigger_->destroy();
+
+ if (emitter_)
{
- modelCore_->destroy();
- }*/
- if (distanceTrigger_)
- distanceTrigger_->destroy();
+ emitter_->destroy();
+ }
}
}
+ /**
+ @brief
+ TODO
+ */
void MineProjectile::XMLEventPort(Element& xmlelement, XMLPort::Mode mode)
{
SUPER(MineProjectile, XMLEventPort, xmlelement, mode);
- XMLPortEventState(MineProjectile, BaseObject, "explode", Explode, xmlelement, mode);
+ XMLPortEventState(MineProjectile, BaseObject, "explode", explode, xmlelement, mode);
}
/**
@@ -130,7 +179,7 @@
this->maxTimeUntilExplosion_ = maxTimeUntilExplosion;
if (GameMode::isMaster())
{
- this->explodeTimer_.setTimer(this->maxTimeUntilExplosion_, false, createExecutor(createFunctor(&MineProjectile::Explode, this)));
+ this->explodeTimer_.setTimer(this->maxTimeUntilExplosion_, false, createExecutor(createFunctor(&MineProjectile::explode, this)));
}
}
else
@@ -149,7 +198,7 @@
if (GameMode::isMaster())
{
- this->activationTimer_.setTimer(this->timeUntilActivation_, false, createExecutor(createFunctor(&MineProjectile::Activate, this)));
+ this->activationTimer_.setTimer(this->timeUntilActivation_, false, createExecutor(createFunctor(&MineProjectile::allowExplosion, this)));
}
}
@@ -157,23 +206,77 @@
@brief
TODO
*/
- void MineProjectile::Explode()
+ void MineProjectile::explode()
{
- orxout() << "MineProjectile::Explode" << endl;
+ if (bAllowExplosion_)
+ {
+ if (GameMode::isMaster())
+ {
+ // Damage all pawns within the damage radius
+ for (ObjectList<Pawn>::iterator it = ObjectList<Pawn>::begin(); it != ObjectList<Pawn>::end(); ++it)
+ {
+ Vector3 distanceVector = it->getWorldPosition()-this->getWorldPosition();
+ if(distanceVector.length()< damageRadius_)
+ {
+ it->hit(this->getShooter(), it->getWorldPosition(), NULL, this->getDamage(), this->getHealthDamage(), this->getShieldDamage());
+ }
+ }
+ }
- this->destroyLater();
+ this->destructionEffect();
+ this->destroyLater();
+ }
+ }
-
+ /**
+ @brief
+ TODO
+ */
+ void MineProjectile::allowExplosion()
+ {
+ // Allow explosion
+ bAllowExplosion_ = true;
+ // Add particle effect
+ emitter_ = new ParticleEmitter(this->getContext());
+ this->attach(emitter_);
+ emitter_->setOrientation(this->getOrientation());
+ emitter_->setSource("Orxonox/mineparticle");
}
/**
@brief
TODO
*/
- void MineProjectile::Activate()
+ void MineProjectile::destructionEffect()
{
- orxout() << "MineProjectile::Activate" << endl;
+ ParticleSpawner *effect1, *effect2, *effect3;
+
+ effect1 = new ParticleSpawner(this->getContext());
+ effect2 = new ParticleSpawner(this->getContext());
+ effect3 = new ParticleSpawner(this->getContext());
- bActive_ = true;
+ effect1->setPosition(this->getPosition());
+ effect1->setOrientation(this->getOrientation());
+ effect1->setDestroyAfterLife(true);
+ effect1->setSource("Orxonox/MineExpl");
+ effect1->setLifetime(2.5f);
+
+ effect2->setPosition(this->getPosition());
+ effect2->setOrientation(this->getOrientation());
+ effect2->setDestroyAfterLife(true);
+ effect2->setSource("Orxonox/MineExpl1");
+ effect2->setLifetime(2.5f);
+
+ effect3->setPosition(this->getPosition());
+ effect3->setOrientation(this->getOrientation());
+ effect3->setDestroyAfterLife(true);
+ effect3->setSource("Orxonox/MineExpl2");
+ effect3->setLifetime(2.5f);
+
+ // Explosion sound effect.
+ WeakPtr<WorldSound> explosionSound_ = new WorldSound(getContext());
+ explosionSound_->setSource("sounds/GravityFieldExplosion.ogg");
+ explosionSound_->setVolume(1.0);
+ explosionSound_->play();
}
}
Modified: code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile.h
===================================================================
--- code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile.h 2015-11-30 21:25:57 UTC (rev 10907)
+++ code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile.h 2015-11-30 21:55:38 UTC (rev 10908)
@@ -20,6 +20,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
* Author:
+ * Jannis Holzer
* Fabien Vultier
* Co-authors:
* ...
@@ -59,9 +60,12 @@
virtual void setMaxTimeUntilExplosion(float maxTimeUntilExplosion);
virtual void setTimeUntilActivation(float timeUntilActivation);
-
+ protected:
+ static const float triggerRadius_;
+ static const float damageRadius_;
+ static const float collisionShapeRadius_;
private:
- bool bActive_; // The mine can only explode if it is active
+ bool bAllowExplosion_; // The mine can only explode if it is active
float maxTimeUntilExplosion_;
float timeUntilActivation_;
Timer activationTimer_;
@@ -69,13 +73,19 @@
Model* modelCore_;
Model* modelRing1_;
Model* modelRing2_;
- MovableEntity* rings_;
+ Model* modelRing3_;
+ Model* modelRing4_;
+ MovableEntity* rings1_;
+ MovableEntity* rings2_;
+ MovableEntity* core_;
+ ParticleEmitter* emitter_;
WeakPtr<SphereCollisionShape> collisionShape_; // The collision shape of the projectile.
WeakPtr<DistanceTrigger> distanceTrigger_;
- virtual void Activate();
- virtual void Explode();
+ virtual void destructionEffect();
+ virtual void allowExplosion();
+ virtual void explode();
};
}
Deleted: code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile2.cc
===================================================================
--- code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile2.cc 2015-11-30 21:25:57 UTC (rev 10907)
+++ code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile2.cc 2015-11-30 21:55:38 UTC (rev 10908)
@@ -1,234 +0,0 @@
-/*
- * ORXONOX - the hottest 3D action shooter ever to exist
- * > www.orxonox.net <
- *
- *
- * License notice:
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * Author:
- * Fabien Vultier
- * Co-authors:
- * ...
- *
- */
-
-/**
- @file MineProjectile.h
- @brief Implementation of the MineProjectile class.
-*/
-
-#include "MineProjectile.h"
-
-#include "core/CoreIncludes.h"
-#include "graphics/Model.h"
-#include "core/command/Executor.h"
-#include "graphics/ParticleSpawner.h"
-#include "worldentities/pawns/Pawn.h"
-
-namespace orxonox
-{
- RegisterClass(MineProjectile);
-
- MineProjectile::MineProjectile(Context* context) : MovableEntity(context), BasicProjectile()
- {
- RegisterObject(MineProjectile);
-
- this->bActive_ = false;
- this->maxTimeUntilExplosion_ = 10.0f;
- this->timeUntilActivation_ = 1.0f;
-
- rings1_ = new MovableEntity(this->getContext());
- this->attach(rings1_);
- rings1_->setPosition(Vector3(0.0,0.0,0.0));
- rings1_->setAngularVelocity(Vector3(0.0,5.0,0.0));
-
- rings2_ = new MovableEntity(this->getContext());
- this->attach(rings2_);
- rings2_->setPosition(Vector3(0.0,0.0,0.0));
- rings2_->setAngularVelocity(Vector3(0.0,0.0,5.0));
-
- core_ = new MovableEntity(this->getContext());
- this->attach(core_);
- core_->setPosition(Vector3(0.0,0.0,0.0));
- core_->setAngularVelocity(Vector3(2.5,2.5,0.0));
-
-
- //MODELS
- //Core
- modelCore_ = new Model(this->getContext());
- modelCore_->setMeshSource("Mine_Core.mesh");
- modelCore_->setScale(15.0);
- core_->attach(modelCore_);
- modelCore_->setPosition(Vector3(0,0,0));
-
- //1
- modelRing1_ = new Model(this->getContext());
- modelRing1_->setMeshSource("Mine_Ring.mesh");
- modelRing1_->setScale(15.0);
- rings1_->attach(modelRing1_);
- modelRing1_->setPosition(Vector3(0,0,0));
- modelRing1_->yaw(Degree(0));
- //2
- modelRing2_ = new Model(this->getContext());
- modelRing2_->setMeshSource("Mine_Ring.mesh");
- modelRing2_->setScale(15.0);
- rings1_->attach(modelRing2_);
- modelRing2_->setPosition(Vector3(0,0,0));
- modelRing2_->yaw(Degree(180));
- //3
- modelRing3_ = new Model(this->getContext());
- modelRing3_->setMeshSource("Mine_Ring.mesh");
- modelRing3_->setScale(15.0);
- rings2_->attach(modelRing3_);
- modelRing3_->setPosition(Vector3(0,0,0));
- modelRing3_->yaw(Degree(90));
- //4
- modelRing4_ = new Model(this->getContext());
- modelRing4_->setMeshSource("Mine_Ring.mesh");
- modelRing4_->setScale(15.0);
- rings2_->attach(modelRing4_);
- modelRing4_->setPosition(Vector3(0,0,0));
- modelRing4_->yaw(Degree(270));
-
- // Add effect.
- emitter_ = new ParticleEmitter(this->getContext());
- this->attach(emitter_);
- emitter_->setOrientation(this->getOrientation());
- emitter_->setSource("Orxonox/mineparticle");
-
- if (GameMode::isMaster())
- {
- this->setMass(10.0f);
- this->setFriction(100.0f);
- this->enableCollisionCallback();
- this->setCollisionResponse(false);
- this->setCollisionType(Dynamic);
-
- // Create a sphere collision shape and attach it to the projectile.
- collisionShape_ = new SphereCollisionShape(this->getContext());
- collisionShape_->setRadius(10.0f);
- this->attachCollisionShape(collisionShape_);
-
- // Create a distance trigger and attach it to the projectile.
- distanceTrigger_ = new DistanceTrigger(this->getContext());
- this->attach(distanceTrigger_);
- distanceTrigger_->setPosition(Vector3(0,0,0));
- distanceTrigger_->setDistance(40.0f);
- distanceTrigger_->addTarget("Pawn");
- distanceTrigger_->setStayActive(true);
- }
- }
-
- MineProjectile::~MineProjectile()
- {
- /*if (modelCore_ != NULL)
- {
- modelCore_->destroy();
- }*/
- /*if (distanceTrigger_ != NULL)
- {
- distanceTrigger_->destroy();
- }*/
- }
-
- /**
- @brief
- TODO
- */
- void MineProjectile::setMaxTimeUntilExplosion(float maxTimeUntilExplosion)
- {
- if (maxTimeUntilExplosion >= 0)
- {
- this->maxTimeUntilExplosion_ = maxTimeUntilExplosion;
- if (GameMode::isMaster())
- {
- this->explodeTimer_.setTimer(this->maxTimeUntilExplosion_, false, createExecutor(createFunctor(&MineProjectile::Explode, this)));
- }
- }
- else
- {
- this->maxTimeUntilExplosion_ = 0;
- }
- }
-
- /**
- @brief
- TODO
- */
- void MineProjectile::setTimeUntilActivation(float timeUntilActivation)
- {
- timeUntilActivation_ = timeUntilActivation;
-
- if (GameMode::isMaster())
- {
- this->activationTimer_.setTimer(this->timeUntilActivation_, false, createExecutor(createFunctor(&MineProjectile::Activate, this)));
- }
- }
-
- /**
- @brief
- TODO
- */
- void MineProjectile::Explode()
- {
- orxout() << "MineProjectile::Explode" << endl;
- destructionEffect();
-
- this->destroyLater();
-
-
- }
-
- /**
- @brief
- TODO
- */
- void MineProjectile::Activate()
- {
- orxout() << "MineProjectile::Activate" << endl;
-
- bActive_ = true;
- }
-
-
- void MineProjectile::destructionEffect()
- {
- ParticleSpawner *effect1, *effect2, *effect3;
-
- effect1 = new ParticleSpawner(this->getContext());
- effect2 = new ParticleSpawner(this->getContext());
- effect3 = new ParticleSpawner(this->getContext());
-
- effect1->setPosition(this->getPosition());
- effect1->setOrientation(this->getOrientation());
- effect1->setDestroyAfterLife(true);
- effect1->setSource("Orxonox/MineExpl");
- effect1->setLifetime(2.5f);
-
- effect2->setPosition(this->getPosition());
- effect2->setOrientation(this->getOrientation());
- effect2->setDestroyAfterLife(true);
- effect2->setSource("Orxonox/MineExpl1");
- effect2->setLifetime(2.5f);
-
- effect3->setPosition(this->getPosition());
- effect3->setOrientation(this->getOrientation());
- effect3->setDestroyAfterLife(true);
- effect3->setSource("Orxonox/MineExpl2");
- effect3->setLifetime(2.5f);
- }
-}
Deleted: code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile2.h
===================================================================
--- code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile2.h 2015-11-30 21:25:57 UTC (rev 10907)
+++ code/branches/particleEffectsHS15/src/modules/weapons/projectiles/MineProjectile2.h 2015-11-30 21:55:38 UTC (rev 10908)
@@ -1,86 +0,0 @@
-/*
- * ORXONOX - the hottest 3D action shooter ever to exist
- * > www.orxonox.net <
- *
- *
- * License notice:
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * Author:
- * Fabien Vultier
- * Co-authors:
- * ...
- *
- */
-
-/**
- @file MineProjectile.h
- @brief Definition of the MineProjectile class.
-*/
-
-#ifndef _MineProjectile_H__
-#define _MineProjectile_H__
-
-#include "weapons/WeaponsPrereqs.h"
-#include "tools/Timer.h"
-#include "worldentities/MovableEntity.h"
-#include "objects/collisionshapes/SphereCollisionShape.h"
-#include "objects/triggers/DistanceTrigger.h"
-#include "BasicProjectile.h"
-
-namespace orxonox
-{
-
- /**
- @brief
- TODO
- @ingroup WeaponsProjectiles
- */
- class _WeaponsExport MineProjectile : public MovableEntity, public BasicProjectile
- {
- public:
- MineProjectile(Context* context);
- virtual ~MineProjectile();
-
- virtual void setMaxTimeUntilExplosion(float maxTimeUntilExplosion);
- virtual void setTimeUntilActivation(float timeUntilActivation);
- void destructionEffect();
-
- private:
- bool bActive_; // The mine can only explode if it is active
- float maxTimeUntilExplosion_;
- float timeUntilActivation_;
- Timer activationTimer_;
- Timer explodeTimer_;
- Model* modelCore_;
- Model* modelRing1_;
- Model* modelRing2_;
- Model* modelRing3_;
- Model* modelRing4_;
- MovableEntity* rings1_;
- MovableEntity* rings2_;
- MovableEntity* core_;
- ParticleEmitter* emitter_;
-
- WeakPtr<SphereCollisionShape> collisionShape_; // The collision shape of the projectile.
- WeakPtr<DistanceTrigger> distanceTrigger_;
-
- virtual void Activate();
- virtual void Explode();
- };
-}
-
-#endif /* _MineProjectile_H__ */
Modified: code/branches/particleEffectsHS15/src/modules/weapons/weaponmodes/MineGun.h
===================================================================
--- code/branches/particleEffectsHS15/src/modules/weapons/weaponmodes/MineGun.h 2015-11-30 21:25:57 UTC (rev 10907)
+++ code/branches/particleEffectsHS15/src/modules/weapons/weaponmodes/MineGun.h 2015-11-30 21:55:38 UTC (rev 10908)
@@ -42,7 +42,7 @@
/**
@brief
- A Mine that explodes when a ship is too close
+ A Weapon that drops mines to space.
@ingroup WeaponsWeaponModes
*/
class _WeaponsExport MineGun : public WeaponMode
More information about the Orxonox-commit
mailing list