summaryrefslogtreecommitdiff
path: root/Reusable Scenes/1
diff options
context:
space:
mode:
authoraltaf-creator <dev@altafcreator.com>2025-10-20 01:43:48 +0800
committeraltaf-creator <dev@altafcreator.com>2025-10-20 01:43:48 +0800
commit466bec0b724632f6dd2e1555a7bd58ffc1dd0458 (patch)
treed6645ea11914edeec645299fa497a9e542dbaec7 /Reusable Scenes/1
Jam version.
Diffstat (limited to 'Reusable Scenes/1')
-rw-r--r--Reusable Scenes/1/bg_tree.tscn60
-rw-r--r--Reusable Scenes/1/enemy_archer.tscn194
-rw-r--r--Reusable Scenes/1/grappleables.tscn41
-rw-r--r--Reusable Scenes/1/tree.tscn250
-rw-r--r--Reusable Scenes/1/trunk.tscn35
5 files changed, 580 insertions, 0 deletions
diff --git a/Reusable Scenes/1/bg_tree.tscn b/Reusable Scenes/1/bg_tree.tscn
new file mode 100644
index 0000000..7670692
--- /dev/null
+++ b/Reusable Scenes/1/bg_tree.tscn
@@ -0,0 +1,60 @@
+[gd_scene load_steps=3 format=3 uid="uid://beucb04e2mvm7"]
+
+[sub_resource type="Gradient" id="Gradient_y0prk"]
+offsets = PackedFloat32Array(0.0210843)
+colors = PackedColorArray(0.0705882, 0.0901961, 0.0627451, 1)
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_0nkm3"]
+gradient = SubResource("Gradient_y0prk")
+width = 64
+
+[node name="BGTree" type="Node2D"]
+z_index = -90
+scale = Vector2(0.78, 0.78)
+
+[node name="Sprite" type="Sprite2D" parent="."]
+position = Vector2(68, -426)
+scale = Vector2(3.125, 916)
+texture = SubResource("GradientTexture1D_0nkm3")
+
+[node name="Sprite2" type="Sprite2D" parent="."]
+position = Vector2(-1.33514e-05, -202)
+rotation = 0.270581
+scale = Vector2(1.33656, 427.101)
+texture = SubResource("GradientTexture1D_0nkm3")
+
+[node name="Sprite3" type="Sprite2D" parent="."]
+position = Vector2(153, -146)
+rotation = -0.239004
+scale = Vector2(1.33656, 427.101)
+texture = SubResource("GradientTexture1D_0nkm3")
+
+[node name="Sprite4" type="Sprite2D" parent="."]
+position = Vector2(-148, 20)
+rotation = 0.873128
+scale = Vector2(1.33656, 427.101)
+texture = SubResource("GradientTexture1D_0nkm3")
+
+[node name="Sprite5" type="Sprite2D" parent="."]
+position = Vector2(-84, -703)
+rotation = 2.24277
+scale = Vector2(1.33656, 427.101)
+texture = SubResource("GradientTexture1D_0nkm3")
+
+[node name="Sprite6" type="Sprite2D" parent="."]
+position = Vector2(-71.9999, -954)
+rotation = 3.12576
+scale = Vector2(9.45908, 322.896)
+texture = SubResource("GradientTexture1D_0nkm3")
+
+[node name="Sprite7" type="Sprite2D" parent="."]
+position = Vector2(285, -920)
+rotation = 2.85721
+scale = Vector2(7.69613, 391.078)
+texture = SubResource("GradientTexture1D_0nkm3")
+
+[node name="Sprite8" type="Sprite2D" parent="."]
+position = Vector2(-349, -1070)
+rotation = 3.25921
+scale = Vector2(6.84112, 358.914)
+texture = SubResource("GradientTexture1D_0nkm3")
diff --git a/Reusable Scenes/1/enemy_archer.tscn b/Reusable Scenes/1/enemy_archer.tscn
new file mode 100644
index 0000000..9dbfa11
--- /dev/null
+++ b/Reusable Scenes/1/enemy_archer.tscn
@@ -0,0 +1,194 @@
+[gd_scene load_steps=17 format=3 uid="uid://s27nyuw0bl5a"]
+
+[ext_resource type="Script" uid="uid://c5warxls18mds" path="res://Scripts/Entity.gd" id="1_wgldt"]
+[ext_resource type="Script" uid="uid://cahhmhibcdjcd" path="res://Scripts/Enemy AI/JungleAI.gd" id="2_8a6jk"]
+[ext_resource type="Texture2D" uid="uid://d3plfj75jmmyu" path="res://Assets/Visuals/isostri.png" id="3_oyvi1"]
+[ext_resource type="Texture2D" uid="uid://ddxbrkfa7i5n" path="res://Assets/Visuals/hexagon.png" id="4_b2uf7"]
+[ext_resource type="PackedScene" uid="uid://ccij302qcrvo1" path="res://Reusable Scenes/Masks/grapple_mask.tscn" id="5_wyw0d"]
+[ext_resource type="Script" uid="uid://bfmc8st4ss7om" path="res://Scripts/Weapons/Bow.gd" id="6_8a6jk"]
+[ext_resource type="PackedScene" uid="uid://dxemwyiy4it0g" path="res://Reusable Scenes/Projectiles/projectile_blowpipe.tscn" id="7_eb30r"]
+
+[sub_resource type="CircleShape2D" id="CircleShape2D_twxkf"]
+radius = 722.224
+
+[sub_resource type="Gradient" id="Gradient_wyw0d"]
+offsets = PackedFloat32Array(1)
+colors = PackedColorArray(0.299315, 0.19351, 0.158235, 1)
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_8a6jk"]
+gradient = SubResource("Gradient_wyw0d")
+width = 26
+
+[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_h27ao"]
+radius = 13.0
+height = 80.0
+
+[sub_resource type="Animation" id="Animation_h27ao"]
+length = 0.001
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("SpriteGroup/Foot2:position")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Vector2(9, 27)]
+}
+tracks/1/type = "value"
+tracks/1/imported = false
+tracks/1/enabled = true
+tracks/1/path = NodePath("SpriteGroup/Foot:position")
+tracks/1/interp = 1
+tracks/1/loop_wrap = true
+tracks/1/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Vector2(-9, 27)]
+}
+
+[sub_resource type="Animation" id="Animation_uu6qt"]
+resource_name = "walk"
+length = 0.8
+loop_mode = 1
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("SpriteGroup/Foot2:position")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0, 0.400847, 0.4759, 0.560019, 0.626686, 0.726686, 0.8),
+"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1),
+"update": 0,
+"values": [Vector2(9, 27), Vector2(-9, 27), Vector2(-6, 25), Vector2(-3, 24), Vector2(2, 24), Vector2(6, 26), Vector2(9, 27)]
+}
+tracks/1/type = "value"
+tracks/1/imported = false
+tracks/1/enabled = true
+tracks/1/path = NodePath("SpriteGroup/Foot:position")
+tracks/1/interp = 1
+tracks/1/loop_wrap = true
+tracks/1/keys = {
+"times": PackedFloat32Array(0, 0.0666667, 0.166667, 0.233333, 0.333333, 0.4, 0.8),
+"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1),
+"update": 0,
+"values": [Vector2(-9, 27), Vector2(-6, 25), Vector2(-3, 24), Vector2(2, 24), Vector2(6, 26), Vector2(9, 27), Vector2(-9, 27)]
+}
+
+[sub_resource type="AnimationLibrary" id="AnimationLibrary_twxkf"]
+_data = {
+&"RESET": SubResource("Animation_h27ao"),
+&"walk": SubResource("Animation_uu6qt")
+}
+
+[sub_resource type="Gradient" id="Gradient_8a6jk"]
+offsets = PackedFloat32Array(1)
+colors = PackedColorArray(0.479943, 0.67, 0.1742, 1)
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_eb30r"]
+gradient = SubResource("Gradient_8a6jk")
+width = 26
+
+[node name="EnemyPewPew" type="RigidBody2D"]
+collision_layer = 49152
+collision_mask = 49153
+lock_rotation = true
+script = ExtResource("1_wgldt")
+max_health = 20
+
+[node name="EnemyJungleAI" type="Node" parent="." node_paths=PackedStringArray("weapon", "pivot", "sprite")]
+script = ExtResource("2_8a6jk")
+weapon = NodePath("../HandPivot/Node2D/Blowpipe")
+pivot = NodePath("../HandPivot")
+sprite = NodePath("../SpriteGroup")
+
+[node name="AttackCooldown" type="Timer" parent="EnemyJungleAI"]
+wait_time = 3.0
+
+[node name="DetectArea" type="Area2D" parent="."]
+collision_layer = 3
+collision_mask = 3
+collision_priority = 2.0
+
+[node name="CollisionShape2D" type="CollisionShape2D" parent="DetectArea"]
+shape = SubResource("CircleShape2D_twxkf")
+
+[node name="SpriteGroup" type="Node2D" parent="."]
+
+[node name="Foot" type="Sprite2D" parent="SpriteGroup"]
+position = Vector2(-9, 27)
+rotation = 3.14159
+scale = Vector2(0.58, 7.46)
+texture = SubResource("GradientTexture1D_8a6jk")
+
+[node name="Foot2" type="Sprite2D" parent="SpriteGroup"]
+position = Vector2(9, 27)
+rotation = 3.14159
+scale = Vector2(0.58, 7.46)
+texture = SubResource("GradientTexture1D_8a6jk")
+
+[node name="Sprite2D" type="Sprite2D" parent="SpriteGroup"]
+modulate = Color(0.40565, 0.61, 0.2013, 1)
+position = Vector2(0, -1)
+scale = Vector2(0.0406463, -0.0390693)
+texture = ExtResource("3_oyvi1")
+
+[node name="Sprite2D2" type="Sprite2D" parent="SpriteGroup"]
+modulate = Color(0.46, 0.3611, 0.322, 1)
+position = Vector2(0, -41.776)
+rotation = 3.14159
+scale = Vector2(0.0277332, 0.0277332)
+texture = ExtResource("4_b2uf7")
+
+[node name="GrappleMask" parent="SpriteGroup" instance=ExtResource("5_wyw0d")]
+process_mode = 4
+position = Vector2(5, -41.776)
+scale = Vector2(0.886033, 0.886033)
+
+[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
+position = Vector2(0, -9.44)
+shape = SubResource("CapsuleShape2D_h27ao")
+
+[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
+libraries = {
+&"": SubResource("AnimationLibrary_twxkf")
+}
+
+[node name="HandPivot" type="Node2D" parent="."]
+position = Vector2(6, -37)
+rotation = 3.15381
+
+[node name="Node2D" type="Node2D" parent="HandPivot"]
+
+[node name="Blowpipe" type="Node2D" parent="HandPivot/Node2D"]
+rotation = 1.23375
+script = ExtResource("6_8a6jk")
+arrow = ExtResource("7_eb30r")
+speed = 3000.0
+
+[node name="Blowpipe" type="Sprite2D" parent="HandPivot/Node2D/Blowpipe"]
+position = Vector2(23.7122, 8.17715)
+rotation = 1.90784
+scale = Vector2(0.143513, -51.7945)
+texture = SubResource("GradientTexture1D_eb30r")
+
+[node name="Blowpipe2" type="Sprite2D" parent="HandPivot/Node2D/Blowpipe"]
+modulate = Color(0.80687, 0.80687, 0.80687, 1)
+position = Vector2(23.2316, 9.20714)
+rotation = 1.90784
+scale = Vector2(0.0541076, -52.0008)
+texture = SubResource("GradientTexture1D_eb30r")
+
+[node name="Sprite2D2" type="Sprite2D" parent="HandPivot"]
+modulate = Color(0.46, 0.3611, 0.322, 1)
+position = Vector2(0, 30.32)
+rotation = 3.14159
+scale = Vector2(0.011008, 0.0118146)
+texture = ExtResource("4_b2uf7")
+
+[connection signal="timeout" from="EnemyJungleAI/AttackCooldown" to="EnemyJungleAI" method="_on_attack_cooldown_timeout"]
+[connection signal="body_entered" from="DetectArea" to="EnemyJungleAI" method="_on_detect_area_body_entered"]
diff --git a/Reusable Scenes/1/grappleables.tscn b/Reusable Scenes/1/grappleables.tscn
new file mode 100644
index 0000000..5ce1f7a
--- /dev/null
+++ b/Reusable Scenes/1/grappleables.tscn
@@ -0,0 +1,41 @@
+[gd_scene load_steps=7 format=3 uid="uid://b3ev1xafiwmib"]
+
+[ext_resource type="Script" uid="uid://c8n5trpan30g0" path="res://Scripts/Level Specific/Grappleable.gd" id="1_3f7s8"]
+
+[sub_resource type="RectangleShape2D" id="RectangleShape2D_pytih"]
+size = Vector2(50, 50)
+
+[sub_resource type="Gradient" id="Gradient_3f7s8"]
+offsets = PackedFloat32Array(1)
+colors = PackedColorArray(0.4564, 0.697331, 1, 1)
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_v4k01"]
+gradient = SubResource("Gradient_3f7s8")
+width = 50
+
+[sub_resource type="Gradient" id="Gradient_adc2f"]
+offsets = PackedFloat32Array(0)
+colors = PackedColorArray(0.48, 0.33024, 0.1056, 1)
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_mpo1i"]
+gradient = SubResource("Gradient_adc2f")
+width = 50
+
+[node name="Grappleables" type="StaticBody2D" node_paths=PackedStringArray("highlighter")]
+z_index = 1024
+collision_layer = 8
+collision_mask = 8
+script = ExtResource("1_3f7s8")
+highlighter = NodePath("Sprite2D2")
+
+[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_pytih")
+
+[node name="Sprite2D2" type="Sprite2D" parent="."]
+visible = false
+scale = Vector2(1.13976, 56.9881)
+texture = SubResource("GradientTexture1D_v4k01")
+
+[node name="Sprite2D" type="Sprite2D" parent="."]
+scale = Vector2(1, 50)
+texture = SubResource("GradientTexture1D_mpo1i")
diff --git a/Reusable Scenes/1/tree.tscn b/Reusable Scenes/1/tree.tscn
new file mode 100644
index 0000000..8c5985b
--- /dev/null
+++ b/Reusable Scenes/1/tree.tscn
@@ -0,0 +1,250 @@
+[gd_scene load_steps=16 format=3 uid="uid://cb6tymujjkw6k"]
+
+[sub_resource type="Gradient" id="Gradient_34bfm"]
+offsets = PackedFloat32Array(0.470779)
+colors = PackedColorArray(0.276666, 0.442989, 0.0883189, 1)
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_ovrsl"]
+gradient = SubResource("Gradient_34bfm")
+width = 64
+
+[sub_resource type="Gradient" id="Gradient_ovrsl"]
+offsets = PackedFloat32Array(0.470779)
+colors = PackedColorArray(0.57, 0.5472, 0.114, 1)
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_he5fp"]
+gradient = SubResource("Gradient_ovrsl")
+width = 64
+
+[sub_resource type="Gradient" id="Gradient_gnif3"]
+offsets = PackedFloat32Array(0.470779)
+colors = PackedColorArray(0.335918, 0.25971, 0.020719, 1)
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_lwy2l"]
+gradient = SubResource("Gradient_gnif3")
+width = 64
+
+[sub_resource type="Gradient" id="Gradient_lwy2l"]
+offsets = PackedFloat32Array(0.493976)
+colors = PackedColorArray(0.298791, 0.229838, 0.0164207, 1)
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_nj2yk"]
+gradient = SubResource("Gradient_lwy2l")
+width = 64
+
+[sub_resource type="Gradient" id="Gradient_hbaan"]
+offsets = PackedFloat32Array(0.493976)
+colors = PackedColorArray(0.37784, 0.293431, 0.0262073, 1)
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_mykqc"]
+gradient = SubResource("Gradient_hbaan")
+width = 64
+
+[sub_resource type="Gradient" id="Gradient_7pswh"]
+offsets = PackedFloat32Array(0.470779)
+colors = PackedColorArray(0.353547, 0.56, 0.1176, 1)
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_34bfm"]
+gradient = SubResource("Gradient_7pswh")
+width = 64
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_hbaan"]
+gradient = SubResource("Gradient_34bfm")
+width = 64
+
+[sub_resource type="Gradient" id="Gradient_he5fp"]
+offsets = PackedFloat32Array(0.470779)
+colors = PackedColorArray(0.454855, 0.716912, 0.148735, 1)
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_u05pv"]
+gradient = SubResource("Gradient_he5fp")
+width = 64
+
+[node name="Tree" type="Node2D"]
+
+[node name="Sprite2D16" type="Sprite2D" parent="."]
+position = Vector2(-200.468, -228)
+scale = Vector2(0.109864, 176.688)
+texture = SubResource("GradientTexture1D_ovrsl")
+
+[node name="Sprite2D17" type="Sprite2D" parent="."]
+position = Vector2(-200.468, -143)
+rotation = 0.785398
+scale = Vector2(0.299702, 19.181)
+texture = SubResource("GradientTexture1D_ovrsl")
+
+[node name="Sprite2D17" type="Sprite2D" parent="Sprite2D17"]
+scale = Vector2(0.54, 0.54)
+texture = SubResource("GradientTexture1D_he5fp")
+
+[node name="Sprite2D18" type="Sprite2D" parent="."]
+position = Vector2(-124.389, -193.656)
+scale = Vector2(0.109864, 176.688)
+texture = SubResource("GradientTexture1D_ovrsl")
+
+[node name="Sprite2D19" type="Sprite2D" parent="."]
+position = Vector2(-124.389, -108.656)
+rotation = 0.785398
+scale = Vector2(0.299702, 19.181)
+texture = SubResource("GradientTexture1D_ovrsl")
+
+[node name="Sprite2D17" type="Sprite2D" parent="Sprite2D19"]
+scale = Vector2(0.54, 0.54)
+texture = SubResource("GradientTexture1D_he5fp")
+
+[node name="Sprite2D20" type="Sprite2D" parent="."]
+position = Vector2(78.6109, -211.656)
+scale = Vector2(0.109864, 176.688)
+texture = SubResource("GradientTexture1D_ovrsl")
+
+[node name="Sprite2D21" type="Sprite2D" parent="."]
+position = Vector2(78.6109, -126.656)
+rotation = 0.785398
+scale = Vector2(0.299702, 19.181)
+texture = SubResource("GradientTexture1D_ovrsl")
+
+[node name="Sprite2D17" type="Sprite2D" parent="Sprite2D21"]
+scale = Vector2(0.54, 0.54)
+texture = SubResource("GradientTexture1D_he5fp")
+
+[node name="Sprite2D22" type="Sprite2D" parent="."]
+position = Vector2(192.611, -283.656)
+scale = Vector2(0.109864, 176.688)
+texture = SubResource("GradientTexture1D_ovrsl")
+
+[node name="Sprite2D23" type="Sprite2D" parent="."]
+position = Vector2(192.611, -198.656)
+rotation = 0.785398
+scale = Vector2(0.299702, 19.181)
+texture = SubResource("GradientTexture1D_ovrsl")
+
+[node name="Sprite2D17" type="Sprite2D" parent="Sprite2D23"]
+scale = Vector2(0.54, 0.54)
+texture = SubResource("GradientTexture1D_he5fp")
+
+[node name="Sprite2D24" type="Sprite2D" parent="."]
+position = Vector2(141.611, -146.656)
+scale = Vector2(0.109864, 176.688)
+texture = SubResource("GradientTexture1D_ovrsl")
+
+[node name="Sprite2D25" type="Sprite2D" parent="."]
+position = Vector2(141.611, -61.6563)
+rotation = 0.785398
+scale = Vector2(0.299702, 19.181)
+texture = SubResource("GradientTexture1D_ovrsl")
+
+[node name="Sprite2D17" type="Sprite2D" parent="Sprite2D25"]
+scale = Vector2(0.54, 0.54)
+texture = SubResource("GradientTexture1D_he5fp")
+
+[node name="Sprite2D7" type="Sprite2D" parent="."]
+position = Vector2(-7.45212, -157.75)
+scale = Vector2(1.20312, 437.5)
+texture = SubResource("GradientTexture1D_lwy2l")
+
+[node name="Sprite2D2" type="Sprite2D" parent="."]
+position = Vector2(-33.6079, -5.36407)
+rotation = 0.785398
+scale = Vector2(1.53232, 118.21)
+texture = SubResource("GradientTexture1D_lwy2l")
+
+[node name="Sprite2D4" type="Sprite2D" parent="."]
+position = Vector2(-26.9521, -55)
+rotation = 0.261799
+scale = Vector2(0.836327, 83.2208)
+texture = SubResource("GradientTexture1D_lwy2l")
+
+[node name="Sprite2D3" type="Sprite2D" parent="."]
+position = Vector2(79.1762, -2.12842)
+rotation = -0.785398
+scale = Vector2(0.884306, 204.687)
+texture = SubResource("GradientTexture1D_lwy2l")
+
+[node name="Sprite2D5" type="Sprite2D" parent="."]
+position = Vector2(-34.9521, -38)
+rotation = 0.261799
+scale = Vector2(0.296305, 115.218)
+texture = SubResource("GradientTexture1D_nj2yk")
+
+[node name="Sprite2D6" type="Sprite2D" parent="."]
+position = Vector2(-20.9521, -235.195)
+scale = Vector2(0.296305, 301.609)
+texture = SubResource("GradientTexture1D_nj2yk")
+
+[node name="Sprite2D27" type="Sprite2D" parent="."]
+position = Vector2(5.04791, -178)
+scale = Vector2(0.148153, 409.805)
+texture = SubResource("GradientTexture1D_nj2yk")
+
+[node name="Sprite2D30" type="Sprite2D" parent="."]
+position = Vector2(82.4558, 4.96503)
+rotation = -0.785398
+scale = Vector2(0.138365, 169.916)
+texture = SubResource("GradientTexture1D_nj2yk")
+
+[node name="Sprite2D26" type="Sprite2D" parent="."]
+position = Vector2(-12.9521, -136)
+scale = Vector2(0.214702, 367.805)
+texture = SubResource("GradientTexture1D_mykqc")
+
+[node name="Sprite2D29" type="Sprite2D" parent="."]
+position = Vector2(21.0479, -119)
+scale = Vector2(0.214702, 367.805)
+texture = SubResource("GradientTexture1D_mykqc")
+
+[node name="Sprite2D28" type="Sprite2D" parent="."]
+position = Vector2(77.9427, -29.1052)
+rotation = -0.785398
+scale = Vector2(0.214702, 158.799)
+texture = SubResource("GradientTexture1D_mykqc")
+
+[node name="Sprite2D" type="Sprite2D" parent="."]
+position = Vector2(-106.952, -362)
+rotation = 0.261799
+scale = Vector2(3.72656, 230.75)
+texture = SubResource("GradientTexture1D_34bfm")
+
+[node name="Sprite2D13" type="Sprite2D" parent="."]
+position = Vector2(-105.617, -250.513)
+rotation = 0.261799
+scale = Vector2(4.66797, 16)
+texture = SubResource("GradientTexture1D_ovrsl")
+
+[node name="Sprite2D8" type="Sprite2D" parent="."]
+position = Vector2(63.9229, -291.312)
+rotation = -0.261799
+scale = Vector2(3.75391, 161.375)
+texture = SubResource("GradientTexture1D_34bfm")
+
+[node name="Sprite2D14" type="Sprite2D" parent="."]
+position = Vector2(82.8082, -220.936)
+rotation = -0.261799
+scale = Vector2(3.75275, 15.576)
+texture = SubResource("GradientTexture1D_hbaan")
+
+[node name="Sprite2D11" type="Sprite2D" parent="."]
+position = Vector2(-48.6709, -398)
+scale = Vector2(2.50879, 133.344)
+texture = SubResource("GradientTexture1D_ovrsl")
+
+[node name="Sprite2D9" type="Sprite2D" parent="."]
+position = Vector2(-13.7334, -434.656)
+scale = Vector2(3.1582, 176.688)
+texture = SubResource("GradientTexture1D_34bfm")
+
+[node name="Sprite2D15" type="Sprite2D" parent="."]
+position = Vector2(11.3291, -499.5)
+scale = Vector2(2.10937, 17)
+texture = SubResource("GradientTexture1D_u05pv")
+
+[node name="Sprite2D12" type="Sprite2D" parent="."]
+position = Vector2(98.0479, -357)
+rotation = -0.261799
+scale = Vector2(1.86157, 66.5)
+texture = SubResource("GradientTexture1D_ovrsl")
+
+[node name="Sprite2D10" type="Sprite2D" parent="."]
+position = Vector2(112.048, -402)
+rotation = -0.261799
+scale = Vector2(2.37598, 122.344)
+texture = SubResource("GradientTexture1D_34bfm")
diff --git a/Reusable Scenes/1/trunk.tscn b/Reusable Scenes/1/trunk.tscn
new file mode 100644
index 0000000..a286a7c
--- /dev/null
+++ b/Reusable Scenes/1/trunk.tscn
@@ -0,0 +1,35 @@
+[gd_scene load_steps=3 format=3 uid="uid://b186mjdwnwe2y"]
+
+[sub_resource type="Gradient" id="Gradient_y0prk"]
+offsets = PackedFloat32Array(0.0210843)
+colors = PackedColorArray(0.0705882, 0.0901961, 0.0627451, 1)
+
+[sub_resource type="GradientTexture1D" id="GradientTexture1D_0nkm3"]
+gradient = SubResource("Gradient_y0prk")
+width = 64
+
+[node name="Trunk" type="Node2D"]
+z_index = -90
+
+[node name="Sprite" type="Sprite2D" parent="."]
+position = Vector2(68, -426)
+scale = Vector2(3.125, 916)
+texture = SubResource("GradientTexture1D_0nkm3")
+
+[node name="Sprite2" type="Sprite2D" parent="."]
+position = Vector2(-1.33514e-05, -202)
+rotation = 0.270581
+scale = Vector2(1.33656, 427.101)
+texture = SubResource("GradientTexture1D_0nkm3")
+
+[node name="Sprite3" type="Sprite2D" parent="."]
+position = Vector2(153, -146)
+rotation = -0.239004
+scale = Vector2(1.33656, 427.101)
+texture = SubResource("GradientTexture1D_0nkm3")
+
+[node name="Sprite4" type="Sprite2D" parent="."]
+position = Vector2(-148, 20)
+rotation = 0.873128
+scale = Vector2(1.33656, 427.101)
+texture = SubResource("GradientTexture1D_0nkm3")