mirror of
https://github.com/marinho/godot-visual-effects.git
synced 2024-12-22 14:37:27 +08:00
Added namespace
This commit is contained in:
parent
cc32f177c9
commit
a38db5e6ed
@ -1,60 +1,62 @@
|
||||
using Godot;
|
||||
using System;
|
||||
|
||||
public partial class MultiParticles : Node3D
|
||||
namespace GodotVisualEffects
|
||||
{
|
||||
[Export]
|
||||
public bool Emitting = true;
|
||||
public partial class MultiParticles : Node3D
|
||||
{
|
||||
[Export]
|
||||
public bool Emitting = true;
|
||||
|
||||
[Export]
|
||||
public bool OneShot = false;
|
||||
[Export]
|
||||
public bool OneShot = false;
|
||||
|
||||
[Export]
|
||||
public Godot.Collections.Array<GpuParticles3D> Particles;
|
||||
[Export]
|
||||
public Godot.Collections.Array<GpuParticles3D> Particles;
|
||||
|
||||
double Lifetime = 0.0f;
|
||||
double Lifetime = 0.0f;
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
if (Emitting)
|
||||
{
|
||||
StartEmitters();
|
||||
}
|
||||
}
|
||||
public override void _Ready()
|
||||
{
|
||||
if (Emitting)
|
||||
{
|
||||
StartEmitters();
|
||||
}
|
||||
}
|
||||
|
||||
void GetLifetime()
|
||||
{
|
||||
foreach (var particle in Particles)
|
||||
{
|
||||
if (particle.Lifetime > Lifetime)
|
||||
{
|
||||
Lifetime = particle.Lifetime;
|
||||
}
|
||||
}
|
||||
}
|
||||
void GetLifetime()
|
||||
{
|
||||
foreach (var particle in Particles)
|
||||
{
|
||||
if (particle.Lifetime > Lifetime)
|
||||
{
|
||||
Lifetime = particle.Lifetime;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public async void StartEmitters()
|
||||
{
|
||||
GetLifetime();
|
||||
public async void StartEmitters()
|
||||
{
|
||||
GetLifetime();
|
||||
|
||||
foreach (var particle in Particles)
|
||||
particle.Emitting = true;
|
||||
foreach (var particle in Particles)
|
||||
particle.Emitting = true;
|
||||
|
||||
await ToSignal(GetTree().CreateTimer(Lifetime), SceneTreeTimer.SignalName.Timeout);
|
||||
DisposeOfEmitters();
|
||||
await ToSignal(GetTree().CreateTimer(Lifetime), SceneTreeTimer.SignalName.Timeout);
|
||||
DisposeOfEmitters();
|
||||
|
||||
if (!OneShot)
|
||||
{
|
||||
StartEmitters();
|
||||
}
|
||||
}
|
||||
|
||||
void DisposeOfEmitters()
|
||||
{
|
||||
foreach (var particle in Particles)
|
||||
{
|
||||
particle.Emitting = false;
|
||||
}
|
||||
}
|
||||
if (!OneShot)
|
||||
{
|
||||
StartEmitters();
|
||||
}
|
||||
}
|
||||
|
||||
void DisposeOfEmitters()
|
||||
{
|
||||
foreach (var particle in Particles)
|
||||
{
|
||||
particle.Emitting = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user