Added maggie's CRT destruction sound.
This commit is contained in:
parent
661098529d
commit
7e75a96795
8 changed files with 160 additions and 66 deletions
|
|
@ -1,11 +1,16 @@
|
||||||
extends Area2D
|
extends Area2D
|
||||||
|
|
||||||
|
@onready var bullet = $Bullet/Sprite2D
|
||||||
|
|
||||||
@export var speed = -250
|
@export var speed = -250
|
||||||
|
var shader_active = false
|
||||||
|
var pause = false
|
||||||
|
|
||||||
func start(pos):
|
func start(pos):
|
||||||
position = pos
|
position = pos
|
||||||
|
|
||||||
func _process(delta):
|
func _process(delta):
|
||||||
|
if pause == true: return
|
||||||
position.y += speed * delta
|
position.y += speed * delta
|
||||||
|
|
||||||
# Signal checks to see if the bullet leaves the viewport then removes bullet.
|
# Signal checks to see if the bullet leaves the viewport then removes bullet.
|
||||||
|
|
@ -13,7 +18,32 @@ func _on_visible_on_screen_notifier_2d_screen_exited() -> void:
|
||||||
queue_free()
|
queue_free()
|
||||||
|
|
||||||
func _on_area_entered(area: Area2D) -> void:
|
func _on_area_entered(area: Area2D) -> void:
|
||||||
|
|
||||||
|
var enemies = get_tree().get_nodes_in_group("enemies")
|
||||||
|
|
||||||
|
for enemy in enemies:
|
||||||
|
match enemy.enemy_type:
|
||||||
|
"crt":
|
||||||
|
if area.is_in_group("enemies"):
|
||||||
|
if enemy.vulnerable == true:
|
||||||
|
area.explode()
|
||||||
|
queue_free()
|
||||||
|
if enemy.vulnerable == false:
|
||||||
|
print("blocked!")
|
||||||
|
enemy.block()
|
||||||
|
#await bullet_fx()
|
||||||
|
queue_free()
|
||||||
|
|
||||||
|
_:
|
||||||
if area.is_in_group("enemies"):
|
if area.is_in_group("enemies"):
|
||||||
area.explode()
|
area.explode()
|
||||||
queue_free()
|
queue_free()
|
||||||
|
|
||||||
|
#func bullet_fx():
|
||||||
|
#shader_active = true
|
||||||
|
#bullet.material.set_shader_parameter("toggle", 1.0)
|
||||||
|
#pause = true
|
||||||
|
#await get_tree().create_timer(1).timeout
|
||||||
|
#pause = false
|
||||||
|
#shader_active = false
|
||||||
|
#bullet.material.set_shader_parameter("toggle", 0.0)
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,14 @@
|
||||||
[gd_scene format=3 uid="uid://bwxxdrdvo3le0"]
|
[gd_scene format=3 uid="uid://bwxxdrdvo3le0"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://c6oorp45vpqpc" path="res://scenes/bullet.gd" id="1_v8qja"]
|
[ext_resource type="Script" uid="uid://c6oorp45vpqpc" path="res://scenes/bullet.gd" id="1_v8qja"]
|
||||||
|
[ext_resource type="Shader" uid="uid://dfywtah53il1m" path="res://shaders/player_hit.gdshader" id="2_eoqba"]
|
||||||
[ext_resource type="Texture2D" uid="uid://bnc77g20gb20h" path="res://sprites/david-head.png" id="2_y25gk"]
|
[ext_resource type="Texture2D" uid="uid://bnc77g20gb20h" path="res://sprites/david-head.png" id="2_y25gk"]
|
||||||
[ext_resource type="Texture2D" uid="uid://dwd6pycecukqb" path="res://sprites/david-headshot.png" id="3_l5glv"]
|
[ext_resource type="Texture2D" uid="uid://dwd6pycecukqb" path="res://sprites/david-headshot.png" id="3_l5glv"]
|
||||||
|
|
||||||
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_qncy5"]
|
||||||
|
shader = ExtResource("2_eoqba")
|
||||||
|
shader_parameter/toggle = 0.0
|
||||||
|
|
||||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_eoqba"]
|
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_eoqba"]
|
||||||
particle_flag_disable_z = true
|
particle_flag_disable_z = true
|
||||||
gravity = Vector3(0, 98, 0)
|
gravity = Vector3(0, 98, 0)
|
||||||
|
|
@ -16,6 +21,7 @@ z_index = -1
|
||||||
script = ExtResource("1_v8qja")
|
script = ExtResource("1_v8qja")
|
||||||
|
|
||||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=29933687]
|
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=29933687]
|
||||||
|
material = SubResource("ShaderMaterial_qncy5")
|
||||||
position = Vector2(1.1920929e-07, 2.9802322e-07)
|
position = Vector2(1.1920929e-07, 2.9802322e-07)
|
||||||
scale = Vector2(1.1111112, 1.1764706)
|
scale = Vector2(1.1111112, 1.1764706)
|
||||||
texture = ExtResource("2_y25gk")
|
texture = ExtResource("2_y25gk")
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,7 @@
|
||||||
extends Area2D
|
extends Area2D
|
||||||
|
|
||||||
|
var enemy_type: String = "chicken"
|
||||||
|
|
||||||
var bullet_scene = preload("res://scenes/enemy_bullet.tscn")
|
var bullet_scene = preload("res://scenes/enemy_bullet.tscn")
|
||||||
var start_pos = Vector2.ZERO
|
var start_pos = Vector2.ZERO
|
||||||
var speed = 0
|
var speed = 0
|
||||||
|
|
|
||||||
|
|
@ -1,28 +1,40 @@
|
||||||
extends Area2D
|
extends Area2D
|
||||||
|
|
||||||
|
var enemy_type: String = "crt"
|
||||||
|
|
||||||
var bullet_scene = preload("res://scenes/enemy_bullet.tscn")
|
var bullet_scene = preload("res://scenes/enemy_bullet.tscn")
|
||||||
var start_pos = Vector2.ZERO
|
var start_pos = Vector2.ZERO
|
||||||
|
var move_break
|
||||||
var speed = 0
|
var speed = 0
|
||||||
var direction = Vector2(0,1)
|
var direction = Vector2(0,1)
|
||||||
var tween_speed: float = 1.4
|
var tween_speed: float = 1.4
|
||||||
|
|
||||||
var exploding = false
|
var exploding = false
|
||||||
|
var can_shoot = true
|
||||||
|
var vulnerable = true
|
||||||
|
var stunned = false
|
||||||
|
var blocking = false
|
||||||
|
|
||||||
|
var shader_active = false
|
||||||
|
|
||||||
var enemy_move_aggression = randf_range(5, 20)
|
var enemy_move_aggression = randf_range(5, 20)
|
||||||
var enemy_shoot_aggression = randf_range(4, 20)
|
var enemy_shoot_aggression = randf_range(4, 20)
|
||||||
|
|
||||||
|
const TILE = 32
|
||||||
|
|
||||||
@onready var screensize = get_viewport_rect().size
|
@onready var screensize = get_viewport_rect().size
|
||||||
@onready var timer = $MoveTimer
|
@onready var timer = $MoveTimer
|
||||||
|
@onready var crt = $EnemyCRT/CRT
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
timer.start()
|
timer.start()
|
||||||
|
|
||||||
func start(pos):
|
func start(pos):
|
||||||
speed = 2
|
speed = 2
|
||||||
var pos_mod = randf_range(-32,32) #modify the start position randomly
|
$CRT.frame = 0
|
||||||
position = Vector2(pos.x + pos_mod, -pos.y) #add the modifier
|
#var pos_mod = randf_range(-TILE,TILE) #modify the start position randomly
|
||||||
#position = Vector2(pos.x, -pos.y)
|
#position = Vector2(pos.x + pos_mod, -pos.y) #add the modifier
|
||||||
|
position = Vector2(pos.x, -pos.y)
|
||||||
start_pos = pos
|
start_pos = pos
|
||||||
await get_tree().create_timer(randf_range(0.25, 0.55)).timeout
|
await get_tree().create_timer(randf_range(0.25, 0.55)).timeout
|
||||||
var tween = create_tween().set_trans(Tween.TRANS_BACK)
|
var tween = create_tween().set_trans(Tween.TRANS_BACK)
|
||||||
|
|
@ -38,65 +50,74 @@ func _on_timer_timeout():
|
||||||
$DirectionTimer.start()
|
$DirectionTimer.start()
|
||||||
|
|
||||||
func _on_direction_timer_timeout():
|
func _on_direction_timer_timeout():
|
||||||
direction = Vector2(randf_range(-1, 1), randf_range(0, 1))
|
var move_direction = int(randf_range(0,2))
|
||||||
direction = direction.snapped(Vector2(0,1))
|
match move_direction:
|
||||||
match direction:
|
0:
|
||||||
Vector2(0,1):
|
$CRT.frame = 0
|
||||||
$EnemyCRT.set_frame(0)
|
direction = Vector2(0,1)
|
||||||
Vector2(1,0):
|
can_shoot = true
|
||||||
$EnemyCRT.set_frame(1)
|
vulnerable = true
|
||||||
Vector2(-1,0):
|
1:
|
||||||
$EnemyCRT.set_frame(2)
|
$CRT.frame = 1
|
||||||
|
direction = Vector2(1,0)
|
||||||
|
can_shoot = false
|
||||||
|
vulnerable = false
|
||||||
|
2:
|
||||||
|
$CRT.frame = 2
|
||||||
|
direction = Vector2(-1,0)
|
||||||
|
can_shoot = false
|
||||||
|
vulnerable = false
|
||||||
|
|
||||||
$DirectionTimer.start()
|
$DirectionTimer.start()
|
||||||
|
|
||||||
func _on_shoot_timer_timeout():
|
func _on_shoot_timer_timeout():
|
||||||
|
if can_shoot == true:
|
||||||
var b = bullet_scene.instantiate()
|
var b = bullet_scene.instantiate()
|
||||||
get_tree().root.add_child(b)
|
get_tree().root.add_child(b)
|
||||||
b.start(position)
|
b.start(position)
|
||||||
$ShootTimer.wait_time = randf_range(4, 20)
|
$ShootTimer.wait_time = randf_range(4, 20)
|
||||||
$ShootTimer.start()
|
$ShootTimer.start()
|
||||||
|
|
||||||
|
else:
|
||||||
|
$ShootTimer.start()
|
||||||
|
|
||||||
func _process(delta):
|
func _process(delta):
|
||||||
|
|
||||||
|
if stunned == true:
|
||||||
|
return
|
||||||
|
|
||||||
position += direction * speed * delta
|
position += direction * speed * delta
|
||||||
|
|
||||||
|
if position.x > screensize.x + 32:
|
||||||
|
start(start_pos)
|
||||||
|
|
||||||
|
|
||||||
#direction = direction.snapped(Vector2(1, 0)) # Snap to horizontal
|
|
||||||
#direction = direction.snapped(Vector2(0, 1)) # Snap to vertical
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if position.y > screensize.y + 32:
|
if position.y > screensize.y + 32:
|
||||||
start(start_pos)
|
start(start_pos)
|
||||||
|
|
||||||
#if position.x > screensize.x + 32:
|
|
||||||
#start(start_pos)
|
|
||||||
#
|
|
||||||
#if position.x < screensize.x + 32:
|
|
||||||
#start(start_pos)
|
|
||||||
|
|
||||||
#if Input.is_action_just_pressed("ui_right"):
|
|
||||||
#direction = Vector2(1, 0) # Move right
|
|
||||||
#elif Input.is_action_just_pressed("ui_left"):
|
|
||||||
#direction = Vector2(-1, 0) # Move left
|
|
||||||
#elif Input.is_action_just_pressed("ui_up"):
|
|
||||||
#direction = Vector2(0, -1) # Move up
|
|
||||||
#elif Input.is_action_just_pressed("ui_down"):
|
|
||||||
#direction = Vector2(0, 1) # Move down
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
func explode():
|
func explode():
|
||||||
if exploding: return
|
if exploding: return
|
||||||
exploding = true
|
exploding = true
|
||||||
EventBus.enemy_hit.emit(5)
|
EventBus.enemy_hit.emit(5)
|
||||||
speed = 0
|
speed = 0
|
||||||
|
$ImpactCRT.play()
|
||||||
$AnimationPlayer.play("explode")
|
$AnimationPlayer.play("explode")
|
||||||
#set_deferred("monitoring", false)
|
#set_deferred("monitoring", false)
|
||||||
await $AnimationPlayer.animation_finished
|
await $AnimationPlayer.animation_finished
|
||||||
queue_free()
|
queue_free()
|
||||||
EventBus.enemy_died.emit()
|
EventBus.enemy_died.emit()
|
||||||
|
|
||||||
|
func block():
|
||||||
|
if blocking: return
|
||||||
|
blocking = true
|
||||||
|
stunned = true
|
||||||
|
await get_tree().create_timer(5).timeout
|
||||||
|
shader_active = true
|
||||||
|
crt.material.set_shader_parameter("toggle", 1.0)
|
||||||
|
await get_tree().create_timer(1).timeout
|
||||||
|
shader_active = false
|
||||||
|
crt.material.set_shader_parameter("toggle", 0.0)
|
||||||
|
stunned = false
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,14 @@
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://7ls7phfcupal" path="res://scenes/enemy_crt.gd" id="1_ugdur"]
|
[ext_resource type="Script" uid="uid://7ls7phfcupal" path="res://scenes/enemy_crt.gd" id="1_ugdur"]
|
||||||
[ext_resource type="Texture2D" uid="uid://b5pswf7r8b7j4" path="res://sprites/crt.png" id="2_emiuq"]
|
[ext_resource type="Texture2D" uid="uid://b5pswf7r8b7j4" path="res://sprites/crt.png" id="2_emiuq"]
|
||||||
|
[ext_resource type="Shader" uid="uid://dfywtah53il1m" path="res://shaders/player_hit.gdshader" id="2_gas3w"]
|
||||||
[ext_resource type="Texture2D" uid="uid://cy4jggxmnohbb" path="res://sprites/chicken.png" id="2_ugdur"]
|
[ext_resource type="Texture2D" uid="uid://cy4jggxmnohbb" path="res://sprites/chicken.png" id="2_ugdur"]
|
||||||
[ext_resource type="Texture2D" uid="uid://bm7fgqwqfqmf4" path="res://sprites/explosion_pallete-swap.png" id="3_emiuq"]
|
[ext_resource type="Texture2D" uid="uid://bm7fgqwqfqmf4" path="res://sprites/explosion_pallete-swap.png" id="3_emiuq"]
|
||||||
|
[ext_resource type="AudioStream" uid="uid://cbi5q575w1g1n" path="res://sounds/CRT_IMPACT.wav" id="6_gas3w"]
|
||||||
|
|
||||||
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_gas3w"]
|
||||||
|
shader = ExtResource("2_gas3w")
|
||||||
|
shader_parameter/toggle = 0.0
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_4gyqm"]
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_4gyqm"]
|
||||||
size = Vector2(32.727318, 27.272764)
|
size = Vector2(32.727318, 27.272764)
|
||||||
|
|
@ -13,7 +19,7 @@ length = 0.001
|
||||||
tracks/0/type = "value"
|
tracks/0/type = "value"
|
||||||
tracks/0/imported = false
|
tracks/0/imported = false
|
||||||
tracks/0/enabled = true
|
tracks/0/enabled = true
|
||||||
tracks/0/path = NodePath("Sprite2D:frame")
|
tracks/0/path = NodePath("CRT:frame")
|
||||||
tracks/0/interp = 1
|
tracks/0/interp = 1
|
||||||
tracks/0/loop_wrap = true
|
tracks/0/loop_wrap = true
|
||||||
tracks/0/keys = {
|
tracks/0/keys = {
|
||||||
|
|
@ -25,7 +31,7 @@ tracks/0/keys = {
|
||||||
tracks/1/type = "value"
|
tracks/1/type = "value"
|
||||||
tracks/1/imported = false
|
tracks/1/imported = false
|
||||||
tracks/1/enabled = true
|
tracks/1/enabled = true
|
||||||
tracks/1/path = NodePath("Sprite2D:texture")
|
tracks/1/path = NodePath("CRT:texture")
|
||||||
tracks/1/interp = 1
|
tracks/1/interp = 1
|
||||||
tracks/1/loop_wrap = true
|
tracks/1/loop_wrap = true
|
||||||
tracks/1/keys = {
|
tracks/1/keys = {
|
||||||
|
|
@ -37,7 +43,7 @@ tracks/1/keys = {
|
||||||
tracks/2/type = "value"
|
tracks/2/type = "value"
|
||||||
tracks/2/imported = false
|
tracks/2/imported = false
|
||||||
tracks/2/enabled = true
|
tracks/2/enabled = true
|
||||||
tracks/2/path = NodePath("Sprite2D:hframes")
|
tracks/2/path = NodePath("CRT:hframes")
|
||||||
tracks/2/interp = 1
|
tracks/2/interp = 1
|
||||||
tracks/2/loop_wrap = true
|
tracks/2/loop_wrap = true
|
||||||
tracks/2/keys = {
|
tracks/2/keys = {
|
||||||
|
|
@ -49,7 +55,7 @@ tracks/2/keys = {
|
||||||
tracks/3/type = "value"
|
tracks/3/type = "value"
|
||||||
tracks/3/imported = false
|
tracks/3/imported = false
|
||||||
tracks/3/enabled = true
|
tracks/3/enabled = true
|
||||||
tracks/3/path = NodePath("Sprite2D:region_rect")
|
tracks/3/path = NodePath("CRT:region_rect")
|
||||||
tracks/3/interp = 1
|
tracks/3/interp = 1
|
||||||
tracks/3/loop_wrap = true
|
tracks/3/loop_wrap = true
|
||||||
tracks/3/keys = {
|
tracks/3/keys = {
|
||||||
|
|
@ -77,7 +83,7 @@ step = 0.2
|
||||||
tracks/0/type = "value"
|
tracks/0/type = "value"
|
||||||
tracks/0/imported = false
|
tracks/0/imported = false
|
||||||
tracks/0/enabled = true
|
tracks/0/enabled = true
|
||||||
tracks/0/path = NodePath("Sprite2D:texture")
|
tracks/0/path = NodePath("CRT:texture")
|
||||||
tracks/0/interp = 1
|
tracks/0/interp = 1
|
||||||
tracks/0/loop_wrap = true
|
tracks/0/loop_wrap = true
|
||||||
tracks/0/keys = {
|
tracks/0/keys = {
|
||||||
|
|
@ -89,7 +95,7 @@ tracks/0/keys = {
|
||||||
tracks/1/type = "value"
|
tracks/1/type = "value"
|
||||||
tracks/1/imported = false
|
tracks/1/imported = false
|
||||||
tracks/1/enabled = true
|
tracks/1/enabled = true
|
||||||
tracks/1/path = NodePath("Sprite2D:frame")
|
tracks/1/path = NodePath("CRT:frame")
|
||||||
tracks/1/interp = 1
|
tracks/1/interp = 1
|
||||||
tracks/1/loop_wrap = true
|
tracks/1/loop_wrap = true
|
||||||
tracks/1/keys = {
|
tracks/1/keys = {
|
||||||
|
|
@ -101,7 +107,7 @@ tracks/1/keys = {
|
||||||
tracks/2/type = "value"
|
tracks/2/type = "value"
|
||||||
tracks/2/imported = false
|
tracks/2/imported = false
|
||||||
tracks/2/enabled = true
|
tracks/2/enabled = true
|
||||||
tracks/2/path = NodePath("Sprite2D:hframes")
|
tracks/2/path = NodePath("CRT:hframes")
|
||||||
tracks/2/interp = 1
|
tracks/2/interp = 1
|
||||||
tracks/2/loop_wrap = true
|
tracks/2/loop_wrap = true
|
||||||
tracks/2/keys = {
|
tracks/2/keys = {
|
||||||
|
|
@ -113,7 +119,7 @@ tracks/2/keys = {
|
||||||
tracks/3/type = "value"
|
tracks/3/type = "value"
|
||||||
tracks/3/imported = false
|
tracks/3/imported = false
|
||||||
tracks/3/enabled = true
|
tracks/3/enabled = true
|
||||||
tracks/3/path = NodePath("Sprite2D:region_rect")
|
tracks/3/path = NodePath("CRT:region_rect")
|
||||||
tracks/3/interp = 1
|
tracks/3/interp = 1
|
||||||
tracks/3/loop_wrap = true
|
tracks/3/loop_wrap = true
|
||||||
tracks/3/keys = {
|
tracks/3/keys = {
|
||||||
|
|
@ -142,7 +148,7 @@ loop_mode = 2
|
||||||
tracks/0/type = "value"
|
tracks/0/type = "value"
|
||||||
tracks/0/imported = false
|
tracks/0/imported = false
|
||||||
tracks/0/enabled = true
|
tracks/0/enabled = true
|
||||||
tracks/0/path = NodePath("Sprite2D:frame")
|
tracks/0/path = NodePath("CRT:frame")
|
||||||
tracks/0/interp = 1
|
tracks/0/interp = 1
|
||||||
tracks/0/loop_wrap = true
|
tracks/0/loop_wrap = true
|
||||||
tracks/0/keys = {
|
tracks/0/keys = {
|
||||||
|
|
@ -154,7 +160,7 @@ tracks/0/keys = {
|
||||||
tracks/1/type = "value"
|
tracks/1/type = "value"
|
||||||
tracks/1/imported = false
|
tracks/1/imported = false
|
||||||
tracks/1/enabled = true
|
tracks/1/enabled = true
|
||||||
tracks/1/path = NodePath("Sprite2D:texture")
|
tracks/1/path = NodePath("CRT:texture")
|
||||||
tracks/1/interp = 1
|
tracks/1/interp = 1
|
||||||
tracks/1/loop_wrap = true
|
tracks/1/loop_wrap = true
|
||||||
tracks/1/keys = {
|
tracks/1/keys = {
|
||||||
|
|
@ -166,7 +172,7 @@ tracks/1/keys = {
|
||||||
tracks/2/type = "value"
|
tracks/2/type = "value"
|
||||||
tracks/2/imported = false
|
tracks/2/imported = false
|
||||||
tracks/2/enabled = true
|
tracks/2/enabled = true
|
||||||
tracks/2/path = NodePath("Sprite2D:hframes")
|
tracks/2/path = NodePath("CRT:hframes")
|
||||||
tracks/2/interp = 1
|
tracks/2/interp = 1
|
||||||
tracks/2/loop_wrap = true
|
tracks/2/loop_wrap = true
|
||||||
tracks/2/keys = {
|
tracks/2/keys = {
|
||||||
|
|
@ -178,7 +184,7 @@ tracks/2/keys = {
|
||||||
tracks/3/type = "value"
|
tracks/3/type = "value"
|
||||||
tracks/3/imported = false
|
tracks/3/imported = false
|
||||||
tracks/3/enabled = true
|
tracks/3/enabled = true
|
||||||
tracks/3/path = NodePath("Sprite2D:region_rect")
|
tracks/3/path = NodePath("CRT:region_rect")
|
||||||
tracks/3/interp = 1
|
tracks/3/interp = 1
|
||||||
tracks/3/loop_wrap = true
|
tracks/3/loop_wrap = true
|
||||||
tracks/3/keys = {
|
tracks/3/keys = {
|
||||||
|
|
@ -198,7 +204,9 @@ _data = {
|
||||||
[node name="EnemyCRT" type="Area2D" unique_id=1433837580 groups=["enemies"]]
|
[node name="EnemyCRT" type="Area2D" unique_id=1433837580 groups=["enemies"]]
|
||||||
script = ExtResource("1_ugdur")
|
script = ExtResource("1_ugdur")
|
||||||
|
|
||||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=2115910138]
|
[node name="CRT" type="Sprite2D" parent="." unique_id=2115910138]
|
||||||
|
material = SubResource("ShaderMaterial_gas3w")
|
||||||
|
position = Vector2(0, -8)
|
||||||
texture = ExtResource("2_emiuq")
|
texture = ExtResource("2_emiuq")
|
||||||
hframes = 3
|
hframes = 3
|
||||||
region_enabled = true
|
region_enabled = true
|
||||||
|
|
@ -213,13 +221,17 @@ shape = SubResource("RectangleShape2D_4gyqm")
|
||||||
one_shot = true
|
one_shot = true
|
||||||
|
|
||||||
[node name="ShootTimer" type="Timer" parent="." unique_id=1985644907]
|
[node name="ShootTimer" type="Timer" parent="." unique_id=1985644907]
|
||||||
|
wait_time = 0.35
|
||||||
one_shot = true
|
one_shot = true
|
||||||
|
|
||||||
|
[node name="DirectionTimer" type="Timer" parent="." unique_id=2080229505]
|
||||||
|
wait_time = 0.25
|
||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=702523492]
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=702523492]
|
||||||
libraries/ = SubResource("AnimationLibrary_7ellt")
|
libraries/ = SubResource("AnimationLibrary_7ellt")
|
||||||
|
|
||||||
[node name="DirectionTimer" type="Timer" parent="." unique_id=2080229505]
|
[node name="ImpactCRT" type="AudioStreamPlayer2D" parent="." unique_id=518408763]
|
||||||
wait_time = 5.0
|
stream = ExtResource("6_gas3w")
|
||||||
|
|
||||||
[connection signal="timeout" from="MoveTimer" to="." method="_on_timer_timeout"]
|
[connection signal="timeout" from="MoveTimer" to="." method="_on_timer_timeout"]
|
||||||
[connection signal="timeout" from="ShootTimer" to="." method="_on_shoot_timer_timeout"]
|
[connection signal="timeout" from="ShootTimer" to="." method="_on_shoot_timer_timeout"]
|
||||||
|
|
|
||||||
|
|
@ -123,12 +123,11 @@ process_material = SubResource("ParticleProcessMaterial_b26j0")
|
||||||
|
|
||||||
[node name="Head" type="Sprite2D" parent="Ship" unique_id=522385006]
|
[node name="Head" type="Sprite2D" parent="Ship" unique_id=522385006]
|
||||||
z_index = -1
|
z_index = -1
|
||||||
position = Vector2(1, -17)
|
position = Vector2(2, -17)
|
||||||
texture = ExtResource("8_ur7pv")
|
texture = ExtResource("8_ur7pv")
|
||||||
hframes = 3
|
hframes = 3
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1614510161]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1614510161]
|
||||||
position = Vector2(0, -0.4999997)
|
|
||||||
scale = Vector2(2.0054688, 2.0054688)
|
scale = Vector2(2.0054688, 2.0054688)
|
||||||
shape = SubResource("RectangleShape2D_op7ga")
|
shape = SubResource("RectangleShape2D_op7ga")
|
||||||
|
|
||||||
|
|
|
||||||
BIN
sounds/CRT_IMPACT.wav
Normal file
BIN
sounds/CRT_IMPACT.wav
Normal file
Binary file not shown.
24
sounds/CRT_IMPACT.wav.import
Normal file
24
sounds/CRT_IMPACT.wav.import
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wav"
|
||||||
|
type="AudioStreamWAV"
|
||||||
|
uid="uid://cbi5q575w1g1n"
|
||||||
|
path="res://.godot/imported/CRT_IMPACT.wav-af51af94afffec0024af9a47ed165c45.sample"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://sounds/CRT_IMPACT.wav"
|
||||||
|
dest_files=["res://.godot/imported/CRT_IMPACT.wav-af51af94afffec0024af9a47ed165c45.sample"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
force/8_bit=false
|
||||||
|
force/mono=false
|
||||||
|
force/max_rate=false
|
||||||
|
force/max_rate_hz=44100
|
||||||
|
edit/trim=false
|
||||||
|
edit/normalize=false
|
||||||
|
edit/loop_mode=0
|
||||||
|
edit/loop_begin=0
|
||||||
|
edit/loop_end=-1
|
||||||
|
compress/mode=2
|
||||||
Loading…
Add table
Add a link
Reference in a new issue