@@ -161,6 +161,7 @@ var is_crouching = false
161
161
162
162
@onready var head = $ Head # Reference to the head of the player scene. (used for mouse movement and looking around)
163
163
@onready var camera = $ Head/Camera3D # Reference to the camera of the player (used for mouse movement and looking around)
164
+ var pickup_slot_ref
164
165
165
166
## ####################################
166
167
# Input
@@ -642,19 +643,28 @@ func _on_pickup_object_detector_area_entered(area: Area3D) -> void:
642
643
643
644
if free_slot != null :
644
645
# Use the free_slot variable as needed
645
- print ("Free slot found: " + free_slot .name )
646
+ print ("{LOCAL} [Player_SCRIPT.gd] Free slot found: " + free_slot .name )
647
+
648
+
646
649
647
650
var PickupObject = area .get_parent ()
648
651
var PickupItemType = PickupObject .get_ITEM_TYPE ()
649
652
var PlayerPos = $ PickupAttractionPos .global_position
653
+
650
654
print ("{LOCAL} [Player_SCRIPT.gd] Collided with pickup player detector! Item: " + PickupItemType )
651
655
652
656
var tween = get_tree ().create_tween ()
657
+
653
658
tween .tween_property (PickupObject , "position" , PlayerPos , 0.3 ).set_ease (Tween .EASE_IN_OUT ).set_trans (Tween .TRANS_SINE )
654
- tween .connect ("finished" , Callable (self , "on_pickup_anim_finished" ))
655
-
659
+ tween .tween_property (PickupObject , "position" , Vector3 (10000 , 10000 , 10000 ), 0 ) # send it to the shadow realm
660
+ tween .tween_interval (2 )
661
+
662
+ await get_tree ().create_timer (2.3 ).timeout
663
+ delete_pickup_object (PickupObject )
656
664
else :
657
- print ("No free slot available" )
665
+ print ("{LOCAL} [Player_SCRIPT.gd] No free slot available" )
658
666
659
- func on_pickup_anim_finished ():
660
- pass
667
+
668
+
669
+ func delete_pickup_object (pickupobj ):
670
+ pickupobj .queue_free ()
0 commit comments