added music/sounds
This commit is contained in:
@@ -9,7 +9,7 @@ onready var shape = portal.get_child(0)
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
shape.set_deferred("disabled",true)
|
||||
shape.set_deferred("disabled",true)
|
||||
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
@@ -18,4 +18,4 @@ func _ready() -> void:
|
||||
|
||||
|
||||
func _on_ChestDetection_body_entered(body: Node) -> void:
|
||||
shape.set_deferred("disabled",false)
|
||||
shape.set_deferred("disabled",false)
|
||||
|
@@ -5,6 +5,8 @@ extends Camera2D
|
||||
# var a: int = 2
|
||||
# var b: String = "text"
|
||||
|
||||
signal enter_portal
|
||||
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
@@ -17,9 +19,11 @@ func _ready() -> void:
|
||||
|
||||
|
||||
func _on_PortalDarkForest_body_entered(body: Node) -> void:
|
||||
self.limit_bottom = -224
|
||||
self.limit_top = -736
|
||||
self.limit_left = -32
|
||||
self.limit_right = 448
|
||||
var player = get_parent()
|
||||
player.position = Vector2(256,-232)
|
||||
self.limit_bottom = -224
|
||||
self.limit_top = -736
|
||||
self.limit_left = -32
|
||||
self.limit_right = 448
|
||||
var player = get_parent()
|
||||
player.position = Vector2(256,-232)
|
||||
emit_signal('enter_portal')
|
||||
|
||||
|
@@ -2,16 +2,16 @@ extends Node2D
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
$YSort/Player.load_hud($HUD)
|
||||
$YSort/Player.load_hud($HUD)
|
||||
|
||||
for level_portal in $'YSort/Level Portals'.get_children():
|
||||
if level_portal.connect('enter_level', self, 'enter_level') != OK:
|
||||
print('ERROR: Level Portal "enter_level" signal already connected.')
|
||||
return
|
||||
for level_portal in $'YSort/Level Portals'.get_children():
|
||||
if level_portal.connect('enter_level', self, 'enter_level') != OK:
|
||||
print('ERROR: Level Portal "enter_level" signal already connected.')
|
||||
return
|
||||
|
||||
|
||||
func enter_level(level: String) -> void:
|
||||
if get_tree().change_scene(level) != OK:
|
||||
print('ERROR: Hub World failed to change scene to Level.')
|
||||
queue_free()
|
||||
return
|
||||
if get_tree().change_scene(level) != OK:
|
||||
print('ERROR: Hub World failed to change scene to Level.')
|
||||
queue_free()
|
||||
return
|
||||
|
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=11 format=2]
|
||||
[gd_scene load_steps=12 format=2]
|
||||
|
||||
[ext_resource path="res://Player/Player.tscn" type="PackedScene" id=1]
|
||||
[ext_resource path="res://Levels/Hub World.gd" type="Script" id=2]
|
||||
@@ -7,6 +7,7 @@
|
||||
[ext_resource path="res://Sprites/Levels/Tilesets/Hub_World_Grass_Atlas.png" type="Texture" id=5]
|
||||
[ext_resource path="res://Sprites/Assets/Black_Tile.png" type="Texture" id=6]
|
||||
[ext_resource path="res://Levels/Interactables/Level Portal.tscn" type="PackedScene" id=7]
|
||||
[ext_resource path="res://Music/Hub_World.mp3" type="AudioStream" id=8]
|
||||
|
||||
[sub_resource type="ConvexPolygonShape2D" id=2]
|
||||
points = PoolVector2Array( 0, 0, 2, 0, 2, 2, 0, 2 )
|
||||
@@ -125,3 +126,8 @@ level_path = "res://Levels/Level 5.tscn"
|
||||
|
||||
[node name="Pause Screen" parent="." instance=ExtResource( 4 )]
|
||||
disable_back_to_hub = true
|
||||
|
||||
[node name="BGM" type="AudioStreamPlayer" parent="."]
|
||||
stream = ExtResource( 8 )
|
||||
volume_db = -10.0
|
||||
autoplay = true
|
||||
|
@@ -4,14 +4,14 @@ var death_count: int = 0
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
$YSort/Player.load_hud($HUD)
|
||||
return
|
||||
$YSort/Player.load_hud($HUD)
|
||||
return
|
||||
|
||||
|
||||
func _on_dark_matter_death() -> void:
|
||||
death_count += 1
|
||||
if death_count == 5:
|
||||
if get_tree().change_scene('res://GUI/Level Complete.tscn') != OK:
|
||||
print('ERROR: Level 1 failed to change scene to Level Complete.')
|
||||
queue_free()
|
||||
return
|
||||
death_count += 1
|
||||
if death_count == 5:
|
||||
if get_tree().change_scene('res://GUI/Level Complete.tscn') != OK:
|
||||
print('ERROR: Level 1 failed to change scene to Level Complete.')
|
||||
queue_free()
|
||||
return
|
||||
|
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=8 format=2]
|
||||
[gd_scene load_steps=9 format=2]
|
||||
|
||||
[ext_resource path="res://Sprites/Assets/galaxy_background.png" type="Texture" id=1]
|
||||
[ext_resource path="res://GUI/HUD.tscn" type="PackedScene" id=2]
|
||||
@@ -7,6 +7,7 @@
|
||||
[ext_resource path="res://Levels/Level 1.gd" type="Script" id=5]
|
||||
[ext_resource path="res://Enemies/Dark Matter.tscn" type="PackedScene" id=6]
|
||||
[ext_resource path="res://Levels/Interactables/Star.tscn" type="PackedScene" id=7]
|
||||
[ext_resource path="res://Music/Level_1.mp3" type="AudioStream" id=8]
|
||||
|
||||
[node name="Space Level" type="Node2D"]
|
||||
script = ExtResource( 5 )
|
||||
@@ -73,6 +74,11 @@ mode = 1
|
||||
build_mode = 1
|
||||
polygon = PoolVector2Array( 0.762451, -22.0982, 427.859, -18.7308, 425.053, 245.609, -22.248, 248.976, -21.1256, -22.6594, -0.589813, -21.9661, -0.589806, 225.272, 400.359, 224.843, 399.969, -0.312477, 0.455406, -0.154987 )
|
||||
|
||||
[node name="BGM" type="AudioStreamPlayer" parent="."]
|
||||
stream = ExtResource( 8 )
|
||||
volume_db = -7.0
|
||||
autoplay = true
|
||||
|
||||
[connection signal="death" from="YSort/Enemies/Dark Matter" to="." method="_on_dark_matter_death"]
|
||||
[connection signal="death" from="YSort/Enemies/Dark Matter2" to="." method="_on_dark_matter_death"]
|
||||
[connection signal="death" from="YSort/Enemies/Dark Matter3" to="." method="_on_dark_matter_death"]
|
||||
|
@@ -1,13 +1,18 @@
|
||||
extends Node2D
|
||||
|
||||
func _ready() -> void:
|
||||
#$YSort/Player.position = get_viewport_rect().size / 2
|
||||
$YSort/Player.position = Vector2(0,0)
|
||||
$YSort/Player.load_hud($HUD)
|
||||
$HUD/Control.visible = false
|
||||
return
|
||||
#$YSort/Player.position = get_viewport_rect().size / 2
|
||||
$YSort/Player.position = Vector2(0,0)
|
||||
$YSort/Player.load_hud($HUD)
|
||||
$HUD/Control.visible = false
|
||||
return
|
||||
|
||||
|
||||
func _on_Area2D_body_entered(body):
|
||||
$HUD/Control.visible = true
|
||||
print("j")
|
||||
#print("j")
|
||||
|
||||
|
||||
func _on_Camera2D_enter_portal() -> void:
|
||||
$BGM1.stop()
|
||||
$BGM2.play()
|
||||
|
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=88 format=2]
|
||||
[gd_scene load_steps=90 format=2]
|
||||
|
||||
[ext_resource path="res://Player/Player.tscn" type="PackedScene" id=1]
|
||||
[ext_resource path="res://Levels/Level 2.gd" type="Script" id=2]
|
||||
@@ -19,6 +19,8 @@
|
||||
[ext_resource path="res://Sprites/Assets/grassPatch.png" type="Texture" id=17]
|
||||
[ext_resource path="res://Sprites/Assets/JournalScrap.png" type="Texture" id=18]
|
||||
[ext_resource path="res://Levels/Objects/Dialogue.tscn" type="PackedScene" id=19]
|
||||
[ext_resource path="res://Music/Level_2_2.mp3" type="AudioStream" id=20]
|
||||
[ext_resource path="res://Music/Level_2_1.mp3" type="AudioStream" id=21]
|
||||
|
||||
[sub_resource type="TileSet" id=1]
|
||||
0/name = "darkForestTileset.png 0"
|
||||
@@ -940,6 +942,16 @@ tile_set = SubResource( 67 )
|
||||
format = 1
|
||||
tile_data = PoolIntArray( -589828, 0, 0, -458754, 0, 0, -393220, 0, 0 )
|
||||
|
||||
[node name="BGM1" type="AudioStreamPlayer" parent="."]
|
||||
stream = ExtResource( 21 )
|
||||
volume_db = -10.0
|
||||
autoplay = true
|
||||
|
||||
[node name="BGM2" type="AudioStreamPlayer" parent="."]
|
||||
stream = ExtResource( 20 )
|
||||
volume_db = -10.0
|
||||
|
||||
[connection signal="enter_portal" from="YSort/Player/Camera2D" to="." method="_on_Camera2D_enter_portal"]
|
||||
[connection signal="body_entered" from="Collectible/Area2D" to="." method="_on_Area2D_body_entered"]
|
||||
[connection signal="body_entered" from="TreasureChest/ChestDetection" to="TreasureChest/ChestDetection" method="_on_ChestDetection_body_entered"]
|
||||
[connection signal="body_entered" from="TreasureChest/PortalDarkForest" to="YSort/Player/Camera2D" method="_on_PortalDarkForest_body_entered"]
|
||||
|
@@ -7,51 +7,51 @@ var score = 0
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
$YSort/Player.load_hud($HUD)
|
||||
screensize = get_viewport_rect().size
|
||||
spawn_coins(8)
|
||||
return
|
||||
$YSort/Player.load_hud($HUD)
|
||||
screensize = get_viewport_rect().size
|
||||
spawn_coins(8)
|
||||
return
|
||||
|
||||
|
||||
func spawn_coins(num: int) -> void:
|
||||
for _i in range(num):
|
||||
var g: Node = coin.instance()
|
||||
$'coin_container'.add_child(g)
|
||||
g.connect('coin_grabbed', self, '_on_coin_grabbed')
|
||||
#g.set_pos(Vector2(rand_range(0, screensize.x - 40), rand_range(0, screensize.y - 40)))
|
||||
g.position = Vector2(rand_range(0, screensize.x - 40), rand_range(0, screensize.y - 40))
|
||||
return
|
||||
for _i in range(num):
|
||||
var g: Node = coin.instance()
|
||||
$'coin_container'.add_child(g)
|
||||
g.connect('coin_grabbed', self, '_on_coin_grabbed')
|
||||
#g.set_pos(Vector2(rand_range(0, screensize.x - 40), rand_range(0, screensize.y - 40)))
|
||||
g.position = Vector2(rand_range(0, screensize.x - 40), rand_range(0, screensize.y - 40))
|
||||
return
|
||||
|
||||
|
||||
func _on_coin_grabbed() -> void:
|
||||
score += 1
|
||||
print(score)
|
||||
$'Level 3 HUD/Label'.set_text(str(score) + '/5')
|
||||
return
|
||||
score += 1
|
||||
print(score)
|
||||
$'Level 3 HUD/Label'.set_text(str(score) + '/5')
|
||||
return
|
||||
|
||||
|
||||
func _timer_out() -> void:
|
||||
get_tree().change_scene('res://Levels/Hub World.tscn')
|
||||
queue_free()
|
||||
return
|
||||
get_tree().change_scene('res://Levels/Hub World.tscn')
|
||||
queue_free()
|
||||
return
|
||||
|
||||
|
||||
func _on_TreasureChest_ice_key_collected() -> void:
|
||||
$YSort/Door/doorClosed.visible = false
|
||||
$YSort/Door/doorOpened.visible = true
|
||||
$YSort/DoorCollision.layers = 5
|
||||
return
|
||||
$YSort/Door/doorClosed.visible = false
|
||||
$YSort/Door/doorOpened.visible = true
|
||||
$YSort/DoorCollision.layers = 5
|
||||
return
|
||||
|
||||
|
||||
func _on_DoorDetector_body_entered(body: Node) -> void:
|
||||
if body.is_in_group('player'):
|
||||
print('WIN WIN WIN')
|
||||
get_tree().change_scene('res://Levels/Hub World.tscn')
|
||||
return
|
||||
if body.is_in_group('player'):
|
||||
print('WIN WIN WIN')
|
||||
get_tree().change_scene('res://Levels/Hub World.tscn')
|
||||
return
|
||||
|
||||
|
||||
func _on_DoorDetector_area_entered(area: Area2D) -> void:
|
||||
if area.get_parent().name == 'Player':
|
||||
get_tree().change_scene('res://GUI/Level Complete.tscn')
|
||||
queue_free()
|
||||
return
|
||||
if area.get_parent().name == 'Player':
|
||||
get_tree().change_scene('res://GUI/Level Complete.tscn')
|
||||
queue_free()
|
||||
return
|
||||
|
@@ -4,31 +4,31 @@ var gems: int = 4
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
$YSort/Player.load_hud($HUD)
|
||||
return
|
||||
$YSort/Player.load_hud($HUD)
|
||||
return
|
||||
|
||||
|
||||
func _on_TreasureChest_gem_collected() -> void:
|
||||
gems -= 1
|
||||
gems -= 1
|
||||
|
||||
if gems == 0:
|
||||
$YSort/Items/Door/doorClosed.visible = false
|
||||
$YSort/Items/Door/doorOpened.visible = true
|
||||
$DoorCollision.layers = 5
|
||||
return
|
||||
if gems == 0:
|
||||
$YSort/Items/Door/doorClosed.visible = false
|
||||
$YSort/Items/Door/doorOpened.visible = true
|
||||
$DoorCollision.layers = 5
|
||||
return
|
||||
|
||||
|
||||
func _on_NextArea_area_entered(area: Area2D) -> void:
|
||||
if area.get_parent().name == 'Player':
|
||||
$YSort/Player.position.x = 195
|
||||
$YSort/Player.position.y = -335
|
||||
return
|
||||
if area.get_parent().name == 'Player':
|
||||
$YSort/Player.position.x = 195
|
||||
$YSort/Player.position.y = -335
|
||||
return
|
||||
|
||||
|
||||
func _on_Demon_Boss_demon_boss_death() -> void:
|
||||
$Timer.start()
|
||||
$Timer.start()
|
||||
|
||||
|
||||
func _on_Timer_timeout() -> void:
|
||||
get_tree().change_scene('res://GUI/Level Complete.tscn')
|
||||
queue_free()
|
||||
get_tree().change_scene('res://GUI/Level Complete.tscn')
|
||||
queue_free()
|
||||
|
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=31 format=2]
|
||||
[gd_scene load_steps=32 format=2]
|
||||
|
||||
[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_12.png" type="Texture" id=1]
|
||||
[ext_resource path="res://Enemies/Hellhound.tscn" type="PackedScene" id=2]
|
||||
@@ -24,6 +24,7 @@
|
||||
[ext_resource path="res://GUI/Pause Screen.tscn" type="PackedScene" id=22]
|
||||
[ext_resource path="res://GUI/HUD.tscn" type="PackedScene" id=23]
|
||||
[ext_resource path="res://Enemies/Flaming Skull.tscn" type="PackedScene" id=24]
|
||||
[ext_resource path="res://Music/Level_4.mp3" type="AudioStream" id=25]
|
||||
[ext_resource path="res://Enemies/Demon Boss.tscn" type="PackedScene" id=26]
|
||||
|
||||
[sub_resource type="SpriteFrames" id=1]
|
||||
@@ -86,34 +87,35 @@ tile_data = PoolIntArray( -2686978, 0, 5, -2686977, 0, 196610, -2752512, 0, 1966
|
||||
[node name="Fire3" type="AnimatedSprite" parent="."]
|
||||
position = Vector2( -607.628, -210.601 )
|
||||
frames = SubResource( 1 )
|
||||
frame = 9
|
||||
playing = true
|
||||
offset = Vector2( 679.819, 333.222 )
|
||||
|
||||
[node name="Fire2" type="AnimatedSprite" parent="."]
|
||||
position = Vector2( -543.25, -212.563 )
|
||||
frames = SubResource( 1 )
|
||||
frame = 3
|
||||
frame = 12
|
||||
playing = true
|
||||
offset = Vector2( 679.819, 333.222 )
|
||||
|
||||
[node name="Fire1" type="AnimatedSprite" parent="."]
|
||||
position = Vector2( -479.806, -214.167 )
|
||||
frames = SubResource( 1 )
|
||||
frame = 10
|
||||
frame = 5
|
||||
playing = true
|
||||
offset = Vector2( 679.819, 333.222 )
|
||||
|
||||
[node name="Fire4" type="AnimatedSprite" parent="."]
|
||||
position = Vector2( -319, -843 )
|
||||
frames = SubResource( 1 )
|
||||
frame = 10
|
||||
frame = 5
|
||||
playing = true
|
||||
offset = Vector2( 679.819, 333.222 )
|
||||
|
||||
[node name="Fire5" type="AnimatedSprite" parent="."]
|
||||
position = Vector2( -623, -844 )
|
||||
frames = SubResource( 1 )
|
||||
frame = 9
|
||||
frame = 4
|
||||
playing = true
|
||||
offset = Vector2( 679.819, 333.222 )
|
||||
|
||||
@@ -236,6 +238,11 @@ shape = SubResource( 5 )
|
||||
[node name="Timer" type="Timer" parent="."]
|
||||
wait_time = 2.5
|
||||
|
||||
[node name="BGM" type="AudioStreamPlayer" parent="."]
|
||||
stream = ExtResource( 25 )
|
||||
volume_db = -10.0
|
||||
autoplay = true
|
||||
|
||||
[connection signal="demon_boss_death" from="YSort/Enemies/Demon Boss" to="." method="_on_Demon_Boss_demon_boss_death"]
|
||||
[connection signal="gem_collected" from="YSort/Items/TreasureChest" to="." method="_on_TreasureChest_gem_collected"]
|
||||
[connection signal="gem_collected" from="YSort/Items/TreasureChest2" to="." method="_on_TreasureChest_gem_collected"]
|
||||
|
@@ -2,27 +2,27 @@ extends Node2D
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
$YSort/Player.load_hud($HUD)
|
||||
return
|
||||
$YSort/Player.load_hud($HUD)
|
||||
return
|
||||
|
||||
|
||||
func _on_activate_boss_teleporter_body_entered(body: Node) -> void:
|
||||
if body.is_in_group('player'):
|
||||
$'Interactables/Boss Teleporter'.set_deferred('visible', true)
|
||||
$'Interactables/Activate Boss Teleporter'.call_deferred('queue_free')
|
||||
return
|
||||
if body.is_in_group('player'):
|
||||
$'Interactables/Boss Teleporter'.set_deferred('visible', true)
|
||||
$'Interactables/Activate Boss Teleporter'.call_deferred('queue_free')
|
||||
return
|
||||
|
||||
|
||||
func _on_eyeball_boss_death() -> void:
|
||||
$YSort/Enemies.call_deferred('queue_free')
|
||||
$Lights.call_deferred('queue_free')
|
||||
$Darkness.set_visible(false)
|
||||
$Ending.start()
|
||||
return
|
||||
$YSort/Enemies.call_deferred('queue_free')
|
||||
$Lights.call_deferred('queue_free')
|
||||
$Darkness.set_visible(false)
|
||||
$Ending.start()
|
||||
return
|
||||
|
||||
|
||||
func _on_ending_timeout():
|
||||
if get_tree().change_scene('res://GUI/Level Complete.tscn') != OK:
|
||||
print('ERROR: Level 5 failed to change scene to Level Complete.')
|
||||
queue_free()
|
||||
return
|
||||
if get_tree().change_scene('res://GUI/Level Complete.tscn') != OK:
|
||||
print('ERROR: Level 5 failed to change scene to Level Complete.')
|
||||
queue_free()
|
||||
return
|
||||
|
Reference in New Issue
Block a user