mirror of
https://github.com/JHDev2006/Super-Mario-Bros.-Remastered-Public.git
synced 2025-10-22 07:28:14 +00:00
added the game
This commit is contained in:
10
Scenes/Parts/AutoExitPipeArea.tscn
Normal file
10
Scenes/Parts/AutoExitPipeArea.tscn
Normal file
@@ -0,0 +1,10 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://ch20va50duqps"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://dkgu57is78lro" path="res://Scenes/Parts/PipeArea.tscn" id="1_0lajc"]
|
||||
|
||||
[node name="AutoExitPipeArea" instance=ExtResource("1_0lajc")]
|
||||
|
||||
[node name="Visual" parent="." index="0"]
|
||||
debug_color = Color(0.65145713, 0.34785283, 0.72637105, 0.41960785)
|
||||
|
||||
[connection signal="ready" from="." to="." method="exit_pipe"]
|
77
Scenes/Parts/BlockAnimations.tscn
Normal file
77
Scenes/Parts/BlockAnimations.tscn
Normal file
@@ -0,0 +1,77 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://cijkvfkthetn5"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://bna1qn33m01d5" path="res://Scripts/Parts/BlockAnimations.gd" id="1_j0pkw"]
|
||||
|
||||
[sub_resource type="Animation" id="Animation_w2x6g"]
|
||||
resource_name = "BlockHit"
|
||||
length = 0.2
|
||||
step = 0.1
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Joint:position")
|
||||
tracks/0/interp = 2
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.05, 0.15),
|
||||
"transitions": PackedFloat32Array(1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 0), Vector2(0, -8), Vector2(0, 0)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath(".:z_index")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0, 0.15),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 1,
|
||||
"values": [3, 0]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_j0pkw"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Joint:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 0)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath(".:z_index")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [0]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_tid1o"]
|
||||
_data = {
|
||||
&"BlockHit": SubResource("Animation_w2x6g"),
|
||||
&"RESET": SubResource("Animation_j0pkw")
|
||||
}
|
||||
|
||||
[node name="BlockAnimations" type="Node2D"]
|
||||
script = ExtResource("1_j0pkw")
|
||||
|
||||
[node name="Animations" type="AnimationPlayer" parent="."]
|
||||
libraries = {
|
||||
&"": SubResource("AnimationLibrary_tid1o")
|
||||
}
|
||||
|
||||
[node name="Joint" type="RemoteTransform2D" parent="."]
|
||||
update_rotation = false
|
||||
update_scale = false
|
29
Scenes/Parts/CastleBridgeSegment.tscn
Normal file
29
Scenes/Parts/CastleBridgeSegment.tscn
Normal file
@@ -0,0 +1,29 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://c3mc7ptiywhvw"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dt0qtxu2l646n" path="res://Assets/Sprites/Tilesets/Terrain/Overworld.png" id="1_beitk"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="2_beitk"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Tilesets/Terrain/TerrainTiles.json" id="3_ipntr"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_nqr4v"]
|
||||
size = Vector2(16, 16)
|
||||
|
||||
[node name="CastleBridgeSegment" type="StaticBody2D"]
|
||||
physics_interpolation_mode = 2
|
||||
collision_layer = 2
|
||||
collision_mask = 0
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="."]
|
||||
texture = ExtResource("1_beitk")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(64, 48, 16, 16)
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="Sprite2D" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("2_beitk")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("3_ipntr")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="Collision" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource("RectangleShape2D_nqr4v")
|
36
Scenes/Parts/CastleTiles.tscn
Executable file
36
Scenes/Parts/CastleTiles.tscn
Executable file
@@ -0,0 +1,36 @@
|
||||
[gd_scene load_steps=7 format=3 uid="uid://pi38pjp8fwm6"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://deesmqkpjjwds" path="res://Assets/Sprites/Tilesets/CastleTiles.png" id="1_lmh1j"]
|
||||
[ext_resource type="Script" uid="uid://cve2q420hiur1" path="res://Scripts/Parts/Tileset.gd" id="2_uyuum"]
|
||||
[ext_resource type="Script" uid="uid://cq6f682453q6o" path="res://Scripts/Classes/Components/ResourceSetter.gd" id="3_74m05"]
|
||||
[ext_resource type="Resource" uid="uid://dfmek6gee3f7r" path="res://Resources/ThemedResources/CastleTiles.tres" id="4_p4jkf"]
|
||||
|
||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_miuov"]
|
||||
texture = ExtResource("1_lmh1j")
|
||||
0:0/0 = 0
|
||||
1:0/0 = 0
|
||||
2:0/0 = 0
|
||||
1:1/0 = 0
|
||||
0:1/0 = 0
|
||||
2:1/0 = 0
|
||||
|
||||
[sub_resource type="TileSet" id="TileSet_4vrqr"]
|
||||
sources/0 = SubResource("TileSetAtlasSource_miuov")
|
||||
|
||||
[node name="Tiles" type="TileMapLayer"]
|
||||
z_index = -5
|
||||
position = Vector2(-8, 8)
|
||||
tile_set = SubResource("TileSet_4vrqr")
|
||||
script = ExtResource("2_uyuum")
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="."]
|
||||
visible = false
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="." node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_74m05")
|
||||
node_to_affect = NodePath("../TextureRect")
|
||||
property_name = "texture"
|
||||
themed_resource = ExtResource("4_p4jkf")
|
||||
metadata/_custom_type_script = "uid://cq6f682453q6o"
|
83
Scenes/Parts/CustomMenuButton.tscn
Normal file
83
Scenes/Parts/CustomMenuButton.tscn
Normal file
@@ -0,0 +1,83 @@
|
||||
[gd_scene load_steps=9 format=3 uid="uid://ckc73w2p3cdvj"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://3p2l7rec0gh5" path="res://Assets/Sprites/UI/Cursor.png" id="1_744m4"]
|
||||
[ext_resource type="StyleBox" uid="uid://comkghpj0djcl" path="res://Resources/UI/Panel.tres" id="2_oamdf"]
|
||||
[ext_resource type="StyleBox" uid="uid://dlbdmqmnl30sq" path="res://Resources/UI/PanelSelected.tres" id="3_d66fe"]
|
||||
[ext_resource type="Texture2D" uid="uid://hg5ql8d3dck7" path="res://Assets/Sprites/UI/CustomLevelActionIcon.png" id="4_g3205"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="5_d66fe"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/UI/Cursor.json" id="6_g3205"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_hykrg"]
|
||||
atlas = ExtResource("4_g3205")
|
||||
region = Rect2(24, 0, 12, 12)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_744m4"]
|
||||
atlas = ExtResource("1_744m4")
|
||||
region = Rect2(0, 0, 8, 8)
|
||||
|
||||
[node name="BoxContainer" type="MarginContainer"]
|
||||
offset_right = 16.0
|
||||
offset_bottom = 16.0
|
||||
focus_mode = 2
|
||||
focus_behavior_recursive = 2
|
||||
theme_override_constants/margin_left = 8
|
||||
|
||||
[node name="Button" type="Button" parent="."]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
focus_behavior_recursive = 2
|
||||
theme_override_styles/normal = ExtResource("2_oamdf")
|
||||
theme_override_styles/pressed = ExtResource("3_d66fe")
|
||||
theme_override_styles/hover = ExtResource("2_oamdf")
|
||||
theme_override_styles/focus = ExtResource("3_d66fe")
|
||||
|
||||
[node name="Icon" type="TextureRect" parent="."]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 4
|
||||
texture = SubResource("AtlasTexture_hykrg")
|
||||
stretch_mode = 3
|
||||
|
||||
[node name="Label" type="Label" parent="."]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
text = "Play"
|
||||
uppercase = true
|
||||
|
||||
[node name="Cursor" type="Control" parent="."]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Control" type="Control" parent="Cursor"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 9
|
||||
anchor_bottom = 1.0
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="Cursor/Control"]
|
||||
layout_mode = 1
|
||||
anchors_preset = -1
|
||||
anchor_top = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -9.0
|
||||
offset_top = -4.0
|
||||
offset_right = -1.0
|
||||
offset_bottom = 4.0
|
||||
grow_vertical = 2
|
||||
texture = SubResource("AtlasTexture_744m4")
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="Cursor/Control/TextureRect" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("5_d66fe")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("6_g3205")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[connection signal="focus_entered" from="." to="." method="show"]
|
||||
[connection signal="focus_entered" from="." to="Button" method="grab_focus"]
|
||||
[connection signal="focus_entered" from="Button" to="Icon" method="hide"]
|
||||
[connection signal="focus_entered" from="Button" to="Label" method="show"]
|
||||
[connection signal="focus_entered" from="Button" to="Cursor" method="show"]
|
||||
[connection signal="focus_exited" from="Button" to="Icon" method="show"]
|
||||
[connection signal="focus_exited" from="Button" to="Label" method="hide"]
|
||||
[connection signal="focus_exited" from="Button" to="Cursor" method="hide"]
|
102
Scenes/Parts/DataDeletionNode.tscn
Normal file
102
Scenes/Parts/DataDeletionNode.tscn
Normal file
@@ -0,0 +1,102 @@
|
||||
[gd_scene load_steps=8 format=3 uid="uid://bqy0nm0h7f5sl"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cmxqrlwdt6tst" path="res://Scripts/UI/DataDeletionNode.gd" id="1_ecqb2"]
|
||||
[ext_resource type="Texture2D" uid="uid://3p2l7rec0gh5" path="res://Assets/Sprites/UI/Cursor.png" id="2_4prjd"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_a8hnx"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/UI/Cursor.json" id="4_k0d70"]
|
||||
[ext_resource type="Script" uid="uid://d63p6qr5a748" path="res://Scripts/UI/AutoScrollContainer.gd" id="5_85bta"]
|
||||
[ext_resource type="Script" uid="uid://co6tjg3w6qpd8" path="res://Scripts/Parts/LabelFontChanger.gd" id="6_tyvfd"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_qti1l"]
|
||||
atlas = ExtResource("2_4prjd")
|
||||
region = Rect2(0, 0, 8, 8)
|
||||
|
||||
[node name="SelectableOptionNode" type="HBoxContainer"]
|
||||
offset_right = 253.0
|
||||
offset_bottom = 8.0
|
||||
focus_mode = 2
|
||||
theme_override_constants/separation = 0
|
||||
script = ExtResource("1_ecqb2")
|
||||
campaigns = Array[String](["SMB1", "SMBLL", "SMBS", "SMBANN"])
|
||||
|
||||
[node name="Cursor" type="Control" parent="."]
|
||||
custom_minimum_size = Vector2(8, 0)
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Cursor" type="TextureRect" parent="Cursor"]
|
||||
layout_mode = 0
|
||||
offset_top = 4.0
|
||||
offset_right = 8.0
|
||||
offset_bottom = 12.0
|
||||
texture = SubResource("AtlasTexture_qti1l")
|
||||
stretch_mode = 2
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="Cursor/Cursor" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_a8hnx")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_k0d70")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="AutoScrollContainer" type="ScrollContainer" parent="."]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
horizontal_scroll_mode = 3
|
||||
vertical_scroll_mode = 0
|
||||
script = ExtResource("5_85bta")
|
||||
metadata/_custom_type_script = "uid://d63p6qr5a748"
|
||||
|
||||
[node name="Title" type="Label" parent="AutoScrollContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "modeadpiawjda:"
|
||||
uppercase = true
|
||||
|
||||
[node name="LabelFontChanger" type="Node" parent="." node_paths=PackedStringArray("labels")]
|
||||
script = ExtResource("6_tyvfd")
|
||||
labels = [NodePath("../AutoScrollContainer/Title"), NodePath("../VBoxContainer/HBoxContainer/AutoScrollContainer2/Value")]
|
||||
metadata/_custom_type_script = "uid://co6tjg3w6qpd8"
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = -4
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = -4
|
||||
|
||||
[node name="LeftArrow" type="Label" parent="VBoxContainer/HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
text = "◄"
|
||||
uppercase = true
|
||||
|
||||
[node name="AutoScrollContainer2" type="ScrollContainer" parent="VBoxContainer/HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
custom_minimum_size = Vector2(56, 0)
|
||||
layout_mode = 2
|
||||
horizontal_scroll_mode = 3
|
||||
vertical_scroll_mode = 0
|
||||
script = ExtResource("5_85bta")
|
||||
is_active = true
|
||||
auto_minimum_resize = true
|
||||
metadata/_custom_type_script = "uid://d63p6qr5a748"
|
||||
|
||||
[node name="Value" type="Label" parent="VBoxContainer/HBoxContainer/AutoScrollContainer2"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 10
|
||||
text = "aaaaaa"
|
||||
horizontal_alignment = 1
|
||||
uppercase = true
|
||||
|
||||
[node name="RightArrow" type="Label" parent="VBoxContainer/HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
text = "►"
|
||||
uppercase = true
|
||||
|
||||
[connection signal="focus_entered" from="." to="." method="set_selected" binds= [true]]
|
||||
[connection signal="focus_exited" from="." to="." method="set_selected" binds= [false]]
|
40
Scenes/Parts/DecoTiles.tscn
Normal file
40
Scenes/Parts/DecoTiles.tscn
Normal file
@@ -0,0 +1,40 @@
|
||||
[gd_scene load_steps=7 format=3 uid="uid://c145qqkvy8pr5"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://cnexuteg5rvye" path="res://Assets/Sprites/Tilesets/Deco/DecoTemplate.png" id="1_lawed"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_lawed"]
|
||||
[ext_resource type="Script" uid="uid://73oviwf6bbys" path="res://Scripts/Classes/Components/TilesetTextureSetter.gd" id="3_mv6fy"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Tilesets/Deco/DecoTiles.json" id="4_boeqk"]
|
||||
|
||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_3eywr"]
|
||||
texture = ExtResource("1_lawed")
|
||||
0:0/0 = 0
|
||||
1:0/0 = 0
|
||||
2:0/0 = 0
|
||||
3:0/0 = 0
|
||||
4:0/0 = 0
|
||||
0:1/0 = 0
|
||||
1:1/0 = 0
|
||||
2:1/0 = 0
|
||||
3:1/0 = 0
|
||||
4:1/0 = 0
|
||||
|
||||
[sub_resource type="TileSet" id="TileSet_b50pv"]
|
||||
sources/0 = SubResource("TileSetAtlasSource_3eywr")
|
||||
|
||||
[node name="DecoTiles" type="TileMapLayer"]
|
||||
visibility_layer = 2
|
||||
z_index = -10
|
||||
tile_set = SubResource("TileSet_b50pv")
|
||||
|
||||
[node name="TilesetTextureSetter" type="Node" parent="." node_paths=PackedStringArray("tile_map")]
|
||||
script = ExtResource("3_mv6fy")
|
||||
tile_map = NodePath("..")
|
||||
metadata/_custom_type_script = "uid://73oviwf6bbys"
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="." node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_lawed")
|
||||
node_to_affect = NodePath("../TilesetTextureSetter")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_boeqk")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
18
Scenes/Parts/DitheredTransparency.gdshader
Normal file
18
Scenes/Parts/DitheredTransparency.gdshader
Normal file
@@ -0,0 +1,18 @@
|
||||
shader_type canvas_item;
|
||||
|
||||
void fragment() {
|
||||
vec4 tex_color = texture(TEXTURE, UV);
|
||||
vec4 color = tex_color;
|
||||
|
||||
// Get pixel coordinate in texture space
|
||||
vec2 tex_size = vec2(textureSize(TEXTURE, 0)); // Godot 4
|
||||
ivec2 coord = ivec2(floor(UV * tex_size));
|
||||
|
||||
// Simple checker pattern based on texture pixel positions
|
||||
bool checker = (coord.x + coord.y) % 2 == 0;
|
||||
|
||||
if (checker)
|
||||
{
|
||||
discard;
|
||||
}
|
||||
}
|
1
Scenes/Parts/DitheredTransparency.gdshader.uid
Normal file
1
Scenes/Parts/DitheredTransparency.gdshader.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://cjfd0fbhvx370
|
65
Scenes/Parts/DropShadowRenderer.tscn
Normal file
65
Scenes/Parts/DropShadowRenderer.tscn
Normal file
@@ -0,0 +1,65 @@
|
||||
[gd_scene load_steps=7 format=3 uid="uid://cinr6kcbmo6gr"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://c3krxjp4ye4ko" path="res://Scripts/Parts/DropShadowRenderer.gd" id="1_q8gs4"]
|
||||
[ext_resource type="Shader" uid="uid://x7lh23cq2u38" path="res://Scenes/Parts/ShadowShader.gdshader" id="2_g76ny"]
|
||||
[ext_resource type="Script" uid="uid://dwtrmo82e12ud" path="res://Scripts/Parts/ColourPaletteSampler.gd" id="6_03isl"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="7_5ikpa"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Particles/DropShadow.json" id="8_u22ru"]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_q8gs4"]
|
||||
shader = ExtResource("2_g76ny")
|
||||
shader_parameter/shadow_colour = Vector4(0, 0, 0, 0)
|
||||
shader_parameter/allow_transparency = false
|
||||
|
||||
[node name="DropShadow" type="Node2D"]
|
||||
process_mode = 3
|
||||
process_priority = 1
|
||||
process_physics_priority = 1
|
||||
physics_interpolation_mode = 2
|
||||
script = ExtResource("1_q8gs4")
|
||||
offset = Vector2(2, 0)
|
||||
|
||||
[node name="SubViewportContainer" type="SubViewportContainer" parent="."]
|
||||
process_mode = 3
|
||||
visibility_layer = 2
|
||||
z_index = -50
|
||||
z_as_relative = false
|
||||
material = SubResource("ShaderMaterial_q8gs4")
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -1.0
|
||||
offset_top = 1.0
|
||||
offset_right = 1.0
|
||||
offset_bottom = 3.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="SubViewport" type="SubViewport" parent="SubViewportContainer"]
|
||||
process_mode = 3
|
||||
transparent_bg = true
|
||||
handle_input_locally = false
|
||||
snap_2d_transforms_to_pixel = true
|
||||
canvas_item_default_texture_filter = 0
|
||||
canvas_cull_mask = 4293918721
|
||||
size = Vector2i(2, 2)
|
||||
render_target_update_mode = 4
|
||||
|
||||
[node name="Camera2D" type="Camera2D" parent="SubViewportContainer/SubViewport"]
|
||||
process_mode = 3
|
||||
physics_interpolation_mode = 2
|
||||
|
||||
[node name="ColourPaletteSampler" type="Node" parent="." node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("6_03isl")
|
||||
node_to_affect = NodePath("..")
|
||||
value_to_set = "shadow_colour"
|
||||
metadata/_custom_type_script = "uid://dwtrmo82e12ud"
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="ColourPaletteSampler" node_paths=PackedStringArray("node_to_affect")]
|
||||
process_mode = 3
|
||||
script = ExtResource("7_5ikpa")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("8_u22ru")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
110
Scenes/Parts/DropShadowRendererSmooth.tscn
Normal file
110
Scenes/Parts/DropShadowRendererSmooth.tscn
Normal file
@@ -0,0 +1,110 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://d2c5ut4rtjf3p"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cit6racuc8c60" path="res://Scripts/Parts/DropShadowRendererSmooth.gd" id="1_sh8t5"]
|
||||
|
||||
[sub_resource type="Shader" id="Shader_xx2dm"]
|
||||
code = "shader_type canvas_item;
|
||||
|
||||
uniform vec3 shadow_colour: source_color;
|
||||
uniform float transparency = 0.0;
|
||||
|
||||
void fragment() {
|
||||
if (COLOR.a >= 0.025)
|
||||
{
|
||||
COLOR = vec4(shadow_colour.r, shadow_colour.g, shadow_colour.b, transparency * COLOR.a);
|
||||
}
|
||||
}
|
||||
|
||||
//void light() {
|
||||
// Called for every pixel for every light affecting the CanvasItem.
|
||||
// Uncomment to replace the default light processing function with this one.
|
||||
//}
|
||||
"
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_o48cx"]
|
||||
shader = SubResource("Shader_xx2dm")
|
||||
shader_parameter/shadow_colour = Color(0.368102, 0.368102, 0.368102, 1)
|
||||
shader_parameter/transparency = 0.25
|
||||
|
||||
[sub_resource type="GDScript" id="GDScript_tdilq"]
|
||||
script/source = "# https://github.com/godotengine/godot/issues/77149
|
||||
class_name SubViewportContainerBug77149
|
||||
extends SubViewportContainer
|
||||
|
||||
@export var stretch_without_bug_77149 : bool
|
||||
|
||||
func _ready() -> void:
|
||||
_on_resized()
|
||||
get_window().size_changed.connect(_on_resized)
|
||||
|
||||
var _dont_recurse : bool
|
||||
|
||||
func _on_resized() -> void:
|
||||
assert(not stretch)
|
||||
if not stretch_without_bug_77149 or _dont_recurse:
|
||||
return
|
||||
|
||||
var window := get_window()
|
||||
var viewport_size := Vector2(window.size)
|
||||
var reference_size := Vector2(window.content_scale_size)
|
||||
var viewport_scale := viewport_size / reference_size
|
||||
var size_scale := minf(viewport_scale.x, viewport_scale.y)
|
||||
|
||||
var scaled_size := Vector2i((size * scale * size_scale).round()) / stretch_shrink
|
||||
if Vector2i(size.round()) == scaled_size:
|
||||
return
|
||||
|
||||
_dont_recurse = true
|
||||
# we need to set the container's size first or it'll get resized by the viewport resize (ugh)
|
||||
scale = Vector2(1.0 / size_scale, 1.0 / size_scale)
|
||||
size = scaled_size
|
||||
|
||||
for subviewport : SubViewport in find_children(\"*\", \"SubViewport\", false, false):
|
||||
# avoid reallocating textures we don't need to reallocate
|
||||
if subviewport.size != scaled_size:
|
||||
subviewport.size = scaled_size
|
||||
|
||||
_dont_recurse = false
|
||||
"
|
||||
|
||||
[node name="DropShadowRenderer" type="Node"]
|
||||
physics_interpolation_mode = 1
|
||||
script = ExtResource("1_sh8t5")
|
||||
|
||||
[node name="Point" type="Node2D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
physics_interpolation_mode = 1
|
||||
visibility_layer = 2
|
||||
z_index = -45
|
||||
position = Vector2(4, 0)
|
||||
|
||||
[node name="Container" type="SubViewportContainer" parent="Point"]
|
||||
unique_name_in_owner = true
|
||||
physics_interpolation_mode = 1
|
||||
visibility_layer = 2
|
||||
material = SubResource("ShaderMaterial_o48cx")
|
||||
offset_left = -240.0
|
||||
offset_top = -135.0
|
||||
offset_right = 240.0
|
||||
offset_bottom = 135.0
|
||||
localize_numeral_system = false
|
||||
mouse_filter = 2
|
||||
script = SubResource("GDScript_tdilq")
|
||||
stretch_without_bug_77149 = true
|
||||
metadata/_edit_use_anchors_ = true
|
||||
|
||||
[node name="SubViewport" type="SubViewport" parent="Point/Container"]
|
||||
unique_name_in_owner = true
|
||||
transparent_bg = true
|
||||
handle_input_locally = false
|
||||
canvas_item_default_texture_filter = 0
|
||||
canvas_cull_mask = 4293918721
|
||||
size = Vector2i(480, 270)
|
||||
size_2d_override = Vector2i(1440, 810)
|
||||
render_target_update_mode = 4
|
||||
|
||||
[node name="Camera" type="Camera2D" parent="Point/Container/SubViewport"]
|
||||
unique_name_in_owner = true
|
||||
offset = Vector2(-3, -3)
|
||||
zoom = Vector2(3, 3)
|
||||
process_callback = 0
|
15
Scenes/Parts/EntityTileContainer.tscn
Executable file
15
Scenes/Parts/EntityTileContainer.tscn
Executable file
@@ -0,0 +1,15 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://bn8v1j5t12bpk"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://bg8681ssontei" path="res://Scripts/Parts/EntityTileContainer.gd" id="1_l30to"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_ormaw"]
|
||||
size = Vector2(16, 16)
|
||||
|
||||
[node name="EntityTileContainer" type="Node2D"]
|
||||
script = ExtResource("1_l30to")
|
||||
|
||||
[node name="MouseArea" type="Area2D" parent="."]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="MouseArea"]
|
||||
position = Vector2(8, 8)
|
||||
shape = SubResource("RectangleShape2D_ormaw")
|
21
Scenes/Parts/LargeCastleVisual.tscn
Normal file
21
Scenes/Parts/LargeCastleVisual.tscn
Normal file
@@ -0,0 +1,21 @@
|
||||
[gd_scene load_steps=4 format=4 uid="uid://bikdod5ra10ra"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://qn4g0qkjcuiy" path="res://Scenes/Parts/SmallCastleVisual.tscn" id="1_kxe1w"]
|
||||
[ext_resource type="Texture2D" uid="uid://dkcs5i8l1y4y6" path="res://Assets/Sprites/Tilesets/EndingFinalCastleSprite.png" id="2_3bs51"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Tilesets/FinalCastle.json" id="3_f0rgi"]
|
||||
|
||||
[node name="SmallCastleVisual" instance=ExtResource("1_kxe1w")]
|
||||
|
||||
[node name="Tiles" parent="." index="0"]
|
||||
tile_map_data = PackedByteArray("AAD+////AAAHAAcAAAD+/wAAAAAHAAcAAAD+/wEAAAAHAAcAAAD///7/AAAHAAcAAAD/////AAAHAAcAAAD//wAAAAAHAAcAAAD//wEAAAAHAAcAAAAAAP7/AAAHAAcAAAAAAP//AAAHAAcAAAAAAAAAAAAGAAoAAAABAP//AAAHAAcAAAABAAAAAAAHAAcAAAABAAEAAAAHAAcAAAACAP//AAAHAAcAAAACAAAAAAAGAAoAAAD///3/AAAHAAcAAAAAAP3/AAAHAAcAAAABAP3/AAAGAAoAAAADAAAAAAAHAAcAAAADAAEAAAAHAAcAAAAFAAAAAAAHAAcAAAAFAAEAAAAHAAcAAAAGAAAAAAAHAAcAAAAGAAEAAAAHAAcAAAADAP//AAAHAAcAAAAEAP//AAAHAAcAAAAFAP//AAAHAAcAAAAGAP//AAAHAAcAAAACAP3/AAAHAAcAAAACAP7/AAAHAAcAAAAEAP3/AAAHAAcAAAAEAP7/AAAHAAcAAAAFAP3/AAAHAAcAAAAFAP7/AAAHAAcAAAAGAP3/AAAHAAcAAAAGAP7/AAAHAAcAAAD+//3/AAAHAAcAAAD+//7/AAAHAAcAAAAEAAAAAAAGAAoAAAADAP3/AAAGAAoAAAD+//z/AAAGAAcAAAD///z/AAAGAAcAAAAFAPz/AAAGAAcAAAAGAPz/AAAGAAcAAAAAAPz/AAAFAAoAAAABAPz/AAAFAAoAAAACAPz/AAAFAAoAAAADAPz/AAAFAAoAAAAEAPz/AAAFAAoAAAAAAPr/AAAHAAcAAAAAAPv/AAAHAAcAAAABAPr/AAAHAAcAAAABAPv/AAAHAAcAAAADAPr/AAAHAAcAAAADAPv/AAAHAAcAAAAEAPr/AAAHAAcAAAAEAPv/AAAHAAcAAAACAPr/AAAGAAoAAAAAAPn/AAAGAAcAAAABAPn/AAAFAAoAAAACAPn/AAAFAAoAAAADAPn/AAAFAAoAAAAEAPn/AAAGAAcAAAABAPf/AAAGAAcAAAACAPf/AAAGAAcAAAADAPf/AAAGAAcAAAACAPj/AAAHAAcAAAABAPj/AAADAAoAAAADAPj/AAAEAAoAAAA=")
|
||||
|
||||
[node name="BG" parent="Tiles" index="1"]
|
||||
tile_map_data = PackedByteArray("AAAAAAAAAAAHABQAAAAAAAEAAAAHABQAAAAAAAIAAAAHABQAAAAAAAMAAAAHABQAAAABAAAAAAAHABQAAAABAAEAAAAHABQAAAABAAIAAAAHABQAAAABAAMAAAAHABQAAAD///z/AAAHABQAAAD///3/AAAHABQAAAACAPz/AAAHABQAAAACAP3/AAAHABQAAAADAPT/AAAHABQAAAADAPX/AAAHABQAAAADAPb/AAAHABQAAAADAPf/AAAHABQAAAADAPj/AAAHABQAAAADAPn/AAAHABQAAAADAPr/AAAHABQAAAADAPv/AAAHABQAAAADAPz/AAAHABQAAAADAP3/AAAHABQAAAADAP7/AAAHABQAAAADAP//AAAHABQAAAADAAAAAAAHABQAAAADAAEAAAAHABQAAAADAAIAAAAHABQAAAADAAMAAAAHABQAAAAEAPT/AAAHABQAAAAEAPX/AAAHABQAAAAEAPb/AAAHABQAAAAEAPf/AAAHABQAAAAEAPj/AAAHABQAAAAEAPn/AAAHABQAAAAEAPr/AAAHABQAAAAEAPv/AAAHABQAAAAEAPz/AAAHABQAAAAEAP3/AAAHABQAAAAEAP7/AAAHABQAAAAEAP//AAAHABQAAAAEAAAAAAAHABQAAAAEAAEAAAAHABQAAAAEAAIAAAAHABQAAAAEAAMAAAAHABQAAAAFAPT/AAAHABQAAAAFAPX/AAAHABQAAAAFAPb/AAAHABQAAAAFAPf/AAAHABQAAAAFAPj/AAAHABQAAAAFAPn/AAAHABQAAAAFAPr/AAAHABQAAAAFAPv/AAAHABQAAAAFAPz/AAAHABQAAAAFAP3/AAAHABQAAAAFAP7/AAAHABQAAAAFAP//AAAHABQAAAAFAAAAAAAHABQAAAAFAAEAAAAHABQAAAAFAAIAAAAHABQAAAAFAAMAAAAHABQAAAAGAPT/AAAHABQAAAAGAPX/AAAHABQAAAAGAPb/AAAHABQAAAAGAPf/AAAHABQAAAAGAPj/AAAHABQAAAAGAPn/AAAHABQAAAAGAPr/AAAHABQAAAAGAPv/AAAHABQAAAAGAPz/AAAHABQAAAAGAP3/AAAHABQAAAAGAP7/AAAHABQAAAAGAP//AAAHABQAAAAGAAAAAAAHABQAAAAGAAEAAAAHABQAAAAGAAIAAAAHABQAAAAGAAMAAAAHABQAAAAHAPT/AAAHABQAAAAHAPX/AAAHABQAAAAHAPb/AAAHABQAAAAHAPf/AAAHABQAAAAHAPj/AAAHABQAAAAHAPn/AAAHABQAAAAHAPr/AAAHABQAAAAHAPv/AAAHABQAAAAHAPz/AAAHABQAAAAHAP3/AAAHABQAAAAHAP7/AAAHABQAAAAHAP//AAAHABQAAAAHAAAAAAAHABQAAAAHAAEAAAAHABQAAAAHAAIAAAAHABQAAAAHAAMAAAAHABQAAAAIAAAAAAAHABQAAAAIAAEAAAAHABQAAAAIAAIAAAAHABQAAAAIAAMAAAAHABQAAAAJAAAAAAAHABQAAAAJAAEAAAAHABQAAAAJAAIAAAAHABQAAAAJAAMAAAAHABQAAAAKAAAAAAAHABQAAAAKAAEAAAAHABQAAAAKAAIAAAAHABQAAAAKAAMAAAAHABQAAAACAPr/AAAHABQAAAACAPv/AAAHABQAAAA=")
|
||||
|
||||
[node name="Sprite" parent="." index="1"]
|
||||
visible = false
|
||||
position = Vector2(32, -48)
|
||||
texture = ExtResource("2_3bs51")
|
||||
|
||||
[node name="ResourceSetterNew" parent="Sprite" index="0"]
|
||||
resource_json = ExtResource("3_f0rgi")
|
12
Scenes/Parts/LargeSPCastleDeco.tscn
Executable file
12
Scenes/Parts/LargeSPCastleDeco.tscn
Executable file
@@ -0,0 +1,12 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://dn2oonncrmxb3"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://cbl8l51osppso" path="res://Scenes/Parts/LargeStartCastle.tscn" id="1_wnk7n"]
|
||||
[ext_resource type="PackedScene" uid="uid://bem5ht17ukgcs" path="res://Scenes/Parts/LargeSPCastleVisual.tscn" id="2_12kkg"]
|
||||
|
||||
[node name="LargeCastleDeco" instance=ExtResource("1_wnk7n")]
|
||||
|
||||
[node name="SmallCastleVisual" parent="." index="0"]
|
||||
visible = false
|
||||
|
||||
[node name="SmallCastleVisual2" parent="." index="1" instance=ExtResource("2_12kkg")]
|
||||
position = Vector2(0, 48)
|
14
Scenes/Parts/LargeSPCastleVisual.tscn
Normal file
14
Scenes/Parts/LargeSPCastleVisual.tscn
Normal file
@@ -0,0 +1,14 @@
|
||||
[gd_scene load_steps=2 format=4 uid="uid://bem5ht17ukgcs"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://bikdod5ra10ra" path="res://Scenes/Parts/LargeCastleVisual.tscn" id="1_3hodr"]
|
||||
|
||||
[node name="SmallCastleVisual" instance=ExtResource("1_3hodr")]
|
||||
|
||||
[node name="Tiles" parent="." index="0"]
|
||||
tile_map_data = PackedByteArray("AAD+////AAAHAAcAAAD+/wAAAAAGAAoAAAD/////AAAHAAcAAAD//wAAAAAHAAcAAAD//wEAAAAHAAcAAAAAAP7/AAAHAAcAAAAAAP//AAAHAAcAAAAAAAAAAAAGAAoAAAABAP//AAAHAAcAAAABAAAAAAAHAAcAAAABAAEAAAAHAAcAAAACAP//AAAHAAcAAAACAAAAAAAGAAoAAAD///3/AAAGAAoAAAAAAP3/AAAHAAcAAAABAP3/AAAGAAoAAAADAAAAAAAHAAcAAAADAAEAAAAHAAcAAAADAP//AAAHAAcAAAAEAP//AAAHAAcAAAACAP3/AAAHAAcAAAACAP7/AAAHAAcAAAAEAP3/AAAHAAcAAAAEAP7/AAAHAAcAAAD+//3/AAAHAAcAAAD+//7/AAAHAAcAAAAEAAAAAAAHAAcAAAADAP3/AAAHAAcAAAD+//z/AAAFAAoAAAD///z/AAAFAAoAAAAAAPz/AAAFAAoAAAABAPz/AAAFAAoAAAACAPz/AAAFAAoAAAADAPz/AAAGAAcAAAAEAPz/AAAGAAcAAAAAAPr/AAAFAAoAAAAAAPv/AAAHAAcAAAABAPr/AAAFAAoAAAABAPv/AAAEAAoAAAACAPr/AAAGAAcAAAAAAPn/AAAHAAcAAAABAPn/AAAEAAoAAAABAPj/AAAGAAcAAAD///n/AAADAAoAAAD9//z/AAAGAAcAAAD8//z/AAAGAAcAAAD///j/AAAGAAcAAAAAAPj/AAAGAAcAAAD8//3/AAAHAAcAAAD8//7/AAAHAAcAAAD8////AAAHAAcAAAD9//3/AAAHAAcAAAD9//7/AAAHAAcAAAD9////AAAHAAcAAAADAP7/AAAHAAcAAAAEAAEAAAAHAAcAAAD8/wAAAAAHAAcAAAD8/wEAAAAHAAcAAAD9/wAAAAAHAAcAAAD9/wEAAAAHAAcAAAD+//r/AAAGAAcAAAD///r/AAAFAAoAAAD+//v/AAADAAoAAAD///v/AAADAAoAAAACAPv/AAAEAAoAAAA=")
|
||||
|
||||
[node name="BG" parent="Tiles" index="1"]
|
||||
tile_map_data = PackedByteArray("AAAAAAAAAAAHABQAAAAAAAEAAAAHABQAAAAAAAIAAAAHABQAAAAAAAMAAAAHABQAAAABAAAAAAAHABQAAAABAAEAAAAHABQAAAABAAIAAAAHABQAAAABAAMAAAAHABQAAAD///z/AAAHABQAAAD///3/AAAHABQAAAACAPz/AAAHABQAAAACAP3/AAAHABQAAAADAPj/AAAHABQAAAADAPn/AAAHABQAAAADAPr/AAAHABQAAAADAPv/AAAHABQAAAADAPz/AAAHABQAAAADAP3/AAAHABQAAAADAP7/AAAHABQAAAADAP//AAAHABQAAAADAAAAAAAHABQAAAADAAEAAAAHABQAAAADAAIAAAAHABQAAAADAAMAAAAHABQAAAAEAPj/AAAHABQAAAAEAPn/AAAHABQAAAAEAPr/AAAHABQAAAAEAPv/AAAHABQAAAAEAPz/AAAHABQAAAAEAP3/AAAHABQAAAAEAP7/AAAHABQAAAAEAP//AAAHABQAAAAEAAAAAAAHABQAAAAEAAEAAAAHABQAAAAEAAIAAAAHABQAAAAEAAMAAAAHABQAAAAFAPr/AAAHABQAAAAFAPv/AAAHABQAAAAFAPz/AAAHABQAAAAFAP3/AAAHABQAAAAFAP7/AAAHABQAAAAFAP//AAAHABQAAAAFAAAAAAAHABQAAAAFAAEAAAAHABQAAAAFAAIAAAAHABQAAAAFAAMAAAAHABQAAAAGAPr/AAAHABQAAAAGAPv/AAAHABQAAAAGAPz/AAAHABQAAAAGAP3/AAAHABQAAAAGAP7/AAAHABQAAAAGAP//AAAHABQAAAAGAAAAAAAHABQAAAAGAAEAAAAHABQAAAAGAAIAAAAHABQAAAAGAAMAAAAHABQAAAAHAPr/AAAHABQAAAAHAPv/AAAHABQAAAAHAPz/AAAHABQAAAAHAP3/AAAHABQAAAAHAP7/AAAHABQAAAAHAP//AAAHABQAAAAHAAAAAAAHABQAAAAHAAEAAAAHABQAAAAHAAIAAAAHABQAAAAHAAMAAAAHABQAAAACAPr/AAAHABQAAAACAPv/AAAHABQAAAAAAAQAAAAHABQAAAABAAQAAAAHABQAAAACAP7/AAAHABQAAAD5//r/AAAHABQAAAD5//v/AAAHABQAAAD5//z/AAAHABQAAAD5//3/AAAHABQAAAD5//7/AAAHABQAAAD5////AAAHABQAAAD5/wAAAAAHABQAAAD5/wEAAAAHABQAAAD5/wIAAAAHABQAAAD5/wMAAAAHABQAAAD5/wQAAAAHABQAAAD5/wUAAAAHABQAAAD6//r/AAAHABQAAAD6//v/AAAHABQAAAD6//z/AAAHABQAAAD6//3/AAAHABQAAAD6//7/AAAHABQAAAD6////AAAHABQAAAD6/wAAAAAHABQAAAD6/wEAAAAHABQAAAD6/wIAAAAHABQAAAD6/wMAAAAHABQAAAD6/wQAAAAHABQAAAD6/wUAAAAHABQAAAD7//r/AAAHABQAAAD7//v/AAAHABQAAAD7//z/AAAHABQAAAD7//3/AAAHABQAAAD7//7/AAAHABQAAAD7////AAAHABQAAAD7/wAAAAAHABQAAAD7/wEAAAAHABQAAAD7/wIAAAAHABQAAAD7/wMAAAAHABQAAAD7/wQAAAAHABQAAAD7/wUAAAAHABQAAAD8//r/AAAHABQAAAD8//v/AAAHABQAAAD8//z/AAAHABQAAAD8//3/AAAHABQAAAD8//7/AAAHABQAAAD8////AAAHABQAAAD8/wAAAAAHABQAAAD8/wEAAAAHABQAAAD8/wIAAAAHABQAAAD8/wMAAAAHABQAAAD8/wQAAAAHABQAAAD8/wUAAAAHABQAAAD9//r/AAAHABQAAAD9//v/AAAHABQAAAD9//z/AAAHABQAAAD9//3/AAAHABQAAAD9//7/AAAHABQAAAD9////AAAHABQAAAD9/wAAAAAHABQAAAD9/wEAAAAHABQAAAD9/wIAAAAHABQAAAD9/wMAAAAHABQAAAD9/wQAAAAHABQAAAD9/wUAAAAHABQAAAD+//r/AAAHABQAAAD+//v/AAAHABQAAAD+//z/AAAHABQAAAD+//3/AAAHABQAAAD+//7/AAAHABQAAAD+////AAAHABQAAAD+/wAAAAAHABQAAAD+/wEAAAAHABQAAAD+/wIAAAAHABQAAAD+/wMAAAAHABQAAAD+/wQAAAAHABQAAAD+/wUAAAAHABQAAAD///r/AAAHABQAAAD///v/AAAHABQAAAD///7/AAAHABQAAAD/////AAAHABQAAAD//wAAAAAHABQAAAD//wEAAAAHABQAAAD//wIAAAAHABQAAAD//wMAAAAHABQAAAD//wQAAAAHABQAAAD//wUAAAAHABQAAAAAAPr/AAAHABQAAAAAAPv/AAAHABQAAAAAAPz/AAAHABQAAAAAAP3/AAAHABQAAAAAAP7/AAAHABQAAAAAAP//AAAHABQAAAAAAAUAAAAHABQAAAABAPr/AAAHABQAAAABAPv/AAAHABQAAAABAPz/AAAHABQAAAABAP3/AAAHABQAAAABAP7/AAAHABQAAAABAP//AAAHABQAAAABAAUAAAAHABQAAAACAP//AAAHABQAAAACAAAAAAAHABQAAAACAAEAAAAHABQAAAACAAIAAAAHABQAAAACAAMAAAAHABQAAAACAAQAAAAHABQAAAACAAUAAAAHABQAAAADAAQAAAAHABQAAAADAAUAAAAHABQAAAAEAAQAAAAHABQAAAAEAAUAAAAHABQAAAAFAAQAAAAHABQAAAAFAAUAAAAHABQAAAAGAAQAAAAHABQAAAAGAAUAAAAHABQAAAAHAAQAAAAHABQAAAAHAAUAAAAHABQAAAD8//b/AAAHABQAAAD8//f/AAAHABQAAAD8//j/AAAHABQAAAD8//n/AAAHABQAAAD9//X/AAAHABQAAAD9//b/AAAHABQAAAD9//f/AAAHABQAAAD9//j/AAAHABQAAAD9//n/AAAHABQAAAD+//P/AAAHABQAAAD+//T/AAAHABQAAAD+//X/AAAHABQAAAD+//b/AAAHABQAAAD+//f/AAAHABQAAAD+//j/AAAHABQAAAD+//n/AAAHABQAAAD///P/AAAHABQAAAD///T/AAAHABQAAAD///X/AAAHABQAAAD///b/AAAHABQAAAD///f/AAAHABQAAAD///j/AAAHABQAAAD///n/AAAHABQAAAAAAPP/AAAHABQAAAAAAPT/AAAHABQAAAAAAPX/AAAHABQAAAAAAPb/AAAHABQAAAAAAPf/AAAHABQAAAAAAPj/AAAHABQAAAAAAPn/AAAHABQAAAABAPP/AAAHABQAAAABAPT/AAAHABQAAAABAPX/AAAHABQAAAABAPb/AAAHABQAAAABAPf/AAAHABQAAAABAPj/AAAHABQAAAABAPn/AAAHABQAAAACAPP/AAAHABQAAAACAPT/AAAHABQAAAACAPX/AAAHABQAAAACAPb/AAAHABQAAAACAPf/AAAHABQAAAACAPj/AAAHABQAAAACAPn/AAAHABQAAAA=")
|
||||
|
||||
[node name="Sprite" parent="." index="1"]
|
||||
position = Vector2(0, -48)
|
11
Scenes/Parts/LargeStartCastle.tscn
Executable file
11
Scenes/Parts/LargeStartCastle.tscn
Executable file
@@ -0,0 +1,11 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://cbl8l51osppso"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://bikdod5ra10ra" path="res://Scenes/Parts/LargeCastleVisual.tscn" id="2_lpq2f"]
|
||||
|
||||
[node name="LargeCastleDeco" type="Sprite2D"]
|
||||
region_enabled = true
|
||||
region_rect = Rect2(0, 0, 144, 176)
|
||||
region_filter_clip_enabled = true
|
||||
|
||||
[node name="SmallCastleVisual" parent="." instance=ExtResource("2_lpq2f")]
|
||||
position = Vector2(0, 48)
|
13
Scenes/Parts/LeapingCheepCheepArea.tscn
Normal file
13
Scenes/Parts/LeapingCheepCheepArea.tscn
Normal file
@@ -0,0 +1,13 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://bdxd6shyk8duj"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dxt4s20sjndph" path="res://Scripts/Parts/LeapingCheepCheepArea.gd" id="1_jinga"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_bjkhe"]
|
||||
size = Vector2(16, 16)
|
||||
|
||||
[node name="LeapingCheepCheepArea" type="Area2D"]
|
||||
script = ExtResource("1_jinga")
|
||||
|
||||
[node name="Shape" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource("RectangleShape2D_bjkhe")
|
||||
debug_color = Color(1, 0.6, 0, 0.419608)
|
83
Scenes/Parts/LevelEditorTab.tscn
Normal file
83
Scenes/Parts/LevelEditorTab.tscn
Normal file
@@ -0,0 +1,83 @@
|
||||
[gd_scene load_steps=10 format=3 uid="uid://m5o0l71ne3u4"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://c6pd7cdhx78od" path="res://Assets/Sprites/UI/Tab.png" id="1_3ufth"]
|
||||
[ext_resource type="Script" uid="uid://kvlxhhkgtuk2" path="res://Scripts/UI/LevelEditorTab.gd" id="1_8b8gk"]
|
||||
[ext_resource type="Texture2D" uid="uid://bgjdnv8n8l1hb" path="res://Assets/Sprites/UI/TabSelected.png" id="2_8b8gk"]
|
||||
[ext_resource type="StyleBox" uid="uid://btw30ed0dg4bt" path="res://Resources/UI/Tab.tres" id="2_sup1d"]
|
||||
[ext_resource type="Texture2D" uid="uid://xsfs2psb84ql" path="res://Assets/Sprites/UI/EditorButtons.png" id="3_sup1d"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_5mw2n"]
|
||||
atlas = ExtResource("3_sup1d")
|
||||
region = Rect2(0, 0, 16, 16)
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_wt4vx"]
|
||||
texture = ExtResource("2_8b8gk")
|
||||
texture_margin_left = 2.0
|
||||
texture_margin_top = 2.0
|
||||
texture_margin_right = 2.0
|
||||
texture_margin_bottom = 2.0
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_qebwb"]
|
||||
texture = ExtResource("1_3ufth")
|
||||
texture_margin_left = 2.0
|
||||
texture_margin_top = 2.0
|
||||
texture_margin_right = 2.0
|
||||
texture_margin_bottom = 2.0
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_5mw2n"]
|
||||
texture = ExtResource("2_8b8gk")
|
||||
texture_margin_left = 2.0
|
||||
texture_margin_top = 2.0
|
||||
texture_margin_right = 2.0
|
||||
texture_margin_bottom = 2.0
|
||||
|
||||
[node name="Parts" type="MarginContainer" groups=["EditorTabs"]]
|
||||
offset_right = 24.0
|
||||
offset_bottom = 24.0
|
||||
focus_mode = 2
|
||||
mouse_filter = 2
|
||||
theme_override_constants/margin_left = 0
|
||||
script = ExtResource("1_8b8gk")
|
||||
icon = SubResource("AtlasTexture_5mw2n")
|
||||
title = "Parts"
|
||||
|
||||
[node name="Panel" type="Panel" parent="."]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
theme_override_styles/panel = ExtResource("2_sup1d")
|
||||
|
||||
[node name="Selected" type="Panel" parent="."]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
theme_override_styles/panel = SubResource("StyleBoxTexture_wt4vx")
|
||||
|
||||
[node name="Button" type="Button" parent="."]
|
||||
layout_mode = 2
|
||||
theme_override_styles/normal = SubResource("StyleBoxTexture_qebwb")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxTexture_qebwb")
|
||||
theme_override_styles/hover = SubResource("StyleBoxTexture_qebwb")
|
||||
theme_override_styles/focus = SubResource("StyleBoxTexture_5mw2n")
|
||||
flat = true
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="."]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
theme_override_constants/separation = -4
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="HBoxContainer"]
|
||||
custom_minimum_size = Vector2(24, 0)
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
texture = SubResource("AtlasTexture_5mw2n")
|
||||
stretch_mode = 3
|
||||
|
||||
[node name="Label" type="Label" parent="HBoxContainer"]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_shadow_color = Color(0.96862745, 0.22352941, 0.0627451, 1)
|
||||
text = "Parts"
|
||||
uppercase = true
|
||||
|
||||
[connection signal="focus_entered" from="." to="." method="tab_clicked"]
|
||||
[connection signal="pressed" from="Button" to="." method="tab_clicked"]
|
20
Scenes/Parts/MinusWorldBlock.tscn
Executable file
20
Scenes/Parts/MinusWorldBlock.tscn
Executable file
@@ -0,0 +1,20 @@
|
||||
[gd_scene load_steps=4 format=3 uid="uid://dvpfo3flk1efm"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://b41sx3mmdq1pi" path="res://Scripts/Parts/MinusWorldBlock.gd" id="1_b4qvh"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_06uwf"]
|
||||
size = Vector2(16, 16)
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_b4qvh"]
|
||||
|
||||
[node name="StaticBody2D" type="StaticBody2D"]
|
||||
collision_mask = 0
|
||||
script = ExtResource("1_b4qvh")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource("RectangleShape2D_06uwf")
|
||||
|
||||
[node name="Area2D" type="Area2D" parent="."]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"]
|
||||
shape = SubResource("RectangleShape2D_b4qvh")
|
54
Scenes/Parts/OneUpNote.tscn
Executable file
54
Scenes/Parts/OneUpNote.tscn
Executable file
@@ -0,0 +1,54 @@
|
||||
[gd_scene load_steps=8 format=3 uid="uid://dopxwjj37gu0l"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://b5feqg7nwyety" path="res://Scenes/Parts/ScoreNote.tscn" id="1_t77qk"]
|
||||
[ext_resource type="Texture2D" uid="uid://b2674tr54wqw7" path="res://Assets/Sprites/UI/OneUpNote.png" id="2_btd7m"]
|
||||
[ext_resource type="Script" uid="uid://cq6f682453q6o" path="res://Scripts/Classes/Components/ResourceSetter.gd" id="3_inlc1"]
|
||||
[ext_resource type="Shader" uid="uid://x7lh23cq2u38" path="res://Scenes/Parts/ShadowShader.gdshader" id="3_xovp3"]
|
||||
[ext_resource type="Script" uid="uid://cmvlgsjmsk0v5" path="res://Scripts/Classes/Resources/ThemedResource.gd" id="4_xovp3"]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_q33f0"]
|
||||
shader = ExtResource("3_xovp3")
|
||||
shader_parameter/shadow_colour = Vector4(0, 0, 0, 1)
|
||||
shader_parameter/allow_transparency = true
|
||||
|
||||
[sub_resource type="Resource" id="Resource_q33f0"]
|
||||
script = ExtResource("4_xovp3")
|
||||
Overworld = ExtResource("2_btd7m")
|
||||
metadata/_custom_type_script = "uid://cmvlgsjmsk0v5"
|
||||
|
||||
[node name="ScoreNote" instance=ExtResource("1_t77qk")]
|
||||
visibility_layer = 2
|
||||
|
||||
[node name="Label" parent="Container" index="0"]
|
||||
visible = false
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="Container" index="1"]
|
||||
layout_mode = 2
|
||||
texture = ExtResource("2_btd7m")
|
||||
|
||||
[node name="TextureRect2" type="TextureRect" parent="Container/TextureRect" index="0"]
|
||||
show_behind_parent = true
|
||||
material = SubResource("ShaderMaterial_q33f0")
|
||||
layout_mode = 0
|
||||
offset_left = 1.0
|
||||
offset_top = 1.0
|
||||
offset_right = 17.0
|
||||
offset_bottom = 9.0
|
||||
texture = ExtResource("2_btd7m")
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="Container/TextureRect/TextureRect2" index="0" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_inlc1")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
themed_resource = SubResource("Resource_q33f0")
|
||||
metadata/_custom_type_script = "uid://cq6f682453q6o"
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="Container/TextureRect" index="1" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_inlc1")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
themed_resource = SubResource("Resource_q33f0")
|
||||
metadata/_custom_type_script = "uid://cq6f682453q6o"
|
||||
|
||||
[node name="TextShadowColourChanger" parent="." index="2" node_paths=PackedStringArray("shadow_node")]
|
||||
shadow_node = NodePath("../Container/TextureRect/TextureRect2")
|
88
Scenes/Parts/Particles/BlockDestructionParticles.tscn
Normal file
88
Scenes/Parts/Particles/BlockDestructionParticles.tscn
Normal file
@@ -0,0 +1,88 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://cyw7kk1em8h16"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://f50767fxajwh" path="res://Scripts/Parts/BlockDestructionParticles.gd" id="1_amyt7"]
|
||||
[ext_resource type="Texture2D" uid="uid://dt0qtxu2l646n" path="res://Assets/Sprites/Tilesets/Terrain/Overworld.png" id="2_8gw0u"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_8gw0u"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Tilesets/Terrain/TerrainTiles.json" id="4_8gw0u"]
|
||||
|
||||
[node name="BlockDestructionParticles" type="Node2D"]
|
||||
z_index = 5
|
||||
script = ExtResource("1_amyt7")
|
||||
|
||||
[node name="TL" type="Node2D" parent="."]
|
||||
position = Vector2(-4, -4)
|
||||
|
||||
[node name="Sprite" type="Sprite2D" parent="TL"]
|
||||
texture = ExtResource("2_8gw0u")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(0, 160, 16, 16)
|
||||
region_filter_clip_enabled = true
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="TL/Sprite" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_8gw0u")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_8gw0u")
|
||||
use_cache = false
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="TR" type="Node2D" parent="."]
|
||||
position = Vector2(4, -4)
|
||||
|
||||
[node name="Sprite" type="Sprite2D" parent="TR"]
|
||||
texture = ExtResource("2_8gw0u")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(0, 160, 16, 16)
|
||||
region_filter_clip_enabled = true
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="TR/Sprite" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_8gw0u")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_8gw0u")
|
||||
use_cache = false
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="BL" type="Node2D" parent="."]
|
||||
position = Vector2(-4, 4)
|
||||
|
||||
[node name="Sprite" type="Sprite2D" parent="BL"]
|
||||
texture = ExtResource("2_8gw0u")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(0, 160, 16, 16)
|
||||
region_filter_clip_enabled = true
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="BL/Sprite" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_8gw0u")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_8gw0u")
|
||||
use_cache = false
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="BR" type="Node2D" parent="."]
|
||||
position = Vector2(4, 4)
|
||||
|
||||
[node name="Sprite" type="Sprite2D" parent="BR"]
|
||||
texture = ExtResource("2_8gw0u")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(0, 160, 16, 16)
|
||||
region_filter_clip_enabled = true
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="BR/Sprite" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_8gw0u")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_8gw0u")
|
||||
use_cache = false
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="Timer" type="Timer" parent="."]
|
||||
wait_time = 3.0
|
||||
autostart = true
|
||||
|
||||
[connection signal="timeout" from="Timer" to="." method="queue_free"]
|
74
Scenes/Parts/Particles/IcicleDestruction.tscn
Normal file
74
Scenes/Parts/Particles/IcicleDestruction.tscn
Normal file
@@ -0,0 +1,74 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://cnoc8w00gkwba"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://f50767fxajwh" path="res://Scripts/Parts/BlockDestructionParticles.gd" id="1_grxvh"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="2_3y2s4"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Particles/IcicleDestructionParticles.json" id="3_rw0un"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_8gw0u"]
|
||||
region = Rect2(0, 0, 8, 8)
|
||||
|
||||
[node name="BlockDestructionParticles" type="Node2D"]
|
||||
z_index = 5
|
||||
script = ExtResource("1_grxvh")
|
||||
|
||||
[node name="TL" type="Node2D" parent="."]
|
||||
position = Vector2(-4, -4)
|
||||
|
||||
[node name="Sprite" type="Sprite2D" parent="TL"]
|
||||
texture = SubResource("AtlasTexture_8gw0u")
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="TL" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("2_3y2s4")
|
||||
node_to_affect = NodePath("../Sprite")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("3_rw0un")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="TR" type="Node2D" parent="."]
|
||||
position = Vector2(4, -4)
|
||||
|
||||
[node name="Sprite" type="Sprite2D" parent="TR"]
|
||||
texture = SubResource("AtlasTexture_8gw0u")
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="TR" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("2_3y2s4")
|
||||
node_to_affect = NodePath("../Sprite")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("3_rw0un")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="BL" type="Node2D" parent="."]
|
||||
position = Vector2(-4, 4)
|
||||
|
||||
[node name="Sprite" type="Sprite2D" parent="BL"]
|
||||
texture = SubResource("AtlasTexture_8gw0u")
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="BL" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("2_3y2s4")
|
||||
node_to_affect = NodePath("../Sprite")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("3_rw0un")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="BR" type="Node2D" parent="."]
|
||||
position = Vector2(4, 4)
|
||||
|
||||
[node name="Sprite" type="Sprite2D" parent="BR"]
|
||||
texture = SubResource("AtlasTexture_8gw0u")
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="BR" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("2_3y2s4")
|
||||
node_to_affect = NodePath("../Sprite")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("3_rw0un")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="Timer" type="Timer" parent="."]
|
||||
wait_time = 3.0
|
||||
autostart = true
|
||||
|
||||
[connection signal="timeout" from="Timer" to="." method="queue_free"]
|
68
Scenes/Parts/PipeArea.tscn
Normal file
68
Scenes/Parts/PipeArea.tscn
Normal file
@@ -0,0 +1,68 @@
|
||||
[gd_scene load_steps=8 format=3 uid="uid://dkgu57is78lro"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://c8yio3lpcsvqu" path="res://Assets/Sprites/UI/PipeArrow.png" id="1_5qh6k"]
|
||||
[ext_resource type="Script" uid="uid://bqqbvhchdvhyv" path="res://Scripts/Classes/Entities/PipeArea.gd" id="1_w8y82"]
|
||||
[ext_resource type="Script" uid="uid://ctfbuoxtnnl0q" path="res://Scripts/Classes/Components/EditorPropertyExposer.gd" id="3_0pvle"]
|
||||
[ext_resource type="Texture2D" uid="uid://dlldh5aks0wff" path="res://Assets/Sprites/Editor/GhostTile.png" id="3_4vmio"]
|
||||
[ext_resource type="PackedScene" uid="uid://dse5pwhodrqcr" path="res://Scenes/Prefabs/Editor/EditorProperties/TilePropertyIntRangeSpin.tscn" id="4_g36rp"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_lv0oh"]
|
||||
size = Vector2(16, 16)
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_5qh6k"]
|
||||
size = Vector2(4, 4)
|
||||
|
||||
[node name="PipeArea" type="Node2D" groups=["Pipes"]]
|
||||
script = ExtResource("1_w8y82")
|
||||
target_level = "uid://gbcmqonky63j"
|
||||
|
||||
[node name="Visual" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource("RectangleShape2D_lv0oh")
|
||||
debug_color = Color(0, 0.6, 0, 0.419608)
|
||||
|
||||
[node name="Hitbox" type="Area2D" parent="."]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Hitbox"]
|
||||
shape = SubResource("RectangleShape2D_5qh6k")
|
||||
|
||||
[node name="ArrowJoint" type="Node2D" parent="."]
|
||||
|
||||
[node name="Arrow" type="Sprite2D" parent="ArrowJoint"]
|
||||
position = Vector2(0, -8)
|
||||
texture = ExtResource("1_5qh6k")
|
||||
|
||||
[node name="RemoteTransform2D" type="RemoteTransform2D" parent="ArrowJoint"]
|
||||
position = Vector2(0, 8)
|
||||
remote_path = NodePath("../../Node2D")
|
||||
update_rotation = false
|
||||
update_scale = false
|
||||
|
||||
[node name="TargetPoint" type="Node2D" parent="ArrowJoint"]
|
||||
position = Vector2(0, 32)
|
||||
|
||||
[node name="Node2D" type="Node2D" parent="."]
|
||||
z_index = 50
|
||||
z_as_relative = false
|
||||
position = Vector2(-3.496911e-07, 8)
|
||||
|
||||
[node name="CenterContainer" type="CenterContainer" parent="Node2D"]
|
||||
use_top_left = true
|
||||
|
||||
[node name="Label" type="Label" parent="Node2D/CenterContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_shadow_color = Color(0, 0, 0, 1)
|
||||
text = "0"
|
||||
|
||||
[node name="ColorRect" type="TextureRect" parent="Node2D"]
|
||||
show_behind_parent = true
|
||||
offset_left = -16.0
|
||||
offset_top = -8.0
|
||||
offset_bottom = 8.0
|
||||
texture = ExtResource("3_4vmio")
|
||||
|
||||
[node name="EditorPropertyExposer" type="Node" parent="."]
|
||||
script = ExtResource("3_0pvle")
|
||||
properties = Array[String](["enter_direction", "pipe_id", "target_sub_level", "exit_only"])
|
||||
properties_force_selector = Dictionary[String, PackedScene]({
|
||||
"pipe_id": ExtResource("4_g36rp")
|
||||
})
|
38
Scenes/Parts/PostProcessingNode.tscn
Executable file
38
Scenes/Parts/PostProcessingNode.tscn
Executable file
@@ -0,0 +1,38 @@
|
||||
[gd_scene load_steps=6 format=3 uid="uid://dcilapu1q4pgk"]
|
||||
|
||||
[ext_resource type="Shader" uid="uid://dic2q1vuqqxce" path="res://Scenes/Parts/colour_palette.gdshader" id="1_4tvwn"]
|
||||
[ext_resource type="Script" uid="uid://bt8mlibikh6ah" path="res://Scripts/Parts/PostProcessingNode.gd" id="1_enso0"]
|
||||
[ext_resource type="Texture2D" uid="uid://cmsts1l0f8es7" path="res://Assets/Sprites/NESNTSC.png" id="2_enso0"]
|
||||
[ext_resource type="PackedScene" uid="uid://cinr6kcbmo6gr" path="res://Scenes/Parts/DropShadowRenderer.tscn" id="3_r14f3"]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_wyqk4"]
|
||||
shader = ExtResource("1_4tvwn")
|
||||
shader_parameter/palette_texture = ExtResource("2_enso0")
|
||||
shader_parameter/shadow_colour = Color(0, 0, 0, 1)
|
||||
shader_parameter/y_offset = 1.0
|
||||
shader_parameter/palette_size = 64
|
||||
shader_parameter/is_debug = false
|
||||
|
||||
[node name="PostProcessingNode" type="Node"]
|
||||
script = ExtResource("1_enso0")
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="."]
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="CanvasLayer"]
|
||||
unique_name_in_owner = true
|
||||
visibility_layer = 2
|
||||
z_index = 4096
|
||||
z_as_relative = false
|
||||
material = SubResource("ShaderMaterial_wyqk4")
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -2728.0
|
||||
offset_top = -1328.0
|
||||
offset_right = 7271.0
|
||||
offset_bottom = 98671.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
color = Color(1, 1, 1, 0)
|
||||
|
||||
[node name="DropShadow" parent="." instance=ExtResource("3_r14f3")]
|
49
Scenes/Parts/ResourcePackConfigOptionNode.tscn
Normal file
49
Scenes/Parts/ResourcePackConfigOptionNode.tscn
Normal file
@@ -0,0 +1,49 @@
|
||||
[gd_scene load_steps=8 format=3 uid="uid://c5ea03ob6ncq7"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cu43fwblwup82" path="res://Scripts/UI/ResourcePackConfigOptionNode.gd" id="1_dgc7v"]
|
||||
[ext_resource type="Texture2D" uid="uid://3p2l7rec0gh5" path="res://Assets/Sprites/UI/Cursor.png" id="2_p6kha"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_ru6uv"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/UI/Cursor.json" id="4_7f2hm"]
|
||||
[ext_resource type="Script" uid="uid://co6tjg3w6qpd8" path="res://Scripts/Parts/LabelFontChanger.gd" id="5_s1byh"]
|
||||
[ext_resource type="Resource" uid="uid://8dcuxbc3h2u2" path="res://Resources/ThemedResources/Font.tres" id="6_aqhx3"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_qti1l"]
|
||||
atlas = ExtResource("2_p6kha")
|
||||
region = Rect2(0, 0, 8, 8)
|
||||
|
||||
[node name="PackOptionNode" type="HBoxContainer"]
|
||||
offset_right = 253.0
|
||||
offset_bottom = 8.0
|
||||
theme_override_constants/separation = 0
|
||||
script = ExtResource("1_dgc7v")
|
||||
|
||||
[node name="Cursor" type="TextureRect" parent="."]
|
||||
layout_mode = 2
|
||||
texture = SubResource("AtlasTexture_qti1l")
|
||||
stretch_mode = 3
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="Cursor" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_ru6uv")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_7f2hm")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="Title" type="Label" parent="."]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "mode:"
|
||||
uppercase = true
|
||||
|
||||
[node name="Value" type="Label" parent="."]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 10
|
||||
text = "◄windowed►"
|
||||
uppercase = true
|
||||
|
||||
[node name="LabelFontChanger" type="Node" parent="." node_paths=PackedStringArray("labels")]
|
||||
script = ExtResource("5_s1byh")
|
||||
labels = [NodePath("../Title"), NodePath("../Value")]
|
||||
resource = ExtResource("6_aqhx3")
|
||||
metadata/_custom_type_script = "uid://co6tjg3w6qpd8"
|
6
Scenes/Parts/ResourcePackTemplateCreator.tscn
Normal file
6
Scenes/Parts/ResourcePackTemplateCreator.tscn
Normal file
@@ -0,0 +1,6 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://bh2jvsv1dluwe"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dcx77vdfvwq4y" path="res://Scripts/Parts/ResourcePackTemplateCreator.gd" id="1_xmawd"]
|
||||
|
||||
[node name="ResourcePackTemplateCreator" type="Node"]
|
||||
script = ExtResource("1_xmawd")
|
117
Scenes/Parts/ScoreNote.tscn
Normal file
117
Scenes/Parts/ScoreNote.tscn
Normal file
@@ -0,0 +1,117 @@
|
||||
[gd_scene load_steps=6 format=3 uid="uid://b5feqg7nwyety"]
|
||||
|
||||
[ext_resource type="FontVariation" uid="uid://cflgloiossd8a" path="res://Resources/ThemedResources/ScoreFont.tres" id="1_il157"]
|
||||
[ext_resource type="Script" uid="uid://dt2p68xl462v2" path="res://Scripts/Parts/TextShadowColourChanger.gd" id="2_il157"]
|
||||
|
||||
[sub_resource type="Animation" id="Animation_qwh6q"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath(".:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 0)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("..:modulate")
|
||||
tracks/1/interp = 0
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Color(1, 1, 1, 1)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_il157"]
|
||||
resource_name = "Rise"
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath(".:position")
|
||||
tracks/0/interp = 2
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.5),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 0), Vector2(0, -32)]
|
||||
}
|
||||
tracks/1/type = "method"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("..")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0.53333336),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"values": [{
|
||||
"args": [],
|
||||
"method": &"queue_free"
|
||||
}]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("..:modulate")
|
||||
tracks/2/interp = 0
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0, 0.4, 0.5),
|
||||
"transitions": PackedFloat32Array(1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [Color(1, 1, 1, 1), Color(1, 1, 1, 1), Color(1, 1, 1, 0)]
|
||||
}
|
||||
tracks/3/type = "method"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("../..")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(),
|
||||
"transitions": PackedFloat32Array(),
|
||||
"values": []
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_uog6q"]
|
||||
_data = {
|
||||
&"RESET": SubResource("Animation_qwh6q"),
|
||||
&"Rise": SubResource("Animation_il157")
|
||||
}
|
||||
|
||||
[node name="ScoreNote" type="Node2D"]
|
||||
process_mode = 3
|
||||
z_index = 50
|
||||
z_as_relative = false
|
||||
|
||||
[node name="Container" type="CenterContainer" parent="."]
|
||||
use_top_left = true
|
||||
|
||||
[node name="Label" type="Label" parent="Container"]
|
||||
visibility_layer = 2
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_shadow_color = Color(0, 0, 0, 1)
|
||||
theme_override_fonts/font = ExtResource("1_il157")
|
||||
text = "8"
|
||||
|
||||
[node name="Animation" type="AnimationPlayer" parent="."]
|
||||
root_node = NodePath("../Container")
|
||||
libraries = {
|
||||
&"": SubResource("AnimationLibrary_uog6q")
|
||||
}
|
||||
autoplay = "Rise"
|
||||
speed_scale = 0.7
|
||||
|
||||
[node name="TextShadowColourChanger" type="Node" parent="." node_paths=PackedStringArray("labels")]
|
||||
script = ExtResource("2_il157")
|
||||
labels = [NodePath("../Container/Label")]
|
||||
metadata/_custom_type_script = "uid://dt2p68xl462v2"
|
53
Scenes/Parts/SelectableInputOptionNode.tscn
Normal file
53
Scenes/Parts/SelectableInputOptionNode.tscn
Normal file
@@ -0,0 +1,53 @@
|
||||
[gd_scene load_steps=8 format=3 uid="uid://bflpf2fdtbgkt"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://w6t6q5vfow5p" path="res://Scripts/UI/SelectableInputOptionNode.gd" id="1_74gxt"]
|
||||
[ext_resource type="Texture2D" uid="uid://3p2l7rec0gh5" path="res://Assets/Sprites/UI/Cursor.png" id="2_voltx"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_voltx"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/UI/Cursor.json" id="4_q1ixt"]
|
||||
[ext_resource type="Script" uid="uid://co6tjg3w6qpd8" path="res://Scripts/Parts/LabelFontChanger.gd" id="5_voltx"]
|
||||
[ext_resource type="Resource" uid="uid://8dcuxbc3h2u2" path="res://Resources/ThemedResources/Font.tres" id="6_q1ixt"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_qti1l"]
|
||||
atlas = ExtResource("2_voltx")
|
||||
region = Rect2(0, 0, 8, 8)
|
||||
|
||||
[node name="SelectableOptionNode" type="HBoxContainer"]
|
||||
theme_override_constants/separation = 0
|
||||
script = ExtResource("1_74gxt")
|
||||
settings_category = "keyboard"
|
||||
|
||||
[node name="Cursor" type="TextureRect" parent="."]
|
||||
layout_mode = 2
|
||||
texture = SubResource("AtlasTexture_qti1l")
|
||||
stretch_mode = 3
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="Cursor" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_voltx")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_q1ixt")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="Title" type="Label" parent="."]
|
||||
layout_mode = 2
|
||||
text = "action:"
|
||||
uppercase = true
|
||||
|
||||
[node name="Value" type="Label" parent="."]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 10
|
||||
text = "press any.."
|
||||
uppercase = true
|
||||
|
||||
[node name="Timer" type="Timer" parent="."]
|
||||
wait_time = 3.0
|
||||
one_shot = true
|
||||
|
||||
[node name="LabelFontChanger" type="Node" parent="." node_paths=PackedStringArray("labels")]
|
||||
script = ExtResource("5_voltx")
|
||||
labels = [NodePath("../Title"), NodePath("../Value")]
|
||||
resource = ExtResource("6_q1ixt")
|
||||
metadata/_custom_type_script = "uid://co6tjg3w6qpd8"
|
||||
|
||||
[connection signal="timeout" from="Timer" to="." method="cancel_remap"]
|
47
Scenes/Parts/SelectableLabel.tscn
Normal file
47
Scenes/Parts/SelectableLabel.tscn
Normal file
@@ -0,0 +1,47 @@
|
||||
[gd_scene load_steps=7 format=3 uid="uid://bmn81e10obpjv"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://c8xv30jxw6uum" path="res://Scripts/UI/SelectableLabel.gd" id="1_bg4p8"]
|
||||
[ext_resource type="Texture2D" uid="uid://3p2l7rec0gh5" path="res://Assets/Sprites/UI/Cursor.png" id="2_rfswy"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_tbqr7"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/UI/Cursor.json" id="4_2podj"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_bg4p8"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_wit67"]
|
||||
atlas = ExtResource("2_rfswy")
|
||||
region = Rect2(0, 0, 8, 8)
|
||||
|
||||
[node name="SelectableLabel" type="Label"]
|
||||
offset_right = 40.0
|
||||
offset_bottom = 16.0
|
||||
focus_mode = 2
|
||||
theme_override_styles/focus = SubResource("StyleBoxEmpty_bg4p8")
|
||||
text = "adada"
|
||||
uppercase = true
|
||||
script = ExtResource("1_bg4p8")
|
||||
|
||||
[node name="Cursor" type="TextureRect" parent="."]
|
||||
visible = false
|
||||
layout_mode = 1
|
||||
anchors_preset = -1
|
||||
anchor_top = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -6.0
|
||||
offset_top = -4.0
|
||||
offset_bottom = 4.0
|
||||
grow_vertical = 2
|
||||
texture = SubResource("AtlasTexture_wit67")
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="Cursor" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_tbqr7")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_2podj")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[connection signal="focus_entered" from="." to="Cursor" method="show"]
|
||||
[connection signal="focus_entered" from="." to="." method="toggle_process" binds= [true]]
|
||||
[connection signal="focus_exited" from="." to="Cursor" method="hide"]
|
||||
[connection signal="focus_exited" from="." to="." method="toggle_process" binds= [false]]
|
||||
[connection signal="ready" from="." to="." method="toggle_process" binds= [false]]
|
43
Scenes/Parts/SelectableOptionButton.tscn
Normal file
43
Scenes/Parts/SelectableOptionButton.tscn
Normal file
@@ -0,0 +1,43 @@
|
||||
[gd_scene load_steps=8 format=3 uid="uid://bhaekyi2jfwok"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://b8vx7oox0ca8p" path="res://Scripts/UI/SelectableOptionButton.gd" id="1_fm273"]
|
||||
[ext_resource type="Texture2D" uid="uid://3p2l7rec0gh5" path="res://Assets/Sprites/UI/Cursor.png" id="2_ixmqv"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_flns2"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/UI/Cursor.json" id="4_hus4q"]
|
||||
[ext_resource type="Script" uid="uid://co6tjg3w6qpd8" path="res://Scripts/Parts/LabelFontChanger.gd" id="5_flns2"]
|
||||
[ext_resource type="Resource" uid="uid://8dcuxbc3h2u2" path="res://Resources/ThemedResources/Font.tres" id="6_hus4q"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_qti1l"]
|
||||
atlas = ExtResource("2_ixmqv")
|
||||
region = Rect2(0, 0, 8, 8)
|
||||
|
||||
[node name="SelectableOptionNode" type="HBoxContainer"]
|
||||
offset_right = 253.0
|
||||
offset_bottom = 8.0
|
||||
theme_override_constants/separation = 0
|
||||
script = ExtResource("1_fm273")
|
||||
|
||||
[node name="Cursor" type="TextureRect" parent="."]
|
||||
layout_mode = 2
|
||||
texture = SubResource("AtlasTexture_qti1l")
|
||||
stretch_mode = 3
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="Cursor" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_flns2")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_hus4q")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="Title" type="Label" parent="."]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "mode:"
|
||||
uppercase = true
|
||||
|
||||
[node name="LabelFontChanger" type="Node" parent="." node_paths=PackedStringArray("labels")]
|
||||
script = ExtResource("5_flns2")
|
||||
labels = [NodePath("../Title")]
|
||||
resource = ExtResource("6_hus4q")
|
||||
metadata/_custom_type_script = "uid://co6tjg3w6qpd8"
|
61
Scenes/Parts/SelectableOptionLabel.tscn
Normal file
61
Scenes/Parts/SelectableOptionLabel.tscn
Normal file
@@ -0,0 +1,61 @@
|
||||
[gd_scene load_steps=9 format=3 uid="uid://ctw1isl6cmayh"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://d0tcqr0x101j" path="res://Scripts/UI/SelectableOptionLabel.gd" id="1_o5udk"]
|
||||
[ext_resource type="Texture2D" uid="uid://3p2l7rec0gh5" path="res://Assets/Sprites/UI/Cursor.png" id="2_o5udk"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_7ee3v"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/UI/Cursor.json" id="4_a8eby"]
|
||||
[ext_resource type="Script" uid="uid://co6tjg3w6qpd8" path="res://Scripts/Parts/LabelFontChanger.gd" id="5_7ee3v"]
|
||||
[ext_resource type="Resource" uid="uid://8dcuxbc3h2u2" path="res://Resources/ThemedResources/Font.tres" id="6_a8eby"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_bg4p8"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_wit67"]
|
||||
atlas = ExtResource("2_o5udk")
|
||||
region = Rect2(0, 0, 8, 8)
|
||||
|
||||
[node name="SelectableOptionLabel" type="HBoxContainer"]
|
||||
offset_right = 184.0
|
||||
offset_bottom = 16.0
|
||||
focus_mode = 2
|
||||
theme_override_constants/separation = -8
|
||||
script = ExtResource("1_o5udk")
|
||||
|
||||
[node name="Title" type="Label" parent="."]
|
||||
layout_mode = 2
|
||||
theme_override_styles/focus = SubResource("StyleBoxEmpty_bg4p8")
|
||||
text = "adada:"
|
||||
uppercase = true
|
||||
|
||||
[node name="Cursor" type="TextureRect" parent="Title"]
|
||||
layout_mode = 1
|
||||
anchors_preset = -1
|
||||
anchor_top = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -6.0
|
||||
offset_top = -4.0
|
||||
offset_bottom = 4.0
|
||||
grow_vertical = 2
|
||||
texture = SubResource("AtlasTexture_wit67")
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="Title/Cursor" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_7ee3v")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_a8eby")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="Value" type="Label" parent="."]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 8
|
||||
text = "◄aduhauda►"
|
||||
uppercase = true
|
||||
|
||||
[node name="LabelFontChanger" type="Node" parent="." node_paths=PackedStringArray("labels")]
|
||||
script = ExtResource("5_7ee3v")
|
||||
labels = [NodePath("../Title"), NodePath("../Value")]
|
||||
resource = ExtResource("6_a8eby")
|
||||
metadata/_custom_type_script = "uid://co6tjg3w6qpd8"
|
||||
|
||||
[connection signal="focus_entered" from="." to="." method="set_selected" binds= [true]]
|
||||
[connection signal="focus_exited" from="." to="." method="set_selected" binds= [false]]
|
97
Scenes/Parts/SelectableOptionNode.tscn
Normal file
97
Scenes/Parts/SelectableOptionNode.tscn
Normal file
@@ -0,0 +1,97 @@
|
||||
[gd_scene load_steps=8 format=3 uid="uid://dbvy0rhwpv4w4"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://vm4py6u87p6d" path="res://Scripts/UI/SelectableOptionNode.gd" id="1_qeqfu"]
|
||||
[ext_resource type="Texture2D" uid="uid://3p2l7rec0gh5" path="res://Assets/Sprites/UI/Cursor.png" id="1_r2b5m"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_on6n3"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/UI/Cursor.json" id="4_mljen"]
|
||||
[ext_resource type="Script" uid="uid://d63p6qr5a748" path="res://Scripts/UI/AutoScrollContainer.gd" id="5_mljen"]
|
||||
[ext_resource type="Script" uid="uid://co6tjg3w6qpd8" path="res://Scripts/Parts/LabelFontChanger.gd" id="5_on6n3"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_qti1l"]
|
||||
atlas = ExtResource("1_r2b5m")
|
||||
region = Rect2(0, 0, 8, 8)
|
||||
|
||||
[node name="SelectableOptionNode" type="HBoxContainer"]
|
||||
offset_right = 253.0
|
||||
offset_bottom = 8.0
|
||||
focus_mode = 2
|
||||
theme_override_constants/separation = 0
|
||||
script = ExtResource("1_qeqfu")
|
||||
|
||||
[node name="Cursor" type="Control" parent="."]
|
||||
custom_minimum_size = Vector2(8, 0)
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Cursor" type="TextureRect" parent="Cursor"]
|
||||
layout_mode = 0
|
||||
offset_top = 4.0
|
||||
offset_right = 8.0
|
||||
offset_bottom = 12.0
|
||||
texture = SubResource("AtlasTexture_qti1l")
|
||||
stretch_mode = 2
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="Cursor/Cursor" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_on6n3")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_mljen")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="AutoScrollContainer" type="ScrollContainer" parent="."]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
horizontal_scroll_mode = 3
|
||||
vertical_scroll_mode = 0
|
||||
script = ExtResource("5_mljen")
|
||||
metadata/_custom_type_script = "uid://d63p6qr5a748"
|
||||
|
||||
[node name="Title" type="Label" parent="AutoScrollContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "modeadpiawjda:"
|
||||
uppercase = true
|
||||
|
||||
[node name="LabelFontChanger" type="Node" parent="." node_paths=PackedStringArray("labels")]
|
||||
script = ExtResource("5_on6n3")
|
||||
labels = [NodePath("../AutoScrollContainer/Title"), NodePath("../HBoxContainer/AutoScrollContainer2/Value")]
|
||||
metadata/_custom_type_script = "uid://co6tjg3w6qpd8"
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="."]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = -4
|
||||
|
||||
[node name="LeftArrow" type="Label" parent="HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
text = "◄"
|
||||
uppercase = true
|
||||
|
||||
[node name="AutoScrollContainer2" type="ScrollContainer" parent="HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
custom_minimum_size = Vector2(56, 0)
|
||||
layout_mode = 2
|
||||
horizontal_scroll_mode = 3
|
||||
vertical_scroll_mode = 0
|
||||
script = ExtResource("5_mljen")
|
||||
is_active = true
|
||||
auto_minimum_resize = true
|
||||
metadata/_custom_type_script = "uid://d63p6qr5a748"
|
||||
|
||||
[node name="Value" type="Label" parent="HBoxContainer/AutoScrollContainer2"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 10
|
||||
text = "aaaaaa"
|
||||
horizontal_alignment = 1
|
||||
uppercase = true
|
||||
|
||||
[node name="RightArrow" type="Label" parent="HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
text = "►"
|
||||
uppercase = true
|
||||
|
||||
[connection signal="focus_entered" from="." to="." method="set_selected" binds= [true]]
|
||||
[connection signal="focus_exited" from="." to="." method="set_selected" binds= [false]]
|
66
Scenes/Parts/SelectableSliderNode.tscn
Normal file
66
Scenes/Parts/SelectableSliderNode.tscn
Normal file
@@ -0,0 +1,66 @@
|
||||
[gd_scene load_steps=10 format=3 uid="uid://dtiqcfrw110kd"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cufb1mxff7b8f" path="res://Scripts/UI/SelectableSliderNode.gd" id="1_ro726"]
|
||||
[ext_resource type="Texture2D" uid="uid://3p2l7rec0gh5" path="res://Assets/Sprites/UI/Cursor.png" id="2_rggaq"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_5rt0a"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/UI/Cursor.json" id="4_b21k4"]
|
||||
[ext_resource type="AudioStream" uid="uid://drs3md0tuek2w" path="res://Assets/Audio/SFX/Beep.wav" id="4_rggaq"]
|
||||
[ext_resource type="Script" uid="uid://d63p6qr5a748" path="res://Scripts/UI/AutoScrollContainer.gd" id="5_b21k4"]
|
||||
[ext_resource type="Script" uid="uid://co6tjg3w6qpd8" path="res://Scripts/Parts/LabelFontChanger.gd" id="6_5rt0a"]
|
||||
[ext_resource type="Resource" uid="uid://8dcuxbc3h2u2" path="res://Resources/ThemedResources/Font.tres" id="7_b21k4"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_vnuis"]
|
||||
atlas = ExtResource("2_rggaq")
|
||||
region = Rect2(0, 0, 8, 8)
|
||||
|
||||
[node name="SelectableOptionNode" type="HBoxContainer"]
|
||||
offset_right = 256.0
|
||||
offset_bottom = 16.0
|
||||
size_flags_horizontal = 3
|
||||
theme_override_constants/separation = 0
|
||||
script = ExtResource("1_ro726")
|
||||
selected = true
|
||||
|
||||
[node name="Cursor" type="TextureRect" parent="."]
|
||||
layout_mode = 2
|
||||
texture = SubResource("AtlasTexture_vnuis")
|
||||
stretch_mode = 3
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="Cursor" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_5rt0a")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_b21k4")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="AutoScrollContainer" type="ScrollContainer" parent="."]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
horizontal_scroll_mode = 3
|
||||
vertical_scroll_mode = 0
|
||||
script = ExtResource("5_b21k4")
|
||||
metadata/_custom_type_script = "uid://d63p6qr5a748"
|
||||
|
||||
[node name="Title" type="Label" parent="AutoScrollContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
text = "mode:"
|
||||
uppercase = true
|
||||
|
||||
[node name="Value" type="Label" parent="."]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 10
|
||||
text = "◄├-----┼----┤►"
|
||||
uppercase = true
|
||||
|
||||
[node name="SFX" type="AudioStreamPlayer" parent="."]
|
||||
stream = ExtResource("4_rggaq")
|
||||
volume_db = 10.0
|
||||
bus = &"SFX"
|
||||
|
||||
[node name="LabelFontChanger" type="Node" parent="." node_paths=PackedStringArray("labels")]
|
||||
script = ExtResource("6_5rt0a")
|
||||
labels = [NodePath("../AutoScrollContainer/Title"), NodePath("../Value")]
|
||||
resource = ExtResource("7_b21k4")
|
||||
metadata/_custom_type_script = "uid://co6tjg3w6qpd8"
|
9
Scenes/Parts/ShadowShader.gdshader
Normal file
9
Scenes/Parts/ShadowShader.gdshader
Normal file
@@ -0,0 +1,9 @@
|
||||
shader_type canvas_item;
|
||||
|
||||
uniform vec4 shadow_colour;
|
||||
|
||||
uniform bool allow_transparency = true;
|
||||
|
||||
void fragment() {
|
||||
COLOR = vec4(shadow_colour.r, shadow_colour.g, shadow_colour.b, COLOR.a * (shadow_colour.a * float(allow_transparency || COLOR.a == 1.0)));
|
||||
}
|
1
Scenes/Parts/ShadowShader.gdshader.uid
Executable file
1
Scenes/Parts/ShadowShader.gdshader.uid
Executable file
@@ -0,0 +1 @@
|
||||
uid://x7lh23cq2u38
|
90
Scenes/Parts/SmallCastleVisual.tscn
Normal file
90
Scenes/Parts/SmallCastleVisual.tscn
Normal file
@@ -0,0 +1,90 @@
|
||||
[gd_scene load_steps=11 format=4 uid="uid://qn4g0qkjcuiy"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cdvxqkeqa7en5" path="res://Scripts/Parts/CastleVisual.gd" id="1_oxmfh"]
|
||||
[ext_resource type="Texture2D" uid="uid://dt0qtxu2l646n" path="res://Assets/Sprites/Tilesets/Terrain/Overworld.png" id="2_tt5sy"]
|
||||
[ext_resource type="Script" uid="uid://73oviwf6bbys" path="res://Scripts/Classes/Components/TilesetTextureSetter.gd" id="2_ulvy5"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Tilesets/Terrain/TerrainTiles.json" id="5_my1op"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="7_vjwyw"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Tilesets/SmallCastle.json" id="8_tt5sy"]
|
||||
|
||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_80q5s"]
|
||||
texture = ExtResource("2_tt5sy")
|
||||
5:10/0 = 0
|
||||
6:10/0 = 0
|
||||
6:7/0 = 0
|
||||
7:7/0 = 0
|
||||
3:10/0 = 0
|
||||
4:10/0 = 0
|
||||
|
||||
[sub_resource type="TileSet" id="TileSet_0n6c4"]
|
||||
sources/0 = SubResource("TileSetAtlasSource_80q5s")
|
||||
|
||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_oxmfh"]
|
||||
texture = ExtResource("2_tt5sy")
|
||||
texture_region_size = Vector2i(8, 8)
|
||||
5:10/0 = 0
|
||||
6:10/0 = 0
|
||||
7:10/0 = 0
|
||||
8:10/0 = 0
|
||||
6:7/0 = 0
|
||||
7:7/0 = 0
|
||||
7:20/0 = 0
|
||||
|
||||
[sub_resource type="TileSet" id="TileSet_vjwyw"]
|
||||
tile_size = Vector2i(8, 8)
|
||||
sources/0 = SubResource("TileSetAtlasSource_oxmfh")
|
||||
|
||||
[node name="SmallCastleVisual" type="Node2D" node_paths=PackedStringArray("sprite")]
|
||||
process_mode = 3
|
||||
z_index = -5
|
||||
script = ExtResource("1_oxmfh")
|
||||
sprite = NodePath("Sprite")
|
||||
|
||||
[node name="Tiles" type="TileMapLayer" parent="."]
|
||||
position = Vector2(-8, 8)
|
||||
tile_map_data = PackedByteArray("AAD+////AAAGAAcAAAD+/wAAAAAHAAcAAAD+/wEAAAAHAAcAAAD///7/AAADAAoAAAD/////AAAFAAoAAAD//wAAAAAHAAcAAAD//wEAAAAHAAcAAAAAAP7/AAAHAAcAAAAAAP//AAAFAAoAAAAAAAAAAAAGAAoAAAABAP7/AAAEAAoAAAABAP//AAAFAAoAAAABAAAAAAAHAAcAAAABAAEAAAAHAAcAAAACAP//AAAGAAcAAAACAAAAAAAHAAcAAAACAAEAAAAHAAcAAAD///3/AAAGAAcAAAAAAP3/AAAGAAcAAAABAP3/AAAGAAcAAAA=")
|
||||
tile_set = SubResource("TileSet_0n6c4")
|
||||
|
||||
[node name="TilesetTextureSetter" type="Node" parent="Tiles" node_paths=PackedStringArray("tile_map")]
|
||||
script = ExtResource("2_ulvy5")
|
||||
tile_map = NodePath("..")
|
||||
metadata/_custom_type_script = "uid://73oviwf6bbys"
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="Tiles/TilesetTextureSetter" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("7_vjwyw")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("5_my1op")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="BG" type="TileMapLayer" parent="Tiles"]
|
||||
show_behind_parent = true
|
||||
tile_map_data = PackedByteArray("AAAAAAAAAAAHABQAAAAAAAEAAAAHABQAAAAAAAIAAAAHABQAAAAAAAMAAAAHABQAAAABAAAAAAAHABQAAAABAAEAAAAHABQAAAABAAIAAAAHABQAAAABAAMAAAAHABQAAAA=")
|
||||
tile_set = SubResource("TileSet_vjwyw")
|
||||
|
||||
[node name="TilesetTextureSetter" type="Node" parent="Tiles/BG" node_paths=PackedStringArray("tile_map")]
|
||||
script = ExtResource("2_ulvy5")
|
||||
tile_map = NodePath("..")
|
||||
metadata/_custom_type_script = "uid://73oviwf6bbys"
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="Tiles/BG/TilesetTextureSetter" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("7_vjwyw")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("5_my1op")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="Sprite" type="Sprite2D" parent="."]
|
||||
hframes = 2
|
||||
region_rect = Rect2(0, 0, 80, 80)
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="Sprite" node_paths=PackedStringArray("node_to_affect", "property_node")]
|
||||
script = ExtResource("7_vjwyw")
|
||||
node_to_affect = NodePath("..")
|
||||
property_node = NodePath("../..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("8_tt5sy")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
9
Scenes/Parts/StartCastle.tscn
Executable file
9
Scenes/Parts/StartCastle.tscn
Executable file
@@ -0,0 +1,9 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://githt8ci1xal"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://qn4g0qkjcuiy" path="res://Scenes/Parts/SmallCastleVisual.tscn" id="1_ntu57"]
|
||||
|
||||
[node name="StartCastle" type="Node2D"]
|
||||
self_modulate = Color(0.449099, 0.449099, 0.449099, 1)
|
||||
z_index = -10
|
||||
|
||||
[node name="SmallCastleVisual" parent="." instance=ExtResource("1_ntu57")]
|
61
Scenes/Parts/TeleportPipeArea.tscn
Normal file
61
Scenes/Parts/TeleportPipeArea.tscn
Normal file
@@ -0,0 +1,61 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://c6t324yc5gx7p"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cp4040k6fqwow" path="res://Scripts/Classes/Entities/TeleportPipeArea.gd" id="1_40l7q"]
|
||||
[ext_resource type="Texture2D" uid="uid://c8yio3lpcsvqu" path="res://Assets/Sprites/UI/PipeArrow.png" id="2_fkbuh"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_lv0oh"]
|
||||
size = Vector2(16, 16)
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_5qh6k"]
|
||||
size = Vector2(4, 4)
|
||||
|
||||
[node name="TeleportPipeArea" type="Node2D" groups=["Pipes"]]
|
||||
script = ExtResource("1_40l7q")
|
||||
|
||||
[node name="Visual" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource("RectangleShape2D_lv0oh")
|
||||
debug_color = Color(0, 0.6, 1, 0.419608)
|
||||
|
||||
[node name="Hitbox" type="Area2D" parent="."]
|
||||
visible = false
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Hitbox"]
|
||||
shape = SubResource("RectangleShape2D_5qh6k")
|
||||
|
||||
[node name="ArrowJoint" type="Node2D" parent="."]
|
||||
|
||||
[node name="Arrow" type="Sprite2D" parent="ArrowJoint"]
|
||||
position = Vector2(0, -8)
|
||||
texture = ExtResource("2_fkbuh")
|
||||
|
||||
[node name="RemoteTransform2D" type="RemoteTransform2D" parent="ArrowJoint"]
|
||||
position = Vector2(0, 8)
|
||||
remote_path = NodePath("../../Node2D")
|
||||
update_rotation = false
|
||||
update_scale = false
|
||||
|
||||
[node name="TargetPoint" type="Node2D" parent="ArrowJoint"]
|
||||
position = Vector2(0, 32)
|
||||
|
||||
[node name="Node2D" type="Node2D" parent="."]
|
||||
position = Vector2(-3.496911e-07, 8)
|
||||
|
||||
[node name="CenterContainer" type="CenterContainer" parent="Node2D"]
|
||||
use_top_left = true
|
||||
|
||||
[node name="Label" type="Label" parent="Node2D/CenterContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_shadow_color = Color(0, 0, 0, 1)
|
||||
text = "0"
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="."]
|
||||
layer = 2147483647
|
||||
visible = false
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="CanvasLayer"]
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
color = Color(0, 0, 0, 1)
|
1857
Scenes/Parts/Tiles.tscn
Normal file
1857
Scenes/Parts/Tiles.tscn
Normal file
File diff suppressed because it is too large
Load Diff
22
Scenes/Parts/TrailerText.tscn
Normal file
22
Scenes/Parts/TrailerText.tscn
Normal file
@@ -0,0 +1,22 @@
|
||||
[gd_scene format=3 uid="uid://c0ndjh0wikbuw"]
|
||||
|
||||
[node name="ColorRect" type="ColorRect"]
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
color = Color(0, 1, 0, 1)
|
||||
|
||||
[node name="Label" type="Label" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_colors/font_shadow_color = Color(0, 0, 0, 1)
|
||||
text = "smas pack - hot cross bun"
|
||||
horizontal_alignment = 2
|
||||
autowrap_mode = 2
|
||||
uppercase = true
|
18
Scenes/Parts/WarpPipeArea.tscn
Normal file
18
Scenes/Parts/WarpPipeArea.tscn
Normal file
@@ -0,0 +1,18 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://bhmlkk0b6od2o"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://dkgu57is78lro" path="res://Scenes/Parts/PipeArea.tscn" id="1_38i6l"]
|
||||
[ext_resource type="Script" uid="uid://donxumox54nfo" path="res://Scripts/Parts/WarpPipeArea.gd" id="2_6mf6l"]
|
||||
|
||||
[node name="WarpPipeArea" instance=ExtResource("1_38i6l")]
|
||||
script = ExtResource("2_6mf6l")
|
||||
world_num = 1
|
||||
level_num = 1
|
||||
pipe_id = -1
|
||||
target_level = "uid://ckpuxdilk5u0"
|
||||
|
||||
[node name="Visual" parent="." index="0"]
|
||||
debug_color = Color(1, 0.6, 0, 0.419608)
|
||||
|
||||
[node name="Label" parent="Node2D/CenterContainer" index="0"]
|
||||
text = "1-1"
|
||||
horizontal_alignment = 1
|
11
Scenes/Parts/WarpZoneCameraLimit.tscn
Normal file
11
Scenes/Parts/WarpZoneCameraLimit.tscn
Normal file
@@ -0,0 +1,11 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://b0peppjq7jrcp"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cm3twgvpdyjbw" path="res://Scripts/Parts/WarpZoneCameraLimit.gd" id="1_0xtta"]
|
||||
|
||||
[node name="WarpZoneCameraLimit" type="Node2D"]
|
||||
process_mode = 4
|
||||
script = ExtResource("1_0xtta")
|
||||
|
||||
[node name="VisibleOnScreenEnabler2D" type="VisibleOnScreenEnabler2D" parent="."]
|
||||
|
||||
[connection signal="screen_entered" from="VisibleOnScreenEnabler2D" to="." method="enter_screen"]
|
16
Scenes/Parts/WaterArea.tscn
Executable file
16
Scenes/Parts/WaterArea.tscn
Executable file
@@ -0,0 +1,16 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://e3wkbwtm7sh"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://crsejaxbaluhf" path="res://Scripts/Parts/WaterArea.gd" id="1_u0i0t"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_rn8yh"]
|
||||
resource_local_to_scene = true
|
||||
size = Vector2(16, 16)
|
||||
|
||||
[node name="WaterArea" type="Area2D"]
|
||||
z_index = 4096
|
||||
z_as_relative = false
|
||||
script = ExtResource("1_u0i0t")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource("RectangleShape2D_rn8yh")
|
||||
debug_color = Color(0, 0.6, 0.701961, 1)
|
44
Scenes/Parts/Wing.tscn
Normal file
44
Scenes/Parts/Wing.tscn
Normal file
@@ -0,0 +1,44 @@
|
||||
[gd_scene load_steps=8 format=3 uid="uid://bupy7th8ln45c"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://tidb7wgqraj2" path="res://Assets/Sprites/Items/Wings.png" id="1_r7kgt"]
|
||||
[ext_resource type="Script" uid="uid://caq1qiwmy0mox" path="res://Scripts/Parts/BetterAnimatedSprite.gd" id="2_io3xw"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_r7kgt"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Items/Wings.json" id="4_r7kgt"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_vpjxo"]
|
||||
atlas = ExtResource("1_r7kgt")
|
||||
region = Rect2(0, 0, 16, 16)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_f1h07"]
|
||||
atlas = ExtResource("1_r7kgt")
|
||||
region = Rect2(16, 0, 16, 16)
|
||||
|
||||
[sub_resource type="SpriteFrames" id="SpriteFrames_hpedc"]
|
||||
animations = [{
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_vpjxo")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_f1h07")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"Flap",
|
||||
"speed": 5.0
|
||||
}]
|
||||
|
||||
[node name="Wing" type="AnimatedSprite2D"]
|
||||
sprite_frames = SubResource("SpriteFrames_hpedc")
|
||||
animation = &"Flap"
|
||||
autoplay = "default"
|
||||
frame_progress = 0.594451
|
||||
script = ExtResource("2_io3xw")
|
||||
do_offset = false
|
||||
metadata/_custom_type_script = "uid://caq1qiwmy0mox"
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="." node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_r7kgt")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "sprite_frames"
|
||||
resource_json = ExtResource("4_r7kgt")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
52
Scenes/Parts/colour_palette.gdshader
Normal file
52
Scenes/Parts/colour_palette.gdshader
Normal file
@@ -0,0 +1,52 @@
|
||||
shader_type canvas_item;
|
||||
|
||||
uniform sampler2D screen_texture : hint_screen_texture, filter_nearest;
|
||||
uniform sampler2D palette_texture;
|
||||
uniform vec4 shadow_colour : source_color;
|
||||
uniform float y_offset : hint_range(0, 2);
|
||||
uniform int palette_size = 8;
|
||||
|
||||
uniform bool is_debug = false;
|
||||
|
||||
int get_palette_index(vec4 color) {
|
||||
ivec4 quantized_color = ivec4(floor(color * 255.0 + 0.5)); // Quantize the color
|
||||
|
||||
for (int i = 0; i < palette_size; i++) {
|
||||
float index = (float(i) + 0.5) / float(palette_size); // Sample at the center of each color slot
|
||||
vec4 palette_color = texture(palette_texture, vec2(index, 0.0));
|
||||
|
||||
ivec4 quantized_palette = ivec4(floor(palette_color * 255.0 + 0.5)); // Quantize the palette color
|
||||
|
||||
if (quantized_color == quantized_palette) {
|
||||
return i; // Found exact match
|
||||
}
|
||||
}
|
||||
|
||||
return -1; // No match found
|
||||
}
|
||||
|
||||
void fragment() {
|
||||
vec4 screen_color = texture(screen_texture, SCREEN_UV);
|
||||
|
||||
// Check if the color is close to the shadow colo
|
||||
|
||||
int palette_index;
|
||||
|
||||
palette_index = get_palette_index(screen_color);
|
||||
|
||||
// Normalize the palette index for UV lookup
|
||||
if (palette_index != -1) {
|
||||
float palette_uv_x = (float(palette_index) + 0.5) / float(palette_size);
|
||||
float palette_uv_y = (float(y_offset) + 0.5) / float(3);
|
||||
COLOR = texture(palette_texture, vec2(palette_uv_x, palette_uv_y));
|
||||
} else {
|
||||
// Fallback if no match (this should only happen if no matching palette index is found)
|
||||
if (is_debug)
|
||||
{
|
||||
COLOR = texture(palette_texture, vec2(float(palette_size), 0.0));
|
||||
} else
|
||||
{
|
||||
COLOR = screen_color;
|
||||
}
|
||||
}
|
||||
}
|
1
Scenes/Parts/colour_palette.gdshader.uid
Executable file
1
Scenes/Parts/colour_palette.gdshader.uid
Executable file
@@ -0,0 +1 @@
|
||||
uid://dic2q1vuqqxce
|
Reference in New Issue
Block a user