FSM – finite state machine, он же конечный автомат
Доделал пакет для Shardy: реализацию машины состояний (finite state machine). Все стейты и триггеры добавляются через билдер, цепочкой.
Для перехода на стейт надо активировать триггер(ы):
fsm.Trigger(Action.Down);
fsm.Trigger(Action.Down);
В таком случае получится такой результат:
initial is standing
on exit standing
on enter sitting
on exit sitting
on enter lying
@startuml
skin rose
title TestFSM
left to right direction
agent Standing
agent Sitting
agent Lying
agent Jumping
note left of Jumping
some help message here
end note
Start --> Standing
Standing --> Sitting : Down
Standing ~~> Jumping : Space
Sitting --> Lying : Down
Sitting --> Standing : Up
Lying --> Sitting : Up
Jumping --> Standing : Down
@enduml
Получится такая диаграмма:
csharp
unity
shardy
разработка
модуль