Skip to content

Commit

Permalink
#15: Remove explosion sounds from rapid fire weapons such as rifiles …
Browse files Browse the repository at this point in the history
…types and improve explosions on missiles
  • Loading branch information
Danil Ko committed Jul 17, 2021
1 parent 712029e commit dc63bea
Show file tree
Hide file tree
Showing 8 changed files with 64 additions and 64 deletions.
2 changes: 1 addition & 1 deletion items/MultiTunnelMissleLauncher.tres
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ script = ExtResource( 1 )
CurrentItemType = 0
ItemID = "SYC-310"
Name = "Multi - Tunnel Missle Launcher"
Description = "Multi Tunnel Missle Launcher(ATTACK = 20 x 2)"
Description = "Multi Tunnel Missle Launcher(ATTACK = 10 x 2)"
Price = 50
Stackable = false
MaxStackableCount = 0
Expand Down
10 changes: 10 additions & 0 deletions projectiles/Missle.cs
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,16 @@ public override void _Ready()
base._Ready();
}

public override void Explode()
{
base.Explode();

AgentExplosionParticle explosion = (AgentExplosionParticle)GetNode("AgentExplosionParticle");
explosion.SetTrigger(true);

AudioManager audioManager = (AudioManager)GetNode("/root/AUDIOMANAGER");
audioManager.playSoundEffect(MusicHitClip);
}

protected override void ComputeDamage()
{
Expand Down
20 changes: 9 additions & 11 deletions projectiles/Missle.tscn
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
[ext_resource path="res://assets/allSprites_retina_rotated.png" type="Texture" id=2]
[ext_resource path="res://assets/spr_smoke_strip24.png" type="Texture" id=3]
[ext_resource path="res://projectiles/Missle.cs" type="Script" id=4]
[ext_resource path="res://effects/Trail.tscn" type="PackedScene" id=5]
[ext_resource path="res://effects/BoosterTrail.tscn" type="PackedScene" id=6]
[ext_resource path="res://effects/AgentExplosionParticle.tscn" type="PackedScene" id=7]

[sub_resource type="CanvasItemMaterial" id=1]
resource_local_to_scene = true
Expand Down Expand Up @@ -34,8 +34,8 @@ blend_mode = 1

[node name="Missle" instance=ExtResource( 1 )]
script = ExtResource( 4 )
Speed = 2000
Damage = 1
Speed = 1500
Damage = 5
Lifetime = 20.0

[node name="Sprite" parent="." index="0"]
Expand All @@ -45,13 +45,10 @@ texture = ExtResource( 2 )
region_enabled = true
region_rect = Rect2( 361, 39, 36, 24 )

[node name="Explosion" parent="." index="2"]
scale = Vector2( 5, 5 )

[node name="ProjectileArea2D" parent="." index="3"]
[node name="ProjectileArea2D" parent="." index="2"]
visible = false

[node name="Trail" type="Particles2D" parent="." index="4"]
[node name="ParticleTrail" type="Particles2D" parent="." index="3"]
self_modulate = Color( 6, 3, 0, 1 )
show_behind_parent = true
material = SubResource( 1 )
Expand All @@ -62,10 +59,11 @@ local_coords = false
process_material = SubResource( 4 )
texture = ExtResource( 3 )

[node name="Trail2" parent="." index="5" instance=ExtResource( 5 )]
_length = 20
[node name="AgentExplosionParticle" parent="." index="4" instance=ExtResource( 7 )]

[node name="BoosterTrail" parent="." index="6" instance=ExtResource( 6 )]
[node name="BoosterTrail" parent="." index="5" instance=ExtResource( 6 )]
visible = false
material = SubResource( 5 )
rotation = 3.14159

[connection signal="EffectCompleteSignal" from="AgentExplosionParticle" to="." method="_OnExplosionAnimationFinished"]
45 changes: 20 additions & 25 deletions projectiles/MultiTunnelMissle.tscn
Original file line number Diff line number Diff line change
@@ -1,45 +1,42 @@
[gd_scene load_steps=13 format=2]
[gd_scene load_steps=12 format=2]

[ext_resource path="res://projectiles/Projectile.tscn" type="PackedScene" id=1]
[ext_resource path="res://assets/allSprites_retina_rotated.png" type="Texture" id=2]
[ext_resource path="res://assets/spr_smoke_strip24.png" type="Texture" id=3]
[ext_resource path="res://projectiles/MultiTunnelMissle.cs" type="Script" id=4]
[ext_resource path="res://effects/Trail.tscn" type="PackedScene" id=5]
[ext_resource path="res://effects/BoosterTrail.tscn" type="PackedScene" id=6]
[ext_resource path="res://effects/AgentExplosionParticle.tscn" type="PackedScene" id=7]

[sub_resource type="RectangleShape2D" id=6]
[sub_resource type="RectangleShape2D" id=1]
extents = Vector2( 13.9327, 8.17027 )

[sub_resource type="CanvasItemMaterial" id=1]
[sub_resource type="CanvasItemMaterial" id=2]
resource_local_to_scene = true
particles_animation = true
particles_anim_h_frames = 24
particles_anim_v_frames = 1
particles_anim_loop = false

[sub_resource type="Curve" id=2]
[sub_resource type="Curve" id=3]
_data = [ Vector2( 0, 0 ), 0.0, 0.201237, 0, 0, Vector2( 1, 1 ), -0.0628936, 0.0, 0, 0 ]

[sub_resource type="CurveTexture" id=3]
curve = SubResource( 2 )
[sub_resource type="CurveTexture" id=4]
curve = SubResource( 3 )

[sub_resource type="ParticlesMaterial" id=4]
[sub_resource type="ParticlesMaterial" id=5]
flag_disable_z = true
gravity = Vector3( 0, 0, 0 )
orbit_velocity = 0.0
orbit_velocity_random = 0.0
scale = 2.0
scale_curve = SubResource( 3 )
scale_curve = SubResource( 4 )
anim_speed = 1.0

[sub_resource type="CanvasItemMaterial" id=5]
blend_mode = 1

[node name="MultiTunnelMissle" instance=ExtResource( 1 )]
cast_to = Vector2( 20, 0 )
script = ExtResource( 4 )
Speed = 2000
Damage = 20
Damage = 10
Lifetime = 100.0
SteerForce = 100.0

Expand All @@ -49,31 +46,29 @@ texture = ExtResource( 2 )
region_enabled = true
region_rect = Rect2( 480, 40, 36, 23 )

[node name="Explosion" parent="." index="2"]
scale = Vector2( 5, 5 )

[node name="ProjectileArea2D" parent="." index="3"]
[node name="ProjectileArea2D" parent="." index="2"]
visible = false

[node name="CollisionShape2D" parent="ProjectileArea2D" index="0"]
visible = false
shape = SubResource( 6 )
shape = SubResource( 1 )

[node name="Trail" type="Particles2D" parent="." index="4"]
[node name="ParticleTrail" type="Particles2D" parent="." index="3"]
self_modulate = Color( 6, 3, 0, 1 )
show_behind_parent = true
material = SubResource( 1 )
material = SubResource( 2 )
position = Vector2( -40, 0 )
amount = 32
lifetime = 0.4
local_coords = false
process_material = SubResource( 4 )
process_material = SubResource( 5 )
texture = ExtResource( 3 )

[node name="Trail2" parent="." index="5" instance=ExtResource( 5 )]
_length = 20
[node name="AgentExplosionParticle" parent="." index="4" instance=ExtResource( 7 )]
rotation = 3.14159

[node name="BoosterTrail" parent="." index="6" instance=ExtResource( 6 )]
[node name="BoosterTrail" parent="." index="5" instance=ExtResource( 6 )]
visible = false
material = SubResource( 5 )
rotation = 3.14159

[connection signal="EffectCompleteSignal" from="AgentExplosionParticle" to="." method="_OnExplosionAnimationFinished"]
14 changes: 4 additions & 10 deletions projectiles/Projectile.cs
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ public class Projectile : RayCast2D

// https://gamesounds.xyz/?dir=FXHome
private AudioStream _musicClip = (AudioStream)GD.Load("res://assets/sounds/Future Weapons 2 - Energy Gun - shot_single_2.wav");
protected AudioStream MusicHitClip = (AudioStream)GD.Load("res://assets/sounds/Bullet Impact 22.wav");
protected AudioStream MusicHitClip = (AudioStream)GD.Load("res://assets/sounds/Bullet Impact 22.wav");

protected bool IsProjectileStart = false;

Expand Down Expand Up @@ -106,9 +106,6 @@ public override void _PhysicsProcess(float delta)
ComputeDamage();

Explode();

AudioManager audioManager = (AudioManager)GetNode("/root/AUDIOMANAGER");
audioManager.playSoundEffect(MusicHitClip);
}

GlobalPosition += Transform.x * Speed * delta;
Expand All @@ -127,21 +124,18 @@ public virtual void Explode()
IsProjectileStart = false;
Enabled = IsProjectileStart;

Velocity = new Vector2();
Velocity = Vector2.Zero;

Sprite sprite = (Sprite)GetNode("Sprite");
sprite.Hide();
AnimatedSprite explosion = (AnimatedSprite)GetNode("Explosion");
explosion.Show();
explosion.Play("smoke");

}

private void _onLifetimeTimeout()
{
Explode();
}

private void _OnExplosionAnimationFinished()
protected void _OnExplosionAnimationFinished()
{
QueueFree();
}
Expand Down
8 changes: 1 addition & 7 deletions projectiles/Projectile.tscn
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
[gd_scene load_steps=4 format=2]
[gd_scene load_steps=3 format=2]

[ext_resource path="res://projectiles/Projectile.cs" type="Script" id=1]
[ext_resource path="res://effects/Explosion.tscn" type="PackedScene" id=2]
[ext_resource path="res://projectiles/ProjectileArea2D.cs" type="Script" id=3]

[node name="Projectile" type="RayCast2D"]
Expand All @@ -15,15 +14,10 @@ region_rect = Rect2( 1098, 442, 27, 17 )
[node name="Lifetime" type="Timer" parent="."]
wait_time = 10.0

[node name="Explosion" parent="." instance=ExtResource( 2 )]
visible = false
scale = Vector2( 0.5, 0.5 )

[node name="ProjectileArea2D" type="Area2D" parent="."]
script = ExtResource( 3 )

[node name="CollisionShape2D" type="CollisionShape2D" parent="ProjectileArea2D"]

[connection signal="timeout" from="Lifetime" to="." method="_onLifetimeTimeout"]
[connection signal="animation_finished" from="Explosion" to="." method="_OnExplosionAnimationFinished"]
[connection signal="area_entered" from="ProjectileArea2D" to="ProjectileArea2D" method="_onProjectileAreaEntered"]
11 changes: 8 additions & 3 deletions projectiles/RifileBullet.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,8 @@
public class RifileBullet : Projectile
{

private Trail trail;
public override void _Ready()
{
trail = (Trail)GetNode("Trail");
base._Ready();
}

Expand All @@ -18,7 +16,14 @@ public override void _PhysicsProcess(float delta)

public override void Explode()
{
trail.Stop();
base.Explode();

((Trail)GetNode("LineTrail")).Stop();

Sprite sprite = (Sprite)GetNode("Sprite");
sprite.Hide();
AnimatedSprite explosion = (AnimatedSprite)GetNode("Explosion");
explosion.Show();
explosion.Play("smoke");
}
}
18 changes: 11 additions & 7 deletions projectiles/RifileBullet.tscn
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
[gd_scene load_steps=14 format=2]
[gd_scene load_steps=15 format=2]

[ext_resource path="res://projectiles/Projectile.tscn" type="PackedScene" id=1]
[ext_resource path="res://assets/allSprites_retina_rotated.png" type="Texture" id=2]
[ext_resource path="res://projectiles/RifileBullet.cs" type="Script" id=3]
[ext_resource path="res://effects/Trail.tscn" type="PackedScene" id=4]
[ext_resource path="res://projectiles/Particle2DProjectile.tscn" type="PackedScene" id=5]
[ext_resource path="res://effects/Explosion.tscn" type="PackedScene" id=6]

[sub_resource type="RectangleShape2D" id=1]
extents = Vector2( 20.125, 7.75 )
Expand Down Expand Up @@ -58,22 +59,25 @@ texture = ExtResource( 2 )
region_enabled = true
region_rect = Rect2( 653, 41, 30, 24 )

[node name="Explosion" parent="." index="2"]
scale = Vector2( 0.3, 0.3 )

[node name="ProjectileArea2D" parent="." index="3"]
[node name="ProjectileArea2D" parent="." index="2"]
visible = false
collision_layer = 4
collision_mask = 4

[node name="CollisionShape2D" parent="ProjectileArea2D" index="0"]
shape = SubResource( 1 )

[node name="Particle2DProjectile" parent="." index="4" instance=ExtResource( 5 )]
[node name="ParticleTrail" parent="." index="3" instance=ExtResource( 5 )]
material = SubResource( 2 )
process_material = SubResource( 7 )
texture = null

[node name="Trail" parent="." index="5" instance=ExtResource( 4 )]
[node name="Explosion" parent="." index="4" instance=ExtResource( 6 )]
visible = false
scale = Vector2( 0.75, 0.75 )

[node name="LineTrail" parent="." index="5" instance=ExtResource( 4 )]
_length = 5
_gradientColor = SubResource( 8 )

[connection signal="animation_finished" from="Explosion" to="." method="_OnExplosionAnimationFinished"]

0 comments on commit dc63bea

Please sign in to comment.