эх, у меня в ГУЕ аналог твоего action - это строковая переменная, в которую пишется текстовая команда. Сначала юзал простейшие, типа "ShowInventory", потом сделал чтение аргументов из скобок - "EatItem(27)", потом несколько через запятую и т.д.
Это конечно геморно писать и я не вправе советовать, т.к. возможно найдётся решение попроще (мне-то по-любому скрипты в игре нужны были), но теперь не жалею. Всё же подумай о таком способе