diff --git a/graphics/particles/glass_shard.png b/graphics/particles/glass_shard.png new file mode 100644 index 0000000..716eda1 Binary files /dev/null and b/graphics/particles/glass_shard.png differ diff --git a/graphics/particles/glass_shard.png.import b/graphics/particles/glass_shard.png.import new file mode 100644 index 0000000..e19b7b6 --- /dev/null +++ b/graphics/particles/glass_shard.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/glass_shard.png-9dc867929059fea83ab155e049de7ab1.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://graphics/particles/glass_shard.png" +dest_files=[ "res://.import/glass_shard.png-9dc867929059fea83ab155e049de7ab1.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/objects/enemy/boss/2600.gd b/objects/enemy/boss/2600.gd index d336c4f..58c2483 100644 --- a/objects/enemy/boss/2600.gd +++ b/objects/enemy/boss/2600.gd @@ -71,6 +71,7 @@ func die(): 1: shot_speed = 70 $"%GlassShape".queue_free() + $"%GlassBreakParticles".emitting = true emit_signal("entered_phase", 3) head_sprite.texture = preload("res://graphics/enemy/boss/stg_2600/head_broken.png") 0: diff --git a/objects/enemy/boss/2600.tscn b/objects/enemy/boss/2600.tscn index b5f6c23..eaf3db8 100644 --- a/objects/enemy/boss/2600.tscn +++ b/objects/enemy/boss/2600.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=35 format=2] +[gd_scene load_steps=37 format=2] [ext_resource path="res://objects/enemy/boss/2600.gd" type="Script" id=1] [ext_resource path="res://graphics/enemy/boss/stg_2600/tailpipes.png" type="Texture" id=2] @@ -18,6 +18,7 @@ [ext_resource path="res://graphics/particles/smoke.png" type="Texture" id=16] [ext_resource path="res://shaders/fade.gdshader" type="Shader" id=17] [ext_resource path="res://graphics/fade_patterns/stg_explosion.png" type="Texture" id=18] +[ext_resource path="res://graphics/particles/glass_shard.png" type="Texture" id=19] [sub_resource type="ShaderMaterial" id=11] shader = ExtResource( 3 ) @@ -40,6 +41,9 @@ extents = Vector2( 128, 8 ) [sub_resource type="Curve" id=13] _data = [ Vector2( 0, 0 ), 0.0, 0.0, 0, 0, Vector2( 0.803571, 1 ), 0.0, 0.0, 0, 0, Vector2( 1, 0 ), 0.0, 0.0, 0, 0 ] +[sub_resource type="Curve" id=21] +_data = [ Vector2( 0, 1 ), 0.0, 0.0, 0, 0, Vector2( 0.937702, 1 ), 0.0, 0.0, 0, 0, Vector2( 1, 0 ), -25.1918, 0.0, 0, 0 ] + [sub_resource type="ShaderMaterial" id=8] shader = ExtResource( 11 ) shader_param/pixel_scale = 1.0 @@ -956,6 +960,32 @@ scale_amount = 0.5 scale_amount_random = 0.5 scale_amount_curve = SubResource( 13 ) +[node name="GlassBreakParticles" type="CPUParticles2D" parent="Axle/Head"] +unique_name_in_owner = true +position = Vector2( -35, -39 ) +emitting = false +amount = 24 +lifetime = 3.0 +one_shot = true +explosiveness = 0.95 +randomness = 0.5 +lifetime_randomness = 0.5 +texture = ExtResource( 19 ) +emission_shape = 2 +emission_rect_extents = Vector2( 16, 12 ) +direction = Vector2( 0, -1 ) +spread = 90.0 +gravity = Vector2( 0, 80 ) +initial_velocity = 80.0 +initial_velocity_random = 0.25 +angular_velocity = 720.0 +angular_velocity_random = 1.0 +angle = 720.0 +angle_random = 1.0 +scale_amount = 0.25 +scale_amount_random = 0.5 +scale_amount_curve = SubResource( 21 ) + [node name="JointFront" type="Sprite" parent="Axle"] position = Vector2( 11, -4 ) texture = ExtResource( 7 )