SummerDay/addons/summer_day/tools/tool_system/tool_pool.gd
2022-01-02 16:42:55 +01:00

27 lines
713 B
GDScript

extends Reference
class_name SummerDayToolPool
var persistent_tool_pool = []
var modifiable_tool_pool = []
func pass_global_input(event):
for list in [persistent_tool_pool, modifiable_tool_pool]:
for i in list:
i._handle_global_input(event)
func run_most_prior(
event: InputEvent):
var priority_high_score = 0
var currently_most_prior: SummerDayTool = null
for list in [persistent_tool_pool, modifiable_tool_pool]:
for i in list:
if i._check_for_use(event):
var priority_score = i.get_priority_score()
if priority_score > priority_high_score:
priority_high_score = priority_score
currently_most_prior = i
if currently_most_prior != null:
currently_most_prior._run(event)