Added basic vesna entity
This commit is contained in:
@@ -2098,11 +2098,11 @@ stream_0/stream = ExtResource("484_jb7tm")
|
|||||||
stream_1/stream = ExtResource("485_fn3kd")
|
stream_1/stream = ExtResource("485_fn3kd")
|
||||||
stream_2/stream = ExtResource("486_ux0r8")
|
stream_2/stream = ExtResource("486_ux0r8")
|
||||||
|
|
||||||
[node name="Vesna" type="Node2D" node_paths=PackedStringArray("_farmingControls", "_player2d", "_vesnaAnimations")]
|
[node name="Vesna" type="Node2D" node_paths=PackedStringArray("_farmingControls", "player2d", "_vesnaAnimations")]
|
||||||
y_sort_enabled = true
|
y_sort_enabled = true
|
||||||
script = ExtResource("1_yd5ep")
|
script = ExtResource("1_yd5ep")
|
||||||
_farmingControls = NodePath("FarmingControls")
|
_farmingControls = NodePath("FarmingControls")
|
||||||
_player2d = NodePath("CharacterBody2D")
|
player2d = NodePath("CharacterBody2D")
|
||||||
_vesnaAnimations = NodePath("CharacterBody2D/visuals")
|
_vesnaAnimations = NodePath("CharacterBody2D/visuals")
|
||||||
_hoe = ExtResource("2_dnm27")
|
_hoe = ExtResource("2_dnm27")
|
||||||
_wateringCan = ExtResource("3_e04c3")
|
_wateringCan = ExtResource("3_e04c3")
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
[gd_scene load_steps=4 format=3 uid="uid://cv7trh2b3dyiv"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://dcn4giw1auva4" path="res://scripts/CSharp/GameEntity/EntityPlacer/VesnaEntityPlacer.cs" id="1_nq5fu"]
|
||||||
|
[ext_resource type="Script" uid="uid://n7oihifvqp23" path="res://scripts/CSharp/Common/Animation/VesnaAnimations.cs" id="2_cpdud"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cloe0etis2lcu" path="res://art/animation/Vesna2D/Vesna Anims Tools/S02-Walk-Gießkanne/0001.png" id="451_d8nvl"]
|
||||||
|
|
||||||
|
[node name="VesnaPlacer" type="Node2D"]
|
||||||
|
script = ExtResource("1_nq5fu")
|
||||||
|
|
||||||
|
[node name="visuals" type="Node2D" parent="." node_paths=PackedStringArray("_sprite")]
|
||||||
|
position = Vector2(0, -374)
|
||||||
|
script = ExtResource("2_cpdud")
|
||||||
|
_sprite = NodePath("")
|
||||||
|
|
||||||
|
[node name="0001" type="Sprite2D" parent="visuals"]
|
||||||
|
position = Vector2(1, 0)
|
||||||
|
texture = ExtResource("451_d8nvl")
|
||||||
@@ -1,8 +1,9 @@
|
|||||||
[gd_scene load_steps=4 format=3 uid="uid://hdfejdnmp8sl"]
|
[gd_scene load_steps=5 format=3 uid="uid://hdfejdnmp8sl"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://umop2b1m1qm8" path="res://scripts/CSharp/GameEntity/Management/EntityManager.cs" id="1_2bwns"]
|
[ext_resource type="Script" uid="uid://umop2b1m1qm8" path="res://scripts/CSharp/GameEntity/Management/EntityManager.cs" id="1_2bwns"]
|
||||||
[ext_resource type="Script" uid="uid://bogqp274y1pgr" path="res://scripts/CSharp/GameEntity/Management/EntityNodeCreator.cs" id="2_8m173"]
|
[ext_resource type="Script" uid="uid://bogqp274y1pgr" path="res://scripts/CSharp/GameEntity/Management/EntityNodeCreator.cs" id="2_8m173"]
|
||||||
[ext_resource type="PackedScene" uid="uid://sbf12hin4kes" path="res://prefabs/Interactables/trash_object.tscn" id="3_v3vdc"]
|
[ext_resource type="PackedScene" uid="uid://sbf12hin4kes" path="res://prefabs/Interactables/trash_object.tscn" id="3_v3vdc"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://c25udixd5m6l0" path="res://prefabs/characters/Vesna.tscn" id="4_8m173"]
|
||||||
|
|
||||||
[node name="EntityManager" type="Node" node_paths=PackedStringArray("_nodeCreator")]
|
[node name="EntityManager" type="Node" node_paths=PackedStringArray("_nodeCreator")]
|
||||||
script = ExtResource("1_2bwns")
|
script = ExtResource("1_2bwns")
|
||||||
@@ -11,5 +12,6 @@ _nodeCreator = NodePath("EntityCreator")
|
|||||||
[node name="EntityCreator" type="Node" parent="."]
|
[node name="EntityCreator" type="Node" parent="."]
|
||||||
script = ExtResource("2_8m173")
|
script = ExtResource("2_8m173")
|
||||||
_entityPrefabs = Dictionary[String, PackedScene]({
|
_entityPrefabs = Dictionary[String, PackedScene]({
|
||||||
"TrashEntity": ExtResource("3_v3vdc")
|
"TrashEntity": ExtResource("3_v3vdc"),
|
||||||
|
"VesnaEntity": ExtResource("4_8m173")
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
[ext_resource type="Texture2D" uid="uid://btea6eyucsyxj" path="res://art/farm/farming/farmobjekte/zaun/tilable fence middle part.png" id="24_hr375"]
|
[ext_resource type="Texture2D" uid="uid://btea6eyucsyxj" path="res://art/farm/farming/farmobjekte/zaun/tilable fence middle part.png" id="24_hr375"]
|
||||||
[ext_resource type="Texture2D" uid="uid://3ed3dgq3irn2" path="res://art/farm/farming/farmobjekte/zaun/tilable fence end part2.png" id="25_e15ep"]
|
[ext_resource type="Texture2D" uid="uid://3ed3dgq3irn2" path="res://art/farm/farming/farmobjekte/zaun/tilable fence end part2.png" id="25_e15ep"]
|
||||||
[ext_resource type="PackedScene" uid="uid://dfvgp1my5rydh" path="res://prefabs/characters/Yeli.tscn" id="26_hp2qi"]
|
[ext_resource type="PackedScene" uid="uid://dfvgp1my5rydh" path="res://prefabs/characters/Yeli.tscn" id="26_hp2qi"]
|
||||||
[ext_resource type="PackedScene" uid="uid://c25udixd5m6l0" path="res://prefabs/characters/Vesna.tscn" id="27_slkey"]
|
[ext_resource type="PackedScene" uid="uid://cv7trh2b3dyiv" path="res://prefabs/entity_placer/VesnaPlacer.tscn" id="27_nqcah"]
|
||||||
[ext_resource type="Resource" uid="uid://dlcmqfjvgphqu" path="res://resources/items/rake.tres" id="28_678ve"]
|
[ext_resource type="Resource" uid="uid://dlcmqfjvgphqu" path="res://resources/items/rake.tres" id="28_678ve"]
|
||||||
[ext_resource type="Texture2D" uid="uid://dg7rlugnq0t45" path="res://art/farm/farming/farmobjekte/brünnen.png" id="29_6crsp"]
|
[ext_resource type="Texture2D" uid="uid://dg7rlugnq0t45" path="res://art/farm/farming/farmobjekte/brünnen.png" id="29_6crsp"]
|
||||||
[ext_resource type="Script" uid="uid://boehox1ydbcnx" path="res://scripts/CSharp/Common/Farming/WellBehaviour.cs" id="30_1l41q"]
|
[ext_resource type="Script" uid="uid://boehox1ydbcnx" path="res://scripts/CSharp/Common/Farming/WellBehaviour.cs" id="30_1l41q"]
|
||||||
@@ -951,10 +951,8 @@ y_sort_enabled = true
|
|||||||
position = Vector2(6403, 3362)
|
position = Vector2(6403, 3362)
|
||||||
_timelinesToPlay = PackedStringArray("yeli_quest_select")
|
_timelinesToPlay = PackedStringArray("yeli_quest_select")
|
||||||
|
|
||||||
[node name="Vesna" parent="YSorted" instance=ExtResource("27_slkey")]
|
[node name="VesnaPlacer" parent="YSorted" instance=ExtResource("27_nqcah")]
|
||||||
z_index = 1
|
position = Vector2(9178, 2365)
|
||||||
position = Vector2(9322, 2018)
|
|
||||||
_hoe = ExtResource("28_678ve")
|
|
||||||
|
|
||||||
[node name="Well" type="Sprite2D" parent="YSorted" node_paths=PackedStringArray("_interactionArea")]
|
[node name="Well" type="Sprite2D" parent="YSorted" node_paths=PackedStringArray("_interactionArea")]
|
||||||
z_index = 1
|
z_index = 1
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ public partial class VesnaBehaviour2D : Node2D // EntityNode
|
|||||||
{
|
{
|
||||||
[ExportGroup("Farming")]
|
[ExportGroup("Farming")]
|
||||||
[Export] private FarmingControls2D _farmingControls;
|
[Export] private FarmingControls2D _farmingControls;
|
||||||
[Export] private PlayerMovement _player2d;
|
[Export] public PlayerMovement player2d;
|
||||||
[Export] private VesnaAnimations _vesnaAnimations;
|
[Export] private VesnaAnimations _vesnaAnimations;
|
||||||
[Export] private ItemResource _hoe;
|
[Export] private ItemResource _hoe;
|
||||||
[Export] private ItemResource _wateringCan;
|
[Export] private ItemResource _wateringCan;
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
using Babushka.scripts.CSharp.Common.Farming;
|
||||||
|
using Babushka.scripts.CSharp.GameEntity.Management;
|
||||||
|
using Godot;
|
||||||
|
|
||||||
|
namespace Babushka.scripts.CSharp.GameEntity.Entities;
|
||||||
|
|
||||||
|
public class VesnaEntity : PositionalEntity
|
||||||
|
{
|
||||||
|
public override string EntityType => OWN_TYPE_NAME;
|
||||||
|
public const string OWN_TYPE_NAME = "VesnaEntity";
|
||||||
|
|
||||||
|
public override void InstantiateEntityNode(Node2D parent)
|
||||||
|
{
|
||||||
|
var node = (VesnaBehaviour2D) EntityManager.Instance.NodeCreator.InstantiateNode(OWN_TYPE_NAME);
|
||||||
|
node.player2d.GlobalPosition = position;
|
||||||
|
parent.AddChild(node);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
uid://c7e45co1valv3
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
using Babushka.scripts.CSharp.GameEntity.Entities;
|
||||||
|
using Babushka.scripts.CSharp.GameEntity.Management;
|
||||||
|
using Godot;
|
||||||
|
|
||||||
|
namespace Babushka.scripts.CSharp.GameEntity.EntityPlacer;
|
||||||
|
|
||||||
|
public partial class VesnaEntityPlacer : Node2D
|
||||||
|
{
|
||||||
|
public override void _Ready()
|
||||||
|
{
|
||||||
|
var sceneName = EntityManager.Instance.CurrentEntitySceneContainer!.sceneName;
|
||||||
|
var loadedScenesEntity = EntityManager.Instance.GetUniqueEntity<LoadedScenesEntity>();
|
||||||
|
|
||||||
|
if (!loadedScenesEntity.WasSceneLoaded(sceneName))
|
||||||
|
{
|
||||||
|
var entity = EntityManager.Instance.GetUniqueEntity<VesnaEntity>();
|
||||||
|
entity.position = GlobalPosition;
|
||||||
|
entity.sceneName = sceneName;
|
||||||
|
}
|
||||||
|
|
||||||
|
QueueFree();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
uid://dcn4giw1auva4
|
||||||
Reference in New Issue
Block a user