[Orxonox-commit 6179] r10837 - in code/branches/explosionChunksHS15: data/levels data/levels/templates src/orxonox/worldentities src/orxonox/worldentities/pawns
vaydin at orxonox.net
vaydin at orxonox.net
Mon Nov 23 15:46:58 CET 2015
Author: vaydin
Date: 2015-11-23 15:46:58 +0100 (Mon, 23 Nov 2015)
New Revision: 10837
Modified:
code/branches/explosionChunksHS15/data/levels/HeavyCruiser.oxw
code/branches/explosionChunksHS15/data/levels/emptyLevel.oxw
code/branches/explosionChunksHS15/data/levels/templates/spaceshipAssff.oxt
code/branches/explosionChunksHS15/data/levels/templates/spaceshipEscort.oxt
code/branches/explosionChunksHS15/data/levels/templates/spaceshipPirate.oxt
code/branches/explosionChunksHS15/src/orxonox/worldentities/ExplosionPart.cc
code/branches/explosionChunksHS15/src/orxonox/worldentities/ExplosionPart.h
code/branches/explosionChunksHS15/src/orxonox/worldentities/pawns/Pawn.cc
Log:
fixed position offset, added definable direction for the meshes to fly in, added size, added delay
Modified: code/branches/explosionChunksHS15/data/levels/HeavyCruiser.oxw
===================================================================
--- code/branches/explosionChunksHS15/data/levels/HeavyCruiser.oxw 2015-11-23 14:44:31 UTC (rev 10836)
+++ code/branches/explosionChunksHS15/data/levels/HeavyCruiser.oxw 2015-11-23 14:46:58 UTC (rev 10837)
@@ -551,11 +551,23 @@
The first Pawn, being the ships main body, is in comments, allowing the playable SpaceShip to be spawned there instead.
All Pawns can easily be included into a level using the lua file "HeavyCruiserParts" -->
- <Pawn team=1 health=1000 initialhealth=1000 maxhealth=1000 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=10000 name=HeavyCruiser_body radarname = "HeavyCruiser" >
- <explosion >
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+ <Pawn team=1 health=100 initialhealth=100 maxhealth=100 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=10000 name=HeavyCruiser_body radarname = "HeavyCruiser" >
+ <explosion>
+ <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" size=20 />
+ <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" size=20 />
+ <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" size=20 />
+
+ <ExplosionPart offset="50,50,50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" size=20 delay=0.3 />
+ <ExplosionPart offset="50,50,50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" size=20 delay=0.3 />
+ <ExplosionPart offset="50,50,50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" size=20 delay=0.3 />
+
+ <ExplosionPart offset="100,100,100" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" size=20 delay=0.6 />
+ <ExplosionPart offset="100,100,100" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" size=20 delay=0.6 />
+ <ExplosionPart offset="100,100,100" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" size=20 delay=0.6 />
+
+ <ExplosionPart offset="150,150,150" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" size=20 delay=0.9 />
+ <ExplosionPart offset="150,150,150" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" size=20 delay=0.9 />
+ <ExplosionPart offset="150,150,150" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" size=20 delay=0.9 />
</explosion>
<attached>
<Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_body.mesh" scale="40" />
@@ -723,10 +735,10 @@
<Pawn team=1 health=300 initialhealth=300 maxhealth=300 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_sidearmL radarname = "HIDDEN" >
- <explosion >
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+ <explosion>
+ <ExplosionPart offset="-140,0,115" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+ <ExplosionPart offset="-140,0,115" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+ <ExplosionPart offset="-140,0,115" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
</explosion>
<attached>
@@ -769,10 +781,10 @@
<Pawn team=1 health=100 initialhealth=100 maxhealth=100 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_sidearmLfront radarname = "HIDDEN" >
- <explosion >
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+ <explosion>
+ <ExplosionPart offset="-141,15,-53" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+ <ExplosionPart offset="-141,15,-53" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+ <ExplosionPart offset="-141,15,-53" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
</explosion>
<attached>
@@ -789,10 +801,10 @@
</Pawn>
<Pawn team=1 health=300 initialhealth=300 maxhealth=300 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_sidearmR radarname = "HIDDEN" >
- <explosion >
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+ <explosion>
+ <ExplosionPart offset="140,0,115" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+ <ExplosionPart offset="140,0,115" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+ <ExplosionPart offset="140,0,115" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
</explosion>
<attached>
<Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_sidearmR.mesh" scale="40" />
@@ -833,10 +845,10 @@
</Pawn>
<Pawn team=1 health=100 initialhealth=100 maxhealth=100 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=sidearmRfront radarname = "HIDDEN" >
- <explosion >
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+ <explosion>
+ <ExplosionPart offset="141,15,-53" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+ <ExplosionPart offset="141,15,-53" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+ <ExplosionPart offset="141,15,-53" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
</explosion>
<attached>
<Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_sidearmRfront.mesh" scale="40" />
@@ -852,10 +864,10 @@
</Pawn>
<Pawn team=1 health=100 initialhealth=100 maxhealth=100 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_frontL radarname = "HIDDEN" >
- <explosion >
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+ <explosion>
+ <ExplosionPart offset="-80,33,-320" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+ <ExplosionPart offset="-80,33,-320" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+ <ExplosionPart offset="-80,33,-320" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
</explosion>
<attached>
<Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_frontL.mesh" scale="40" />
@@ -868,10 +880,10 @@
</Pawn>
<Pawn team=1 health=100 initialhealth=100 maxhealth=100 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_frontR radarname = "HIDDEN" >
- <explosion >
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+ <explosion>
+ <ExplosionPart offset="80,33,-320" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+ <ExplosionPart offset="80,33,-320" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+ <ExplosionPart offset="80,33,-320" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
</explosion>
<attached>
<Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_frontR.mesh" scale="40" />
@@ -884,10 +896,10 @@
</Pawn>
<Pawn team=1 health=100 initialhealth=100 maxhealth=100 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_partL radarname = "HIDDEN" >
- <explosion >
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+ <explosion>
+ <ExplosionPart offset="-94,33,-179" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+ <ExplosionPart offset="-94,33,-179" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+ <ExplosionPart offset="-94,33,-179" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
</explosion>
<attached>
<Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_partL.mesh" scale="40" />
@@ -900,10 +912,10 @@
</Pawn>
<Pawn team=1 health=100 initialhealth=100 maxhealth=100 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_partR radarname = "HIDDEN" >
- <explosion >
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+ <explosion>
+ <ExplosionPart offset="94,33,-179" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+ <ExplosionPart offset="94,33,-179" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+ <ExplosionPart offset="94,33,-179" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
</explosion>
<attached>
<Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_partR.mesh" scale="40" />
Modified: code/branches/explosionChunksHS15/data/levels/emptyLevel.oxw
===================================================================
--- code/branches/explosionChunksHS15/data/levels/emptyLevel.oxw 2015-11-23 14:44:31 UTC (rev 10836)
+++ code/branches/explosionChunksHS15/data/levels/emptyLevel.oxw 2015-11-23 14:46:58 UTC (rev 10837)
@@ -14,6 +14,7 @@
<?lua
include("templates/spaceshipAssff.oxt")
include("templates/spaceshipEscort.oxt")
+ include("templates/spaceshipPirate.oxt")
?>
<Level>
@@ -43,7 +44,7 @@
position = "1000,200,0"
>
<templates>
- <Template link=spaceshipassff />
+ <Template link=spaceshippirate />
</templates>
</SpaceShip>
Modified: code/branches/explosionChunksHS15/data/levels/templates/spaceshipAssff.oxt
===================================================================
--- code/branches/explosionChunksHS15/data/levels/templates/spaceshipAssff.oxt 2015-11-23 14:44:31 UTC (rev 10836)
+++ code/branches/explosionChunksHS15/data/levels/templates/spaceshipAssff.oxt 2015-11-23 14:46:58 UTC (rev 10837)
@@ -55,16 +55,15 @@
<BoxCollisionShape position="0,0.1,-11" halfExtents="2.2, 1.8, 6" />
<BoxCollisionShape position="0,0.1,-19" halfExtents="1.4, 1, 2" />
</collisionShapes>
- <explosion >
- <ExplosionPart offset="100,100,100" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
- <ExplosionPart offset="100,100,100" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
- <ExplosionPart offset="100,100,100" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+ <explosion>
+ <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+ <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+ <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
- <ExplosionPart offset="100,100,100" minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
- <ExplosionPart offset="100,100,100" mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
- <ExplosionPart offset="100,100,100" mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
- <ExplosionPart offset="100,100,100" mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
- <ExplosionPart offset="100,100,100" mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+ <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" direction="0,1,0" angle=30 />
+ <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" direction="0,1,0" angle=30 />
+ <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" direction="0,1,0" angle=30 />
+ <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" direction="0,1,0" angle=30 />
</explosion>
<?lua
include("../includes/weaponSettingsAssff.oxi")
Modified: code/branches/explosionChunksHS15/data/levels/templates/spaceshipEscort.oxt
===================================================================
--- code/branches/explosionChunksHS15/data/levels/templates/spaceshipEscort.oxt 2015-11-23 14:44:31 UTC (rev 10836)
+++ code/branches/explosionChunksHS15/data/levels/templates/spaceshipEscort.oxt 2015-11-23 14:46:58 UTC (rev 10837)
@@ -55,16 +55,17 @@
<BoxCollisionShape position="-12.6,-2, 3" halfExtents="2.8,2.8,11"/>
<BoxCollisionShape position="0, 0,-12" halfExtents="4 , 4 ,7" />
</collisionShapes>
- <explosion >
+ <explosion>
<ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
<ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
<ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
- <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
- <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
- <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
- <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+ <ExplosionPart mesh="explosionparts/escort_part_1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+ <ExplosionPart mesh="explosionparts/escort_part_2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+ <ExplosionPart mesh="explosionparts/escort_part_3.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+ <ExplosionPart mesh="explosionparts/escort_part_4.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+ <ExplosionPart mesh="explosionparts/escort_part_5.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+ <ExplosionPart mesh="explosionparts/escort_part_6.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
</explosion>
<?lua
include("../includes/weaponSettingsEscort.oxi")
Modified: code/branches/explosionChunksHS15/data/levels/templates/spaceshipPirate.oxt
===================================================================
--- code/branches/explosionChunksHS15/data/levels/templates/spaceshipPirate.oxt 2015-11-23 14:44:31 UTC (rev 10836)
+++ code/branches/explosionChunksHS15/data/levels/templates/spaceshipPirate.oxt 2015-11-23 14:46:58 UTC (rev 10837)
@@ -52,16 +52,15 @@
<BoxCollisionShape position="0,0.1,-11" halfExtents="2.2, 1.8, 6" />
<BoxCollisionShape position="0,0.1,-19" halfExtents="1.4, 1, 2" />
</collisionShapes>
- <explosion >
+ <explosion>
<ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
<ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
<ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
- <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
- <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
- <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
- <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
- <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+ <ExplosionPart mesh="explosionparts/pirate_part_1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+ <ExplosionPart mesh="explosionparts/pirate_part_2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+ <ExplosionPart mesh="explosionparts/pirate_part_3.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+ <ExplosionPart mesh="explosionparts/pirate_part_4.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
</explosion>
<?lua
Modified: code/branches/explosionChunksHS15/src/orxonox/worldentities/ExplosionPart.cc
===================================================================
--- code/branches/explosionChunksHS15/src/orxonox/worldentities/ExplosionPart.cc 2015-11-23 14:44:31 UTC (rev 10836)
+++ code/branches/explosionChunksHS15/src/orxonox/worldentities/ExplosionPart.cc 2015-11-23 14:46:58 UTC (rev 10837)
@@ -83,17 +83,36 @@
XMLPortParam(ExplosionPart, "effect1", setEffect1, getEffect1, xmlelement, mode).defaultValues("");
XMLPortParam(ExplosionPart, "effect2", setEffect2, getEffect2, xmlelement, mode).defaultValues("");
XMLPortParam(ExplosionPart, "offset", setOffset, getOffset, xmlelement, mode).defaultValues(Vector3::ZERO);
-
-
+ XMLPortParam(ExplosionPart, "direction", setDirection, getDirection, xmlelement, mode).defaultValues(Vector3(1,1,1));
+ XMLPortParam(ExplosionPart, "angle", setAngle, getAngle, xmlelement, mode).defaultValues(180);
+ XMLPortParam(ExplosionPart, "size", setSize, getSize, xmlelement, mode).defaultValues(4);
+ XMLPortParam(ExplosionPart, "delay", setDelay, getDelay, xmlelement, mode).defaultValues(0);
}
void ExplosionPart::Explode()
{
- orxout() << "Explode" << endl;
+ this->destroyTimer_.setTimer(delay_, false, createExecutor(createFunctor(&ExplosionPart::ActuallyExplode, this)));
+ }
+ void ExplosionPart::stop()
+ {
+ if (this->effect1Particle_)
+ this->effect1Particle_->setEnabled(false);
+ if (this->effect2Particle_)
+ this->effect2Particle_->setEnabled(false);
+ if (this->model_)
+ this->model_->setVisible(false);
+ if (GameMode::isMaster())
+ {
+ this->bStop_ = true;
+ this->destroyTimer_.setTimer(1.0f, false, createExecutor(createFunctor(&ExplosionPart::destroy, this)));
+ }
+ }
+ void ExplosionPart::ActuallyExplode()
+ {
this->model_->setVisible(true);
//this->explosionEntity_->setSyncMode(0);
@@ -110,11 +129,21 @@
{
this->effect2Particle_ = new ParticleInterface(this->getScene()->getSceneManager(), effect2_, this->LOD_);
this->model_->attachOgreObject(this->effect2Particle_->getParticleSystem());
- }
+ }
- this->explosionEntity_->setVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1))*rnd(minSpeed_,maxSpeed_));
+
+ Vector3 velocityOffset = direction_.perpendicular();
+ velocityOffset.normalise();
+ Degree offsetDirection = Degree(rnd(0,360));
+ velocityOffset = Quaternion(offsetDirection, direction_.normalisedCopy()) * velocityOffset;
+ velocityOffset.normalise();
+ direction_.normalise();
+
+ Vector3 finalDirection = direction_ + sin((rnd(0, angle_))*M_PI/180)*velocityOffset;
+
+ this->explosionEntity_->setVelocity(finalDirection*rnd(minSpeed_,maxSpeed_));
this->explosionEntity_->setAngularVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1)).normalisedCopy() * Degree(400).valueRadians());
- this->explosionEntity_->setScale(4);
+ this->explosionEntity_->setScale(size_);
this->explosionEntity_->attach(model_);
@@ -124,28 +153,11 @@
{
this->destroyTimer_.setTimer(rnd(2, 4), false, createExecutor(createFunctor(&ExplosionPart::stop, this)));
}
-
}
- void ExplosionPart::stop()
- {
- if (this->effect1Particle_)
- this->effect1Particle_->setEnabled(false);
- if (this->effect2Particle_)
- this->effect2Particle_->setEnabled(false);
- if (this->model_)
- this->model_->setVisible(false);
- if (GameMode::isMaster())
- {
- this->bStop_ = true;
- this->destroyTimer_.setTimer(1.0f, false, createExecutor(createFunctor(&ExplosionPart::destroy, this)));
- }
- }
-
-
void ExplosionPart::setMesh(const std::string& newString)
{
if(newString != "")
@@ -179,9 +191,29 @@
void ExplosionPart::setOffset(Vector3 newVector)
{
this->posOffset_ = newVector;
- this->setPosition(this->getPosition() + this->posOffset_);
+ this->explosionEntity_->setPosition(this->getPosition() + this->posOffset_);
}
+ void ExplosionPart::setDirection(Vector3 newDirection)
+ {
+ this->direction_ = newDirection;
+ }
+
+ void ExplosionPart::setAngle(float newAngle)
+ {
+ this->angle_ = newAngle;
+ }
+
+ void ExplosionPart::setSize(float newSize)
+ {
+ this->size_ = newSize;
+ }
+
+ void ExplosionPart::setDelay(float newDelay)
+ {
+ this->delay_ = newDelay;
+ }
+
std::string& ExplosionPart::getMesh()
{ return this->mesh_; }
@@ -206,6 +238,26 @@
return this->posOffset_;
}
+ Vector3 ExplosionPart::getDirection()
+ {
+ return direction_;
+ }
+ float ExplosionPart::getAngle()
+ {
+ return angle_;
+ }
+ float ExplosionPart::getSize()
+ {
+ return size_;
+ }
+
+ float ExplosionPart::getDelay()
+ {
+ return delay_;
+ }
+
+
+
}
\ No newline at end of file
Modified: code/branches/explosionChunksHS15/src/orxonox/worldentities/ExplosionPart.h
===================================================================
--- code/branches/explosionChunksHS15/src/orxonox/worldentities/ExplosionPart.h 2015-11-23 14:44:31 UTC (rev 10836)
+++ code/branches/explosionChunksHS15/src/orxonox/worldentities/ExplosionPart.h 2015-11-23 14:46:58 UTC (rev 10837)
@@ -53,6 +53,7 @@
void XMLPort(Element& xmlelement, XMLPort::Mode mode);
void Explode();
void stop();
+ void ActuallyExplode();
void setMesh(const std::string& newString);
std::string& getMesh();
@@ -66,6 +67,14 @@
float getMaxSpeed();
void setOffset(Vector3 newVector);
Vector3 getOffset();
+ void setDirection(Vector3 newDirection);
+ Vector3 getDirection();
+ void setAngle(float newAgnle);
+ float getAngle();
+ void setSize(float newSize);
+ float getSize();
+ void setDelay(float newDelay);
+ float getDelay();
private:
@@ -85,6 +94,10 @@
std::string effect1_;
std::string effect2_;
Vector3 posOffset_;
+ Vector3 direction_;
+ float angle_;
+ float size_;
+ float delay_;
MovableEntity* explosionEntity_;
Modified: code/branches/explosionChunksHS15/src/orxonox/worldentities/pawns/Pawn.cc
===================================================================
--- code/branches/explosionChunksHS15/src/orxonox/worldentities/pawns/Pawn.cc 2015-11-23 14:44:31 UTC (rev 10836)
+++ code/branches/explosionChunksHS15/src/orxonox/worldentities/pawns/Pawn.cc 2015-11-23 14:46:58 UTC (rev 10837)
@@ -389,6 +389,7 @@
{
explosionPartList_.back()->setPosition(this->getPosition());
explosionPartList_.back()->setVelocity(this->getVelocity());
+ explosionPartList_.back()->setOrientation(this->getOrientation());
explosionPartList_.back()->Explode();
explosionPartList_.pop_back();
}
More information about the Orxonox-commit
mailing list