+public:
+ void AddEntity(Entity *e) { entities.push_back(e); }
+ void ControlEntity(Entity *e) { controlled = e; camera.SetTarget(&e->Position()); }
+
+ void SetWalkingSpeed(float s) { walkingSpeed = s; }
+
+private:
+ static bool ZCompare(const Entity *lhs, const Entity *rhs);
+ void OnTileLock();
+ void OnGridLock();
+ void OnMove();
+
+ void UpdateFollower(Entity *);
+