ujiuiui
This commit is contained in:
BIN
assets/root_nodule.aseprite
Normal file
BIN
assets/root_nodule.aseprite
Normal file
Binary file not shown.
BIN
assets/root_nodule.png
Normal file
BIN
assets/root_nodule.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 409 B |
40
assets/root_nodule.png.import
Normal file
40
assets/root_nodule.png.import
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://tomd3kojw0qy"
|
||||
path="res://.godot/imported/root_nodule.png-981ed6f2ff13b8d32aab753225ea9d2d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/root_nodule.png"
|
||||
dest_files=["res://.godot/imported/root_nodule.png-981ed6f2ff13b8d32aab753225ea9d2d.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
@@ -1,5 +1,5 @@
|
||||
using Godot;
|
||||
using Slimepire.Gameplay.Nodules.Components;
|
||||
using Slimepire.Gameplay.Components;
|
||||
|
||||
namespace Slimepire.Core;
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[gd_resource type="Resource" script_class="NoduleResource" format=3 uid="uid://0d8vif4ejtp1"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://ds1idectpqbnh" path="res://assets/energy_storage_nodule.png" id="1_237jx"]
|
||||
[ext_resource type="PackedScene" uid="uid://by6iw05ovnhq8" path="res://src/Gameplay/Nodules/Components/EnergyStorage.tscn" id="1_dusyu"]
|
||||
[ext_resource type="Script" uid="uid://bnf6qmk64i2wj" path="res://src/Data/NoduleResource.cs" id="2_dusyu"]
|
||||
[ext_resource type="PackedScene" uid="uid://by6iw05ovnhq8" path="res://src/Gameplay/Components/EnergyStorage.tscn" id="1_dusyu"]
|
||||
[ext_resource type="Script" uid="uid://bnf6qmk64i2wj" path="res://src/Data/NoduleStats.cs" id="2_dusyu"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_dusyu"]
|
||||
atlas = ExtResource("1_237jx")
|
||||
|
||||
@@ -3,7 +3,7 @@ using Godot;
|
||||
namespace Slimepire.Data;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class NoduleResource : Resource
|
||||
public partial class NoduleStats : Resource
|
||||
{
|
||||
[Export]
|
||||
public SpriteFrames SpriteFrames;
|
||||
@@ -1,7 +1,7 @@
|
||||
[gd_resource type="Resource" script_class="NoduleResource" format=3 uid="uid://5gk0giodp6g"]
|
||||
[gd_resource type="Resource" script_class="NoduleStats" format=3 uid="uid://5gk0giodp6g"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://cecg47efx7gw8" path="res://assets/simple_nodule.png" id="1_j6wbi"]
|
||||
[ext_resource type="Script" uid="uid://bnf6qmk64i2wj" path="res://src/Data/NoduleResource.cs" id="1_otepm"]
|
||||
[ext_resource type="Script" uid="uid://bnf6qmk64i2wj" path="res://src/Data/NoduleStats.cs" id="1_otepm"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_j6wbi"]
|
||||
atlas = ExtResource("1_j6wbi")
|
||||
@@ -37,5 +37,4 @@ script = ExtResource("1_otepm")
|
||||
SpriteFrames = SubResource("SpriteFrames_x44k2")
|
||||
Color = Color(0.2642648, 0.46582836, 0.36528692, 1)
|
||||
NoduleName = "Simple Nodule"
|
||||
NoduleType = 1
|
||||
metadata/_custom_type_script = "uid://bnf6qmk64i2wj"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
using Godot;
|
||||
using Slimepire.Gameplay.Nodules;
|
||||
using Slimepire.Gameplay.Nodules.Components;
|
||||
using Slimepire.Gameplay.Components;
|
||||
using Nodule = Slimepire.Gameplay.Nodules.BasicNodule.Nodule;
|
||||
|
||||
namespace Slimepire.Gameplay;
|
||||
|
||||
@@ -15,8 +15,9 @@ public partial class BuildGhost : Node2D
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
_tubeConnectionArea.ConnectionAdded += ConnectionAdded;
|
||||
_tubeConnectionArea.ConnectionRemoved += ConnectionRemoved;
|
||||
// fix: after refactor
|
||||
// _tubeConnectionArea.ConnectionAdded += ConnectionAdded;
|
||||
// _tubeConnectionArea.ConnectionRemoved += ConnectionRemoved;
|
||||
}
|
||||
|
||||
private void ConnectionAdded(Nodule nodule)
|
||||
@@ -79,9 +80,6 @@ public partial class BuildGhost : Node2D
|
||||
var nodule = Instantiator.Instantiate<Nodule>();
|
||||
|
||||
nodule.Position = Position;
|
||||
// nodule.NoduleResource = GD.Load<NoduleResource>(
|
||||
// GameResources.SimpleNoduleTres.ResourcePath
|
||||
// );
|
||||
|
||||
GetParent()?.AddChild(nodule);
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
[ext_resource type="Script" uid="uid://ck5yw760bu8sb" path="res://src/Gameplay/BuildGhost.cs" id="1_ahcoi"]
|
||||
[ext_resource type="Texture2D" uid="uid://cecg47efx7gw8" path="res://assets/simple_nodule.png" id="2_uo42j"]
|
||||
[ext_resource type="PackedScene" uid="uid://bjesfu1mfx8l5" path="res://src/Gameplay/Nodules/Components/TubeConnectionArea.tscn" id="2_vecmk"]
|
||||
[ext_resource type="PackedScene" uid="uid://bjesfu1mfx8l5" path="res://src/Gameplay/Components/TubeConnectionArea.tscn" id="2_vecmk"]
|
||||
[ext_resource type="AudioStream" uid="uid://mj8wvuwfc6o7" path="res://assets/sfx/tube_disconnect.wav" id="3_nxaxp"]
|
||||
[ext_resource type="AudioStream" uid="uid://bxxi7grsubvgm" path="res://assets/sfx/tube_connect.wav" id="3_quiac"]
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
using Godot;
|
||||
using Slimepire.Core;
|
||||
|
||||
namespace Slimepire.Gameplay.Nodules.Components;
|
||||
namespace Slimepire.Gameplay.Components;
|
||||
|
||||
public partial class EnergyProducer : Node
|
||||
{
|
||||
@@ -1,6 +1,6 @@
|
||||
[gd_scene format=3 uid="uid://t0gdf172f65v"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://bku1vey63ew65" path="res://src/Gameplay/Nodules/Components/EnergyProducer.cs" id="1_4q7h4"]
|
||||
[ext_resource type="Script" uid="uid://bku1vey63ew65" path="res://src/Gameplay/Components/EnergyProducer.cs" id="1_4q7h4"]
|
||||
|
||||
[node name="EnergyProducer" type="Node" unique_id=1184182162]
|
||||
script = ExtResource("1_4q7h4")
|
||||
@@ -1,7 +1,7 @@
|
||||
using Godot;
|
||||
using Slimepire.Core;
|
||||
|
||||
namespace Slimepire.Gameplay.Nodules.Components;
|
||||
namespace Slimepire.Gameplay.Components;
|
||||
|
||||
public partial class EnergyStorage : Node
|
||||
{
|
||||
@@ -1,6 +1,6 @@
|
||||
[gd_scene format=3 uid="uid://by6iw05ovnhq8"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dgkeo1wsicv13" path="res://src/Gameplay/Nodules/Components/EnergyStorage.cs" id="1_vetx7"]
|
||||
[ext_resource type="Script" uid="uid://dgkeo1wsicv13" path="res://src/Gameplay/Components/EnergyStorage.cs" id="1_vetx7"]
|
||||
|
||||
[node name="EnergyStorage" type="Node" unique_id=1765924301]
|
||||
script = ExtResource("1_vetx7")
|
||||
@@ -1,7 +1,6 @@
|
||||
using Godot;
|
||||
using Slimepire.Core;
|
||||
|
||||
namespace Slimepire.Gameplay.Nodules.Components;
|
||||
namespace Slimepire.Gameplay.Components;
|
||||
|
||||
[SceneTree]
|
||||
public partial class GrowArea : Area2D
|
||||
7
src/Gameplay/Components/GrowArea.tscn
Normal file
7
src/Gameplay/Components/GrowArea.tscn
Normal file
@@ -0,0 +1,7 @@
|
||||
[gd_scene format=3 uid="uid://3x5pqm4t5cbl"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cfxb8wmnt7ej7" path="res://src/Gameplay/Components/GrowArea.cs" id="1_a3tcn"]
|
||||
|
||||
[node name="GrowArea" type="Area2D" unique_id=979341496]
|
||||
monitorable = false
|
||||
script = ExtResource("1_a3tcn")
|
||||
@@ -1,11 +1,12 @@
|
||||
using Godot;
|
||||
using Slimepire.Gameplay.Nodules.BasicNodule;
|
||||
|
||||
namespace Slimepire.Gameplay.Nodules.Components;
|
||||
namespace Slimepire.Gameplay.Components;
|
||||
|
||||
[SceneTree]
|
||||
public partial class TubeConnectionArea : Area2D
|
||||
{
|
||||
public Action<Nodule> ConnectionAdded { get; set; }
|
||||
public Action<Nodule> ConnectionRemoved { get; set; }
|
||||
public List<INodule> Connections { get; } = [];
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
@@ -15,17 +16,19 @@ public partial class TubeConnectionArea : Area2D
|
||||
|
||||
private void TubeConnectionAreaOnAreaEntered(Area2D area)
|
||||
{
|
||||
if (area.GetParent() is Nodule nodule)
|
||||
if (area.GetParent() is INodule nodule)
|
||||
{
|
||||
ConnectionAdded?.Invoke(nodule);
|
||||
Connections.Add(nodule);
|
||||
NoduleManager.Instance.Update();
|
||||
}
|
||||
}
|
||||
|
||||
private void TubeConnectionAreaOnAreaExited(Area2D area)
|
||||
{
|
||||
if (area.GetParent() is Nodule nodule)
|
||||
if (area.GetParent() is INodule nodule)
|
||||
{
|
||||
ConnectionRemoved?.Invoke(nodule);
|
||||
Connections.Remove(nodule);
|
||||
NoduleManager.Instance.Update();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
[gd_scene format=3 uid="uid://bjesfu1mfx8l5"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://bcw8vylpb533h" path="res://src/Gameplay/Nodules/Components/TubeConnectionArea.cs" id="1_uhdst"]
|
||||
[ext_resource type="Script" uid="uid://bcw8vylpb533h" path="res://src/Gameplay/Components/TubeConnectionArea.cs" id="1_uhdst"]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_x44k2"]
|
||||
radius = 96.38
|
||||
@@ -1,5 +1,5 @@
|
||||
using Godot;
|
||||
using Slimepire.Gameplay.Nodules;
|
||||
using Slimepire.Gameplay.Nodules.BasicNodule;
|
||||
|
||||
namespace Slimepire.Gameplay;
|
||||
|
||||
@@ -9,16 +9,16 @@ public partial class NoduleManager
|
||||
public bool Building { get; set; }
|
||||
|
||||
private AStar2D _aStar = new();
|
||||
private readonly List<Nodule> _nodules = [];
|
||||
private readonly Dictionary<INodule, Node2D> _nodules = [];
|
||||
private readonly HashSet<NoduleConnection> _connections = [];
|
||||
|
||||
// GFX
|
||||
private readonly Dictionary<NoduleConnection, Tube> _tubeConnections = new();
|
||||
|
||||
public void RegisterNodule(Nodule nodule)
|
||||
public void RegisterNodule(INodule nodule, Node2D node)
|
||||
{
|
||||
_nodules.Add(nodule);
|
||||
_aStar.AddPoint(nodule.Id, nodule.Position);
|
||||
_nodules.Add(nodule, node);
|
||||
_aStar.AddPoint(nodule.GetId(), node.Position);
|
||||
|
||||
UpdateNoduleConnections();
|
||||
UpdateTubesAndAstar();
|
||||
@@ -32,11 +32,11 @@ public partial class NoduleManager
|
||||
|
||||
private void UpdateNoduleConnections()
|
||||
{
|
||||
foreach (var n in _nodules)
|
||||
foreach (var (inodule, _) in _nodules)
|
||||
{
|
||||
foreach (var c in n.Connections)
|
||||
foreach (var c in inodule.TubeConnectionArea.Connections)
|
||||
{
|
||||
_connections.Add(new NoduleConnection(n, c));
|
||||
_connections.Add(new NoduleConnection(inodule, c));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -49,22 +49,24 @@ public partial class NoduleManager
|
||||
{
|
||||
var tube = Instantiator.Instantiate<Tube>();
|
||||
_tubeConnections.Add(c, tube);
|
||||
c.A.AddChild(tube);
|
||||
|
||||
tube.SetTarget(c.B.Position);
|
||||
// TODO: Alles sehr ugly ...
|
||||
tube.SetTarget(_nodules[c.B].Position);
|
||||
|
||||
c.A.AttachTube(tube);
|
||||
|
||||
// TODO: refactor this out of gfx stuff
|
||||
_aStar.ConnectPoints(c.A.Id, c.B.Id);
|
||||
_aStar.ConnectPoints(c.A.GetId(), c.B.GetId());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private record NoduleConnection
|
||||
{
|
||||
public Nodule A { get; init; }
|
||||
public Nodule B { get; init; }
|
||||
public INodule A { get; init; }
|
||||
public INodule B { get; init; }
|
||||
|
||||
public NoduleConnection(Nodule a, Nodule b)
|
||||
public NoduleConnection(INodule a, INodule b)
|
||||
{
|
||||
if (a.GetHashCode() <= b.GetHashCode())
|
||||
{
|
||||
|
||||
12
src/Gameplay/Nodules/BasicNodule/INodule.cs
Normal file
12
src/Gameplay/Nodules/BasicNodule/INodule.cs
Normal file
@@ -0,0 +1,12 @@
|
||||
using Slimepire.Gameplay.Components;
|
||||
|
||||
namespace Slimepire.Gameplay.Nodules.BasicNodule;
|
||||
|
||||
public interface INodule
|
||||
{
|
||||
TubeConnectionArea TubeConnectionArea { get; }
|
||||
|
||||
void AttachTube(Tube tube);
|
||||
|
||||
long GetId();
|
||||
}
|
||||
1
src/Gameplay/Nodules/BasicNodule/INodule.cs.uid
Normal file
1
src/Gameplay/Nodules/BasicNodule/INodule.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://cy683somg41jj
|
||||
33
src/Gameplay/Nodules/BasicNodule/Nodule.cs
Normal file
33
src/Gameplay/Nodules/BasicNodule/Nodule.cs
Normal file
@@ -0,0 +1,33 @@
|
||||
using Godot;
|
||||
using Slimepire.Gameplay.Components;
|
||||
|
||||
namespace Slimepire.Gameplay.Nodules.BasicNodule;
|
||||
|
||||
[SceneTree]
|
||||
public partial class Nodule : Node2D, INodule
|
||||
{
|
||||
[Export]
|
||||
private TubeConnectionArea _tubeConnectionArea;
|
||||
|
||||
public TubeConnectionArea TubeConnectionArea => _tubeConnectionArea;
|
||||
|
||||
public void AttachTube(Tube tube)
|
||||
{
|
||||
AddChild(tube);
|
||||
}
|
||||
|
||||
public long GetId()
|
||||
{
|
||||
return (long)GetInstanceId();
|
||||
}
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
Gfx.Play();
|
||||
|
||||
Gfx.SelfModulate = Colors.DarkOliveGreen;
|
||||
|
||||
// TODO: uiuiuiui
|
||||
NoduleManager.Instance.RegisterNodule(this, this);
|
||||
}
|
||||
}
|
||||
@@ -1,9 +1,12 @@
|
||||
[gd_scene format=3 uid="uid://cnl6t8o4mh0j3"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cmpl0if164dba" path="res://src/Gameplay/Nodules/Nodule.cs" id="1_yembh"]
|
||||
[ext_resource type="Script" uid="uid://cmpl0if164dba" path="res://src/Gameplay/Nodules/BasicNodule/Nodule.cs" id="1_yembh"]
|
||||
[ext_resource type="Texture2D" uid="uid://cecg47efx7gw8" path="res://assets/simple_nodule.png" id="2_7qt20"]
|
||||
[ext_resource type="PackedScene" uid="uid://bjesfu1mfx8l5" path="res://src/Gameplay/Nodules/Components/TubeConnectionArea.tscn" id="2_inlcu"]
|
||||
[ext_resource type="PackedScene" uid="uid://3x5pqm4t5cbl" path="res://src/Gameplay/Nodules/Components/GrowArea.tscn" id="2_x44k2"]
|
||||
[ext_resource type="PackedScene" uid="uid://bjesfu1mfx8l5" path="res://src/Gameplay/Components/TubeConnectionArea.tscn" id="2_inlcu"]
|
||||
[ext_resource type="PackedScene" uid="uid://3x5pqm4t5cbl" path="res://src/Gameplay/Components/GrowArea.tscn" id="2_x44k2"]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_t72h2"]
|
||||
radius = 17.029387
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_7qt20"]
|
||||
atlas = ExtResource("2_7qt20")
|
||||
@@ -50,6 +53,9 @@ _tubeConnectionArea = NodePath("TubeConnectionArea")
|
||||
|
||||
[node name="GrowArea" parent="." unique_id=979341496 instance=ExtResource("2_x44k2")]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="GrowArea" unique_id=282097141]
|
||||
shape = SubResource("CircleShape2D_t72h2")
|
||||
|
||||
[node name="Gfx" type="AnimatedSprite2D" parent="." unique_id=190397869]
|
||||
unique_name_in_owner = true
|
||||
texture_filter = 1
|
||||
@@ -1,13 +0,0 @@
|
||||
[gd_scene format=3 uid="uid://3x5pqm4t5cbl"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cfxb8wmnt7ej7" path="res://src/Gameplay/Nodules/Components/GrowArea.cs" id="1_a3tcn"]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_7qt20"]
|
||||
radius = 15.0
|
||||
|
||||
[node name="GrowArea" type="Area2D" unique_id=979341496]
|
||||
monitorable = false
|
||||
script = ExtResource("1_a3tcn")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1616623898]
|
||||
shape = SubResource("CircleShape2D_7qt20")
|
||||
@@ -1,38 +0,0 @@
|
||||
using Godot;
|
||||
using Slimepire.Gameplay.Nodules.Components;
|
||||
|
||||
namespace Slimepire.Gameplay.Nodules;
|
||||
|
||||
[SceneTree]
|
||||
public partial class Nodule : Node2D
|
||||
{
|
||||
public long Id { get; set; } = BitConverter.ToInt64(Guid.NewGuid().ToByteArray(), 0);
|
||||
|
||||
public List<Nodule> Connections { get; } = [];
|
||||
|
||||
[Export]
|
||||
private TubeConnectionArea _tubeConnectionArea;
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
Gfx.SelfModulate = Colors.DarkOliveGreen;
|
||||
Gfx.Play();
|
||||
|
||||
_tubeConnectionArea.ConnectionAdded += ConnectionAdded;
|
||||
_tubeConnectionArea.ConnectionRemoved += ConnectionRemoved;
|
||||
|
||||
NoduleManager.Instance.RegisterNodule(this);
|
||||
}
|
||||
|
||||
private void ConnectionAdded(Nodule nodule)
|
||||
{
|
||||
Connections.Add(nodule);
|
||||
NoduleManager.Instance.Update();
|
||||
}
|
||||
|
||||
private void ConnectionRemoved(Nodule nodule)
|
||||
{
|
||||
Connections.Remove(nodule);
|
||||
NoduleManager.Instance.Update();
|
||||
}
|
||||
}
|
||||
56
src/Gameplay/Nodules/RootNodule/RootNodule.tscn
Normal file
56
src/Gameplay/Nodules/RootNodule/RootNodule.tscn
Normal file
@@ -0,0 +1,56 @@
|
||||
[gd_scene format=3 uid="uid://j15868gtem0y"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://bjesfu1mfx8l5" path="res://src/Gameplay/Components/TubeConnectionArea.tscn" id="1_b03xe"]
|
||||
[ext_resource type="PackedScene" uid="uid://3x5pqm4t5cbl" path="res://src/Gameplay/Components/GrowArea.tscn" id="2_tg6hi"]
|
||||
[ext_resource type="Texture2D" uid="uid://tomd3kojw0qy" path="res://assets/root_nodule.png" id="3_b03xe"]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_t72h2"]
|
||||
radius = 27.018513
|
||||
|
||||
[sub_resource type="SpriteFrames" id="SpriteFrames_cy5pc"]
|
||||
animations = [{
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("3_b03xe")
|
||||
}],
|
||||
"loop": 1,
|
||||
"name": &"default",
|
||||
"speed": 2.0
|
||||
}]
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_cdcnu"]
|
||||
font_size = 12
|
||||
outline_size = 3
|
||||
outline_color = Color(0, 0, 0, 1)
|
||||
shadow_size = 3
|
||||
shadow_color = Color(0, 0, 0, 1)
|
||||
|
||||
[node name="RootNodule" type="Node2D" unique_id=1797926942]
|
||||
|
||||
[node name="TubeConnectionArea" parent="." unique_id=1821668398 instance=ExtResource("1_b03xe")]
|
||||
|
||||
[node name="GrowArea" parent="." unique_id=979341496 instance=ExtResource("2_tg6hi")]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="GrowArea" unique_id=1962902431]
|
||||
shape = SubResource("CircleShape2D_t72h2")
|
||||
|
||||
[node name="Gfx" type="AnimatedSprite2D" parent="." unique_id=705500036]
|
||||
unique_name_in_owner = true
|
||||
texture_filter = 1
|
||||
sprite_frames = SubResource("SpriteFrames_cy5pc")
|
||||
autoplay = "default"
|
||||
|
||||
[node name="EnergyLabel" type="Label" parent="." unique_id=1654733583]
|
||||
unique_name_in_owner = true
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = -20.0
|
||||
offset_top = 14.0
|
||||
offset_right = 20.0
|
||||
offset_bottom = 31.0
|
||||
grow_horizontal = 2
|
||||
text = "5"
|
||||
label_settings = SubResource("LabelSettings_cdcnu")
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
[ext_resource type="Script" uid="uid://c8l12dlpexosv" path="res://src/Levels/DemoLevel.cs" id="1_l2cn0"]
|
||||
[ext_resource type="Script" uid="uid://cdgi3y0sm3rt1" path="res://src/Gameplay/Camera.cs" id="2_mxa1b"]
|
||||
[ext_resource type="PackedScene" uid="uid://cnl6t8o4mh0j3" path="res://src/Gameplay/Nodules/Nodule.tscn" id="3_qhkhc"]
|
||||
[ext_resource type="PackedScene" uid="uid://cnl6t8o4mh0j3" path="res://src/Gameplay/Nodules/BasicNodule/Nodule.tscn" id="3_qhkhc"]
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_l2cn0"]
|
||||
font_size = 107
|
||||
|
||||
Reference in New Issue
Block a user