и?
а, я понял, про чё речь

ну да, можно и так, просто я обычно subtype использую для ветвления функционала, но тут тоже вроде подходит
Я думал ты что-то принципиально новое замышляешь. Или есть какие-то кардинальные различия?
не знаю

сначала надо сделать простое, потом можно пробовать усложнять. У меня пока в голове общей картины нет, но надеюсь, она придёт по ходу.
А на графику не смотри, она схематичная и для того, чтобы геймплей отлаживать