#ifndef SCREEPS_ROOM_OBJECT_HPP #define SCREEPS_ROOM_OBJECT_HPP #include "Object.hpp" namespace Screeps { class Effect; class RoomPosition; class Room; class RoomObject : public Object { public: explicit RoomObject(JS::Value value); virtual ~RoomObject(); std::vector effects() const; RoomPosition pos() const; Room room() const; }; std::unique_ptr createRoomObject(JS::Value object); template bool is(const std::unique_ptr& ptr) { return dynamic_cast(ptr.get()); } } // namespace Screeps #endif // SCREEPS_ROOM_OBJECT_HPP