Compare commits

..

1 Commits

Author SHA1 Message Date
Nikolai Fesenko
8d00b1a40f update 2025-08-24 15:22:34 +02:00
7 changed files with 31 additions and 13 deletions

View File

@@ -73,9 +73,10 @@ input_ray_pickable = false
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.218994, -0.287048, 0.10144)
shape = SubResource("BoxShape3D_sp2kd")
[node name="ActionNode" type="Node3D" parent="."]
[node name="ActionNode" type="Node3D" parent="." node_paths=PackedStringArray("area")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1.3739)
script = ExtResource("8_c1046")
area = NodePath("Area3d")
[node name="Area3d" type="Area3D" parent="ActionNode"]
input_ray_pickable = false

View File

@@ -88,9 +88,10 @@ surface_material_override/1 = SubResource("StandardMaterial3D_uhv8u")
surface_material_override/2 = SubResource("StandardMaterial3D_dn6sd")
surface_material_override/3 = SubResource("StandardMaterial3D_rbvpf")
[node name="ActionNode" type="Node3D" parent="."]
[node name="ActionNode" type="Node3D" parent="." node_paths=PackedStringArray("area")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.26206, 2.41965)
script = ExtResource("12_r71lq")
area = NodePath("Area3d")
[node name="Area3d" type="Area3D" parent="ActionNode"]
input_ray_pickable = false

View File

@@ -4,6 +4,8 @@ extends Node
signal action_stoped
signal object_placed()
@export var area: Area3D
var build_name: String = "None"
@@ -38,6 +40,7 @@ func set_person_pos(person):
for pose in persons_position:
if pose.is_free:
pose.set_person(person)
break
func find_pose(person):

View File

@@ -39,8 +39,10 @@ func _input(event: InputEvent) -> void:
show_context_menu.emit()
func _on_interact(person, object):
if object.name == "ActionNode":
object.start_action(person, object)
else:
object.ActionNode.start_action(person, object)
func _on_object_selected(object):
if object_selected != null and object != object_selected:

View File

@@ -11,7 +11,7 @@ func _ready() -> void:
func start_action(person, object):
person.action = self
person.visible = false
set_person_pos(person)
person.set_timer(5)
func stop_action(person, object):
print("action stoped")

View File

@@ -79,16 +79,22 @@ func set_target_position():
var newPos = target_object.global_position
newPos.y = self.position.y
nav_agent.target_position = newPos
if target_object.name != "ActionNode":
target_object.ActionNode.area.body_entered.connect(on_target_reached)
else:
target_object.area.body_entered.connect(on_target_reached)
#nav_agent.target_position = start_pos
func _on_navigation_agent_3d_target_reached() -> void:
func on_target_reached(body):
print("I reached ")
if body == self:
if target_object != null:
print("I reached a target")
is_target_reached = true
nav_agent.target_position = self.global_position
Global.interact.emit(self, target_object)
func _on_navigation_agent_3d_target_reached() -> void:
pass
func set_timer(time):

View File

@@ -60,3 +60,8 @@ func go_cook():
else:
print("I cant find free pot")
pass
func cook(person, object):
person.set_timer(5)