#include "api.h" enum turn{left, right}; enum compass{norte, sur, este, oeste}; struct dirnode { int value; dirnode* next; dirnode* prev; dirnode(int val): value(val){}; }; class mmstats { private: dirnode* tail; void addnode(int val) { dirnode* temp = new dirnode(val); if (head != nullptr) { head->next = temp; temp->prev = head; temp->next = tail; head = temp; tail->prev = head; } if (head == nullptr) { head = temp; tail = temp; } } public: dirnode* head; int y; int x; char dir; mmstats(): tail(nullptr), head(nullptr) { addnode(este); addnode(sur); addnode(oeste); addnode(norte); dir = norte; } void turn(int opt) { if (opt) head = head->next; else head = head->prev; dir = head->value; /* switch (dir) { case norte: log("Norte"); break; case este: log("Este"); break; case sur: log("Sur"); break; case oeste: log("Oeste"); break; } */ } };