some mech juice (eww?)
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.5 KiB |
BIN
graphics/enemy/boss/stg_2600/tailpipes.png
Normal file
After Width: | Height: | Size: 877 B |
35
graphics/enemy/boss/stg_2600/tailpipes.png.import
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/tailpipes.png-f2cc21241c48e1d5a125f73c2b7a9f85.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://graphics/enemy/boss/stg_2600/tailpipes.png"
|
||||||
|
dest_files=[ "res://.import/tailpipes.png-f2cc21241c48e1d5a125f73c2b7a9f85.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
|
|
@ -34,6 +34,7 @@ func _play_laser_sound(play: bool):
|
||||||
Audio.play_sound(Audio.a_rainbow_laser,Audio.ac_boss)
|
Audio.play_sound(Audio.a_rainbow_laser,Audio.ac_boss)
|
||||||
else:
|
else:
|
||||||
Audio.ac_boss.playing = false
|
Audio.ac_boss.playing = false
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
func die():
|
func die():
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
[gd_scene load_steps=21 format=2]
|
[gd_scene load_steps=27 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://objects/enemy/boss/2600.gd" type="Script" id=1]
|
[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]
|
||||||
|
[ext_resource path="res://shaders/wibble_wobble.gdshader" type="Shader" id=3]
|
||||||
[ext_resource path="res://graphics/enemy/boss/stg_2600/beam.png" type="Texture" id=4]
|
[ext_resource path="res://graphics/enemy/boss/stg_2600/beam.png" type="Texture" id=4]
|
||||||
[ext_resource path="res://graphics/npc/intelli_idle.png" type="Texture" id=5]
|
[ext_resource path="res://graphics/npc/intelli_idle.png" type="Texture" id=5]
|
||||||
[ext_resource path="res://graphics/enemy/boss/stg_2600/head_intact.png" type="Texture" id=6]
|
[ext_resource path="res://graphics/enemy/boss/stg_2600/head_intact.png" type="Texture" id=6]
|
||||||
|
@ -12,6 +14,17 @@
|
||||||
[ext_resource path="res://graphics/enemy/boss/stg_2600/foot.png" type="Texture" id=12]
|
[ext_resource path="res://graphics/enemy/boss/stg_2600/foot.png" type="Texture" id=12]
|
||||||
[ext_resource path="res://graphics/enemy/boss/stg_2600/beam_gradient.png" type="Texture" id=13]
|
[ext_resource path="res://graphics/enemy/boss/stg_2600/beam_gradient.png" type="Texture" id=13]
|
||||||
[ext_resource path="res://shaders/beam_cycle.gdshader" type="Shader" id=14]
|
[ext_resource path="res://shaders/beam_cycle.gdshader" type="Shader" id=14]
|
||||||
|
[ext_resource path="res://graphics/particles/dust.png" type="Texture" id=15]
|
||||||
|
|
||||||
|
[sub_resource type="ShaderMaterial" id=11]
|
||||||
|
shader = ExtResource( 3 )
|
||||||
|
shader_param/speed = Vector2( 16, 32 )
|
||||||
|
shader_param/ammount = Vector2( 0.6, 0.6 )
|
||||||
|
shader_param/offset = Vector2( 0, 0 )
|
||||||
|
shader_param/delay = Vector2( 0, 0 )
|
||||||
|
|
||||||
|
[sub_resource type="Curve" id=12]
|
||||||
|
_data = [ Vector2( 0, 0 ), 0.0, 0.0, 0, 0, Vector2( 0.130639, 1 ), 0.0, 0.0, 0, 0, Vector2( 0.348684, 1 ), 0.0, 0.0, 0, 0, Vector2( 1, 0 ), 0.0, 0.0, 0, 0 ]
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id=10]
|
[sub_resource type="ShaderMaterial" id=10]
|
||||||
shader = ExtResource( 14 )
|
shader = ExtResource( 14 )
|
||||||
|
@ -21,6 +34,9 @@ shader_param/gradient = ExtResource( 13 )
|
||||||
[sub_resource type="RectangleShape2D" id=6]
|
[sub_resource type="RectangleShape2D" id=6]
|
||||||
extents = Vector2( 128, 8 )
|
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="ShaderMaterial" id=8]
|
[sub_resource type="ShaderMaterial" id=8]
|
||||||
shader = ExtResource( 11 )
|
shader = ExtResource( 11 )
|
||||||
shader_param/pixel_scale = 1.0
|
shader_param/pixel_scale = 1.0
|
||||||
|
@ -44,7 +60,7 @@ tracks/0/loop_wrap = true
|
||||||
tracks/0/imported = false
|
tracks/0/imported = false
|
||||||
tracks/0/enabled = true
|
tracks/0/enabled = true
|
||||||
tracks/0/keys = {
|
tracks/0/keys = {
|
||||||
"times": PoolRealArray( 0, 3.5 ),
|
"times": PoolRealArray( 0, 3.7 ),
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
"update": 1,
|
"update": 1,
|
||||||
"values": [ false, true ]
|
"values": [ false, true ]
|
||||||
|
@ -56,7 +72,7 @@ tracks/1/loop_wrap = true
|
||||||
tracks/1/imported = false
|
tracks/1/imported = false
|
||||||
tracks/1/enabled = true
|
tracks/1/enabled = true
|
||||||
tracks/1/keys = {
|
tracks/1/keys = {
|
||||||
"times": PoolRealArray( 1.4, 3.2 ),
|
"times": PoolRealArray( 1.6, 3.4 ),
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
"values": [ {
|
"values": [ {
|
||||||
"args": [ true ],
|
"args": [ true ],
|
||||||
|
@ -73,7 +89,7 @@ tracks/2/loop_wrap = true
|
||||||
tracks/2/imported = false
|
tracks/2/imported = false
|
||||||
tracks/2/enabled = true
|
tracks/2/enabled = true
|
||||||
tracks/2/keys = {
|
tracks/2/keys = {
|
||||||
"times": PoolRealArray( 0, 1.3, 1.4, 3.1, 3.2 ),
|
"times": PoolRealArray( 0, 1.5, 1.6, 3.3, 3.4 ),
|
||||||
"transitions": PoolRealArray( 1, 1, 1, 1, 1 ),
|
"transitions": PoolRealArray( 1, 1, 1, 1, 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1e-05 ), Vector2( 1, 1e-05 ), Vector2( 1, 1 ), Vector2( 1, 1 ), Vector2( 1, 1e-05 ) ]
|
"values": [ Vector2( 1, 1e-05 ), Vector2( 1, 1e-05 ), Vector2( 1, 1 ), Vector2( 1, 1 ), Vector2( 1, 1e-05 ) ]
|
||||||
|
@ -85,10 +101,10 @@ tracks/3/loop_wrap = true
|
||||||
tracks/3/imported = false
|
tracks/3/imported = false
|
||||||
tracks/3/enabled = true
|
tracks/3/enabled = true
|
||||||
tracks/3/keys = {
|
tracks/3/keys = {
|
||||||
"times": PoolRealArray( 0, 1.3, 3.1, 3.2 ),
|
"times": PoolRealArray( 0, 1.3, 1.5, 3.3, 3.4 ),
|
||||||
"transitions": PoolRealArray( 1, 1, 1, 1 ),
|
"transitions": PoolRealArray( 1, 1, 1, 1, 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1e-05, 1 ), Vector2( 1, 1 ), Vector2( 1, 1 ), Vector2( 1, 1e-05 ) ]
|
"values": [ Vector2( 1e-05, 1 ), Vector2( 1, 1 ), Vector2( 1, 1 ), Vector2( 1, 1 ), Vector2( 1, 1e-05 ) ]
|
||||||
}
|
}
|
||||||
tracks/4/type = "value"
|
tracks/4/type = "value"
|
||||||
tracks/4/path = NodePath("Axle/Head/Beam/Hitbox/BeamShape:disabled")
|
tracks/4/path = NodePath("Axle/Head/Beam/Hitbox/BeamShape:disabled")
|
||||||
|
@ -97,7 +113,7 @@ tracks/4/loop_wrap = true
|
||||||
tracks/4/imported = false
|
tracks/4/imported = false
|
||||||
tracks/4/enabled = true
|
tracks/4/enabled = true
|
||||||
tracks/4/keys = {
|
tracks/4/keys = {
|
||||||
"times": PoolRealArray( 0, 1.4, 3.2 ),
|
"times": PoolRealArray( 0, 1.6, 3.4 ),
|
||||||
"transitions": PoolRealArray( 1, 1, 1 ),
|
"transitions": PoolRealArray( 1, 1, 1 ),
|
||||||
"update": 1,
|
"update": 1,
|
||||||
"values": [ true, false, true ]
|
"values": [ true, false, true ]
|
||||||
|
@ -109,11 +125,23 @@ tracks/5/loop_wrap = true
|
||||||
tracks/5/imported = false
|
tracks/5/imported = false
|
||||||
tracks/5/enabled = true
|
tracks/5/enabled = true
|
||||||
tracks/5/keys = {
|
tracks/5/keys = {
|
||||||
"times": PoolRealArray( 0, 1.3, 1.4, 3.1, 3.2, 3.5 ),
|
"times": PoolRealArray( 0, 1.3, 1.6, 3.3, 3.4, 3.7 ),
|
||||||
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1 ),
|
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ 0.0, 15.0, 15.0, -15.0, -15.0, 0.0 ]
|
"values": [ 0.0, 15.0, 15.0, -15.0, -15.0, 0.0 ]
|
||||||
}
|
}
|
||||||
|
tracks/6/type = "value"
|
||||||
|
tracks/6/path = NodePath("Axle/Head/BeamChargeParticles:emitting")
|
||||||
|
tracks/6/interp = 1
|
||||||
|
tracks/6/loop_wrap = true
|
||||||
|
tracks/6/imported = false
|
||||||
|
tracks/6/enabled = true
|
||||||
|
tracks/6/keys = {
|
||||||
|
"times": PoolRealArray( 0, 1.1 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
|
"update": 1,
|
||||||
|
"values": [ true, false ]
|
||||||
|
}
|
||||||
|
|
||||||
[sub_resource type="Animation" id=5]
|
[sub_resource type="Animation" id=5]
|
||||||
length = 0.001
|
length = 0.001
|
||||||
|
@ -189,6 +217,18 @@ tracks/5/keys = {
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ true ]
|
"values": [ true ]
|
||||||
}
|
}
|
||||||
|
tracks/6/type = "value"
|
||||||
|
tracks/6/path = NodePath("Axle/Head/BeamChargeParticles:emitting")
|
||||||
|
tracks/6/interp = 1
|
||||||
|
tracks/6/loop_wrap = true
|
||||||
|
tracks/6/imported = false
|
||||||
|
tracks/6/enabled = true
|
||||||
|
tracks/6/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ false ]
|
||||||
|
}
|
||||||
|
|
||||||
[node name="2600" type="Node2D"]
|
[node name="2600" type="Node2D"]
|
||||||
position = Vector2( 0, -16 )
|
position = Vector2( 0, -16 )
|
||||||
|
@ -291,6 +331,59 @@ margin_right = -32.0
|
||||||
margin_bottom = -2.0
|
margin_bottom = -2.0
|
||||||
color = Color( 0.266667, 0.266667, 0.305882, 1 )
|
color = Color( 0.266667, 0.266667, 0.305882, 1 )
|
||||||
|
|
||||||
|
[node name="Tailpipes" type="Sprite" parent="Axle/Head"]
|
||||||
|
show_behind_parent = true
|
||||||
|
material = SubResource( 11 )
|
||||||
|
position = Vector2( 21, -36 )
|
||||||
|
texture = ExtResource( 2 )
|
||||||
|
|
||||||
|
[node name="SmokeParticles" type="CPUParticles2D" parent="Axle/Head/Tailpipes"]
|
||||||
|
position = Vector2( 10, -10 )
|
||||||
|
amount = 12
|
||||||
|
texture = ExtResource( 15 )
|
||||||
|
direction = Vector2( 1, -1 )
|
||||||
|
gravity = Vector2( 0, -30 )
|
||||||
|
initial_velocity = 20.0
|
||||||
|
initial_velocity_random = 1.0
|
||||||
|
angular_velocity = 180.0
|
||||||
|
angular_velocity_random = 1.0
|
||||||
|
angle = 720.0
|
||||||
|
angle_random = 1.0
|
||||||
|
scale_amount = 0.5
|
||||||
|
scale_amount_random = 1.0
|
||||||
|
scale_amount_curve = SubResource( 12 )
|
||||||
|
color = Color( 0.0666667, 0.0666667, 0.0666667, 1 )
|
||||||
|
|
||||||
|
[node name="SmokeParticles2" type="CPUParticles2D" parent="Axle/Head/Tailpipes"]
|
||||||
|
position = Vector2( 8, 0 )
|
||||||
|
amount = 12
|
||||||
|
texture = ExtResource( 15 )
|
||||||
|
direction = Vector2( 1, -1 )
|
||||||
|
gravity = Vector2( 0, -30 )
|
||||||
|
initial_velocity = 20.0
|
||||||
|
initial_velocity_random = 1.0
|
||||||
|
angle = 720.0
|
||||||
|
angle_random = 1.0
|
||||||
|
scale_amount = 0.5
|
||||||
|
scale_amount_random = 1.0
|
||||||
|
scale_amount_curve = SubResource( 12 )
|
||||||
|
color = Color( 0.0666667, 0.0666667, 0.0666667, 1 )
|
||||||
|
|
||||||
|
[node name="SmokeParticles3" type="CPUParticles2D" parent="Axle/Head/Tailpipes"]
|
||||||
|
position = Vector2( 5, -9 )
|
||||||
|
amount = 12
|
||||||
|
texture = ExtResource( 15 )
|
||||||
|
direction = Vector2( 1, -1 )
|
||||||
|
gravity = Vector2( 0, -30 )
|
||||||
|
initial_velocity = 20.0
|
||||||
|
initial_velocity_random = 1.0
|
||||||
|
angle = 720.0
|
||||||
|
angle_random = 1.0
|
||||||
|
scale_amount = 0.5
|
||||||
|
scale_amount_random = 1.0
|
||||||
|
scale_amount_curve = SubResource( 12 )
|
||||||
|
color = Color( 0.0666667, 0.0666667, 0.0666667, 1 )
|
||||||
|
|
||||||
[node name="Intelli" type="Sprite" parent="Axle/Head"]
|
[node name="Intelli" type="Sprite" parent="Axle/Head"]
|
||||||
show_behind_parent = true
|
show_behind_parent = true
|
||||||
position = Vector2( -37, -32 )
|
position = Vector2( -37, -32 )
|
||||||
|
@ -324,6 +417,27 @@ offset = Vector2( -12, 0 )
|
||||||
region_enabled = true
|
region_enabled = true
|
||||||
region_rect = Rect2( 0, 0, 24, 16 )
|
region_rect = Rect2( 0, 0, 24, 16 )
|
||||||
|
|
||||||
|
[node name="BeamChargeParticles" type="CPUParticles2D" parent="Axle/Head"]
|
||||||
|
show_behind_parent = true
|
||||||
|
material = SubResource( 10 )
|
||||||
|
position = Vector2( -62, -10 )
|
||||||
|
scale = Vector2( 1, 0.987022 )
|
||||||
|
emitting = false
|
||||||
|
amount = 12
|
||||||
|
lifetime = 1.5
|
||||||
|
speed_scale = 3.0
|
||||||
|
texture = ExtResource( 15 )
|
||||||
|
emission_shape = 3
|
||||||
|
emission_points = PoolVector2Array( -32, 0, -28, -12, -28, 12, -24, -16, -24, 16, -30, -8, -30, 8, -32, -4, -32, 4 )
|
||||||
|
emission_colors = PoolColorArray( )
|
||||||
|
gravity = Vector2( 0, 0 )
|
||||||
|
radial_accel = -32.0
|
||||||
|
angle = 720.0
|
||||||
|
angle_random = 1.0
|
||||||
|
scale_amount = 0.5
|
||||||
|
scale_amount_random = 0.5
|
||||||
|
scale_amount_curve = SubResource( 13 )
|
||||||
|
|
||||||
[node name="JointFront" type="Sprite" parent="Axle"]
|
[node name="JointFront" type="Sprite" parent="Axle"]
|
||||||
position = Vector2( 11, -4 )
|
position = Vector2( 11, -4 )
|
||||||
texture = ExtResource( 7 )
|
texture = ExtResource( 7 )
|
||||||
|
|