Separate ParticleEmitter & ParticleEmitterPrefab classes - the emission timer (and maybe some other values in the future) can't be in the prefab class because multiple objects may use the same prefab.

This commit is contained in:
Joonas Rikkonen
2017-08-20 22:05:30 +03:00
parent 04834f9f7f
commit cc40970b58
4 changed files with 68 additions and 49 deletions
@@ -8,7 +8,7 @@ namespace Barotrauma
{
private Sound sound;
private ParticleEmitter particleEmitterPrefab;
private ParticleEmitter particleEmitter;
partial void InitProjSpecific(XElement element)
{
@@ -23,7 +23,7 @@ namespace Barotrauma
switch (subElement.Name.ToString().ToLowerInvariant())
{
case "particleemitter":
particleEmitterPrefab = new ParticleEmitter(subElement);
particleEmitter = new ParticleEmitter(subElement);
break;
}
@@ -32,9 +32,9 @@ namespace Barotrauma
partial void DamageParticles(float deltaTime, Vector2 worldPosition)
{
if (particleEmitterPrefab != null)
if (particleEmitter != null)
{
particleEmitterPrefab.Emit(deltaTime, worldPosition);
particleEmitter.Emit(deltaTime, worldPosition);
}
if (sound != null)