aboutsummaryrefslogtreecommitdiff
path: root/client/scripts/item.gd
diff options
context:
space:
mode:
Diffstat (limited to 'client/scripts/item.gd')
-rw-r--r--client/scripts/item.gd30
1 files changed, 30 insertions, 0 deletions
diff --git a/client/scripts/item.gd b/client/scripts/item.gd
new file mode 100644
index 00000000..c3fba434
--- /dev/null
+++ b/client/scripts/item.gd
@@ -0,0 +1,30 @@
+class_name Item
+extends Node3D
+
+var owned_by: Node3D
+
+func _init(idx: int, owned_by_: Node3D):
+ match Multiplayer.item_names[idx]:
+ var t:
+ add_child(load("res://models/prefabs/map/bag.tscn").instantiate())
+ var mesh = MeshInstance3D.new()
+ var text = TextMesh.new()
+ var mat = ORMMaterial3D.new()
+ text.text = t
+ text.font = SystemFont.new()
+ text.depth = 0
+ mesh.mesh = text
+ mesh.position.y = 0.5
+ mesh.scale = Vector3(3, 3, 3)
+ mat.billboard_mode = mat.BILLBOARD_ENABLED
+ mat.shading_mode = BaseMaterial3D.SHADING_MODE_UNSHADED
+ text.material = mat
+ add_child(mesh)
+ owned_by = owned_by_
+
+func _ready():
+ position = owned_by.global_position
+
+func _process(delta):
+ position = lerp(position, owned_by.global_position, delta * 30.0)
+