improved menu

This commit is contained in:
zoe 2021-09-14 12:22:39 +02:00
parent 2637008a33
commit 81bc9fa37f
59 changed files with 783 additions and 78 deletions

View File

@ -0,0 +1,3 @@
source_md5="7793082a1171b42eb084bb351201431a"
dest_md5="e57cc2e1ff16f3cdd4855dfbda680b57"

View File

@ -0,0 +1,3 @@
source_md5="17ff0f867c6bbdee0cd2f90ac16452bd"
dest_md5="6336f41e753190f01786b08a91f8b4b1"

View File

@ -0,0 +1,3 @@
source_md5="119e2471ace445f80670e69c90b5a549"
dest_md5="100fb44997b963d1d19ea267f434bd18"

View File

@ -0,0 +1,3 @@
source_md5="afc667df5388a95610c397efe82d6cda"
dest_md5="e43cf79e0571a42f98374a9006171d8e"

View File

@ -0,0 +1,3 @@
source_md5="d91609d333e75a9ccea11f169e326b52"
dest_md5="2329ad8de5027649b414af209511b859"

View File

@ -0,0 +1,3 @@
source_md5="1ffb6002b52d93ea6efff9471d9b6269"
dest_md5="002eb3157be721be0c7954d989cdbe22"

View File

@ -0,0 +1,3 @@
source_md5="156e16e818864d652d078473423e6a00"
dest_md5="7368e70bca072c44f8dfffb09ee0bac7"

View File

@ -0,0 +1,3 @@
source_md5="a0712c85369830f3055feafba77fe66d"
dest_md5="db663c08b1304be17004b79c0b3d70be"

View File

@ -1,3 +1,3 @@
source_md5="99c402fadbfa24384dd0604eccb590cf"
dest_md5="b28a0ba0d84f5ff2e717dfd2d8afcf4d"
dest_md5="5826445eb9a423ad04292595843d1946"

BIN
Aseprite/Play.ase Normal file

Binary file not shown.

BIN
Aseprite/flipper.ase Normal file

Binary file not shown.

BIN
Aseprite/fullscreen.ase Normal file

Binary file not shown.

View File

@ -5,7 +5,6 @@
[sub_resource type="Animation" id=1]
resource_name = "FadeIn"
length = 0.5
step = 0.05
tracks/0/type = "bezier"
tracks/0/path = NodePath("TransitionSprite:position:x")
@ -15,7 +14,7 @@ tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"points": PoolRealArray( 0, -0.25, 0, 0.25, 0, 384, -0.25, 0, 0.25, 0 ),
"times": PoolRealArray( 0, 0.5 )
"times": PoolRealArray( 0, 1 )
}
tracks/1/type = "method"
tracks/1/path = NodePath(".")
@ -24,7 +23,7 @@ tracks/1/loop_wrap = true
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/keys = {
"times": PoolRealArray( 0.5 ),
"times": PoolRealArray( 1 ),
"transitions": PoolRealArray( 1 ),
"values": [ {
"args": [ ],
@ -35,6 +34,7 @@ tracks/1/keys = {
[sub_resource type="Animation" id=2]
resource_name = "FadeOut"
length = 0.75
loop = true
step = 0.05
tracks/0/type = "value"
tracks/0/path = NodePath("TransitionSprite:position")
@ -43,7 +43,7 @@ tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.5 ),
"times": PoolRealArray( 0, 0.75 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector2( 384, 0 ), Vector2( 0, 0 ) ]
@ -76,5 +76,6 @@ region_enabled = true
region_rect = Rect2( 0, 0, 768, 216 )
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
playback_process_mode = 0
anims/FadeIn = SubResource( 1 )
anims/FadeOut = SubResource( 2 )

View File

@ -4,8 +4,8 @@ extends CanvasLayer
var scene_to_load = "res://Menu/MenuPage.tscn"
func _ready():
$AnimationPlayer.play("FadeOut")
$TransitionSprite.visible = true
$AnimationPlayer.play("FadeOut")
func finish_animation():
var _new_scene = get_tree().change_scene(scene_to_load)

View File

@ -5,3 +5,6 @@
[node name="FadeOut" instance=ExtResource( 1 )]
script = ExtResource( 2 )
[node name="TransitionSprite" parent="." index="0"]
position = Vector2( 0, 0 )

View File

@ -3,8 +3,8 @@ extends CanvasLayer
onready var animation = $AnimationPlayer
func _ready():
animation.play("FadeIn")
$TransitionSprite.visible = true
animation.play("FadeIn")
func finish_animation():
queue_free()

6
Flipper/Flipper.gd Normal file
View File

@ -0,0 +1,6 @@
extends KinematicBody2D
func _physics_process(delta):
if Input.is_action_pressed("shoot"):
rotation = lerp(rotation, -90, 0.9)
else: rotation = 0

13
Flipper/Flipper.tscn Normal file
View File

@ -0,0 +1,13 @@
[gd_scene load_steps=3 format=2]
[ext_resource path="res://Flipper/flipper.png" type="Texture" id=1]
[ext_resource path="res://Flipper/Flipper.gd" type="Script" id=2]
[node name="Flipper" type="KinematicBody2D"]
position = Vector2( 309, 143 )
motion/sync_to_physics = true
script = ExtResource( 2 )
[node name="Sprite" type="Sprite" parent="."]
position = Vector2( -11, 0 )
texture = ExtResource( 1 )

BIN
Flipper/flipper.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/flipper.png-26f18a3d8b3996c094f5456e6729a339.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Flipper/flipper.png"
dest_files=[ "res://.import/flipper.png-26f18a3d8b3996c094f5456e6729a339.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
stream=false
size_limit=0
detect_3d=false
svg/scale=1.0

View File

@ -0,0 +1,9 @@
[gd_resource type="DynamicFont" load_steps=2 format=2]
[ext_resource path="res://Font/Yoster-island/Yoster.ttf" type="DynamicFontData" id=1]
[resource]
extra_spacing_top = 4
extra_spacing_bottom = 4
extra_spacing_space = 4
font_data = ExtResource( 1 )

View File

@ -0,0 +1,6 @@
extends TextureButton
func _on_FullscreenButton_toggled(_button_pressed):
OS.window_fullscreen = !OS.window_fullscreen

View File

@ -0,0 +1,20 @@
[gd_scene load_steps=5 format=2]
[ext_resource path="res://Menu/Buttons/Fullscreen/fullscreen1.png" type="Texture" id=1]
[ext_resource path="res://Menu/Buttons/Fullscreen/fullscreen3.png" type="Texture" id=2]
[ext_resource path="res://Menu/Buttons/Fullscreen/fullscreen2.png" type="Texture" id=3]
[ext_resource path="res://Menu/Buttons/Fullscreen/FullscreenButton.gd" type="Script" id=4]
[node name="FullscreenButton" type="TextureButton"]
anchor_right = 1.0
anchor_bottom = 1.0
toggle_mode = true
texture_normal = ExtResource( 1 )
texture_pressed = ExtResource( 2 )
texture_hover = ExtResource( 3 )
script = ExtResource( 4 )
__meta__ = {
"_edit_use_anchors_": false
}
[connection signal="toggled" from="." to="." method="_on_FullscreenButton_toggled"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/fullscreen1.png-00aa35465225806464ffbd1a65663e10.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Menu/Buttons/Fullscreen/fullscreen1.png"
dest_files=[ "res://.import/fullscreen1.png-00aa35465225806464ffbd1a65663e10.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
stream=false
size_limit=0
detect_3d=false
svg/scale=1.0

Binary file not shown.

After

Width:  |  Height:  |  Size: 309 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/fullscreen2.png-ff32dc36788017c4e4c9e3f3262a15c5.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Menu/Buttons/Fullscreen/fullscreen2.png"
dest_files=[ "res://.import/fullscreen2.png-ff32dc36788017c4e4c9e3f3262a15c5.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
stream=false
size_limit=0
detect_3d=false
svg/scale=1.0

Binary file not shown.

After

Width:  |  Height:  |  Size: 317 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/fullscreen3.png-ba83eaafec43dc300c050aa1346b0f84.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Menu/Buttons/Fullscreen/fullscreen3.png"
dest_files=[ "res://.import/fullscreen3.png-ba83eaafec43dc300c050aa1346b0f84.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
stream=false
size_limit=0
detect_3d=false
svg/scale=1.0

Binary file not shown.

After

Width:  |  Height:  |  Size: 189 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/fullscreen4.png-ddeabed65ea59091e12f23177622bbd8.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Menu/Buttons/Fullscreen/fullscreen4.png"
dest_files=[ "res://.import/fullscreen4.png-ddeabed65ea59091e12f23177622bbd8.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
stream=false
size_limit=0
detect_3d=false
svg/scale=1.0

View File

@ -2,13 +2,5 @@ extends Button
export var scene = "res://Menu/MainMenu.tscn"
func _on_LevelSelectButton_pressed():
disabled = true
GameStats.reset_board()
var main = get_tree().current_scene
var Fadeout = load("res://Effects/FadeOut.tscn")
var fadeout = Fadeout.instance()
fadeout.scene_to_load = scene
main.add_child(fadeout)
func _on_SceneSelectButton_pressed():
GameStats.set_current_scene(scene)

View File

@ -0,0 +1,5 @@
extends TextureButton
func _on_PlayButton_pressed():
GameStats.restart_level()
disabled = true

View File

@ -0,0 +1,19 @@
[gd_scene load_steps=5 format=2]
[ext_resource path="res://Menu/Icons/Play/Play3.png" type="Texture" id=1]
[ext_resource path="res://Menu/Icons/Play/Play2.png" type="Texture" id=2]
[ext_resource path="res://Menu/Icons/Play/Play1.png" type="Texture" id=3]
[ext_resource path="res://Menu/Buttons/PlayButton.gd" type="Script" id=4]
[node name="PlayButton" type="TextureButton"]
margin_right = 40.0
margin_bottom = 40.0
texture_normal = ExtResource( 3 )
texture_pressed = ExtResource( 1 )
texture_hover = ExtResource( 2 )
script = ExtResource( 4 )
__meta__ = {
"_edit_use_anchors_": false
}
[connection signal="pressed" from="." to="." method="_on_PlayButton_pressed"]

View File

@ -0,0 +1,2 @@
extends Button

View File

@ -3,15 +3,16 @@
[ext_resource path="res://Menu/Theme.tres" type="Theme" id=1]
[ext_resource path="res://Menu/Buttons/LevelSelectButton.gd" type="Script" id=2]
[node name="LevelSelectButton" type="Button"]
margin_right = 34.0
margin_bottom = 23.0
[node name="SceneSelectButton" type="Button"]
anchor_right = 1.0
anchor_bottom = 1.0
mouse_filter = 1
theme = ExtResource( 1 )
text = "01"
flat = true
text = "> empty stage"
align = 0
script = ExtResource( 2 )
__meta__ = {
"_edit_use_anchors_": false
}
[connection signal="pressed" from="." to="." method="_on_LevelSelectButton_pressed"]
[connection signal="pressed" from="." to="." method="_on_SceneSelectButton_pressed"]

BIN
Menu/Icons/Play/Play1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/Play1.png-e594f305bf0862fb4a35ed5b3e852be5.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Menu/Icons/Play/Play1.png"
dest_files=[ "res://.import/Play1.png-e594f305bf0862fb4a35ed5b3e852be5.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
stream=false
size_limit=0
detect_3d=false
svg/scale=1.0

BIN
Menu/Icons/Play/Play2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 295 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/Play2.png-893a2a36952a20986259d4ebbf7b53f9.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Menu/Icons/Play/Play2.png"
dest_files=[ "res://.import/Play2.png-893a2a36952a20986259d4ebbf7b53f9.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
stream=false
size_limit=0
detect_3d=false
svg/scale=1.0

BIN
Menu/Icons/Play/Play3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 305 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/Play3.png-55816f88b77a867edda15452948168e1.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Menu/Icons/Play/Play3.png"
dest_files=[ "res://.import/Play3.png-55816f88b77a867edda15452948168e1.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
stream=false
size_limit=0
detect_3d=false
svg/scale=1.0

12
Menu/LevelInfo.gd Normal file
View File

@ -0,0 +1,12 @@
extends VBoxContainer
func _ready():
var _game_stats = GameStats.connect("current_stage_changed", self, "update_info")
func update_info(stage):
$HBoxContainer/PlayButton.disabled = false
var Stage = load(stage)
stage = Stage.instance()
$ScoreLabel.text = stage.stage_name
$HBoxContainer/PlayButton.visible = true

50
Menu/LevelInfo.tscn Normal file
View File

@ -0,0 +1,50 @@
[gd_scene load_steps=3 format=2]
[ext_resource path="res://Menu/LevelInfo.gd" type="Script" id=1]
[ext_resource path="res://Menu/Buttons/PlayButton.tscn" type="PackedScene" id=6]
[node name="LevelInfo" type="VBoxContainer"]
margin_left = 3.0
margin_right = 150.0
margin_bottom = 165.0
alignment = 2
script = ExtResource( 1 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="ScoreLabel" type="Label" parent="."]
margin_top = 115.0
margin_right = 147.0
margin_bottom = 129.0
align = 2
valign = 3
[node name="StageName" type="Label" parent="."]
margin_top = 133.0
margin_right = 147.0
margin_bottom = 147.0
text = "..."
align = 2
valign = 3
[node name="HBoxContainer" type="HBoxContainer" parent="."]
margin_top = 151.0
margin_right = 147.0
margin_bottom = 165.0
alignment = 2
[node name="GoodLuck!!!" type="Label" parent="HBoxContainer"]
margin_left = 135.0
margin_right = 147.0
margin_bottom = 14.0
text = "..."
align = 2
valign = 3
[node name="PlayButton" parent="HBoxContainer" instance=ExtResource( 6 )]
visible = false
margin_left = 94.0
margin_right = 126.0
margin_bottom = 32.0
disabled = true

View File

@ -1,14 +1,24 @@
[gd_scene load_steps=4 format=2]
[gd_scene load_steps=9 format=2]
[ext_resource path="res://Menu/Theme.tres" type="Theme" id=1]
[ext_resource path="res://Menu/Buttons/SceneSelectButton.tscn" type="PackedScene" id=2]
[ext_resource path="res://Effects/FadeIn.tscn" type="PackedScene" id=3]
[ext_resource path="res://Cannon/Cannon.tscn" type="PackedScene" id=4]
[ext_resource path="res://Menu/Buttons/Fullscreen/FullscreenButton.tscn" type="PackedScene" id=5]
[ext_resource path="res://icon.png" type="Texture" id=6]
[ext_resource path="res://Menu/LevelInfo.tscn" type="PackedScene" id=7]
[ext_resource path="res://Pegs/Pink/Pink.png" type="Texture" id=8]
[node name="CanvasLayer" type="CanvasLayer"]
[node name="Control" type="Control" parent="."]
anchor_right = 1.0
anchor_bottom = 1.0
margin_left = 4.0
margin_top = 4.0
margin_right = -4.0
margin_bottom = -4.0
theme = ExtResource( 1 )
__meta__ = {
"_edit_use_anchors_": false
}
@ -16,6 +26,10 @@ __meta__ = {
[node name="TabContainer" type="TabContainer" parent="Control"]
anchor_right = 1.0
anchor_bottom = 1.0
theme = ExtResource( 1 )
custom_colors/font_color_bg = Color( 0.454902, 0.337255, 0.607843, 1 )
custom_colors/font_color_fg = Color( 0.454902, 0.337255, 0.607843, 1 )
all_tabs_in_front = true
__meta__ = {
"_edit_use_anchors_": false
}
@ -24,40 +38,139 @@ __meta__ = {
anchor_right = 1.0
anchor_bottom = 1.0
margin_left = 4.0
margin_top = 32.0
margin_top = 39.0
margin_right = -4.0
margin_bottom = -4.0
theme = ExtResource( 1 )
[node name="VBoxContainer" type="VBoxContainer" parent="Control/TabContainer/Main Menu"]
anchor_right = 1.0
anchor_bottom = 1.0
alignment = 2
__meta__ = {
"_edit_use_anchors_": false
}
[node name="HBoxContainer" type="HBoxContainer" parent="Control/TabContainer/Main Menu/VBoxContainer"]
margin_top = 133.0
margin_right = 368.0
margin_bottom = 165.0
alignment = 2
[node name="FullscreenButton" parent="Control/TabContainer/Main Menu/VBoxContainer/HBoxContainer" instance=ExtResource( 5 )]
anchor_right = 0.0
anchor_bottom = 0.0
margin_left = 336.0
margin_right = 368.0
margin_bottom = 32.0
[node name="Levels" type="Tabs" parent="Control/TabContainer"]
visible = false
anchor_right = 1.0
anchor_bottom = 1.0
margin_left = 4.0
margin_top = 32.0
margin_top = 39.0
margin_right = -4.0
margin_bottom = -4.0
theme = ExtResource( 1 )
[node name="GridContainer" type="GridContainer" parent="Control/TabContainer/Levels"]
[node name="HBoxContainer" type="HBoxContainer" parent="Control/TabContainer/Levels"]
anchor_right = 1.0
anchor_bottom = 1.0
custom_constants/separation = 4
alignment = 2
__meta__ = {
"_edit_use_anchors_": false
}
[node name="LevelSelectButton" parent="Control/TabContainer/Levels/GridContainer" instance=ExtResource( 2 )]
flat = false
[node name="LevelInfo" parent="Control/TabContainer/Levels/HBoxContainer" instance=ExtResource( 7 )]
[node name="LevelList" type="ScrollContainer" parent="Control/TabContainer/Levels/HBoxContainer"]
margin_left = 154.0
margin_right = 368.0
margin_bottom = 165.0
theme = ExtResource( 1 )
follow_focus = true
scroll_horizontal_enabled = false
[node name="LevelListHBox" type="VBoxContainer" parent="Control/TabContainer/Levels/HBoxContainer/LevelList"]
margin_left = 2.0
margin_top = 2.0
margin_right = 170.0
margin_bottom = 335.0
[node name="LevelSelectButton" parent="Control/TabContainer/Levels/HBoxContainer/LevelList/LevelListHBox" instance=ExtResource( 2 )]
anchor_right = 0.0
anchor_bottom = 0.0
margin_right = 190.0
margin_bottom = 40.0
icon = ExtResource( 8 )
scene = "res://Stages/EmptyStage.tscn"
[node name="Settings" type="Tabs" parent="Control/TabContainer"]
visible = false
anchor_right = 1.0
anchor_bottom = 1.0
margin_left = 4.0
margin_top = 32.0
margin_right = -4.0
margin_bottom = -4.0
theme = ExtResource( 1 )
[node name="LevelSelectButton3" parent="Control/TabContainer/Levels/HBoxContainer/LevelList/LevelListHBox" instance=ExtResource( 2 )]
anchor_right = 0.0
anchor_bottom = 0.0
margin_top = 88.0
margin_right = 190.0
margin_bottom = 128.0
icon = ExtResource( 6 )
scene = "res://Stages/EmptyStage.tscn"
[node name="LevelSelectButton4" parent="Control/TabContainer/Levels/HBoxContainer/LevelList/LevelListHBox" instance=ExtResource( 2 )]
anchor_right = 0.0
anchor_bottom = 0.0
margin_top = 132.0
margin_right = 190.0
margin_bottom = 172.0
text = "> piss"
icon = ExtResource( 6 )
scene = "res://Stages/EmptyStage.tscn"
[node name="LevelSelectButton5" parent="Control/TabContainer/Levels/HBoxContainer/LevelList/LevelListHBox" instance=ExtResource( 2 )]
anchor_right = 0.0
anchor_bottom = 0.0
margin_top = 176.0
margin_right = 190.0
margin_bottom = 216.0
icon = ExtResource( 6 )
scene = "res://Stages/EmptyStage.tscn"
[node name="LevelSelectButton6" parent="Control/TabContainer/Levels/HBoxContainer/LevelList/LevelListHBox" instance=ExtResource( 2 )]
anchor_right = 0.0
anchor_bottom = 0.0
margin_top = 220.0
margin_right = 190.0
margin_bottom = 260.0
icon = ExtResource( 6 )
scene = "res://Stages/EmptyStage.tscn"
[node name="LevelSelectButton7" parent="Control/TabContainer/Levels/HBoxContainer/LevelList/LevelListHBox" instance=ExtResource( 2 )]
anchor_right = 0.0
anchor_bottom = 0.0
margin_top = 264.0
margin_right = 190.0
margin_bottom = 304.0
icon = ExtResource( 6 )
scene = "res://Stages/EmptyStage.tscn"
[node name="LevelSelectButton8" parent="Control/TabContainer/Levels/HBoxContainer/LevelList/LevelListHBox" instance=ExtResource( 2 )]
anchor_right = 0.0
anchor_bottom = 0.0
margin_top = 308.0
margin_right = 190.0
margin_bottom = 348.0
icon = ExtResource( 6 )
scene = "res://Stages/EmptyStage.tscn"
[node name="LevelSelectButton9" parent="Control/TabContainer/Levels/HBoxContainer/LevelList/LevelListHBox" instance=ExtResource( 2 )]
anchor_right = 0.0
anchor_bottom = 0.0
margin_top = 352.0
margin_right = 190.0
margin_bottom = 392.0
icon = ExtResource( 6 )
scene = "res://Stages/EmptyStage.tscn"
[node name="Transition" parent="." instance=ExtResource( 3 )]
[node name="Cannon" parent="." instance=ExtResource( 4 )]

View File

@ -1,16 +1,71 @@
[gd_resource type="Theme" load_steps=6 format=2]
[gd_resource type="Theme" load_steps=22 format=2]
[ext_resource path="res://Font/Yoster-island/Yoster16.tres" type="DynamicFont" id=1]
[ext_resource path="res://Font/Yoster-island/Yoster.ttf" type="DynamicFontData" id=2]
[sub_resource type="DynamicFont" id=1]
font_data = ExtResource( 2 )
[sub_resource type="DynamicFont" id=2]
[sub_resource type="StyleBoxFlat" id=2]
bg_color = Color( 0.847059, 0.74902, 0.847059, 1 )
[sub_resource type="StyleBoxFlat" id=3]
content_margin_left = 4.0
content_margin_right = 4.0
content_margin_top = 4.0
content_margin_bottom = 4.0
bg_color = Color( 0, 0, 0, 0 )
border_width_left = 2
border_width_top = 2
border_width_right = 2
border_width_bottom = 2
border_color = Color( 0.968627, 1, 0.682353, 1 )
anti_aliasing = false
[sub_resource type="StyleBoxFlat" id=4]
content_margin_left = 4.0
content_margin_right = 4.0
content_margin_top = 4.0
content_margin_bottom = 4.0
bg_color = Color( 1, 0.701961, 0.796078, 1 )
border_width_left = 2
border_width_top = 2
border_width_right = 2
border_width_bottom = 2
border_color = Color( 0.454902, 0.337255, 0.607843, 1 )
anti_aliasing = false
[sub_resource type="StyleBoxFlat" id=5]
content_margin_left = 4.0
content_margin_right = 4.0
content_margin_top = 4.0
content_margin_bottom = 4.0
bg_color = Color( 0.847059, 0.74902, 0.847059, 1 )
border_width_left = 2
border_width_top = 2
border_width_right = 2
border_width_bottom = 2
border_color = Color( 0.454902, 0.337255, 0.607843, 1 )
anti_aliasing = false
[sub_resource type="StyleBoxFlat" id=6]
content_margin_left = 4.0
content_margin_right = 4.0
content_margin_top = 4.0
content_margin_bottom = 4.0
bg_color = Color( 0.588235, 0.984314, 0.780392, 1 )
border_width_left = 2
border_width_top = 2
border_width_right = 2
border_width_bottom = 2
border_color = Color( 0.454902, 0.337255, 0.607843, 1 )
[sub_resource type="DynamicFont" id=7]
size = 18
outline_color = Color( 0.847059, 0.74902, 0.847059, 1 )
font_data = ExtResource( 2 )
[sub_resource type="StyleBoxFlat" id=3]
[sub_resource type="StyleBoxFlat" id=8]
bg_color = Color( 0.847059, 0.74902, 0.847059, 1 )
border_width_left = 1
border_width_top = 1
@ -18,22 +73,105 @@ border_width_right = 1
border_width_bottom = 1
border_color = Color( 0.454902, 0.337255, 0.607843, 1 )
[sub_resource type="DynamicFont" id=4]
font_data = ExtResource( 2 )
[sub_resource type="StyleBoxFlat" id=9]
content_margin_left = 2.0
content_margin_right = 2.0
content_margin_top = 2.0
content_margin_bottom = 2.0
bg_color = Color( 0.847059, 0.74902, 0.847059, 1 )
[sub_resource type="StyleBoxFlat" id=10]
content_margin_left = 4.0
content_margin_right = 4.0
content_margin_top = 4.0
content_margin_bottom = 4.0
bg_color = Color( 0.847059, 0.74902, 0.847059, 1 )
border_width_left = 2
border_width_top = 2
border_width_right = 2
border_width_bottom = 2
border_color = Color( 0.454902, 0.337255, 0.607843, 1 )
anti_aliasing = false
[sub_resource type="StyleBoxFlat" id=11]
content_margin_left = 4.0
content_margin_right = 4.0
content_margin_top = 4.0
content_margin_bottom = 4.0
bg_color = Color( 0.847059, 0.74902, 0.847059, 1 )
border_width_left = 1
border_width_top = 1
border_width_right = 1
border_width_bottom = 1
border_color = Color( 0.454902, 0.337255, 0.607843, 1 )
[sub_resource type="StyleBoxFlat" id=12]
content_margin_left = 4.0
content_margin_right = 4.0
content_margin_top = 4.0
content_margin_bottom = 4.0
bg_color = Color( 0.588235, 0.984314, 0.780392, 1 )
border_width_left = 1
border_width_top = 1
border_width_right = 1
border_width_bottom = 1
border_color = Color( 0.454902, 0.337255, 0.607843, 1 )
anti_aliasing = false
[sub_resource type="StyleBoxFlat" id=13]
bg_color = Color( 0.454902, 0.337255, 0.607843, 1 )
[sub_resource type="StyleBoxFlat" id=14]
[sub_resource type="StyleBoxFlat" id=15]
bg_color = Color( 0.847059, 0.74902, 0.847059, 1 )
[sub_resource type="StyleBoxFlat" id=16]
bg_color = Color( 0.847059, 0.74902, 0.847059, 1 )
border_width_left = 2
border_width_top = 2
border_width_right = 2
border_width_bottom = 2
border_color = Color( 0.454902, 0.337255, 0.607843, 1 )
[sub_resource type="StyleBoxFlat" id=17]
bg_color = Color( 1, 0.701961, 0.796078, 1 )
border_width_left = 2
border_width_top = 2
border_width_right = 2
border_width_bottom = 2
border_color = Color( 0.454902, 0.337255, 0.607843, 1 )
[sub_resource type="StyleBoxFlat" id=18]
bg_color = Color( 0.588235, 0.984314, 0.780392, 1 )
border_width_left = 2
border_width_top = 2
border_width_right = 2
border_width_bottom = 2
border_color = Color( 0.454902, 0.337255, 0.607843, 1 )
[sub_resource type="StyleBoxFlat" id=19]
content_margin_right = 16.0
bg_color = Color( 0.847059, 0.74902, 0.847059, 1 )
border_width_left = 4
border_width_top = 4
border_width_right = 4
border_width_bottom = 4
border_color = Color( 0.454902, 0.337255, 0.607843, 1 )
[resource]
default_font = SubResource( 4 )
Button/colors/font_color = Color( 0.968627, 1, 0.682353, 1 )
Button/colors/font_color_disabled = Color( 0, 0, 0, 1 )
Button/colors/font_color_hover = Color( 0, 0, 0, 1 )
Button/colors/font_color_pressed = Color( 0, 0, 0, 1 )
default_font = ExtResource( 1 )
Button/colors/font_color = Color( 0.454902, 0.337255, 0.607843, 1 )
Button/colors/font_color_disabled = Color( 0.454902, 0.337255, 0.607843, 1 )
Button/colors/font_color_hover = Color( 0.454902, 0.337255, 0.607843, 1 )
Button/colors/font_color_pressed = Color( 0.454902, 0.337255, 0.607843, 1 )
Button/constants/hseparation = 2
Button/fonts/font = SubResource( 1 )
Button/styles/disabled = null
Button/styles/focus = null
Button/styles/hover = null
Button/styles/normal = null
Button/styles/pressed = null
Button/styles/disabled = SubResource( 2 )
Button/styles/focus = SubResource( 3 )
Button/styles/hover = SubResource( 4 )
Button/styles/normal = SubResource( 5 )
Button/styles/pressed = SubResource( 6 )
CheckBox/colors/font_color = Color( 0, 0, 0, 1 )
CheckBox/colors/font_color_disabled = Color( 0, 0, 0, 1 )
CheckBox/colors/font_color_hover = Color( 0, 0, 0, 1 )
@ -104,7 +242,7 @@ FileDialog/icons/parent_folder = null
FileDialog/icons/reload = null
FileDialog/icons/toggle_hidden = null
Fonts/fonts/large = null
Fonts/fonts/normal = null
Fonts/fonts/normal = ExtResource( 1 )
GraphEdit/colors/activity = Color( 0, 0, 0, 1 )
GraphEdit/colors/grid_major = Color( 0, 0, 0, 1 )
GraphEdit/colors/grid_minor = Color( 0, 0, 0, 1 )
@ -191,7 +329,7 @@ Label/constants/line_spacing = 3
Label/constants/shadow_as_outline = 0
Label/constants/shadow_offset_x = 1
Label/constants/shadow_offset_y = 1
Label/fonts/font = SubResource( 2 )
Label/fonts/font = SubResource( 7 )
Label/styles/normal = null
LineEdit/colors/clear_button_color = Color( 0, 0, 0, 1 )
LineEdit/colors/clear_button_color_pressed = Color( 0, 0, 0, 1 )
@ -240,7 +378,7 @@ OptionButton/styles/focus = null
OptionButton/styles/hover = null
OptionButton/styles/normal = null
OptionButton/styles/pressed = null
Panel/styles/panel = SubResource( 3 )
Panel/styles/panel = SubResource( 8 )
PanelContainer/styles/panel = null
PopupDialog/styles/panel = null
PopupMenu/colors/font_color = Color( 0, 0, 0, 1 )
@ -285,7 +423,7 @@ RichTextLabel/fonts/mono_font = null
RichTextLabel/fonts/normal_font = null
RichTextLabel/styles/focus = null
RichTextLabel/styles/normal = null
ScrollContainer/styles/bg = null
ScrollContainer/styles/bg = SubResource( 9 )
SpinBox/icons/updown = null
TabContainer/colors/font_color_bg = Color( 0, 0, 0, 1 )
TabContainer/colors/font_color_disabled = Color( 0, 0, 0, 1 )
@ -302,14 +440,14 @@ TabContainer/icons/increment = null
TabContainer/icons/increment_highlight = null
TabContainer/icons/menu = null
TabContainer/icons/menu_highlight = null
TabContainer/styles/panel = null
TabContainer/styles/tab_bg = null
TabContainer/styles/panel = SubResource( 10 )
TabContainer/styles/tab_bg = SubResource( 11 )
TabContainer/styles/tab_disabled = null
TabContainer/styles/tab_fg = null
Tabs/colors/font_color_bg = Color( 0, 0, 0, 1 )
Tabs/colors/font_color_disabled = Color( 0, 0, 0, 1 )
Tabs/colors/font_color_fg = Color( 0, 0, 0, 1 )
Tabs/constants/hseparation = 4
TabContainer/styles/tab_fg = SubResource( 12 )
Tabs/colors/font_color_bg = Color( 0.454902, 0.337255, 0.607843, 1 )
Tabs/colors/font_color_disabled = Color( 0.454902, 0.337255, 0.607843, 1 )
Tabs/colors/font_color_fg = Color( 0.454902, 0.337255, 0.607843, 1 )
Tabs/constants/hseparation = 8
Tabs/constants/label_valign_bg = 2
Tabs/constants/label_valign_fg = 0
Tabs/constants/top_margin = 24
@ -319,10 +457,10 @@ Tabs/icons/decrement = null
Tabs/icons/decrement_highlight = null
Tabs/icons/increment = null
Tabs/icons/increment_highlight = null
Tabs/styles/button = null
Tabs/styles/button = SubResource( 13 )
Tabs/styles/button_pressed = null
Tabs/styles/panel = null
Tabs/styles/tab_bg = null
Tabs/styles/panel = SubResource( 14 )
Tabs/styles/tab_bg = SubResource( 15 )
Tabs/styles/tab_disabled = null
Tabs/styles/tab_fg = null
TextEdit/colors/background_color = Color( 0, 0, 0, 1 )
@ -422,10 +560,10 @@ VScrollBar/icons/decrement = null
VScrollBar/icons/decrement_highlight = null
VScrollBar/icons/increment = null
VScrollBar/icons/increment_highlight = null
VScrollBar/styles/grabber = null
VScrollBar/styles/grabber_highlight = null
VScrollBar/styles/grabber_pressed = null
VScrollBar/styles/scroll = null
VScrollBar/styles/grabber = SubResource( 16 )
VScrollBar/styles/grabber_highlight = SubResource( 17 )
VScrollBar/styles/grabber_pressed = SubResource( 18 )
VScrollBar/styles/scroll = SubResource( 19 )
VScrollBar/styles/scroll_focus = null
VSeparator/constants/separation = 4
VSeparator/styles/separator = null

View File

@ -161,12 +161,16 @@ script = ExtResource( 10 )
light_mask = 0
z_index = 20
[node name="Background" type="Sprite" parent="Decoration"]
[node name="ParallaxBackground" type="ParallaxBackground" parent="Decoration"]
[node name="ParallaxLayer" type="ParallaxLayer" parent="Decoration/ParallaxBackground"]
motion_scale = Vector2( 0.5, 0.5 )
[node name="Background" type="Sprite" parent="Decoration/ParallaxBackground/ParallaxLayer"]
z_index = -200
texture = ExtResource( 12 )
centered = false
region_enabled = true
region_rect = Rect2( 0, 0, 384, 216 )
region_rect = Rect2( 0, 0, 768, 432 )
[node name="TileMap" type="TileMap" parent="."]
tile_set = SubResource( 10 )
@ -295,8 +299,16 @@ position = Vector2( 235, 128 )
rotation = -0.785397
[node name="StaticBody2D4" parent="Pegs" instance=ExtResource( 13 )]
position = Vector2( 83, 62 )
rotation = 0.785397
position = Vector2( 40, 116 )
rotation = 3.14159
[node name="StaticBody2D5" parent="Pegs" instance=ExtResource( 13 )]
position = Vector2( 64, 140 )
rotation = 3.14159
[node name="StaticBody2D6" parent="Pegs" instance=ExtResource( 13 )]
position = Vector2( 88, 164 )
rotation = 3.14159
[node name="PinkPeg4" parent="Pegs" instance=ExtResource( 8 )]
position = Vector2( 216, 160 )

View File

@ -1,4 +1,7 @@
extends Node2D
export var stage_name = "test stage"
func _physics_process(_delta):
fast_forward()

View File

@ -1,6 +1,7 @@
extends Node
signal balls_changed()
signal current_stage_changed(scene)
var max_balls = 2
var balls_left
@ -37,3 +38,6 @@ func reset_board():
pinks_left = 0
level_won = false
func set_current_scene(stage):
current_stage = stage
emit_signal("current_stage_changed", current_stage)

View File

@ -20,7 +20,7 @@ compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/filter=false
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
@ -30,5 +30,5 @@ process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
detect_3d=false
svg/scale=1.0