46 lines
863 B
GDScript
46 lines
863 B
GDScript
extends Node
|
|
|
|
signal update_currency(amount)
|
|
|
|
var __currency: int
|
|
|
|
var __weapons: Array
|
|
var __accessories: Array
|
|
var __categories: Dictionary
|
|
|
|
|
|
func _ready() -> void:
|
|
self.__currency = 100
|
|
|
|
self.__weapons = []
|
|
self.__accessories = []
|
|
self.__categories = {
|
|
'Weapon': self.__weapons,
|
|
'Accessory': self.__accessories}
|
|
return
|
|
|
|
|
|
func get_currency() -> int:
|
|
return self.__currency
|
|
|
|
|
|
func add_currency(amount: int) -> void:
|
|
self.__currency += amount
|
|
emit_signal('update_currency', self.__currency)
|
|
return
|
|
|
|
|
|
func add(item) -> void:
|
|
self.__categories[item.type].append(item)
|
|
return
|
|
|
|
|
|
func discard(item) -> void:
|
|
var index: int = 0
|
|
for itr in self.__categories[item.type]:
|
|
if itr.equals(item):
|
|
self.__categories[item.type].remove(index)
|
|
break
|
|
index += 1
|
|
return
|