fix: set tutorial level tiles
This commit is contained in:
parent
5c8c78c556
commit
03de721811
@ -2,12 +2,12 @@
|
|||||||
|
|
||||||
importer="wav"
|
importer="wav"
|
||||||
type="AudioStreamSample"
|
type="AudioStreamSample"
|
||||||
path="res://.import/Hurry! (LOOP).wav-c3b7051d10110a80def09151131c49af.sample"
|
path="res://.import/Hurry! (LOOP).wav-b31bb89386b2d18e887c3205c867ae07.sample"
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://assets/sounds/Hurry! (LOOP).wav"
|
source_file="res://assets/music/Hurry! (LOOP).wav"
|
||||||
dest_files=[ "res://.import/Hurry! (LOOP).wav-c3b7051d10110a80def09151131c49af.sample" ]
|
dest_files=[ "res://.import/Hurry! (LOOP).wav-b31bb89386b2d18e887c3205c867ae07.sample" ]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
23
assets/music/Shopping For The Future (LOOP).wav.import
Normal file
23
assets/music/Shopping For The Future (LOOP).wav.import
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wav"
|
||||||
|
type="AudioStreamSample"
|
||||||
|
path="res://.import/Shopping For The Future (LOOP).wav-d534bfc01b0771285faaf6e61188d62c.sample"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/music/Shopping For The Future (LOOP).wav"
|
||||||
|
dest_files=[ "res://.import/Shopping For The Future (LOOP).wav-d534bfc01b0771285faaf6e61188d62c.sample" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
force/8_bit=false
|
||||||
|
force/mono=true
|
||||||
|
force/max_rate=false
|
||||||
|
force/max_rate_hz=44100
|
||||||
|
edit/trim=false
|
||||||
|
edit/normalize=true
|
||||||
|
edit/loop_mode=2
|
||||||
|
edit/loop_begin=0
|
||||||
|
edit/loop_end=1878660
|
||||||
|
compress/mode=0
|
||||||
BIN
assets/sounds/Energy Escape.wav
Normal file
BIN
assets/sounds/Energy Escape.wav
Normal file
Binary file not shown.
23
assets/sounds/Energy Escape.wav.import
Normal file
23
assets/sounds/Energy Escape.wav.import
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wav"
|
||||||
|
type="AudioStreamSample"
|
||||||
|
path="res://.import/Energy Escape.wav-7921407c44017de72616c199d40a54a8.sample"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/sounds/Energy Escape.wav"
|
||||||
|
dest_files=[ "res://.import/Energy Escape.wav-7921407c44017de72616c199d40a54a8.sample" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
force/8_bit=false
|
||||||
|
force/mono=true
|
||||||
|
force/max_rate=false
|
||||||
|
force/max_rate_hz=44100
|
||||||
|
edit/trim=false
|
||||||
|
edit/normalize=true
|
||||||
|
edit/loop_mode=0
|
||||||
|
edit/loop_begin=0
|
||||||
|
edit/loop_end=-1
|
||||||
|
compress/mode=0
|
||||||
@ -1,23 +0,0 @@
|
|||||||
[remap]
|
|
||||||
|
|
||||||
importer="wav"
|
|
||||||
type="AudioStreamSample"
|
|
||||||
path="res://.import/Shopping For The Future (LOOP).wav-7fd67300dedd210ed4d463045d3513c3.sample"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://assets/sounds/Shopping For The Future (LOOP).wav"
|
|
||||||
dest_files=[ "res://.import/Shopping For The Future (LOOP).wav-7fd67300dedd210ed4d463045d3513c3.sample" ]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
force/8_bit=false
|
|
||||||
force/mono=true
|
|
||||||
force/max_rate=false
|
|
||||||
force/max_rate_hz=44100
|
|
||||||
edit/trim=false
|
|
||||||
edit/normalize=true
|
|
||||||
edit/loop_mode=2
|
|
||||||
edit/loop_begin=0
|
|
||||||
edit/loop_end=1878660
|
|
||||||
compress/mode=0
|
|
||||||
@ -444,7 +444,7 @@ func die(animation_number: int = 0) -> void:
|
|||||||
$"%BlobbymationTree".active = false
|
$"%BlobbymationTree".active = false
|
||||||
$"%BlobbymationPlayer".play("dying3")
|
$"%BlobbymationPlayer".play("dying3")
|
||||||
if animation_number < 1:
|
if animation_number < 1:
|
||||||
$BlobbySprite/BlobbymationPlayer.play("expandingDisolve")
|
$"%BlobbymationPlayer".play("expandingDisolve")
|
||||||
|
|
||||||
func die_for_real(animation_number: int = 0) -> void:
|
func die_for_real(animation_number: int = 0) -> void:
|
||||||
shielded = false
|
shielded = false
|
||||||
@ -490,12 +490,6 @@ func _on_InvincibilityTimer_timeout() -> void:
|
|||||||
if area.is_in_group("harmful"):
|
if area.is_in_group("harmful"):
|
||||||
die()
|
die()
|
||||||
|
|
||||||
func _on_PitfallTimer_timeout() -> void:
|
|
||||||
# TODO Debuff function to remove wanted buffs
|
|
||||||
shielded = false
|
|
||||||
levelState.player_dying()
|
|
||||||
respawn()
|
|
||||||
|
|
||||||
func handle_grounded_movement(delta: float, direction: Vector2) -> Vector2:
|
func handle_grounded_movement(delta: float, direction: Vector2) -> Vector2:
|
||||||
return calculate_grounded_velocity(velocity, delta, direction)
|
return calculate_grounded_velocity(velocity, delta, direction)
|
||||||
|
|
||||||
|
|||||||
@ -1106,20 +1106,6 @@ tracks/1/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 0, 0 ) ]
|
"values": [ Vector2( 0, 0 ) ]
|
||||||
}
|
}
|
||||||
tracks/2/type = "method"
|
|
||||||
tracks/2/path = NodePath("../DyingSound")
|
|
||||||
tracks/2/interp = 1
|
|
||||||
tracks/2/loop_wrap = true
|
|
||||||
tracks/2/imported = false
|
|
||||||
tracks/2/enabled = true
|
|
||||||
tracks/2/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"values": [ {
|
|
||||||
"args": [ 0.0 ],
|
|
||||||
"method": "play"
|
|
||||||
} ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=192]
|
[sub_resource type="Animation" id=192]
|
||||||
resource_name = "expandingDisolve"
|
resource_name = "expandingDisolve"
|
||||||
@ -1161,7 +1147,7 @@ tracks/2/keys = {
|
|||||||
"values": [ 32 ]
|
"values": [ 32 ]
|
||||||
}
|
}
|
||||||
|
|
||||||
[sub_resource type="Animation" id=6]
|
[sub_resource type="Animation" id=204]
|
||||||
length = 0.14
|
length = 0.14
|
||||||
loop = true
|
loop = true
|
||||||
tracks/0/type = "value"
|
tracks/0/type = "value"
|
||||||
@ -4274,7 +4260,7 @@ anims/dying = SubResource( 184 )
|
|||||||
anims/dying2 = SubResource( 187 )
|
anims/dying2 = SubResource( 187 )
|
||||||
anims/dying3 = SubResource( 188 )
|
anims/dying3 = SubResource( 188 )
|
||||||
anims/expandingDisolve = SubResource( 192 )
|
anims/expandingDisolve = SubResource( 192 )
|
||||||
anims/falling = SubResource( 6 )
|
anims/falling = SubResource( 204 )
|
||||||
anims/fallingLeft = SubResource( 106 )
|
anims/fallingLeft = SubResource( 106 )
|
||||||
anims/idleTurn = SubResource( 70 )
|
anims/idleTurn = SubResource( 70 )
|
||||||
anims/idling = SubResource( 7 )
|
anims/idling = SubResource( 7 )
|
||||||
@ -4420,4 +4406,5 @@ one_shot = true
|
|||||||
[connection signal="got_grounded" from="BlobbyStateMachine" to="." method="_on_Blobby_got_grounded"]
|
[connection signal="got_grounded" from="BlobbyStateMachine" to="." method="_on_Blobby_got_grounded"]
|
||||||
[connection signal="timeout" from="BlobbyStateMachine/JumpBufferTimer" to="BlobbyStateMachine" method="_on_JumpBufferTimer_timeout"]
|
[connection signal="timeout" from="BlobbyStateMachine/JumpBufferTimer" to="BlobbyStateMachine" method="_on_JumpBufferTimer_timeout"]
|
||||||
[connection signal="timeout" from="InvincibilityTimer" to="." method="_on_InvincibilityTimer_timeout"]
|
[connection signal="timeout" from="InvincibilityTimer" to="." method="_on_InvincibilityTimer_timeout"]
|
||||||
|
[connection signal="timeout" from="PitfallTimer" to="." method="die_for_real"]
|
||||||
[connection signal="timeout" from="PitfallTimer" to="." method="_on_PitfallTimer_timeout"]
|
[connection signal="timeout" from="PitfallTimer" to="." method="_on_PitfallTimer_timeout"]
|
||||||
|
|||||||
@ -5,6 +5,7 @@ export var offset_reset_seconds := 1
|
|||||||
export var offset_adapt_seconds := 1
|
export var offset_adapt_seconds := 1
|
||||||
export var offset_input_seconds := 0.618 * 2
|
export var offset_input_seconds := 0.618 * 2
|
||||||
export var alarm_light_shader: Material
|
export var alarm_light_shader: Material
|
||||||
|
export var fixed_position : bool = false
|
||||||
|
|
||||||
onready var levelState := $"%LevelState"
|
onready var levelState := $"%LevelState"
|
||||||
onready var signalManager := $"%SignalManager"
|
onready var signalManager := $"%SignalManager"
|
||||||
@ -49,7 +50,8 @@ var screen_right = Vector2()
|
|||||||
func _ready():
|
func _ready():
|
||||||
_set_boundaries()
|
_set_boundaries()
|
||||||
get_tree().get_root().connect("size_changed", self, "_set_boundaries")
|
get_tree().get_root().connect("size_changed", self, "_set_boundaries")
|
||||||
self.position = blobby.global_position
|
if !fixed_position:
|
||||||
|
self.position = blobby.global_position
|
||||||
image.create(128, 2, false, Image.FORMAT_RGBAH)
|
image.create(128, 2, false, Image.FORMAT_RGBAH)
|
||||||
# TODO Test Performance
|
# TODO Test Performance
|
||||||
material.set_shader_param("light_data", null)
|
material.set_shader_param("light_data", null)
|
||||||
@ -66,6 +68,8 @@ func _on_SignalManager_terminal_activated(animation_number: int = 0):
|
|||||||
# draw_line(Vector2((limit_left - position.x), screen_center.y), screen_left, Color(255, 0, 0), 1)
|
# draw_line(Vector2((limit_left - position.x), screen_center.y), screen_left, Color(255, 0, 0), 1)
|
||||||
|
|
||||||
func _physics_process(delta: float) -> void:
|
func _physics_process(delta: float) -> void:
|
||||||
|
if fixed_position:
|
||||||
|
return
|
||||||
# update()
|
# update()
|
||||||
screen_center = (get_camera_screen_center() - position)
|
screen_center = (get_camera_screen_center() - position)
|
||||||
screen_bottom = screen_center + Vector2(0, screen_rect.y/2)
|
screen_bottom = screen_center + Vector2(0, screen_rect.y/2)
|
||||||
|
|||||||
@ -1031,9 +1031,9 @@ texture = ExtResource( 8 )
|
|||||||
|
|
||||||
[node name="AnimatedSprite" type="AnimatedSprite" parent="ParallaxBackground/ParallaxLayer5"]
|
[node name="AnimatedSprite" type="AnimatedSprite" parent="ParallaxBackground/ParallaxLayer5"]
|
||||||
frames = SubResource( 7 )
|
frames = SubResource( 7 )
|
||||||
|
frame = 9
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="AnimatedSprite2" type="AnimatedSprite" parent="ParallaxBackground/ParallaxLayer5"]
|
[node name="AnimatedSprite2" type="AnimatedSprite" parent="ParallaxBackground/ParallaxLayer5"]
|
||||||
frames = SubResource( 8 )
|
frames = SubResource( 8 )
|
||||||
frame = 5
|
|
||||||
playing = true
|
playing = true
|
||||||
|
|||||||
@ -11,19 +11,20 @@ func _ready():
|
|||||||
load_sounds()
|
load_sounds()
|
||||||
|
|
||||||
func load_sounds() -> void:
|
func load_sounds() -> void:
|
||||||
var path = "res://assets/sounds"
|
var paths = ["res://assets/sounds","res://assets/music"]
|
||||||
var dir = Directory.new()
|
for path in paths:
|
||||||
dir.open(path)
|
var dir = Directory.new()
|
||||||
dir.list_dir_begin()
|
dir.open(path)
|
||||||
while true:
|
dir.list_dir_begin()
|
||||||
var file_name = dir.get_next()
|
while true:
|
||||||
if file_name == "":
|
var file_name = dir.get_next()
|
||||||
break
|
if file_name == "":
|
||||||
var sound_file
|
break
|
||||||
if file_name.ends_with(".import"):
|
var sound_file
|
||||||
sound_file = load(path + "/" + file_name.split(".import")[0])
|
if file_name.ends_with(".import"):
|
||||||
sound_library[sound_file.resource_path] = sound_file
|
sound_file = load(path + "/" + file_name.split(".import")[0])
|
||||||
dir.list_dir_end()
|
sound_library[sound_file.resource_path] = sound_file
|
||||||
|
dir.list_dir_end()
|
||||||
|
|
||||||
func set_progress(value) -> void:
|
func set_progress(value) -> void:
|
||||||
gsr.progress_dict = value
|
gsr.progress_dict = value
|
||||||
|
|||||||
@ -466,7 +466,7 @@ rotation = -0.235619
|
|||||||
scale = Vector2( 0.036, 0.036 )
|
scale = Vector2( 0.036, 0.036 )
|
||||||
frames = SubResource( 4 )
|
frames = SubResource( 4 )
|
||||||
animation = "rotate"
|
animation = "rotate"
|
||||||
frame = 148
|
frame = 155
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="Sprite" type="Sprite" parent="."]
|
[node name="Sprite" type="Sprite" parent="."]
|
||||||
|
|||||||
118
src/Cinematics/FreedFrogCorridor.tscn
Normal file
118
src/Cinematics/FreedFrogCorridor.tscn
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
[gd_scene load_steps=14 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://src/Actors/Friendlies/WhatAreFrog.tscn" type="PackedScene" id=1]
|
||||||
|
[ext_resource path="res://assets/ui/sci-fi-godot-theme/sci-fi-pixel.tres" type="DynamicFont" id=2]
|
||||||
|
[ext_resource path="res://src/Levels/Templates/LevelTemplate.gd" type="Script" id=5]
|
||||||
|
[ext_resource path="res://src/Utilities/SignalManager.tscn" type="PackedScene" id=8]
|
||||||
|
[ext_resource path="res://src/Actors/BlobbyCam.tscn" type="PackedScene" id=9]
|
||||||
|
[ext_resource path="res://src/UserInterface/UserInterface.tscn" type="PackedScene" id=11]
|
||||||
|
[ext_resource path="res://src/Utilities/LevelState.tscn" type="PackedScene" id=12]
|
||||||
|
[ext_resource path="res://src/Utilities/SceneAudio.tscn" type="PackedScene" id=13]
|
||||||
|
[ext_resource path="res://src/Environment/DropThroughPlatforms.tres" type="TileSet" id=14]
|
||||||
|
[ext_resource path="res://src/Environment/GreenHouseTiles.tres" type="TileSet" id=15]
|
||||||
|
[ext_resource path="res://assets/sounds/AMBIENCE_SciFi_Large_Space_Hangar_Deep_Smooth_loop_stereo.wav" type="AudioStream" id=16]
|
||||||
|
[ext_resource path="res://assets/environment/decor/platform-plants.png" type="Texture" id=17]
|
||||||
|
|
||||||
|
[sub_resource type="TileSet" id=5]
|
||||||
|
0/name = "platform-plants.png 0"
|
||||||
|
0/texture = ExtResource( 17 )
|
||||||
|
0/tex_offset = Vector2( 0, 0 )
|
||||||
|
0/modulate = Color( 1, 1, 1, 1 )
|
||||||
|
0/region = Rect2( 16, 0, 256, 16 )
|
||||||
|
0/tile_mode = 2
|
||||||
|
0/autotile/icon_coordinate = Vector2( 5, 0 )
|
||||||
|
0/autotile/tile_size = Vector2( 16, 16 )
|
||||||
|
0/autotile/spacing = 0
|
||||||
|
0/autotile/occluder_map = [ ]
|
||||||
|
0/autotile/navpoly_map = [ ]
|
||||||
|
0/autotile/priority_map = [ ]
|
||||||
|
0/autotile/z_index_map = [ ]
|
||||||
|
0/occluder_offset = Vector2( 0, 0 )
|
||||||
|
0/navigation_offset = Vector2( 0, 0 )
|
||||||
|
0/shape_offset = Vector2( 0, 0 )
|
||||||
|
0/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 )
|
||||||
|
0/shape_one_way = false
|
||||||
|
0/shape_one_way_margin = 0.0
|
||||||
|
0/shapes = [ ]
|
||||||
|
0/z_index = 0
|
||||||
|
|
||||||
|
[node name="LevelTemplate" type="Node2D"]
|
||||||
|
script = ExtResource( 5 )
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_horizontal_guides_": [ 464.0 ],
|
||||||
|
"_edit_vertical_guides_": [ 2880.0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="SignalManager" parent="." instance=ExtResource( 8 )]
|
||||||
|
|
||||||
|
[node name="SceneAudio" parent="." instance=ExtResource( 13 )]
|
||||||
|
|
||||||
|
[node name="LevelState" parent="." instance=ExtResource( 12 )]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
|
||||||
|
[node name="UserInterface" parent="." instance=ExtResource( 11 )]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
|
||||||
|
[node name="Timer" parent="UserInterface/HUD/HUDOverlay/GetBackTimer" index="0"]
|
||||||
|
wait_time = 20.0
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="."]
|
||||||
|
margin_left = -61.0
|
||||||
|
margin_top = 20.0
|
||||||
|
margin_right = 62.0
|
||||||
|
margin_bottom = 53.0
|
||||||
|
custom_fonts/font = ExtResource( 2 )
|
||||||
|
text = "<= Escape Pods
|
||||||
|
0/10 Seats occupied
|
||||||
|
"
|
||||||
|
align = 1
|
||||||
|
valign = 1
|
||||||
|
|
||||||
|
[node name="WhatAreFrog" parent="." instance=ExtResource( 1 )]
|
||||||
|
position = Vector2( 121, 103 )
|
||||||
|
|
||||||
|
[node name="BlobbyCam" parent="." instance=ExtResource( 9 )]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
drag_margin_bottom = 0.3
|
||||||
|
fixed_position = true
|
||||||
|
|
||||||
|
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
||||||
|
frame = 1
|
||||||
|
|
||||||
|
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
||||||
|
frame = 0
|
||||||
|
|
||||||
|
[node name="TileMap" type="TileMap" parent="."]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
tile_set = ExtResource( 15 )
|
||||||
|
cell_size = Vector2( 16, 16 )
|
||||||
|
cell_quadrant_size = 3
|
||||||
|
cell_custom_transform = Transform2D( 24, 0, 0, 24, 0, 0 )
|
||||||
|
collision_layer = 8
|
||||||
|
collision_mask = 8
|
||||||
|
bake_navigation = true
|
||||||
|
format = 1
|
||||||
|
tile_data = PoolIntArray( 65522, 5, 65540, 65523, 5, 10, 65524, 5, 10, 65525, 5, 10, 65526, 5, 10, 65527, 5, 10, 65528, 5, 10, 65529, 5, 10, 65530, 5, 10, 65531, 5, 10, 65532, 5, 10, 65533, 5, 10, 65534, 5, 10, 65535, 5, 10, 0, 5, 10, 1, 5, 10, 2, 5, 10, 3, 5, 10, 4, 5, 10, 5, 5, 10, 6, 5, 10, 7, 5, 10, 8, 5, 10, 9, 5, 10, 10, 5, 10, 11, 5, 10, 12, 5, 10, 13, 5, 10, 14, 5, 10, 15, 5, 10, 16, 5, 10, 17, 5, 10, 18, 5, 10, 19, 5, 10, 131058, 5, 7, 196594, 5, 7, 262130, 5, 7, 327666, 5, 7, 393202, 5, 7, 458738, 5, 7, 524274, 5, 65538, 524275, 5, 2, 524276, 5, 2, 524277, 5, 2, 524278, 5, 2, 524279, 5, 2, 524280, 5, 2, 524281, 5, 2, 524282, 5, 2, 524283, 5, 2, 524284, 5, 2, 524285, 5, 2, 524286, 5, 2, 524287, 5, 2, 458752, 5, 2, 458753, 5, 2, 458754, 5, 2, 458755, 5, 2, 458756, 5, 2, 458757, 5, 2, 458758, 5, 2, 458759, 5, 2, 458760, 5, 2, 458761, 5, 2, 458762, 5, 2, 458763, 5, 2, 458764, 5, 2, 458765, 5, 2, 458766, 5, 2, 458767, 5, 2, 458768, 5, 2, 458769, 5, 2, 458770, 5, 2, 458771, 5, 3 )
|
||||||
|
|
||||||
|
[node name="DropThroughPlatforms" type="TileMap" parent="."]
|
||||||
|
tile_set = ExtResource( 14 )
|
||||||
|
cell_size = Vector2( 16, 16 )
|
||||||
|
format = 1
|
||||||
|
|
||||||
|
[node name="PlatformPlants" type="TileMap" parent="."]
|
||||||
|
tile_set = SubResource( 5 )
|
||||||
|
cell_size = Vector2( 16, 16 )
|
||||||
|
format = 1
|
||||||
|
|
||||||
|
[node name="LevelAmbiance" type="AudioStreamPlayer" parent="."]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
stream = ExtResource( 16 )
|
||||||
|
volume_db = -14.994
|
||||||
|
autoplay = true
|
||||||
|
bus = "Music"
|
||||||
|
|
||||||
|
[editable path="SignalManager"]
|
||||||
|
[editable path="LevelState"]
|
||||||
|
[editable path="UserInterface"]
|
||||||
|
[editable path="UserInterface/HUD"]
|
||||||
|
[editable path="BlobbyCam"]
|
||||||
@ -4,7 +4,7 @@
|
|||||||
[ext_resource path="res://assets/contraption/button.png" type="Texture" id=2]
|
[ext_resource path="res://assets/contraption/button.png" type="Texture" id=2]
|
||||||
[ext_resource path="res://assets/contraption/buttonStateIndicator.png" type="Texture" id=3]
|
[ext_resource path="res://assets/contraption/buttonStateIndicator.png" type="Texture" id=3]
|
||||||
[ext_resource path="res://assets/ui/sci-fi-godot-theme/sci-fi-pixel.tres" type="DynamicFont" id=4]
|
[ext_resource path="res://assets/ui/sci-fi-godot-theme/sci-fi-pixel.tres" type="DynamicFont" id=4]
|
||||||
[ext_resource path="res://assets/sounds/Hurry! (LOOP).wav" type="AudioStream" id=5]
|
[ext_resource path="res://assets/music/Hurry! (LOOP).wav" type="AudioStream" id=5]
|
||||||
|
|
||||||
[sub_resource type="Gradient" id=23]
|
[sub_resource type="Gradient" id=23]
|
||||||
interpolation_mode = 2
|
interpolation_mode = 2
|
||||||
|
|||||||
@ -12,7 +12,6 @@
|
|||||||
[node name="ShaderGrass" type="Node2D"]
|
[node name="ShaderGrass" type="Node2D"]
|
||||||
script = ExtResource( 2 )
|
script = ExtResource( 2 )
|
||||||
interact_power = 0.07
|
interact_power = 0.07
|
||||||
max_displacement = 7
|
|
||||||
|
|
||||||
[node name="StraightStraw" type="Polygon2D" parent="."]
|
[node name="StraightStraw" type="Polygon2D" parent="."]
|
||||||
material = ExtResource( 3 )
|
material = ExtResource( 3 )
|
||||||
|
|||||||
@ -208,10 +208,10 @@ unique_name_in_owner = true
|
|||||||
process_mode = 1
|
process_mode = 1
|
||||||
|
|
||||||
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
||||||
frame = 9
|
frame = 12
|
||||||
|
|
||||||
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
||||||
frame = 8
|
frame = 11
|
||||||
|
|
||||||
[node name="Blobby" parent="." instance=ExtResource( 7 )]
|
[node name="Blobby" parent="." instance=ExtResource( 7 )]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
|
|||||||
@ -1035,10 +1035,10 @@ drag_margin_top = 0.1
|
|||||||
drag_margin_bottom = 0.1
|
drag_margin_bottom = 0.1
|
||||||
|
|
||||||
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
||||||
frame = 2
|
frame = 8
|
||||||
|
|
||||||
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
||||||
frame = 10
|
frame = 2
|
||||||
|
|
||||||
[node name="Blobby" parent="." instance=ExtResource( 8 )]
|
[node name="Blobby" parent="." instance=ExtResource( 8 )]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
|
|||||||
@ -123,9 +123,6 @@ wait_time = 20.0
|
|||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
visible = false
|
visible = false
|
||||||
|
|
||||||
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
|
||||||
frame = 0
|
|
||||||
|
|
||||||
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
||||||
frame = 13
|
frame = 13
|
||||||
|
|
||||||
|
|||||||
@ -69,10 +69,10 @@ unique_name_in_owner = true
|
|||||||
drag_margin_bottom = 0.3
|
drag_margin_bottom = 0.3
|
||||||
|
|
||||||
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
||||||
frame = 2
|
frame = 11
|
||||||
|
|
||||||
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
||||||
frame = 1
|
frame = 10
|
||||||
|
|
||||||
[node name="Blobby" parent="." instance=ExtResource( 8 )]
|
[node name="Blobby" parent="." instance=ExtResource( 8 )]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -17,7 +17,7 @@
|
|||||||
[ext_resource path="res://src/Contraptions/GateBlock.tscn" type="PackedScene" id=15]
|
[ext_resource path="res://src/Contraptions/GateBlock.tscn" type="PackedScene" id=15]
|
||||||
[ext_resource path="res://src/Contraptions/Triggers/GateButton.tscn" type="PackedScene" id=16]
|
[ext_resource path="res://src/Contraptions/Triggers/GateButton.tscn" type="PackedScene" id=16]
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachinePlayback" id=4]
|
[sub_resource type="AnimationNodeStateMachinePlayback" id=15]
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachinePlayback" id=5]
|
[sub_resource type="AnimationNodeStateMachinePlayback" id=5]
|
||||||
|
|
||||||
@ -214,10 +214,10 @@ drag_margin_top = 0.13
|
|||||||
drag_margin_bottom = 0.3
|
drag_margin_bottom = 0.3
|
||||||
|
|
||||||
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
||||||
frame = 0
|
frame = 7
|
||||||
|
|
||||||
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
||||||
frame = 0
|
frame = 7
|
||||||
|
|
||||||
[node name="Blobby" parent="." instance=ExtResource( 8 )]
|
[node name="Blobby" parent="." instance=ExtResource( 8 )]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
@ -226,8 +226,8 @@ position = Vector2( 21, -9 )
|
|||||||
[node name="StateLabel" parent="Blobby" index="0"]
|
[node name="StateLabel" parent="Blobby" index="0"]
|
||||||
visible = true
|
visible = true
|
||||||
|
|
||||||
[node name="AnimationTree" parent="Blobby/BlobbySprite" index="0"]
|
[node name="BlobbymationTree" parent="Blobby/BlobbySprite" index="0"]
|
||||||
parameters/playback = SubResource( 4 )
|
parameters/playback = SubResource( 15 )
|
||||||
|
|
||||||
[node name="Coin" parent="." instance=ExtResource( 7 )]
|
[node name="Coin" parent="." instance=ExtResource( 7 )]
|
||||||
position = Vector2( 216, -216 )
|
position = Vector2( 216, -216 )
|
||||||
@ -277,6 +277,9 @@ position = Vector2( 778, -9 )
|
|||||||
[node name="BoundFrog2" parent="." instance=ExtResource( 5 )]
|
[node name="BoundFrog2" parent="." instance=ExtResource( 5 )]
|
||||||
position = Vector2( 1266, -537 )
|
position = Vector2( 1266, -537 )
|
||||||
|
|
||||||
|
[node name="WhatAreFrog" parent="BoundFrog2" index="0"]
|
||||||
|
frog_number = 1
|
||||||
|
|
||||||
[node name="Digit" parent="BoundFrog2/WhatAreFrog" index="2"]
|
[node name="Digit" parent="BoundFrog2/WhatAreFrog" index="2"]
|
||||||
frame = 1
|
frame = 1
|
||||||
|
|
||||||
@ -314,8 +317,9 @@ position = Vector2( 696, -144 )
|
|||||||
|
|
||||||
[node name="FrogFreeButton2" parent="." instance=ExtResource( 10 )]
|
[node name="FrogFreeButton2" parent="." instance=ExtResource( 10 )]
|
||||||
position = Vector2( 744, -624 )
|
position = Vector2( 744, -624 )
|
||||||
|
frog_number = 1
|
||||||
|
|
||||||
[node name="Digit" parent="FrogFreeButton2" index="1"]
|
[node name="Digit" parent="FrogFreeButton2" index="3"]
|
||||||
frame = 1
|
frame = 1
|
||||||
|
|
||||||
[node name="IndicatorPlayer" parent="FrogFreeButton2/Indicator" index="0"]
|
[node name="IndicatorPlayer" parent="FrogFreeButton2/Indicator" index="0"]
|
||||||
|
|||||||
@ -59,6 +59,7 @@ script = ExtResource( 1 )
|
|||||||
[node name="PlatformBody" type="KinematicBody2D" parent="."]
|
[node name="PlatformBody" type="KinematicBody2D" parent="."]
|
||||||
collision_layer = 16
|
collision_layer = 16
|
||||||
collision_mask = 0
|
collision_mask = 0
|
||||||
|
collision/safe_margin = 0.001
|
||||||
motion/sync_to_physics = true
|
motion/sync_to_physics = true
|
||||||
|
|
||||||
[node name="FlyingSound" type="AudioStreamPlayer2D" parent="PlatformBody"]
|
[node name="FlyingSound" type="AudioStreamPlayer2D" parent="PlatformBody"]
|
||||||
|
|||||||
@ -71,6 +71,7 @@ script = ExtResource( 1 )
|
|||||||
[node name="PlatformBody" type="KinematicBody2D" parent="."]
|
[node name="PlatformBody" type="KinematicBody2D" parent="."]
|
||||||
collision_layer = 16
|
collision_layer = 16
|
||||||
collision_mask = 0
|
collision_mask = 0
|
||||||
|
collision/safe_margin = 0.001
|
||||||
motion/sync_to_physics = true
|
motion/sync_to_physics = true
|
||||||
|
|
||||||
[node name="Sprite" type="Sprite" parent="PlatformBody"]
|
[node name="Sprite" type="Sprite" parent="PlatformBody"]
|
||||||
|
|||||||
@ -41,7 +41,7 @@ resource_name = "LowPassFilter"
|
|||||||
cutoff_hz = 3000.0
|
cutoff_hz = 3000.0
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
bus/0/volume_db = -1.9382
|
bus/0/volume_db = -6.0206
|
||||||
bus/1/name = "Music"
|
bus/1/name = "Music"
|
||||||
bus/1/solo = false
|
bus/1/solo = false
|
||||||
bus/1/mute = false
|
bus/1/mute = false
|
||||||
@ -68,7 +68,7 @@ bus/3/name = "UI"
|
|||||||
bus/3/solo = false
|
bus/3/solo = false
|
||||||
bus/3/mute = false
|
bus/3/mute = false
|
||||||
bus/3/bypass_fx = false
|
bus/3/bypass_fx = false
|
||||||
bus/3/volume_db = -3.09804
|
bus/3/volume_db = -4.43698
|
||||||
bus/3/send = "Master"
|
bus/3/send = "Master"
|
||||||
bus/3/effect/0/effect = SubResource( 6 )
|
bus/3/effect/0/effect = SubResource( 6 )
|
||||||
bus/3/effect/0/enabled = true
|
bus/3/effect/0/enabled = true
|
||||||
|
|||||||
@ -4,60 +4,60 @@ onready var anim_tree = $"../FlyerSprite/AnimationTree"
|
|||||||
onready var anim_state_playback = $"../FlyerSprite/AnimationTree".get("parameters/playback")
|
onready var anim_state_playback = $"../FlyerSprite/AnimationTree".get("parameters/playback")
|
||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
add_state("searching")
|
add_state("searching")
|
||||||
add_state("hunting")
|
add_state("hunting")
|
||||||
add_state("fleeing")
|
add_state("fleeing")
|
||||||
add_state("sleeping")
|
add_state("sleeping")
|
||||||
state = states.searching
|
state = states.searching
|
||||||
set_state(states.searching)
|
set_state(states.searching)
|
||||||
print(self.state)
|
print(self.state)
|
||||||
for state in states:
|
for state in states:
|
||||||
if state_matching_method_exists(state):
|
if state_matching_method_exists(state):
|
||||||
continue
|
continue
|
||||||
else:
|
else:
|
||||||
printerr("StateMachine -> State: " + state + " has no matching method in parent.")
|
printerr("StateMachine -> State: " + state + " has no matching method in parent.")
|
||||||
push_error("StateMachine -> State: " + state + " has no matching method in parent.")
|
push_error("StateMachine -> State: " + state + " has no matching method in parent.")
|
||||||
|
|
||||||
|
|
||||||
# Game logic consequences of state
|
# Game logic consequences of state
|
||||||
func _state_logic(delta):
|
func _state_logic(delta):
|
||||||
var state_action_ref = funcref(parent, self.state)
|
var state_action_ref = funcref(parent, self.state)
|
||||||
parent.path_direction = state_action_ref.call_func()
|
parent.path_direction = state_action_ref.call_func()
|
||||||
parent.execute_movement(delta)
|
parent.execute_movement(delta)
|
||||||
|
|
||||||
|
|
||||||
func _get_transition(_delta):
|
func _get_transition(_delta):
|
||||||
parent.get_node("StateLabel").text = self.state
|
parent.get_node("StateLabel").text = self.state
|
||||||
_animation_logic()
|
_animation_logic()
|
||||||
var new_state
|
var new_state
|
||||||
if parent.target == null:
|
if parent.target == null:
|
||||||
new_state = states.searching
|
new_state = states.searching
|
||||||
if parent.target != null:
|
if parent.target != null:
|
||||||
new_state = states.hunting
|
new_state = states.hunting
|
||||||
if parent.is_hurt:
|
if parent.is_hurt:
|
||||||
new_state = states.sleeping
|
new_state = states.sleeping
|
||||||
if new_state != self.state:
|
if new_state != self.state:
|
||||||
return new_state
|
return new_state
|
||||||
return null
|
return null
|
||||||
|
|
||||||
|
|
||||||
func _enter_state(_new_state, _previous_state):
|
func _enter_state(_new_state, _previous_state):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
func _exit_state(_previous_state, _new_state):
|
func _exit_state(_previous_state, _new_state):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
func _animation_logic():
|
func _animation_logic():
|
||||||
_set_blendspaces_direction()
|
_set_blendspaces_direction()
|
||||||
if self.state == "searching":
|
if self.state == "searching":
|
||||||
anim_state_playback.travel("searching")
|
anim_state_playback.travel("searching")
|
||||||
else:
|
else:
|
||||||
anim_state_playback.travel("hunting")
|
anim_state_playback.travel("hunting")
|
||||||
|
|
||||||
|
|
||||||
func _set_blendspaces_direction():
|
func _set_blendspaces_direction():
|
||||||
var value = parent.get_facing_direction()
|
var value = parent.get_facing_direction()
|
||||||
anim_tree.set("parameters/searching/blend_position", value)
|
anim_tree.set("parameters/searching/blend_position", value)
|
||||||
anim_tree.set("parameters/hunting/blend_position", value)
|
anim_tree.set("parameters/hunting/blend_position", value)
|
||||||
|
|||||||
15
src/UserInterface/Buttons/ChangeSceneButton.gd
Normal file
15
src/UserInterface/Buttons/ChangeSceneButton.gd
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
extends AudibleButton
|
||||||
|
|
||||||
|
export(String, FILE) var next_scene_path: String = ""
|
||||||
|
onready var selected_level_base_path: String = "res://src/Levels/"
|
||||||
|
|
||||||
|
func _on_button_up() -> void:
|
||||||
|
get_tree().change_scene(next_scene_path)
|
||||||
|
get_tree().get_current_scene().queue_free()
|
||||||
|
get_tree().paused = false
|
||||||
|
|
||||||
|
func _get_configuration_warning() -> String:
|
||||||
|
return "next_scene_path must be set for the button to work" if next_scene_path == "" else ""
|
||||||
|
|
||||||
|
func _level_selection_changed(button):
|
||||||
|
next_scene_path = selected_level_base_path + button.text + ".tscn"
|
||||||
@ -1,6 +1,6 @@
|
|||||||
[gd_scene load_steps=2 format=2]
|
[gd_scene load_steps=2 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://src/UserInterface/Buttons/PlayButton.gd" type="Script" id=1]
|
[ext_resource path="res://src/UserInterface/Buttons/ChangeSceneButton.gd" type="Script" id=1]
|
||||||
|
|
||||||
[node name="ChangeSceneButton" type="Button"]
|
[node name="ChangeSceneButton" type="Button"]
|
||||||
margin_right = 139.0
|
margin_right = 139.0
|
||||||
@ -8,6 +8,5 @@ margin_bottom = 78.0
|
|||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
text = "Begin"
|
text = "Begin"
|
||||||
script = ExtResource( 1 )
|
script = ExtResource( 1 )
|
||||||
next_scene_path = "res://src/Levels/New Tiles Level.tscn"
|
|
||||||
|
|
||||||
[connection signal="button_up" from="." to="." method="_on_button_up"]
|
[connection signal="button_up" from="." to="." method="_on_button_up"]
|
||||||
|
|||||||
@ -4,7 +4,7 @@ export(String, FILE) var next_scene_path: String = ""
|
|||||||
onready var selected_level_base_path: String = "res://src/Levels/"
|
onready var selected_level_base_path: String = "res://src/Levels/"
|
||||||
|
|
||||||
func _on_button_up() -> void:
|
func _on_button_up() -> void:
|
||||||
GlobalAudio.stop_scene_independent("res://assets/sounds/Shopping For The Future (LOOP).wav")
|
GlobalAudio.stop_scene_independent("res://assets/music/Shopping For The Future (LOOP).wav")
|
||||||
GlobalAudio.play_scene_independent("res://assets/sounds/MAGIC_SPELL_Morphing_Synth_Harp_Scales_Deep_stereo.wav", "Effects", -8)
|
GlobalAudio.play_scene_independent("res://assets/sounds/MAGIC_SPELL_Morphing_Synth_Harp_Scales_Deep_stereo.wav", "Effects", -8)
|
||||||
get_tree().change_scene(next_scene_path)
|
get_tree().change_scene(next_scene_path)
|
||||||
get_tree().get_current_scene().queue_free()
|
get_tree().get_current_scene().queue_free()
|
||||||
|
|||||||
@ -22,7 +22,7 @@
|
|||||||
[ext_resource path="res://assets/ui/Screenshot 2023-05-23 160521.png" type="Texture" id=21]
|
[ext_resource path="res://assets/ui/Screenshot 2023-05-23 160521.png" type="Texture" id=21]
|
||||||
[ext_resource path="res://assets/meta/montserrat_extrabold.otf" type="DynamicFontData" id=22]
|
[ext_resource path="res://assets/meta/montserrat_extrabold.otf" type="DynamicFontData" id=22]
|
||||||
[ext_resource path="res://src/UserInterface/Buttons/AudibleButton.gd" type="Script" id=23]
|
[ext_resource path="res://src/UserInterface/Buttons/AudibleButton.gd" type="Script" id=23]
|
||||||
[ext_resource path="res://assets/sounds/Shopping For The Future (LOOP).wav" type="AudioStream" id=24]
|
[ext_resource path="res://assets/music/Shopping For The Future (LOOP).wav" type="AudioStream" id=24]
|
||||||
[ext_resource path="res://src/UserInterface/Screens/MainMenu/AudioMenu.gd" type="Script" id=26]
|
[ext_resource path="res://src/UserInterface/Screens/MainMenu/AudioMenu.gd" type="Script" id=26]
|
||||||
[ext_resource path="res://src/UserInterface/Screens/MainMenu/AudioSlider.gd" type="Script" id=28]
|
[ext_resource path="res://src/UserInterface/Screens/MainMenu/AudioSlider.gd" type="Script" id=28]
|
||||||
[ext_resource path="res://src/UserInterface/Buttons/MenuNavigationButton.gd" type="Script" id=29]
|
[ext_resource path="res://src/UserInterface/Buttons/MenuNavigationButton.gd" type="Script" id=29]
|
||||||
|
|||||||
@ -11,7 +11,7 @@ func initialize_with_progress(levelFullName: String) -> void:
|
|||||||
|
|
||||||
|
|
||||||
func register_froggy(var count : int = 0, var freed: bool = false) -> void:
|
func register_froggy(var count : int = 0, var freed: bool = false) -> void:
|
||||||
var frogo: String = "FreedFroggy" + str(count + 1)
|
var frogo: String = "%FreedFroggy" + str(count + 1)
|
||||||
var test = self.get_children()
|
var test = self.get_children()
|
||||||
get_node(frogo).visible = true
|
get_node(frogo).visible = true
|
||||||
get_node(frogo + "/ImprisionedFroggy").visible = !freed
|
get_node(frogo + "/ImprisionedFroggy").visible = !freed
|
||||||
|
|||||||
@ -3,4 +3,4 @@ extends Control
|
|||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
$"%PlayButton".grab_focus()
|
$"%PlayButton".grab_focus()
|
||||||
GlobalAudio.play_scene_independent("res://assets/sounds/Shopping For The Future (LOOP).wav","Music", -14, true)
|
GlobalAudio.play_scene_independent("res://assets/music/Shopping For The Future (LOOP).wav","Music", -14, true)
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
[gd_scene load_steps=19 format=2]
|
[gd_scene load_steps=20 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://src/UserInterface/Buttons/QuitButton.tscn" type="PackedScene" id=1]
|
[ext_resource path="res://src/UserInterface/Buttons/QuitButton.tscn" type="PackedScene" id=1]
|
||||||
[ext_resource path="res://src/UserInterface/Titel.tscn" type="PackedScene" id=2]
|
[ext_resource path="res://src/UserInterface/Titel.tscn" type="PackedScene" id=2]
|
||||||
@ -7,6 +7,7 @@
|
|||||||
[ext_resource path="res://assets/meta/ui_theme.tres" type="Theme" id=5]
|
[ext_resource path="res://assets/meta/ui_theme.tres" type="Theme" id=5]
|
||||||
[ext_resource path="res://assets/environment/background/Spaceship-Wall.png" type="Texture" id=6]
|
[ext_resource path="res://assets/environment/background/Spaceship-Wall.png" type="Texture" id=6]
|
||||||
[ext_resource path="res://assets/environment/background/starry-space.png" type="Texture" id=7]
|
[ext_resource path="res://assets/environment/background/starry-space.png" type="Texture" id=7]
|
||||||
|
[ext_resource path="res://src/UserInterface/Buttons/PlayButton.gd" type="Script" id=8]
|
||||||
[ext_resource path="res://src/UserInterface/Screens/MainMenu/LevelSelectButtonGroup.tres" type="ButtonGroup" id=9]
|
[ext_resource path="res://src/UserInterface/Screens/MainMenu/LevelSelectButtonGroup.tres" type="ButtonGroup" id=9]
|
||||||
[ext_resource path="res://assets/meta/montserrat_extrabold.otf" type="DynamicFontData" id=10]
|
[ext_resource path="res://assets/meta/montserrat_extrabold.otf" type="DynamicFontData" id=10]
|
||||||
[ext_resource path="res://src/UserInterface/Screens/MainMenu/LevelList.gd" type="Script" id=11]
|
[ext_resource path="res://src/UserInterface/Screens/MainMenu/LevelList.gd" type="Script" id=11]
|
||||||
@ -150,14 +151,16 @@ margin_bottom = 135.0
|
|||||||
focus_mode = 2
|
focus_mode = 2
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
[node name="PlayButton" parent="MenuContainer/Buttons" instance=ExtResource( 3 )]
|
[node name="PlayButton" type="Button" parent="MenuContainer/Buttons"]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
margin_right = 154.0
|
margin_right = 154.0
|
||||||
margin_bottom = 30.0
|
margin_bottom = 30.0
|
||||||
focus_neighbour_top = NodePath("../QuitButton")
|
focus_neighbour_top = NodePath("../QuitButton")
|
||||||
focus_neighbour_bottom = NodePath("../Controlls")
|
focus_neighbour_bottom = NodePath("../Controlls")
|
||||||
|
size_flags_vertical = 3
|
||||||
theme = ExtResource( 13 )
|
theme = ExtResource( 13 )
|
||||||
next_scene_path = "res://src/Levels/1 Tutorial Level.tscn"
|
text = "Begin"
|
||||||
|
script = ExtResource( 8 )
|
||||||
|
|
||||||
[node name="Controlls" parent="MenuContainer/Buttons" instance=ExtResource( 3 )]
|
[node name="Controlls" parent="MenuContainer/Buttons" instance=ExtResource( 3 )]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
@ -240,3 +243,5 @@ focus_neighbour_left = NodePath("../../../../Buttons/PlayButton")
|
|||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
group = ExtResource( 9 )
|
group = ExtResource( 9 )
|
||||||
|
|
||||||
|
[connection signal="button_up" from="MenuContainer/Buttons/PlayButton" to="MenuContainer/Buttons/PlayButton" method="_on_button_up"]
|
||||||
|
|||||||
@ -222,7 +222,7 @@ shape = SubResource( 6 )
|
|||||||
|
|
||||||
[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."]
|
[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."]
|
||||||
stream = ExtResource( 7 )
|
stream = ExtResource( 7 )
|
||||||
volume_db = -10.0
|
volume_db = -14.776
|
||||||
bus = "UI"
|
bus = "UI"
|
||||||
|
|
||||||
[connection signal="area_entered" from="Area" to="." method="_on_Area_area_entered"]
|
[connection signal="area_entered" from="Area" to="." method="_on_Area_area_entered"]
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user