Welcome to the turret controller. Where you as post war AI doing different task to survive.
This system tries to solve problem of letting player or AI queuing different actions for units and latter on executing those actions in one non interactive cycle/turn.
- Unit - a single unit that can queue actions
- Action - definies data requier to execute
QueuedAction
- ActionController - is responsible for executing
Action
- ActionTarget - containe information about target location(Vector2) or target(
Unit
) used byActionController
- QueuedAction - contains information necessary to start
Action
- ActionView - defines how target selection preview for action appears
- UnitQueueExecutor - is responsible for executing
QueuedAction
for queuedUnits
. Theunits
order in queue depends on their speed. EveryQueuedAction
for currentUnit
need to be finished before proceeding to nextUnit
in the queue.Reaction
can happend between everyQueuedAction
. You can think aboutReaction
as events, that happend in result ofQueuedAction
, for example explosion of barrel or dead of enemy.