StateMachine (nuget): This project implements a Finite-State-Machine (FSM) as a PCL (portable class library) designed to be used in games. 	  Furthermore it implements even a Stack-Based-FSM (SBFSM). So you may tell it to 'continue with the last state before the active one'. 	  You describe your FSM using a nice and well documented DSL (Domain Specific Language).        This replaces the code we usually had for keyboard-input (run-left-right-duck-jump), clicked buttons on the GUI (idle-over-down-refreshing), tower-states (idle-aiming-firing-reloading) or for the connection procedure when setting up peer2peer connections in our games....
Keywords: state|finite|machine|gamestate|transition|fluent|after|update|timespan|finite-state-machine|fluid|fsm|monogame|portable|stack|state-machine