rendering fixes and menu
This commit is contained in:
@@ -11,7 +11,7 @@ config_version=5
|
|||||||
[application]
|
[application]
|
||||||
|
|
||||||
config/name="hood"
|
config/name="hood"
|
||||||
run/main_scene="uid://clnb1eshis30m"
|
run/main_scene="uid://dgq21ggr3br2g"
|
||||||
run/print_header=false
|
run/print_header=false
|
||||||
config/features=PackedStringArray("4.5", "Forward Plus")
|
config/features=PackedStringArray("4.5", "Forward Plus")
|
||||||
boot_splash/bg_color=Color(0, 0, 0, 1)
|
boot_splash/bg_color=Color(0, 0, 0, 1)
|
||||||
@@ -24,13 +24,18 @@ config/icon="res://icon.svg"
|
|||||||
|
|
||||||
WindowManager="*res://scripts/autoloads/windowman.gd"
|
WindowManager="*res://scripts/autoloads/windowman.gd"
|
||||||
DialogueManager="*res://addons/dialogue_manager/dialogue_manager.gd"
|
DialogueManager="*res://addons/dialogue_manager/dialogue_manager.gd"
|
||||||
EventManager="*res://scripts/autoloads/event_manager.gd"
|
|
||||||
Save="*res://scripts/autoloads/save.gd"
|
Save="*res://scripts/autoloads/save.gd"
|
||||||
|
EventManager="*res://scenes/autoloads/event_manager.tscn"
|
||||||
|
Pixelize="*res://scenes/filter/pixelize.tscn"
|
||||||
|
|
||||||
[display]
|
[display]
|
||||||
|
|
||||||
window/stretch/mode="canvas_items"
|
window/size/viewport_width=360
|
||||||
window/stretch/scale=3.5
|
window/size/viewport_height=200
|
||||||
|
window/size/window_width_override=1152
|
||||||
|
window/size/window_height_override=640
|
||||||
|
window/stretch/mode="viewport"
|
||||||
|
window/stretch/scale_mode="integer"
|
||||||
display_server/driver.linuxbsd="wayland"
|
display_server/driver.linuxbsd="wayland"
|
||||||
window/size/mode.release=4
|
window/size/mode.release=4
|
||||||
|
|
||||||
@@ -92,6 +97,7 @@ escape={
|
|||||||
|
|
||||||
[physics]
|
[physics]
|
||||||
|
|
||||||
|
2d/run_on_separate_thread=true
|
||||||
common/physics_interpolation=true
|
common/physics_interpolation=true
|
||||||
|
|
||||||
[rendering]
|
[rendering]
|
||||||
@@ -102,4 +108,6 @@ anti_aliasing/quality/msaa_2d=3
|
|||||||
anti_aliasing/quality/screen_space_aa=2
|
anti_aliasing/quality/screen_space_aa=2
|
||||||
anti_aliasing/quality/use_taa=true
|
anti_aliasing/quality/use_taa=true
|
||||||
anti_aliasing/quality/use_debanding=true
|
anti_aliasing/quality/use_debanding=true
|
||||||
|
2d/snap/snap_2d_transforms_to_pixel=true
|
||||||
|
2d/snap/snap_2d_vertices_to_pixel=true
|
||||||
environment/defaults/default_clear_color.release=Color(0, 0, 0, 1)
|
environment/defaults/default_clear_color.release=Color(0, 0, 0, 1)
|
||||||
|
|||||||
15
scenes/autoloads/event_manager.tscn
Normal file
15
scenes/autoloads/event_manager.tscn
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
[gd_scene load_steps=2 format=3 uid="uid://cjbbslcx6vjjy"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://b08q3lqbuoolb" path="res://scripts/autoloads/nodes/event_manager.gd" id="1_xplee"]
|
||||||
|
|
||||||
|
[node name="EventManager" type="CanvasLayer"]
|
||||||
|
script = ExtResource("1_xplee")
|
||||||
|
|
||||||
|
[node name="ColorRect" type="ColorRect" parent="."]
|
||||||
|
self_modulate = Color(1, 1, 1, 0)
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
color = Color(0, 0, 0, 1)
|
||||||
22
scenes/filter/pixelize.tscn
Normal file
22
scenes/filter/pixelize.tscn
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
[gd_scene load_steps=3 format=3 uid="uid://dthcpgxk5b74y"]
|
||||||
|
|
||||||
|
[ext_resource type="Shader" uid="uid://dgstw8crggyti" path="res://shaders/pixelate.gdshader" id="1_tt4dp"]
|
||||||
|
|
||||||
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_83vy4"]
|
||||||
|
shader = ExtResource("1_tt4dp")
|
||||||
|
shader_parameter/texture_mode = 1
|
||||||
|
shader_parameter/quantize_size = 1
|
||||||
|
shader_parameter/snap_to_world = false
|
||||||
|
shader_parameter/limit_subpixels = true
|
||||||
|
|
||||||
|
[node name="Pixelize" type="CanvasLayer"]
|
||||||
|
|
||||||
|
[node name="ColorRect" type="ColorRect" parent="."]
|
||||||
|
material = SubResource("ShaderMaterial_83vy4")
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
mouse_filter = 1
|
||||||
|
metadata/_edit_lock_ = true
|
||||||
@@ -8,69 +8,69 @@ texture = ExtResource("1_74em3")
|
|||||||
texture_region_size = Vector2i(32, 32)
|
texture_region_size = Vector2i(32, 32)
|
||||||
0:0/0 = 0
|
0:0/0 = 0
|
||||||
0:0/0/terrain_set = 0
|
0:0/0/terrain_set = 0
|
||||||
0:0/0/terrain = 1
|
0:0/0/terrain = 0
|
||||||
0:0/0/terrains_peering_bit/right_side = 0
|
0:0/0/terrains_peering_bit/right_side = 0
|
||||||
0:0/0/terrains_peering_bit/bottom_right_corner = 0
|
0:0/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
0:0/0/terrains_peering_bit/bottom_side = 1
|
0:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
0:0/0/terrains_peering_bit/bottom_left_corner = 1
|
0:0/0/terrains_peering_bit/bottom_left_corner = 1
|
||||||
0:0/0/terrains_peering_bit/left_side = 1
|
0:0/0/terrains_peering_bit/left_side = 0
|
||||||
0:0/0/terrains_peering_bit/top_left_corner = 0
|
0:0/0/terrains_peering_bit/top_left_corner = 0
|
||||||
0:0/0/terrains_peering_bit/top_side = 0
|
0:0/0/terrains_peering_bit/top_side = 0
|
||||||
0:0/0/terrains_peering_bit/top_right_corner = 0
|
0:0/0/terrains_peering_bit/top_right_corner = 0
|
||||||
1:0/0 = 0
|
1:0/0 = 0
|
||||||
1:0/0/terrain_set = 0
|
1:0/0/terrain_set = 0
|
||||||
1:0/0/terrain = 1
|
1:0/0/terrain = 0
|
||||||
1:0/0/terrains_peering_bit/right_side = 1
|
1:0/0/terrains_peering_bit/right_side = 1
|
||||||
1:0/0/terrains_peering_bit/bottom_right_corner = 1
|
1:0/0/terrains_peering_bit/bottom_right_corner = 1
|
||||||
1:0/0/terrains_peering_bit/bottom_side = 1
|
1:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
1:0/0/terrains_peering_bit/bottom_left_corner = 0
|
1:0/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
1:0/0/terrains_peering_bit/left_side = 0
|
1:0/0/terrains_peering_bit/left_side = 0
|
||||||
1:0/0/terrains_peering_bit/top_left_corner = 0
|
1:0/0/terrains_peering_bit/top_left_corner = 0
|
||||||
1:0/0/terrains_peering_bit/top_side = 1
|
1:0/0/terrains_peering_bit/top_side = 0
|
||||||
1:0/0/terrains_peering_bit/top_right_corner = 1
|
1:0/0/terrains_peering_bit/top_right_corner = 1
|
||||||
2:0/0 = 0
|
2:0/0 = 0
|
||||||
2:0/0/terrain_set = 0
|
2:0/0/terrain_set = 0
|
||||||
2:0/0/terrain = 1
|
2:0/0/terrain = 0
|
||||||
2:0/0/terrains_peering_bit/right_side = 1
|
2:0/0/terrains_peering_bit/right_side = 0
|
||||||
2:0/0/terrains_peering_bit/bottom_right_corner = 1
|
2:0/0/terrains_peering_bit/bottom_right_corner = 1
|
||||||
2:0/0/terrains_peering_bit/bottom_side = 1
|
2:0/0/terrains_peering_bit/bottom_side = 1
|
||||||
2:0/0/terrains_peering_bit/bottom_left_corner = 1
|
2:0/0/terrains_peering_bit/bottom_left_corner = 1
|
||||||
2:0/0/terrains_peering_bit/left_side = 1
|
2:0/0/terrains_peering_bit/left_side = 1
|
||||||
2:0/0/terrains_peering_bit/top_left_corner = 1
|
2:0/0/terrains_peering_bit/top_left_corner = 1
|
||||||
2:0/0/terrains_peering_bit/top_side = 1
|
2:0/0/terrains_peering_bit/top_side = 0
|
||||||
2:0/0/terrains_peering_bit/top_right_corner = 0
|
2:0/0/terrains_peering_bit/top_right_corner = 0
|
||||||
3:0/0 = 0
|
3:0/0 = 0
|
||||||
3:0/0/terrain_set = 0
|
3:0/0/terrain_set = 0
|
||||||
3:0/0/terrain = 1
|
3:0/0/terrain = 0
|
||||||
3:0/0/terrains_peering_bit/right_side = 1
|
3:0/0/terrains_peering_bit/right_side = 0
|
||||||
3:0/0/terrains_peering_bit/bottom_right_corner = 1
|
3:0/0/terrains_peering_bit/bottom_right_corner = 1
|
||||||
3:0/0/terrains_peering_bit/bottom_side = 1
|
3:0/0/terrains_peering_bit/bottom_side = 1
|
||||||
3:0/0/terrains_peering_bit/bottom_left_corner = 1
|
3:0/0/terrains_peering_bit/bottom_left_corner = 1
|
||||||
3:0/0/terrains_peering_bit/left_side = 1
|
3:0/0/terrains_peering_bit/left_side = 0
|
||||||
3:0/0/terrains_peering_bit/top_left_corner = 0
|
3:0/0/terrains_peering_bit/top_left_corner = 0
|
||||||
3:0/0/terrains_peering_bit/top_side = 0
|
3:0/0/terrains_peering_bit/top_side = 0
|
||||||
3:0/0/terrains_peering_bit/top_right_corner = 0
|
3:0/0/terrains_peering_bit/top_right_corner = 0
|
||||||
0:1/0 = 0
|
0:1/0 = 0
|
||||||
0:1/0/terrain_set = 0
|
0:1/0/terrain_set = 0
|
||||||
0:1/0/terrain = 1
|
0:1/0/terrain = 0
|
||||||
0:1/0/terrains_peering_bit/right_side = 1
|
0:1/0/terrains_peering_bit/right_side = 0
|
||||||
0:1/0/terrains_peering_bit/bottom_right_corner = 1
|
0:1/0/terrains_peering_bit/bottom_right_corner = 1
|
||||||
0:1/0/terrains_peering_bit/bottom_side = 1
|
0:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
0:1/0/terrains_peering_bit/bottom_left_corner = 0
|
0:1/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
0:1/0/terrains_peering_bit/left_side = 1
|
0:1/0/terrains_peering_bit/left_side = 0
|
||||||
0:1/0/terrains_peering_bit/top_left_corner = 1
|
0:1/0/terrains_peering_bit/top_left_corner = 1
|
||||||
0:1/0/terrains_peering_bit/top_side = 1
|
0:1/0/terrains_peering_bit/top_side = 0
|
||||||
0:1/0/terrains_peering_bit/top_right_corner = 0
|
0:1/0/terrains_peering_bit/top_right_corner = 0
|
||||||
1:1/0 = 0
|
1:1/0 = 0
|
||||||
1:1/0/terrain_set = 0
|
1:1/0/terrain_set = 0
|
||||||
1:1/0/terrain = 1
|
1:1/0/terrain = 0
|
||||||
1:1/0/terrains_peering_bit/right_side = 1
|
1:1/0/terrains_peering_bit/right_side = 1
|
||||||
1:1/0/terrains_peering_bit/bottom_right_corner = 1
|
1:1/0/terrains_peering_bit/bottom_right_corner = 1
|
||||||
1:1/0/terrains_peering_bit/bottom_side = 1
|
1:1/0/terrains_peering_bit/bottom_side = 1
|
||||||
1:1/0/terrains_peering_bit/bottom_left_corner = 1
|
1:1/0/terrains_peering_bit/bottom_left_corner = 1
|
||||||
1:1/0/terrains_peering_bit/left_side = 1
|
1:1/0/terrains_peering_bit/left_side = 0
|
||||||
1:1/0/terrains_peering_bit/top_left_corner = 0
|
1:1/0/terrains_peering_bit/top_left_corner = 0
|
||||||
1:1/0/terrains_peering_bit/top_side = 1
|
1:1/0/terrains_peering_bit/top_side = 0
|
||||||
1:1/0/terrains_peering_bit/top_right_corner = 1
|
1:1/0/terrains_peering_bit/top_right_corner = 1
|
||||||
2:1/0 = 0
|
2:1/0 = 0
|
||||||
2:1/0/terrain_set = 0
|
2:1/0/terrain_set = 0
|
||||||
@@ -85,10 +85,10 @@ texture_region_size = Vector2i(32, 32)
|
|||||||
2:1/0/terrains_peering_bit/top_right_corner = 1
|
2:1/0/terrains_peering_bit/top_right_corner = 1
|
||||||
3:1/0 = 0
|
3:1/0 = 0
|
||||||
3:1/0/terrain_set = 0
|
3:1/0/terrain_set = 0
|
||||||
3:1/0/terrain = 1
|
3:1/0/terrain = 0
|
||||||
3:1/0/terrains_peering_bit/right_side = 1
|
3:1/0/terrains_peering_bit/right_side = 0
|
||||||
3:1/0/terrains_peering_bit/bottom_right_corner = 0
|
3:1/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
3:1/0/terrains_peering_bit/bottom_side = 1
|
3:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
3:1/0/terrains_peering_bit/bottom_left_corner = 1
|
3:1/0/terrains_peering_bit/bottom_left_corner = 1
|
||||||
3:1/0/terrains_peering_bit/left_side = 1
|
3:1/0/terrains_peering_bit/left_side = 1
|
||||||
3:1/0/terrains_peering_bit/top_left_corner = 1
|
3:1/0/terrains_peering_bit/top_left_corner = 1
|
||||||
@@ -96,47 +96,47 @@ texture_region_size = Vector2i(32, 32)
|
|||||||
3:1/0/terrains_peering_bit/top_right_corner = 1
|
3:1/0/terrains_peering_bit/top_right_corner = 1
|
||||||
0:2/0 = 0
|
0:2/0 = 0
|
||||||
0:2/0/terrain_set = 0
|
0:2/0/terrain_set = 0
|
||||||
0:2/0/terrain = 1
|
0:2/0/terrain = 0
|
||||||
0:2/0/terrains_peering_bit/right_side = 1
|
0:2/0/terrains_peering_bit/right_side = 0
|
||||||
0:2/0/terrains_peering_bit/bottom_right_corner = 0
|
0:2/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
0:2/0/terrains_peering_bit/bottom_side = 0
|
0:2/0/terrains_peering_bit/bottom_side = 0
|
||||||
0:2/0/terrains_peering_bit/bottom_left_corner = 0
|
0:2/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
0:2/0/terrains_peering_bit/left_side = 0
|
0:2/0/terrains_peering_bit/left_side = 0
|
||||||
0:2/0/terrains_peering_bit/top_left_corner = 0
|
0:2/0/terrains_peering_bit/top_left_corner = 0
|
||||||
0:2/0/terrains_peering_bit/top_side = 1
|
0:2/0/terrains_peering_bit/top_side = 0
|
||||||
0:2/0/terrains_peering_bit/top_right_corner = 1
|
0:2/0/terrains_peering_bit/top_right_corner = 1
|
||||||
1:2/0 = 0
|
1:2/0 = 0
|
||||||
1:2/0/terrain_set = 0
|
1:2/0/terrain_set = 0
|
||||||
1:2/0/terrain = 1
|
1:2/0/terrain = 0
|
||||||
1:2/0/terrains_peering_bit/right_side = 1
|
1:2/0/terrains_peering_bit/right_side = 0
|
||||||
1:2/0/terrains_peering_bit/bottom_right_corner = 0
|
1:2/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
1:2/0/terrains_peering_bit/bottom_side = 0
|
1:2/0/terrains_peering_bit/bottom_side = 0
|
||||||
1:2/0/terrains_peering_bit/bottom_left_corner = 0
|
1:2/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
1:2/0/terrains_peering_bit/left_side = 1
|
1:2/0/terrains_peering_bit/left_side = 0
|
||||||
1:2/0/terrains_peering_bit/top_left_corner = 1
|
1:2/0/terrains_peering_bit/top_left_corner = 1
|
||||||
1:2/0/terrains_peering_bit/top_side = 1
|
1:2/0/terrains_peering_bit/top_side = 1
|
||||||
1:2/0/terrains_peering_bit/top_right_corner = 1
|
1:2/0/terrains_peering_bit/top_right_corner = 1
|
||||||
2:2/0 = 0
|
2:2/0 = 0
|
||||||
2:2/0/terrain_set = 0
|
2:2/0/terrain_set = 0
|
||||||
2:2/0/terrain = 1
|
2:2/0/terrain = 0
|
||||||
2:2/0/terrains_peering_bit/right_side = 1
|
2:2/0/terrains_peering_bit/right_side = 1
|
||||||
2:2/0/terrains_peering_bit/bottom_right_corner = 1
|
2:2/0/terrains_peering_bit/bottom_right_corner = 1
|
||||||
2:2/0/terrains_peering_bit/bottom_side = 1
|
2:2/0/terrains_peering_bit/bottom_side = 0
|
||||||
2:2/0/terrains_peering_bit/bottom_left_corner = 0
|
2:2/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
2:2/0/terrains_peering_bit/left_side = 1
|
2:2/0/terrains_peering_bit/left_side = 0
|
||||||
2:2/0/terrains_peering_bit/top_left_corner = 1
|
2:2/0/terrains_peering_bit/top_left_corner = 1
|
||||||
2:2/0/terrains_peering_bit/top_side = 1
|
2:2/0/terrains_peering_bit/top_side = 1
|
||||||
2:2/0/terrains_peering_bit/top_right_corner = 1
|
2:2/0/terrains_peering_bit/top_right_corner = 1
|
||||||
3:2/0 = 0
|
3:2/0 = 0
|
||||||
3:2/0/terrain_set = 0
|
3:2/0/terrain_set = 0
|
||||||
3:2/0/terrain = 1
|
3:2/0/terrain = 0
|
||||||
3:2/0/terrains_peering_bit/right_side = 0
|
3:2/0/terrains_peering_bit/right_side = 0
|
||||||
3:2/0/terrains_peering_bit/bottom_right_corner = 0
|
3:2/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
3:2/0/terrains_peering_bit/bottom_side = 1
|
3:2/0/terrains_peering_bit/bottom_side = 0
|
||||||
3:2/0/terrains_peering_bit/bottom_left_corner = 1
|
3:2/0/terrains_peering_bit/bottom_left_corner = 1
|
||||||
3:2/0/terrains_peering_bit/left_side = 1
|
3:2/0/terrains_peering_bit/left_side = 1
|
||||||
3:2/0/terrains_peering_bit/top_left_corner = 1
|
3:2/0/terrains_peering_bit/top_left_corner = 1
|
||||||
3:2/0/terrains_peering_bit/top_side = 1
|
3:2/0/terrains_peering_bit/top_side = 0
|
||||||
3:2/0/terrains_peering_bit/top_right_corner = 0
|
3:2/0/terrains_peering_bit/top_right_corner = 0
|
||||||
0:3/0 = 0
|
0:3/0 = 0
|
||||||
0:3/0/terrain_set = 0
|
0:3/0/terrain_set = 0
|
||||||
@@ -151,10 +151,10 @@ texture_region_size = Vector2i(32, 32)
|
|||||||
0:3/0/terrains_peering_bit/top_right_corner = 0
|
0:3/0/terrains_peering_bit/top_right_corner = 0
|
||||||
1:3/0 = 0
|
1:3/0 = 0
|
||||||
1:3/0/terrain_set = 0
|
1:3/0/terrain_set = 0
|
||||||
1:3/0/terrain = 1
|
1:3/0/terrain = 0
|
||||||
1:3/0/terrains_peering_bit/right_side = 1
|
1:3/0/terrains_peering_bit/right_side = 0
|
||||||
1:3/0/terrains_peering_bit/bottom_right_corner = 1
|
1:3/0/terrains_peering_bit/bottom_right_corner = 1
|
||||||
1:3/0/terrains_peering_bit/bottom_side = 1
|
1:3/0/terrains_peering_bit/bottom_side = 0
|
||||||
1:3/0/terrains_peering_bit/bottom_left_corner = 0
|
1:3/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
1:3/0/terrains_peering_bit/left_side = 0
|
1:3/0/terrains_peering_bit/left_side = 0
|
||||||
1:3/0/terrains_peering_bit/top_left_corner = 0
|
1:3/0/terrains_peering_bit/top_left_corner = 0
|
||||||
@@ -162,32 +162,32 @@ texture_region_size = Vector2i(32, 32)
|
|||||||
1:3/0/terrains_peering_bit/top_right_corner = 0
|
1:3/0/terrains_peering_bit/top_right_corner = 0
|
||||||
2:3/0 = 0
|
2:3/0 = 0
|
||||||
2:3/0/terrain_set = 0
|
2:3/0/terrain_set = 0
|
||||||
2:3/0/terrain = 1
|
2:3/0/terrain = 0
|
||||||
2:3/0/terrains_peering_bit/right_side = 1
|
2:3/0/terrains_peering_bit/right_side = 0
|
||||||
2:3/0/terrains_peering_bit/bottom_right_corner = 0
|
2:3/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
2:3/0/terrains_peering_bit/bottom_side = 1
|
2:3/0/terrains_peering_bit/bottom_side = 0
|
||||||
2:3/0/terrains_peering_bit/bottom_left_corner = 1
|
2:3/0/terrains_peering_bit/bottom_left_corner = 1
|
||||||
2:3/0/terrains_peering_bit/left_side = 1
|
2:3/0/terrains_peering_bit/left_side = 0
|
||||||
2:3/0/terrains_peering_bit/top_left_corner = 0
|
2:3/0/terrains_peering_bit/top_left_corner = 0
|
||||||
2:3/0/terrains_peering_bit/top_side = 1
|
2:3/0/terrains_peering_bit/top_side = 0
|
||||||
2:3/0/terrains_peering_bit/top_right_corner = 1
|
2:3/0/terrains_peering_bit/top_right_corner = 1
|
||||||
3:3/0 = 0
|
3:3/0 = 0
|
||||||
3:3/0/terrain_set = 0
|
3:3/0/terrain_set = 0
|
||||||
3:3/0/terrain = 1
|
3:3/0/terrain = 0
|
||||||
3:3/0/terrains_peering_bit/right_side = 0
|
3:3/0/terrains_peering_bit/right_side = 0
|
||||||
3:3/0/terrains_peering_bit/bottom_right_corner = 0
|
3:3/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
3:3/0/terrains_peering_bit/bottom_side = 0
|
3:3/0/terrains_peering_bit/bottom_side = 0
|
||||||
3:3/0/terrains_peering_bit/bottom_left_corner = 0
|
3:3/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
3:3/0/terrains_peering_bit/left_side = 1
|
3:3/0/terrains_peering_bit/left_side = 0
|
||||||
3:3/0/terrains_peering_bit/top_left_corner = 1
|
3:3/0/terrains_peering_bit/top_left_corner = 1
|
||||||
3:3/0/terrains_peering_bit/top_side = 1
|
3:3/0/terrains_peering_bit/top_side = 0
|
||||||
3:3/0/terrains_peering_bit/top_right_corner = 0
|
3:3/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
|
||||||
[sub_resource type="TileSet" id="TileSet_ge1l5"]
|
[sub_resource type="TileSet" id="TileSet_ge1l5"]
|
||||||
tile_size = Vector2i(32, 32)
|
tile_size = Vector2i(32, 32)
|
||||||
terrain_set_0/mode = 0
|
terrain_set_0/mode = 0
|
||||||
terrain_set_0/terrain_0/name = "Grass"
|
terrain_set_0/terrain_0/name = "Grass"
|
||||||
terrain_set_0/terrain_0/color = Color(0, 0.53558326, 0.2235117, 1)
|
terrain_set_0/terrain_0/color = Color(0, 0.5365651, 0.20230255, 1)
|
||||||
terrain_set_0/terrain_1/name = "Dirt"
|
terrain_set_0/terrain_1/name = "Dirt"
|
||||||
terrain_set_0/terrain_1/color = Color(0.5, 0.34375, 0.25, 1)
|
terrain_set_0/terrain_1/color = Color(0.5, 0.34375, 0.25, 1)
|
||||||
sources/2 = SubResource("TileSetAtlasSource_1r5ec")
|
sources/2 = SubResource("TileSetAtlasSource_1r5ec")
|
||||||
@@ -195,9 +195,10 @@ sources/2 = SubResource("TileSetAtlasSource_1r5ec")
|
|||||||
[node name="Hood" type="Node2D"]
|
[node name="Hood" type="Node2D"]
|
||||||
|
|
||||||
[node name="TileMapLayer" type="TileMapLayer" parent="."]
|
[node name="TileMapLayer" type="TileMapLayer" parent="."]
|
||||||
tile_map_data = PackedByteArray("AAAAAAAAAgAAAAMAAAAMAAgAAgAAAAMAAAAMAAcAAgAAAAMAAAAMAAYAAgAAAAMAAAAMAAUAAgABAAIAAAAMAAQAAgADAAAAAAAMAAMAAgAAAAMAAAAMAAIAAgAAAAMAAAAMAAEAAgAAAAMAAAAMAAAAAgAAAAMAAAALAAgAAgAAAAMAAAALAAcAAgAAAAMAAAALAAYAAgAAAAMAAAALAAUAAgABAAIAAAALAAQAAgADAAAAAAALAAMAAgAAAAMAAAALAAIAAgAAAAMAAAALAAEAAgAAAAMAAAALAAAAAgAAAAMAAAAKAAgAAgAAAAMAAAAKAAcAAgAAAAMAAAAKAAYAAgAAAAMAAAAKAAUAAgABAAIAAAAKAAQAAgADAAAAAAAKAAMAAgAAAAMAAAAKAAIAAgAAAAMAAAAKAAEAAgAAAAMAAAAKAAAAAgAAAAMAAAAJAAgAAgAAAAMAAAAJAAcAAgAAAAMAAAAJAAYAAgAAAAMAAAAJAAUAAgABAAIAAAAJAAQAAgADAAAAAAAJAAMAAgAAAAMAAAAJAAIAAgAAAAMAAAAJAAEAAgAAAAMAAAAJAAAAAgAAAAMAAAAIAAgAAgAAAAMAAAAIAAcAAgAAAAMAAAAIAAYAAgADAAMAAAAIAAUAAgADAAEAAAAIAAQAAgACAAAAAAAIAAMAAgADAAIAAAAIAAIAAgAAAAAAAAAIAAEAAgAAAAMAAAAIAAAAAgAAAAMAAAAHAAgAAgAAAAMAAAAHAAcAAgAAAAMAAAAHAAYAAgABAAIAAAAHAAUAAgABAAEAAAAHAAEAAgAAAAMAAAAHAAAAAgAAAAMAAAAGAAgAAgAAAAMAAAAGAAcAAgAAAAMAAAAGAAMAAgAAAAMAAAAGAAIAAgAAAAMAAAAGAAEAAgAAAAMAAAAGAAAAAgAAAAMAAAAFAAgAAgADAAMAAAAFAAcAAgADAAIAAAAFAAYAAgADAAEAAAAFAAUAAgADAAAAAAAFAAQAAgAAAAMAAAAFAAMAAgAAAAMAAAAFAAIAAgAAAAMAAAAFAAEAAgAAAAMAAAAFAAAAAgAAAAMAAAAEAAgAAgAAAAMAAAAEAAcAAgAAAAMAAAAEAAYAAgABAAIAAAAEAAUAAgACAAAAAAAEAAQAAgADAAIAAAAEAAMAAgADAAIAAAAEAAIAAgADAAIAAAAEAAEAAgADAAIAAAAEAAAAAgAAAAAAAAADAAgAAgAAAAMAAAADAAcAAgAAAAMAAAADAAYAAgAAAAIAAAADAAUAAgABAAAAAAADAAQAAgACAAIAAAADAAMAAgABAAAAAAADAAIAAgABAAAAAAADAAEAAgABAAAAAAADAAAAAgABAAMAAAACAAgAAgAAAAMAAAACAAcAAgAAAAMAAAACAAYAAgAAAAMAAAACAAUAAgAAAAMAAAACAAQAAgABAAIAAAACAAMAAgAAAAMAAAACAAIAAgAAAAMAAAACAAEAAgAAAAMAAAACAAAAAgAAAAMAAAABAAgAAgAAAAMAAAABAAcAAgAAAAMAAAABAAYAAgAAAAMAAAABAAUAAgAAAAMAAAABAAQAAgABAAIAAAABAAMAAgAAAAMAAAABAAIAAgAAAAMAAAABAAEAAgAAAAMAAAABAAAAAgAAAAMAAAAAAAgAAgAAAAMAAAAAAAcAAgAAAAMAAAAAAAYAAgAAAAMAAAAAAAUAAgAAAAMAAAAAAAQAAgAAAAIAAAAAAAMAAgAAAAMAAAAAAAIAAgAAAAMAAAAAAAEAAgAAAAMAAAAAAP//AgAAAAMAAAABAP//AgAAAAMAAAACAP//AgAAAAMAAAADAP//AgAAAAMAAAAEAP//AgAAAAMAAAAFAP//AgAAAAMAAAAGAP//AgAAAAMAAAAHAP//AgAAAAMAAAAIAP//AgAAAAMAAAAJAP//AgAAAAMAAAAKAP//AgAAAAMAAAALAP//AgAAAAMAAAAMAP//AgAAAAMAAAANAAIAAgAAAAMAAAANAAEAAgAAAAMAAAANAAAAAgAAAAMAAAANAP//AgAAAAMAAAANAAMAAgAAAAMAAAANAAQAAgAAAAAAAAANAAUAAgADAAMAAAANAAYAAgAAAAMAAAANAAcAAgAAAAMAAAANAAgAAgAAAAMAAAANAAkAAgAAAAMAAAAMAAkAAgAAAAMAAAALAAkAAgAAAAMAAAAKAAkAAgAAAAMAAAAJAAkAAgAAAAMAAAAIAAkAAgAAAAMAAAAHAAkAAgAAAAMAAAAGAAkAAgAAAAMAAAAFAAkAAgAAAAMAAAAEAAkAAgAAAAMAAAADAAkAAgAAAAMAAAACAAkAAgAAAAMAAAABAAkAAgAAAAMAAAAAAAkAAgAAAAMAAAD//wkAAgAAAAMAAAD//wgAAgAAAAMAAAD//wcAAgAAAAMAAAD//wYAAgAAAAMAAAD//wUAAgAAAAMAAAD//wQAAgAAAAMAAAD//wMAAgAAAAMAAAD//wIAAgAAAAMAAAD//wEAAgAAAAMAAAD//wAAAgAAAAMAAAD/////AgAAAAMAAAAHAAIAAgAAAAMAAAAHAAMAAgAAAAMAAAAHAAQAAgABAAMAAAAGAAQAAgAAAAMAAAAGAAUAAgADAAAAAAAGAAYAAgABAAIAAAA=")
|
tile_map_data = PackedByteArray("AAAQAAkAAgAAAAMAAAAQAAgAAgAAAAMAAAAQAAcAAgAAAAMAAAAQAAYAAgAAAAMAAAAQAAUAAgAAAAMAAAAQAAQAAgAAAAMAAAAQAAMAAgAAAAMAAAAQAAIAAgAAAAMAAAAQAAEAAgAAAAMAAAAQAAAAAgAAAAMAAAAQAP//AgAAAAMAAAAQAP7/AgAAAAMAAAAPAAkAAgAAAAMAAAAPAAgAAgAAAAMAAAAPAAcAAgAAAAMAAAAPAAYAAgADAAMAAAAPAAUAAgADAAIAAAAPAAQAAgAAAAAAAAAPAAMAAgAAAAMAAAAPAAIAAgAAAAMAAAAPAAEAAgAAAAMAAAAPAAAAAgAAAAMAAAAPAP//AgAAAAMAAAAPAP7/AgAAAAMAAAAOAAkAAgAAAAMAAAAOAAgAAgAAAAMAAAAOAAcAAgAAAAMAAAAOAAYAAgABAAIAAAAOAAUAAgACAAEAAAAOAAQAAgADAAAAAAAOAAMAAgAAAAMAAAAOAAIAAgAAAAMAAAAOAAEAAgAAAAMAAAAOAAAAAgAAAAMAAAAOAP//AgAAAAMAAAAOAP7/AgAAAAMAAAANAAkAAgAAAAMAAAANAAgAAgAAAAMAAAANAAcAAgAAAAMAAAANAAYAAgABAAIAAAANAAUAAgACAAEAAAANAAQAAgADAAAAAAANAAMAAgAAAAMAAAANAAIAAgAAAAMAAAANAAEAAgAAAAMAAAANAAAAAgAAAAMAAAANAP//AgAAAAMAAAANAP7/AgAAAAMAAAAMAAkAAgAAAAMAAAAMAAgAAgAAAAMAAAAMAAcAAgAAAAMAAAAMAAYAAgABAAIAAAAMAAUAAgACAAEAAAAMAAQAAgADAAAAAAAMAAMAAgAAAAMAAAAMAAIAAgAAAAMAAAAMAAEAAgAAAAMAAAAMAAAAAgAAAAMAAAAMAP//AgAAAAMAAAAMAP7/AgAAAAMAAAALAAkAAgAAAAMAAAALAAgAAgAAAAMAAAALAAcAAgAAAAMAAAALAAYAAgABAAIAAAALAAUAAgACAAEAAAALAAQAAgADAAAAAAALAAMAAgAAAAMAAAALAAIAAgAAAAMAAAALAAEAAgAAAAMAAAALAAAAAgAAAAMAAAALAP//AgAAAAMAAAALAP7/AgAAAAMAAAAKAAkAAgAAAAMAAAAKAAgAAgAAAAMAAAAKAAcAAgAAAAMAAAAKAAYAAgABAAIAAAAKAAUAAgACAAEAAAAKAAQAAgACAAAAAAAKAAMAAgADAAIAAAAKAAIAAgAAAAAAAAAKAAEAAgAAAAMAAAAKAAAAAgAAAAMAAAAKAP//AgAAAAMAAAAKAP7/AgAAAAMAAAAJAAkAAgAAAAMAAAAJAAgAAgAAAAMAAAAJAAcAAgAAAAMAAAAJAAYAAgABAAIAAAAJAAUAAgACAAEAAAAJAAQAAgACAAEAAAAJAAMAAgACAAEAAAAJAAIAAgADAAAAAAAJAAEAAgAAAAMAAAAJAAAAAgAAAAMAAAAJAP//AgAAAAMAAAAJAP7/AgAAAAMAAAAIAAkAAgAAAAMAAAAIAAgAAgAAAAMAAAAIAAcAAgAAAAMAAAAIAAYAAgABAAIAAAAIAAUAAgACAAEAAAAIAAQAAgABAAEAAAAIAAMAAgABAAAAAAAIAAIAAgABAAMAAAAIAAEAAgAAAAMAAAAIAAAAAgAAAAMAAAAIAP//AgAAAAMAAAAIAP7/AgAAAAMAAAAHAAkAAgAAAAMAAAAHAAgAAgAAAAMAAAAHAAcAAgAAAAMAAAAHAAYAAgABAAIAAAAHAAUAAgACAAEAAAAHAAQAAgADAAAAAAAHAAMAAgAAAAMAAAAHAAIAAgAAAAMAAAAHAAEAAgAAAAMAAAAHAAAAAgAAAAMAAAAHAP//AgAAAAMAAAAHAP7/AgAAAAMAAAAGAAkAAgAAAAMAAAAGAAgAAgAAAAMAAAAGAAcAAgAAAAMAAAAGAAYAAgABAAIAAAAGAAUAAgACAAEAAAAGAAQAAgADAAAAAAAGAAMAAgAAAAMAAAAGAAIAAgAAAAMAAAAGAAEAAgAAAAMAAAAGAAAAAgAAAAMAAAAGAP//AgAAAAMAAAAGAP7/AgAAAAMAAAAFAAkAAgAAAAMAAAAFAAgAAgAAAAMAAAAFAAcAAgAAAAMAAAAFAAYAAgABAAIAAAAFAAUAAgACAAEAAAAFAAQAAgADAAAAAAAFAAMAAgAAAAMAAAAFAAIAAgAAAAMAAAAFAAEAAgAAAAMAAAAFAAAAAgAAAAMAAAAFAP//AgAAAAMAAAAFAP7/AgAAAAMAAAAEAAkAAgAAAAMAAAAEAAgAAgAAAAMAAAAEAAcAAgAAAAMAAAAEAAYAAgABAAIAAAAEAAUAAgACAAEAAAAEAAQAAgACAAAAAAAEAAMAAgADAAIAAAAEAAIAAgADAAIAAAAEAAEAAgAAAAAAAAAEAAAAAgAAAAMAAAAEAP//AgAAAAMAAAAEAP7/AgAAAAMAAAADAAkAAgAAAAMAAAADAAgAAgAAAAMAAAADAAcAAgAAAAMAAAADAAYAAgABAAIAAAADAAUAAgACAAEAAAADAAQAAgACAAEAAAADAAMAAgACAAEAAAADAAIAAgACAAEAAAADAAEAAgADAAAAAAADAAAAAgAAAAMAAAADAP//AgAAAAMAAAADAP7/AgAAAAMAAAACAAkAAgAAAAMAAAACAAgAAgAAAAMAAAACAAcAAgAAAAMAAAACAAYAAgAAAAIAAAACAAUAAgABAAAAAAACAAQAAgACAAIAAAACAAMAAgACAAEAAAACAAIAAgABAAEAAAACAAEAAgABAAMAAAACAAAAAgAAAAMAAAACAP//AgAAAAMAAAACAP7/AgAAAAMAAAABAAkAAgAAAAMAAAABAAgAAgAAAAMAAAABAAcAAgAAAAMAAAABAAYAAgAAAAMAAAABAAUAAgAAAAMAAAABAAQAAgABAAIAAAABAAMAAgACAAEAAAABAAIAAgADAAAAAAABAAEAAgAAAAMAAAABAAAAAgAAAAMAAAABAP//AgAAAAMAAAABAP7/AgAAAAMAAAAAAAkAAgAAAAMAAAAAAAgAAgAAAAMAAAAAAAcAAgAAAAMAAAAAAAYAAgAAAAMAAAAAAAUAAgAAAAMAAAAAAAQAAgABAAIAAAAAAAMAAgACAAEAAAAAAAIAAgADAAAAAAAAAAEAAgAAAAMAAAAAAAAAAgAAAAMAAAAAAP//AgAAAAMAAAAAAP7/AgAAAAMAAAD//wkAAgAAAAMAAAD//wgAAgAAAAMAAAD//wcAAgAAAAMAAAD//wYAAgAAAAMAAAD//wUAAgAAAAMAAAD//wQAAgABAAIAAAD//wMAAgACAAEAAAD//wIAAgADAAAAAAD//wEAAgAAAAMAAAD//wAAAgAAAAMAAAD/////AgAAAAMAAAD///7/AgAAAAMAAAD+/wkAAgAAAAMAAAD+/wgAAgAAAAMAAAD+/wcAAgAAAAMAAAD+/wYAAgAAAAMAAAD+/wUAAgAAAAMAAAD+/wQAAgAAAAIAAAD+/wMAAgABAAAAAAD+/wIAAgABAAMAAAD+/wEAAgAAAAMAAAD+/wAAAgAAAAMAAAD+////AgAAAAMAAAD+//7/AgAAAAMAAAA=")
|
||||||
tile_set = SubResource("TileSet_ge1l5")
|
tile_set = SubResource("TileSet_ge1l5")
|
||||||
|
metadata/_edit_lock_ = true
|
||||||
|
|
||||||
[node name="Player" parent="." node_paths=PackedStringArray("tilemap") instance=ExtResource("1_ge1l5")]
|
[node name="Player" parent="." node_paths=PackedStringArray("tilemap") instance=ExtResource("1_ge1l5")]
|
||||||
position = Vector2(128, 76)
|
position = Vector2(110, 50)
|
||||||
tilemap = NodePath("../TileMapLayer")
|
tilemap = NodePath("../TileMapLayer")
|
||||||
|
|||||||
35
scenes/menus/main_menu.tscn
Normal file
35
scenes/menus/main_menu.tscn
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
[gd_scene load_steps=2 format=3 uid="uid://dgq21ggr3br2g"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://bfgqkpn60hhwj" path="res://scripts/menus/main_menu.gd" id="1_xqga4"]
|
||||||
|
|
||||||
|
[node name="MainMenu" type="Control"]
|
||||||
|
layout_mode = 3
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
script = ExtResource("1_xqga4")
|
||||||
|
|
||||||
|
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 8
|
||||||
|
anchor_left = 0.5
|
||||||
|
anchor_top = 0.5
|
||||||
|
anchor_right = 0.5
|
||||||
|
anchor_bottom = 0.5
|
||||||
|
offset_left = -20.0
|
||||||
|
offset_top = -20.0
|
||||||
|
offset_right = 20.0
|
||||||
|
offset_bottom = 20.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
|
||||||
|
[node name="Button" type="Button" parent="VBoxContainer"]
|
||||||
|
layout_mode = 2
|
||||||
|
theme_override_font_sizes/font_size = 8
|
||||||
|
text = "Start"
|
||||||
|
|
||||||
|
[node name="MenuSlot" type="CanvasLayer" parent="."]
|
||||||
|
|
||||||
|
[connection signal="pressed" from="VBoxContainer/Button" to="." method="_on_start_button_pressed"]
|
||||||
12
scenes/menus/profile_creator.tscn
Normal file
12
scenes/menus/profile_creator.tscn
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
[gd_scene load_steps=2 format=3 uid="uid://cd657k2lc3gyc"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://cs1ylnivyrbc2" path="res://scripts/menus/profile_creator.gd" id="1_4xjd5"]
|
||||||
|
|
||||||
|
[node name="ProfileCreator" type="Control"]
|
||||||
|
layout_mode = 3
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
script = ExtResource("1_4xjd5")
|
||||||
@@ -56,7 +56,7 @@ animations = [{
|
|||||||
}],
|
}],
|
||||||
"loop": true,
|
"loop": true,
|
||||||
"name": &"down",
|
"name": &"down",
|
||||||
"speed": 5.0
|
"speed": 6.5
|
||||||
}, {
|
}, {
|
||||||
"frames": [{
|
"frames": [{
|
||||||
"duration": 1.0,
|
"duration": 1.0,
|
||||||
@@ -73,7 +73,7 @@ animations = [{
|
|||||||
}],
|
}],
|
||||||
"loop": true,
|
"loop": true,
|
||||||
"name": &"side",
|
"name": &"side",
|
||||||
"speed": 5.0
|
"speed": 6.0
|
||||||
}, {
|
}, {
|
||||||
"frames": [{
|
"frames": [{
|
||||||
"duration": 1.0,
|
"duration": 1.0,
|
||||||
@@ -90,7 +90,7 @@ animations = [{
|
|||||||
}],
|
}],
|
||||||
"loop": true,
|
"loop": true,
|
||||||
"name": &"up",
|
"name": &"up",
|
||||||
"speed": 5.0
|
"speed": 6.5
|
||||||
}]
|
}]
|
||||||
|
|
||||||
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_3vyb7"]
|
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_3vyb7"]
|
||||||
@@ -98,9 +98,11 @@ radius = 3.0
|
|||||||
height = 14.0
|
height = 14.0
|
||||||
|
|
||||||
[node name="Player" type="CharacterBody2D"]
|
[node name="Player" type="CharacterBody2D"]
|
||||||
|
motion_mode = 1
|
||||||
script = ExtResource("1_3vyb7")
|
script = ExtResource("1_3vyb7")
|
||||||
|
|
||||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||||
|
position = Vector2(-1, -1)
|
||||||
sprite_frames = SubResource("SpriteFrames_qhqgy")
|
sprite_frames = SubResource("SpriteFrames_qhqgy")
|
||||||
animation = &"down"
|
animation = &"down"
|
||||||
|
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
extends Node
|
|
||||||
6
scripts/autoloads/nodes/event_manager.gd
Normal file
6
scripts/autoloads/nodes/event_manager.gd
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
extends Node
|
||||||
|
|
||||||
|
var player_free: bool = true
|
||||||
|
|
||||||
|
func transition() -> void:
|
||||||
|
pass
|
||||||
6
scripts/menus/main_menu.gd
Normal file
6
scripts/menus/main_menu.gd
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
extends Control
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
func _on_start_button_pressed() -> void:
|
||||||
|
pass # Replace with function body.
|
||||||
1
scripts/menus/main_menu.gd.uid
Normal file
1
scripts/menus/main_menu.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://bfgqkpn60hhwj
|
||||||
1
scripts/menus/profile_creator.gd
Normal file
1
scripts/menus/profile_creator.gd
Normal file
@@ -0,0 +1 @@
|
|||||||
|
extends Control
|
||||||
1
scripts/menus/profile_creator.gd.uid
Normal file
1
scripts/menus/profile_creator.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://cs1ylnivyrbc2
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
extends CharacterBody2D
|
extends CharacterBody2D
|
||||||
|
|
||||||
const SPEED: int = 500
|
const SPEED: int = 800
|
||||||
|
|
||||||
@onready var animated_sprite: AnimatedSprite2D = $AnimatedSprite2D
|
@onready var animated_sprite: AnimatedSprite2D = $AnimatedSprite2D
|
||||||
@onready var cam: Camera2D = $Camera2D
|
@onready var cam: Camera2D = $Camera2D
|
||||||
@@ -17,19 +17,20 @@ func _ready() -> void:
|
|||||||
cam.limit_right = used_tilemap_rect.end.x * tilesize
|
cam.limit_right = used_tilemap_rect.end.x * tilesize
|
||||||
cam.limit_bottom = used_tilemap_rect.end.y * tilesize
|
cam.limit_bottom = used_tilemap_rect.end.y * tilesize
|
||||||
|
|
||||||
var x_margin: float = float(tilesize) / 4
|
var margin: float = float(tilesize) / 4
|
||||||
var y_margin: float = float(tilesize) / 2
|
|
||||||
|
|
||||||
position_limit_rect = Rect2(
|
position_limit_rect = Rect2(
|
||||||
Vector2(cam.limit_left + x_margin, cam.limit_top + y_margin),
|
Vector2(cam.limit_left + margin, cam.limit_top - margin),
|
||||||
Vector2(
|
Vector2(
|
||||||
(cam.limit_right - x_margin) - (cam.limit_left + x_margin),
|
(cam.limit_right - margin) - (cam.limit_left + margin),
|
||||||
(cam.limit_bottom - y_margin) - (cam.limit_top + y_margin)
|
(cam.limit_bottom - margin / 2) - (cam.limit_top + margin / 2)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
func _physics_process(delta: float) -> void:
|
func _physics_process(delta: float) -> void:
|
||||||
velocity = Input.get_vector("move_left","move_right","move_up","move_down").normalized() * delta * SPEED * 3
|
if EventManager.player_free:
|
||||||
|
velocity = Input.get_vector("move_left","move_right","move_up","move_down").normalized() * delta * SPEED * 3
|
||||||
|
|
||||||
move_and_slide()
|
move_and_slide()
|
||||||
position = position.clamp(position_limit_rect.position, position_limit_rect.end)
|
position = position.clamp(position_limit_rect.position, position_limit_rect.end)
|
||||||
|
|
||||||
@@ -45,4 +46,3 @@ func _physics_process(delta: float) -> void:
|
|||||||
animated_sprite.animation = "down"
|
animated_sprite.animation = "down"
|
||||||
else:
|
else:
|
||||||
animated_sprite.stop()
|
animated_sprite.stop()
|
||||||
|
|
||||||
|
|||||||
6
scripts/resources/profile.gd
Normal file
6
scripts/resources/profile.gd
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
class_name Profile
|
||||||
|
extends Resource
|
||||||
|
|
||||||
|
@export var your_name: String = "Joel"
|
||||||
|
@export var villain_friend_name: String = "Josh"
|
||||||
|
@export var stupid_friend_name: String = "Kevin"
|
||||||
1
scripts/resources/profile.gd.uid
Normal file
1
scripts/resources/profile.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://sx081r57538w
|
||||||
51
shaders/pixelate.gdshader
Normal file
51
shaders/pixelate.gdshader
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
shader_type canvas_item;
|
||||||
|
|
||||||
|
/**
|
||||||
|
0 = Texture: For use with Sprite2Ds, TextureRects, and Meshes
|
||||||
|
1 = Screen: For use with ColorRect
|
||||||
|
*/
|
||||||
|
uniform int texture_mode : hint_range(0,1) = 1;
|
||||||
|
|
||||||
|
// This file relies on a quantize shader include file, listed further down.
|
||||||
|
// The paths must match your file's location.
|
||||||
|
#include "res://shaders/quantize.gdshaderinc"
|
||||||
|
|
||||||
|
uniform sampler2D SCREEN_TEXTURE : hint_screen_texture, repeat_disable, filter_nearest;
|
||||||
|
|
||||||
|
void vertex() {
|
||||||
|
float zoom = length(CANVAS_MATRIX[1].xyz);
|
||||||
|
v_quant_size = getQuantizeSize(zoom);
|
||||||
|
v_model_matrix = MODEL_MATRIX;
|
||||||
|
v_vertex = VERTEX;
|
||||||
|
|
||||||
|
if (texture_mode == 0) {
|
||||||
|
v_alt_matrix = inverse(MODEL_MATRIX);
|
||||||
|
v_texture_data.xy = 1. / TEXTURE_PIXEL_SIZE;
|
||||||
|
// Is texture flipped
|
||||||
|
v_texture_data.zw = max(-sign((UV - 0.5) * VERTEX), 0.);
|
||||||
|
} else {
|
||||||
|
v_alt_matrix = SCREEN_MATRIX * CANVAS_MATRIX;
|
||||||
|
|
||||||
|
if (snap_to_world) {
|
||||||
|
v_alt_matrix = inverse(v_alt_matrix);
|
||||||
|
}
|
||||||
|
|
||||||
|
vec2 local_origin = (MODEL_MATRIX * vec4(0.0, 0.0, 0, 1)).xy;
|
||||||
|
vec2 clip = (v_alt_matrix * vec4(local_origin, 0,1)).xy;
|
||||||
|
vec2 screen_origin_uv = clip * 0.5 + 0.5;
|
||||||
|
vec2 screen_pixel_size = 1. / vec2(textureSize(SCREEN_TEXTURE, 0));
|
||||||
|
vec2 q = screen_pixel_size * float(v_quant_size) * zoom;
|
||||||
|
v_texture_data.xy = screen_origin_uv;
|
||||||
|
v_texture_data.zw = q;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void fragment() {
|
||||||
|
if (texture_mode == 0) {
|
||||||
|
vec4 uvResult = getQuantizeTextureUV(UV);
|
||||||
|
COLOR = texture(TEXTURE, uvResult.xy);
|
||||||
|
} else {
|
||||||
|
vec4 uvResult = getQuantizeScreenUV(SCREEN_UV);
|
||||||
|
COLOR = texture(SCREEN_TEXTURE, uvResult.xy);
|
||||||
|
}
|
||||||
|
}
|
||||||
1
shaders/pixelate.gdshader.uid
Normal file
1
shaders/pixelate.gdshader.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://dgstw8crggyti
|
||||||
104
shaders/quantize.gdshaderinc
Normal file
104
shaders/quantize.gdshaderinc
Normal file
@@ -0,0 +1,104 @@
|
|||||||
|
group_uniforms Quantization;
|
||||||
|
/**Pixel resolution scale (0 is bypass)*/
|
||||||
|
uniform int quantize_size : hint_range(0,100) = 1;
|
||||||
|
/**Pixels are snapped based on world coordinates vs local coordinates.*/
|
||||||
|
uniform bool snap_to_world;
|
||||||
|
/**Auto-scales the quantize size when zoom is < 1, preventing subpixel artifacts*/
|
||||||
|
uniform bool limit_subpixels = true;
|
||||||
|
group_uniforms;
|
||||||
|
|
||||||
|
varying mat4 v_model_matrix;
|
||||||
|
varying mat4 v_alt_matrix;
|
||||||
|
varying vec2 v_vertex;
|
||||||
|
varying flat int v_quant_size;
|
||||||
|
varying flat vec4 v_texture_data;
|
||||||
|
|
||||||
|
const float EPSILON = 0.0001;
|
||||||
|
|
||||||
|
int getQuantizeSize(float in_zoom) {
|
||||||
|
int q_size = quantize_size;
|
||||||
|
|
||||||
|
if (limit_subpixels && in_zoom < 1.) {
|
||||||
|
q_size = int(round(float(quantize_size) * (1. / in_zoom)));
|
||||||
|
}
|
||||||
|
|
||||||
|
return q_size;
|
||||||
|
}
|
||||||
|
|
||||||
|
vec2 _snap(vec2 in_uv, float in_q_size) {
|
||||||
|
return (floor(in_uv / in_q_size) + 0.5) * in_q_size;
|
||||||
|
}
|
||||||
|
|
||||||
|
vec4 getQuantizeScreenUV(vec2 in_screen_uv) {
|
||||||
|
vec4 result;
|
||||||
|
|
||||||
|
if (v_quant_size == 0) {
|
||||||
|
result.xy = in_screen_uv;
|
||||||
|
result.zw = (v_model_matrix * vec4(v_vertex, 0, 1)).xy;
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (snap_to_world) {
|
||||||
|
vec2 uv = (v_model_matrix * vec4(v_vertex, 0, 1)).xy;
|
||||||
|
result.zw = uv + EPSILON;
|
||||||
|
uv = _snap(uv, float(v_quant_size));
|
||||||
|
uv = (v_alt_matrix * vec4(uv, 0,1)).xy;
|
||||||
|
uv = uv * 0.5 + 0.5;
|
||||||
|
result.xy = uv;
|
||||||
|
return result;
|
||||||
|
} else {
|
||||||
|
vec2 origin_uv = v_texture_data.xy;
|
||||||
|
vec2 quant_pixel_size = v_texture_data.zw;
|
||||||
|
vec2 uv = in_screen_uv - origin_uv;
|
||||||
|
uv = (floor(uv / quant_pixel_size) + 0.5) * quant_pixel_size;
|
||||||
|
|
||||||
|
uv = uv + origin_uv;
|
||||||
|
vec2 clipXY = uv * 2.0 - 1.;
|
||||||
|
vec2 world_pos = (v_alt_matrix * vec4(clipXY, 0.0, 1.0)).xy;
|
||||||
|
result.zw = world_pos + EPSILON;
|
||||||
|
result.xy = uv;
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
vec4 getQuantizeTextureUV(vec2 in_uv) {
|
||||||
|
vec4 result;
|
||||||
|
vec2 texture_size = v_texture_data.xy;
|
||||||
|
vec2 flip = v_texture_data.zw;
|
||||||
|
|
||||||
|
if (v_quant_size == 0) {
|
||||||
|
result.xy = in_uv;
|
||||||
|
result.zw = (v_model_matrix * vec4(in_uv * texture_size, 0, 1)).xy;
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
vec2 offset;
|
||||||
|
float q = float(v_quant_size);
|
||||||
|
vec2 uv = in_uv;
|
||||||
|
uv = mix(uv, 1.0 - uv, flip);
|
||||||
|
|
||||||
|
if (snap_to_world) {
|
||||||
|
vec2 inv_texture_size = 1. / texture_size;
|
||||||
|
offset = v_vertex * inv_texture_size;
|
||||||
|
offset = uv - offset;
|
||||||
|
uv -= offset;
|
||||||
|
|
||||||
|
uv *= texture_size;
|
||||||
|
uv = (v_model_matrix * vec4(uv, 0, 1)).xy;
|
||||||
|
result.zw = uv;
|
||||||
|
uv = _snap(uv, q);
|
||||||
|
uv = (v_alt_matrix * vec4(uv, 0, 1)).xy;
|
||||||
|
uv *= inv_texture_size;
|
||||||
|
|
||||||
|
uv = offset + uv;
|
||||||
|
} else {
|
||||||
|
uv *= texture_size;
|
||||||
|
result.zw = uv;
|
||||||
|
uv = _snap(uv, q);
|
||||||
|
uv /= texture_size;
|
||||||
|
}
|
||||||
|
|
||||||
|
uv = mix(uv, 1.0 - uv, flip);
|
||||||
|
result.xy = uv + EPSILON;
|
||||||
|
return result;
|
||||||
|
}
|
||||||
1
shaders/quantize.gdshaderinc.uid
Normal file
1
shaders/quantize.gdshaderinc.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://dp4ue4i3i5iaf
|
||||||
Reference in New Issue
Block a user