summaryrefslogtreecommitdiff
path: root/client/map
diff options
context:
space:
mode:
Diffstat (limited to 'client/map')
-rw-r--r--client/map/item_factory.gd22
1 files changed, 10 insertions, 12 deletions
diff --git a/client/map/item_factory.gd b/client/map/item_factory.gd
index b91a0da0..5f5fd49a 100644
--- a/client/map/item_factory.gd
+++ b/client/map/item_factory.gd
@@ -19,11 +19,9 @@ class_name ItemFactory
extends Object
static func produce(full_name: String, owned_by: Node3D) -> Item:
- var c = Array(full_name.split(":"))
- var name = c[0]
- var contents = c[1].split(",") if c.size() > 1 else []
-
- match name:
+ var item = Global.ParsedItem.new(full_name)
+
+ match item.name:
"bun": return Bun.new(owned_by)
"cheese": return Cheese.new(owned_by)
"sliced-cheese": return SlicedCheese.new(owned_by)
@@ -52,11 +50,11 @@ static func produce(full_name: String, owned_by: Node3D) -> Item:
"lettuce": return Lettuce.new(owned_by)
"sliced-lettuce": return SlicedLettuce.new(owned_by)
"dirty-plate": return Plate.new(owned_by, ["dirt"])
-
- "pot": return Pot.new(owned_by, contents)
- "pan": return Pan.new(owned_by, contents)
- "foodprocessor": return FoodProcessor.new(owned_by, contents)
- "glass": return Glass.new(owned_by, contents)
- "plate": return Plate.new(owned_by, contents)
-
+
+ "pot": return Pot.new(owned_by, item.contents)
+ "pan": return Pan.new(owned_by, item.contents)
+ "foodprocessor": return FoodProcessor.new(owned_by, item.contents)
+ "glass": return Glass.new(owned_by, item.contents)
+ "plate": return Plate.new(owned_by, item.contents)
+
_: return GenericItem.new(owned_by, full_name)