mirror of
https://gitlab.com/MaddoScientisto/cirnogodot.git
synced 2026-06-01 11:15:33 +00:00
3D Explosions
This commit is contained in:
parent
aa8f6c6fa8
commit
ad63d2ff43
20 changed files with 207 additions and 19 deletions
|
|
@ -65,12 +65,10 @@ public partial class Destructible3D : StaticBody3D, IDestructible
|
|||
private void CreateExplosion()
|
||||
{
|
||||
if (ExplosionData == null) return;
|
||||
|
||||
|
||||
|
||||
var explosion = PoolingManager.Instance.SpawnBullet<Bullet3D>(ExplosionData);
|
||||
explosion.GlobalPosition = this.GlobalPosition;
|
||||
|
||||
|
||||
explosion.Speed = 0;
|
||||
|
||||
explosion.Initialize(ExplosionData.MakeBullet(new Vector2(this.GlobalPosition.X, this.GlobalPosition.Y)));
|
||||
|
|
|
|||
12
Scripts/Components/Actors/PooledAnimatedSpritePlayer3D.cs
Normal file
12
Scripts/Components/Actors/PooledAnimatedSpritePlayer3D.cs
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
using Godot;
|
||||
|
||||
namespace Cirno.Scripts.Components.Actors;
|
||||
|
||||
public partial class PooledAnimatedSpritePlayer3D : AnimatedSprite3D
|
||||
{
|
||||
public void PlayAnimation()
|
||||
{
|
||||
this.SetFrame(0);
|
||||
this.Play();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
uid://cvk4jbit45sfi
|
||||
|
|
@ -34,6 +34,9 @@ public partial class Bullet3D : Area3D, IBullet
|
|||
[Signal]
|
||||
public delegate void OnDestroyEventHandler();
|
||||
|
||||
[Signal]
|
||||
public delegate void InitializedEventHandler();
|
||||
|
||||
private AudioStreamPlayer3D _grazeSound;
|
||||
private GpuParticles3D _grazeParticles;
|
||||
|
||||
|
|
@ -65,6 +68,8 @@ public partial class Bullet3D : Area3D, IBullet
|
|||
|
||||
// Ugly hack to make instances unique
|
||||
_modifiers = _bulletInfo.TimeModifiers.Select(x => x.Wrap()).ToList();
|
||||
|
||||
EmitSignalInitialized();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue