public:
Vector<int> Size() const { return size; }
+ Vector<int> TileSize() const { return Vector<int>(1, 1); }
public:
void Update(float dt);
Tile &TileAt(Vector<int> pos) { return tiles[Index(pos)]; }
const Tile &TileAt(Vector<int> pos) const { return tiles[Index(pos)]; }
void SetTile(Vector<int> pos, const Tile &t) { tiles[Index(pos)] = t; }
- const AABB &TileShapeAt(Vector<int> pos) const;
const std::list<Entity> &Entities() const { return entities; }
Entity &AddEntity(const Entity &);
+private:
+ void BoundsCollision(Entity &, float dt);
+ void TileCollision(Entity &, float dt);
+ void EntityCollision();
+
private:
Vector<int> size;
int count;
Vector<float> gravity;
Vector<float> terminal;
+ float fixSpeed;
std::vector<Tile> tiles;