diff options
Diffstat (limited to 'client/map/item_factory.gd')
-rw-r--r-- | client/map/item_factory.gd | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/client/map/item_factory.gd b/client/map/item_factory.gd index 1e30047a..9a4200e5 100644 --- a/client/map/item_factory.gd +++ b/client/map/item_factory.gd @@ -16,18 +16,17 @@ class_name ItemFactory extends Object -class ParsedItem: +class ItemName: var name: String var contents: Array - func _init(full_name: String): - var c = Array(full_name.split(":")) + func _init(raw_name: String): + var c = Array(raw_name.split(":")) name = c[0] contents = c[1].split(",") if c.size() > 1 else [] -static func produce(full_name: String, owned_by: Node3D) -> Item: - var item = ParsedItem.new(full_name) - +static func produce(raw_name: String, owned_by: Node3D) -> Item: + var item = ItemName.new(raw_name) match item.name: "bun": return Bun.new(owned_by) "cheese": return Cheese.new(owned_by) @@ -61,7 +60,7 @@ static func produce(full_name: String, owned_by: Node3D) -> Item: "sliced-lettuce": return SlicedLettuce.new(owned_by) "potato": return Potato.new(owned_by) "dirty-plate": return Plate.new(owned_by, ["dirt"]) - + "pot": return Pot.new(owned_by, item.contents) "pan": return Pan.new(owned_by, item.contents) "foodprocessor": return FoodProcessor.new(owned_by, item.contents) @@ -69,5 +68,5 @@ static func produce(full_name: String, owned_by: Node3D) -> Item: "plate": return Plate.new(owned_by, item.contents) "unknown-order": return UnknownOrder.new(owned_by) - - _: return GenericItem.new(owned_by, full_name) + + _: return GenericItem.new(owned_by, raw_name) |