fixed collapse bug

This commit is contained in:
pennyrigate 2023-09-04 05:49:28 -04:00
parent 4b7db186c7
commit 398e39ff1b
7 changed files with 103 additions and 46 deletions

View file

@ -14,24 +14,26 @@ onready var shoot_timer = $ShootTimer
onready var anims = $AnimationPlayer
onready var head_sprite = $Body/Head
#func _ready():
# for node in get_tree().get_nodes_in_group("collapse_block"):
# if node.has_method("_on_collapse"):
# connect("collapse", node, "_on_collapse")
func _on_ShootTimer_timeout():
if can_shoot:
Audio.play_sound(Audio.a_bullet_barrage,Audio.ac_boss)
for pos in positions.get_children():
var bullet = Bullet.instance()
bullet.global_position = pos.global_position
bullet.direction = Vector2.LEFT.rotated(pos.rotation)
bullet.speed = shot_speed
get_parent().add_child(bullet)
shoot_timer.wait_time = fire_rate
if can_shoot: shoot()
func shoot():
Audio.play_sound(Audio.a_bullet_barrage,Audio.ac_boss)
for pos in positions.get_children():
var bullet = Bullet.instance()
bullet.global_position = pos.global_position
bullet.direction = Vector2.LEFT.rotated(pos.rotation)
bullet.speed = shot_speed
get_parent().add_child(bullet)
shoot_timer.wait_time = fire_rate
func _play_laser_sound(play: bool):
if play:
Audio.play_sound(Audio.a_rainbow_laser,Audio.ac_boss)
else:
Audio.ac_boss.playing = false
func _play_laser_sound():
Audio.play_sound(Audio.a_rainbow_laser,Audio.ac_boss)
func die():
hp -= 1
@ -45,6 +47,7 @@ func die():
shot_speed = 70
fire_rate = 0.8
emit_signal("entered_phase", 3)
$Body/Head/Intelli.visible = true
head_sprite.texture = load("res://graphics/enemy/boss/stg2600_head_broken.png")
0:
queue_free()

View file

@ -43,7 +43,7 @@ tracks/1/loop_wrap = true
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/keys = {
"times": PoolRealArray( 0, 1.5, 5.5 ),
"times": PoolRealArray( 0, 1.3, 3.1 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 1,
"values": [ false, true, true ]
@ -55,7 +55,7 @@ tracks/2/loop_wrap = true
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/keys = {
"times": PoolRealArray( 0, 1.5, 1.6, 5.5, 5.6, 5.9 ),
"times": PoolRealArray( 0, 1.3, 1.4, 3.1, 3.2, 3.5 ),
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1 ),
"update": 0,
"values": [ 0.0, 15.0, 15.0, -15.0, -15.0, 0.0 ]
@ -67,10 +67,10 @@ tracks/3/loop_wrap = true
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/keys = {
"times": PoolRealArray( 0, 1.5, 1.6 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"times": PoolRealArray( 0, 1.3, 1.4, 3.1, 3.2 ),
"transitions": PoolRealArray( 1, 1, 1, 1, 1 ),
"update": 0,
"values": [ Vector2( 13.4376, 1 ), Vector2( 0, 1 ), Vector2( 14, 1 ) ]
"values": [ Vector2( 13.4376, 1 ), Vector2( 14, 0 ), Vector2( 14, 1 ), Vector2( 14, 1 ), Vector2( 14, 0 ) ]
}
tracks/4/type = "value"
tracks/4/path = NodePath("Body/Head/Beam:position")
@ -79,10 +79,10 @@ tracks/4/loop_wrap = true
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/keys = {
"times": PoolRealArray( 0, 5.5, 5.6, 5.9 ),
"transitions": PoolRealArray( 1, 1, 1, 1 ),
"times": PoolRealArray( 0, 3.1 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector2( -70, -8 ), Vector2( -70, -8 ), Vector2( -500, -8 ), Vector2( -500, -8 ) ]
"values": [ Vector2( -70, -8 ), Vector2( -70, -8 ) ]
}
tracks/5/type = "value"
tracks/5/path = NodePath(".:can_shoot")
@ -91,7 +91,7 @@ tracks/5/loop_wrap = true
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/keys = {
"times": PoolRealArray( 0, 5.9 ),
"times": PoolRealArray( 0, 3.5 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 1,
"values": [ false, true ]
@ -115,10 +115,10 @@ tracks/7/loop_wrap = true
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/keys = {
"times": PoolRealArray( 0, 1.5 ),
"transitions": PoolRealArray( 1, 1 ),
"times": PoolRealArray( 0, 1.3, 3.2 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 1,
"values": [ true, false ]
"values": [ true, false, true ]
}
tracks/8/type = "method"
tracks/8/path = NodePath(".")
@ -127,30 +127,37 @@ tracks/8/loop_wrap = true
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/keys = {
"times": PoolRealArray( 1.6 ),
"transitions": PoolRealArray( 1 ),
"times": PoolRealArray( 1.4, 3.2 ),
"transitions": PoolRealArray( 1, 1 ),
"values": [ {
"args": [ ],
"args": [ true ],
"method": "_play_laser_sound"
}, {
"args": [ false ],
"method": "_play_laser_sound"
} ]
}
[sub_resource type="Animation" id=5]
length = 0.001
tracks/0/type = "value"
tracks/0/path = NodePath(".:can_shoot")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ true ]
}
[node name="2600" type="Node2D"]
position = Vector2( 0, -16 )
script = ExtResource( 1 )
can_shoot = true
[node name="Intelli" type="Sprite" parent="."]
position = Vector2( 32, 41 )
rotation = 3.14159
scale = Vector2( 1, -1 )
texture = ExtResource( 5 )
region_enabled = true
region_rect = Rect2( 0, 0, 20, 14 )
[node name="Body" type="Node2D" parent="."]
position = Vector2( 1, 0 )
@ -180,6 +187,15 @@ position = Vector2( 0.0139904, 0 )
shape = SubResource( 6 )
disabled = true
[node name="Intelli" type="Sprite" parent="Body/Head"]
visible = false
position = Vector2( -42, -31 )
rotation = 3.14159
scale = Vector2( 1, -1 )
texture = ExtResource( 5 )
region_enabled = true
region_rect = Rect2( 0, 0, 20, 14 )
[node name="LegL" type="Sprite" parent="Body"]
position = Vector2( 67, 112 )
texture = ExtResource( 3 )