#ifndef ENTITY_H_0D6CB29A #define ENTITY_H_0D6CB29A #include "vector.h" enum class ColliderType { player, train, other }; enum class Direction { none, left, right, up, down }; class Entity { public: // Transform vec2s pos; vec2s size; // Grid placement vec2s gridPos; // Movement Direction shouldMoveTo = Direction::none; bool moving = false; vec2s destPos; double movementTween = 0.0; double speed = 0.0; // Tiles per second // Player bool controllable = false; // Collision ColliderType colliderType = ColliderType::other; bool playerCanPush = false; bool trainCanPush = false; // Temp int colorVal = 25; }; #endif /* end of include guard: ENTITY_H_0D6CB29A */