#include #include #include enum A_TYPE { A_PLACE, A_MOVE }; typedef struct action_list_s { struct action_list_s *next; enum A_TYPE type; int8_t loc; uint8_t data0; uint8_t data1; } action_list_t; void action_list_init(void); void action_list_free(action_list_t *list); action_list_t *action_list_generate(void); void action_take(action_list_t *action); void action_undo(action_list_t *action); void action_to_ptn(action_list_t* action, char* out_ptn);