Intialize environment
This commit is contained in:
43
client/addons/gut/thing_counter.gd
Normal file
43
client/addons/gut/thing_counter.gd
Normal file
@ -0,0 +1,43 @@
|
||||
var things = {}
|
||||
|
||||
func get_unique_count():
|
||||
return things.size()
|
||||
|
||||
func add(thing):
|
||||
if(things.has(thing)):
|
||||
things[thing] += 1
|
||||
else:
|
||||
things[thing] = 1
|
||||
|
||||
func has(thing):
|
||||
return things.has(thing)
|
||||
|
||||
func get(thing):
|
||||
var to_return = 0
|
||||
if(things.has(thing)):
|
||||
to_return = things[thing]
|
||||
return to_return
|
||||
|
||||
func sum():
|
||||
var count = 0
|
||||
for key in things:
|
||||
count += things[key]
|
||||
return count
|
||||
|
||||
func to_s():
|
||||
var to_return = ""
|
||||
for key in things:
|
||||
to_return += str(key, ": ", things[key], "\n")
|
||||
to_return += str("sum: ", sum())
|
||||
return to_return
|
||||
|
||||
func get_max_count():
|
||||
var max_val = null
|
||||
for key in things:
|
||||
if(max_val == null or things[key] > max_val):
|
||||
max_val = things[key]
|
||||
return max_val
|
||||
|
||||
func add_array_items(array):
|
||||
for i in range(array.size()):
|
||||
add(array[i])
|
Reference in New Issue
Block a user