2025-05-15 14:35:32 +10:00
|
|
|
[gd_scene load_steps=17 format=4 uid="uid://ckbyiwy0dxbsd"]
|
2025-05-11 20:35:08 +10:00
|
|
|
|
|
|
|
|
[ext_resource type="Script" uid="uid://dqyddqx8xm0gw" path="res://games/platformer/player.gd" id="1_1wj3w"]
|
|
|
|
|
[ext_resource type="Texture2D" uid="uid://diilj7xuttpqu" path="res://icon.svg" id="1_oyf6i"]
|
2025-05-14 13:30:27 +10:00
|
|
|
[ext_resource type="Texture2D" uid="uid://g5arxk4po7kw" path="res://sprites/platformer_lab_tile.png" id="3_84mot"]
|
2025-05-15 14:35:32 +10:00
|
|
|
[ext_resource type="Texture2D" uid="uid://d1mo5ecyjgngw" path="res://sprites/platformer_stone_tile.png" id="4_86tx6"]
|
2025-05-14 13:30:27 +10:00
|
|
|
[ext_resource type="PackedScene" uid="uid://q3wdnawp7n63" path="res://games/platformer/lab_platform.tscn" id="4_w58m1"]
|
2025-05-14 19:53:34 +10:00
|
|
|
[ext_resource type="Script" uid="uid://43jxroyergh0" path="res://games/platformer/platformerCam.gd" id="5_x2rtd"]
|
|
|
|
|
[ext_resource type="Texture2D" uid="uid://dyjxtuapxfiip" path="res://sprites/box.png" id="6_02uuf"]
|
2025-05-11 20:35:08 +10:00
|
|
|
|
2025-05-11 20:46:20 +10:00
|
|
|
[sub_resource type="Gradient" id="Gradient_1wj3w"]
|
2025-05-14 13:30:27 +10:00
|
|
|
offsets = PackedFloat32Array(0.0209205, 1)
|
|
|
|
|
colors = PackedColorArray(0.241156, 0.241156, 0.241156, 1, 0.462291, 0.462291, 0.462291, 1)
|
2025-05-11 20:46:20 +10:00
|
|
|
|
|
|
|
|
[sub_resource type="GradientTexture2D" id="GradientTexture2D_84mot"]
|
|
|
|
|
gradient = SubResource("Gradient_1wj3w")
|
2025-05-14 19:53:34 +10:00
|
|
|
width = 300
|
|
|
|
|
height = 180
|
2025-05-11 20:46:20 +10:00
|
|
|
fill_from = Vector2(1, 1)
|
|
|
|
|
|
2025-05-11 20:35:08 +10:00
|
|
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_oyf6i"]
|
|
|
|
|
size = Vector2(32, 32)
|
|
|
|
|
|
2025-05-14 19:53:34 +10:00
|
|
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_02uuf"]
|
|
|
|
|
size = Vector2(32, 32)
|
|
|
|
|
|
2025-05-11 20:35:08 +10:00
|
|
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_1wj3w"]
|
|
|
|
|
size = Vector2(608, 46)
|
|
|
|
|
|
2025-05-14 13:30:27 +10:00
|
|
|
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_w58m1"]
|
|
|
|
|
texture = ExtResource("3_84mot")
|
|
|
|
|
0:0/0 = 0
|
|
|
|
|
0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
|
|
|
|
|
2025-05-15 14:35:32 +10:00
|
|
|
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_gqvfi"]
|
|
|
|
|
texture = ExtResource("4_86tx6")
|
|
|
|
|
0:0/0 = 0
|
|
|
|
|
0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
|
|
|
|
|
2025-05-14 13:30:27 +10:00
|
|
|
[sub_resource type="TileSet" id="TileSet_x2rtd"]
|
|
|
|
|
physics_layer_0/collision_layer = 1
|
|
|
|
|
sources/0 = SubResource("TileSetAtlasSource_w58m1")
|
2025-05-15 14:35:32 +10:00
|
|
|
sources/1 = SubResource("TileSetAtlasSource_gqvfi")
|
2025-05-14 13:30:27 +10:00
|
|
|
|
2025-05-14 19:53:34 +10:00
|
|
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_86tx6"]
|
|
|
|
|
size = Vector2(32, 32)
|
|
|
|
|
|
2025-05-11 20:35:08 +10:00
|
|
|
[node name="Platformer" type="Node"]
|
|
|
|
|
|
2025-05-14 19:53:34 +10:00
|
|
|
[node name="Parallax2D" type="Parallax2D" parent="."]
|
|
|
|
|
scroll_scale = Vector2(0, 0)
|
|
|
|
|
|
|
|
|
|
[node name="TextureRect" type="TextureRect" parent="Parallax2D"]
|
|
|
|
|
z_index = -6
|
2025-05-11 20:35:08 +10:00
|
|
|
anchors_preset = 15
|
|
|
|
|
anchor_right = 1.0
|
|
|
|
|
anchor_bottom = 1.0
|
2025-05-14 19:53:34 +10:00
|
|
|
offset_right = 320.0
|
|
|
|
|
offset_bottom = 180.0
|
2025-05-11 20:35:08 +10:00
|
|
|
grow_horizontal = 2
|
|
|
|
|
grow_vertical = 2
|
2025-05-14 19:53:34 +10:00
|
|
|
scale = Vector2(2, 2)
|
2025-05-11 20:46:20 +10:00
|
|
|
texture = SubResource("GradientTexture2D_84mot")
|
2025-05-11 20:35:08 +10:00
|
|
|
|
|
|
|
|
[node name="Player" type="CharacterBody2D" parent="."]
|
2025-05-15 14:35:32 +10:00
|
|
|
position = Vector2(-1552, -504)
|
2025-05-11 20:35:08 +10:00
|
|
|
script = ExtResource("1_1wj3w")
|
|
|
|
|
|
|
|
|
|
[node name="Sprite2D" type="Sprite2D" parent="Player"]
|
|
|
|
|
scale = Vector2(0.25, 0.25)
|
|
|
|
|
texture = ExtResource("1_oyf6i")
|
|
|
|
|
|
|
|
|
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="Player"]
|
|
|
|
|
shape = SubResource("RectangleShape2D_oyf6i")
|
|
|
|
|
|
2025-05-14 19:53:34 +10:00
|
|
|
[node name="hitbox" type="Area2D" parent="Player"]
|
|
|
|
|
|
|
|
|
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="Player/hitbox"]
|
|
|
|
|
shape = SubResource("RectangleShape2D_02uuf")
|
|
|
|
|
debug_color = Color(5.29438e-07, 0.629247, 0.48448, 0.42)
|
|
|
|
|
|
2025-05-11 20:35:08 +10:00
|
|
|
[node name="StaticBody2D" type="StaticBody2D" parent="."]
|
2025-05-11 20:46:20 +10:00
|
|
|
position = Vector2(319, 344)
|
2025-05-11 20:35:08 +10:00
|
|
|
|
|
|
|
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"]
|
|
|
|
|
shape = SubResource("RectangleShape2D_1wj3w")
|
2025-05-14 13:30:27 +10:00
|
|
|
|
|
|
|
|
[node name="TileMapLayer" type="TileMapLayer" parent="."]
|
|
|
|
|
scale = Vector2(2, 2)
|
2025-05-15 14:35:32 +10:00
|
|
|
tile_map_data = PackedByteArray("AAAAAAkAAAAAAAAAAAABAAkAAAAAAAAAAAACAAkAAAAAAAAAAAADAAkAAAAAAAAAAAAEAAkAAAAAAAAAAAAFAAkAAAAAAAAAAAAGAAkAAAAAAAAAAAAHAAkAAAAAAAAAAAAIAAkAAAAAAAAAAAAJAAkAAAAAAAAAAAAKAAkAAAAAAAAAAAALAAkAAAAAAAAAAAAMAAkAAAAAAAAAAAANAAkAAAAAAAAAAAAOAAkAAAAAAAAAAAAPAAkAAAAAAAAAAAAQAAkAAAAAAAAAAAARAAkAAAAAAAAAAAASAAkAAAAAAAAAAAATAAkAAAAAAAAAAAATAAoAAQAAAAAAAAATAAsAAQAAAAAAAAASAAsAAQAAAAAAAAARAAsAAQAAAAAAAAAQAAsAAQAAAAAAAAAPAAsAAQAAAAAAAAAOAAsAAQAAAAAAAAANAAsAAQAAAAAAAAAMAAsAAQAAAAAAAAALAAsAAQAAAAAAAAAKAAsAAQAAAAAAAAAJAAsAAQAAAAAAAAAIAAsAAQAAAAAAAAAHAAsAAQAAAAAAAAAGAAsAAQAAAAAAAAAFAAsAAQAAAAAAAAAEAAsAAQAAAAAAAAADAAsAAQAAAAAAAAACAAsAAQAAAAAAAAABAAsAAQAAAAAAAAABAAoAAQAAAAAAAAAAAAoAAQAAAAAAAAAAAAsAAQAAAAAAAAACAAoAAQAAAAAAAAADAAoAAQAAAAAAAAAEAAoAAQAAAAAAAAAFAAoAAQAAAAAAAAAGAAoAAQAAAAAAAAAHAAoAAQAAAAAAAAAIAAoAAQAAAAAAAAAJAAoAAQAAAAAAAAAKAAoAAQAAAAAAAAALAAoAAQAAAAAAAAAMAAoAAQAAAAAAAAANAAoAAQAAAAAAAAAOAAoAAQAAAAAAAAAPAAoAAQAAAAAAAAAQAAoAAQAAAAAAAAARAAoAAQAAAAAAAAASAAoAAQAAAAAAAAAAAAUAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAHAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAJAAAAAAAAAAAAAAAKAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAANAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAARAAAAAAAAAAAAAAASAAAAAAAAAAAAAAATAAAAAAAAAAAAAAATAAEAAAAAAAAAAAATAAIAAAAAAAAAAAATAAMAAAAAAAAAAAATAAQAAAAAAAAAAAATAAUAAAAAAAAAAAD//wkAAAAAAAAAAAAUAAkAAAAAAAAAAAAVAAkAAAAAAAAAAAAWAAkAAAAAAAAAAAAXAAkAAAAAAAAAAAAYAAkAAAAAAAAAAAAZAAkAAAAAAAAAAAAaAAkAAAAAAAAAAAAbAAkAAAAAAAAAAAAcAAkAAAAAAAAAAAAdAAkAAAAAAAAAAAAeAAkAAAAAAAAAAAAfAAkAAAAAAAAAAAD//wMAAAAAAAAAAAAUAAMAAAAAAAAAAAAVAAMAAAAAAAAAAAAWAAMAAAAAAAAAAAAXAAMAAAAAAAAAAAAYAAMAAAAAAAAAAAAZAAMAAAAAAAAAAAAaAAMAAAAAAAAAAAAbAAMAAAAAAAAAAAAcAAMAAAAAAAAAAAAdAAMAAAAAAAAAAAAeAAMAAAAAAAAAAAAfAAMAAAAAAAAAAAD+/wkAAAAAAAAAAAD9/wkAAAAAAAAAAAD8/wkAAAAAAAAAAAD7/wkAAAAAAAAAAAD6/wkAAAAAAAAAAAD5/wkAAAAAAAAAAAD4/wkAAAAAAAAAAAD3/wkAAAAAAAAAAAD2/wkAAAAAAAAAAAD1/wkAAAAAAAAAAAD0/wkAAAAAAAAAAADz/wkAAAAAAAAAAADy/wkAAAAAAAAAAAD+/wMAAAAAAAAAAAD9/wMAAAAAAAAAAAD8/wMAAAAAAAAAAAD7/wMAAAAAAAAAAAD6/wMAAAAAAAAAAAD5/wMAAAAAAAAAAAD4/wMAAAAAAAAAAAD3/wMAAAAAAAAAAAD2/wMAAAAAAAAAAAD1/wMAAAAAAAAAAAD0/wMAAAAAAAAAAADw/wYAAAAAAAAAAADv/wYAAAAAAAAAAADu/wYAAAAAAAAAAADx/wkAAAAAAAAAAADw/wkAAAAAAAAAAADw/wgAAAAAAAAAAADw/wcAAAAAAAAAAADu/wcAAQAAAAAAAADu/wgAAQAAAAAAAADu/wkAAQAAAAAAAAD0/wEAAAAAAAAAAAD0/wAAAAAAAAAAAAD0/wIAAAAAAAAAAAD0////AAAAAAAAAADz////AAAAAAAAAADy////AAAAAAAAAADx////AAAAAAAAAADw////AAAAAAAAAADv////AAAAAAAAAADu////AAAAAAAAAADt/wkAAQAAAAAAAADt/wgAAQAAAAAAAADt/wcAAQAAAAAAAADt/wYAAAAAAAAAAADt/wUAAAAAAAAAAADt/wQAAAAAAAAAAADs/wQAAAAAAAAAAADr/wQAAAAAAAAAAADr/wUAAAAAAAAAAADr/wYAAAAAAAAAAADr/wcAAQAAAAAAAADr/wgAAQAAAAAAAADr/wkAAQAAAAAAAADq/wkAAQAAAAAAAADq/wgAAQAAAAAAAADq/wcAAQAAAAAAAADq/wYAAAAAAAAAAADp/wYAAAAAAAAAAADo/wYAAAAAAAAAAADo/wcAAAAAAAAAAADo/wgAAAAAAAAAAADo/wkAAAAAAAAAAADn/wkAAAAAAAAAAADm/wkAAAAAAAAAAADl/wkAAAAAAAAAAADk/wkAAAAAAAAAAADt////AAAAAAAAAADs////AAAAAAAAAADr////AAAAAAAAAADq////AAAAAAAAAADp////AAAAAAAAAADo////AAAAAAAAAADn////AAAAAAAAAADm////AAAAAAAAAADl////AAAAAAAAAADk////AAAAAAAAAADk/wAAAAAAAAAAAADk/wEAAAAAAAAAAADk/wIAAAAAAAAAAADk/wMAAAAAAAAAAADk/wQAAAAAAAAAAADk/wUAAAAAAAAAAADj/wkAAAAAAAAAAADi/wkAAAAAAAAAAADh/wkAAAAAAAAAAADg/wkAAAAAAAAAAADf/wkAAAAAAAAAAADf/wgAAAAAAAAAAADf/wcAAAAAAAAAAADf/wYAAAAAAAAAAADf/wUAAAAAAAAAAADf/wQAAAAAAAAAAADf/wMAAAAAAAAAAADf/wIAAAAAAAAAAADf/wEAAAAAAAAAAADf/wAAAAAAAAAAAADf////AAAAAAAAAADg/wUAAAAAAAAAAADh/wUAAAAAAAAAAADi/wEAAAAAAAAAAADj/wEAAAAAAAAAAADf//7/AAAAAAAAAADf//3/AAAAAAAAAADg//3/AAAAAAAAAADh//3/AAAAAAAAAADk//7/AAAAAAAAAADk//3/AAAAAAAAAADk//z/AAAAAAAAAADk//v/AAAAAAAAAADf//z/AAAAAAAAAADf//v/AAAAAAAAAADf//r/AAAAAAAAAADf//n/AAAAAAAAAADf//j/AAAAAAAAAADi//n/AAAAAAAAAADj//n/AAAAAAAAAADg//X/AAAAAAAAAADh//X/AAAAAAAAAADf//f/AAAAAAAAAADf//b/AAAAAAAAAADf//X/AAAAAAAAAADk//r/AAAAAAAAAADk//n/AAAAAAAAAADk//j/AAAAAAAAAADk//f/AAAAAAAAAADk//b/AAAAAAAAAADk//X/AAAAAAAAAADk//T/AAAAAAAAAADk//P/AAAAAAAAAADk//L/AAAAAAAAAADk//H/AAAAAAAAAADk//D/AAAAAAAAAADk/+//AAAAAAAAAADe//X/AAAAAA
|
2025-05-14 13:30:27 +10:00
|
|
|
tile_set = SubResource("TileSet_x2rtd")
|
|
|
|
|
|
|
|
|
|
[node name="LabPlatformer" parent="." instance=ExtResource("4_w58m1")]
|
|
|
|
|
position = Vector2(112, 208)
|
|
|
|
|
|
|
|
|
|
[node name="LabPlatformer2" parent="." instance=ExtResource("4_w58m1")]
|
|
|
|
|
position = Vector2(496, 208)
|
|
|
|
|
|
|
|
|
|
[node name="LabPlatformer3" parent="." instance=ExtResource("4_w58m1")]
|
|
|
|
|
position = Vector2(368, 112)
|
|
|
|
|
|
|
|
|
|
[node name="LabPlatformer4" parent="." instance=ExtResource("4_w58m1")]
|
|
|
|
|
position = Vector2(240, 112)
|
2025-05-14 19:53:34 +10:00
|
|
|
|
|
|
|
|
[node name="Camera2D" type="Camera2D" parent="." node_paths=PackedStringArray("target")]
|
2025-05-15 14:35:32 +10:00
|
|
|
position = Vector2(-1552, -504)
|
2025-05-14 19:53:34 +10:00
|
|
|
position_smoothing_enabled = true
|
|
|
|
|
script = ExtResource("5_x2rtd")
|
|
|
|
|
target = NodePath("../Player")
|
|
|
|
|
|
|
|
|
|
[node name="Box" type="Area2D" parent="."]
|
2025-05-15 14:35:32 +10:00
|
|
|
position = Vector2(-624, 112)
|
2025-05-14 19:53:34 +10:00
|
|
|
|
|
|
|
|
[node name="Sprite2D" type="Sprite2D" parent="Box"]
|
|
|
|
|
texture = ExtResource("6_02uuf")
|
|
|
|
|
|
|
|
|
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="Box"]
|
|
|
|
|
shape = SubResource("RectangleShape2D_86tx6")
|
|
|
|
|
|
|
|
|
|
[connection signal="area_entered" from="Player/hitbox" to="Player" method="_on_hitbox_area_entered"]
|