#ifndef OPENMW_OBJECTLIST_HPP #define OPENMW_OBJECTLIST_HPP #include #include "../mwworld/worldimp.hpp" #include namespace mwmp { class Networking; class ObjectList : public BaseObjectList { public: ObjectList(); virtual ~ObjectList(); void reset(); void addBaseObject(BaseObject baseObject); mwmp::BaseObject getBaseObjectFromPtr(const MWWorld::Ptr& ptr); void addContainerItem(mwmp::BaseObject& baseObject, const MWWorld::Ptr& itemPtr, int itemCount, int actionCount); void addContainerItem(mwmp::BaseObject& baseObject, const std::string itemId, int itemCount, int actionCount); void addEntireContainer(const MWWorld::Ptr& ptr); void editContainers(MWWorld::CellStore* cellStore); void activateObjects(MWWorld::CellStore* cellStore); void placeObjects(MWWorld::CellStore* cellStore); void spawnObjects(MWWorld::CellStore* cellStore); void deleteObjects(MWWorld::CellStore* cellStore); void lockObjects(MWWorld::CellStore* cellStore); void triggerTrapObjects(MWWorld::CellStore* cellStore); void scaleObjects(MWWorld::CellStore* cellStore); void setObjectStates(MWWorld::CellStore* cellStore); void moveObjects(MWWorld::CellStore* cellStore); void restockObjects(MWWorld::CellStore* cellStore); void rotateObjects(MWWorld::CellStore* cellStore); void animateObjects(MWWorld::CellStore* cellStore); void activateDoors(MWWorld::CellStore* cellStore); void setDoorDestinations(MWWorld::CellStore* cellStore); void runConsoleCommands(MWWorld::CellStore* cellStore); void setLocalShorts(MWWorld::CellStore* cellStore); void setLocalFloats(MWWorld::CellStore* cellStore); void setMemberShorts(); void playMusic(); void playVideo(); void addAllContainers(MWWorld::CellStore* cellStore); void addRequestedContainers(MWWorld::CellStore* cellStore, const std::vector& requestObjects); void addObjectGeneric(const MWWorld::Ptr& ptr); void addObjectActivate(const MWWorld::Ptr& ptr, const MWWorld::Ptr& activatingActor); void addObjectHit(const MWWorld::Ptr& ptr, const MWWorld::Ptr& hittingActor); void addObjectHit(const MWWorld::Ptr& ptr, const MWWorld::Ptr& hittingActor, const Attack hitAttack); void addObjectPlace(const MWWorld::Ptr& ptr, bool droppedByPlayer = false); void addObjectSpawn(const MWWorld::Ptr& ptr); void addObjectSpawn(const MWWorld::Ptr& ptr, const MWWorld::Ptr& master, std::string spellId, int effectId, float duration); void addObjectLock(const MWWorld::Ptr& ptr, int lockLevel); void addObjectTrap(const MWWorld::Ptr& ptr, const ESM::Position& pos, bool isDisarmed); void addObjectScale(const MWWorld::Ptr& ptr, float scale); void addObjectState(const MWWorld::Ptr& ptr, bool objectState); void addObjectAnimPlay(const MWWorld::Ptr& ptr, std::string group, int mode); void addDoorState(const MWWorld::Ptr& ptr, MWWorld::DoorState state); void addMusicPlay(std::string filename); void addVideoPlay(std::string filename, bool allowSkipping); void addConsoleCommandObject(const MWWorld::Ptr& ptr); void addClientScriptLocal(const MWWorld::Ptr& ptr, int index, int shortVal); void addScriptLocalFloat(const MWWorld::Ptr& ptr, int index, float floatVal); void addScriptMemberShort(std::string refId, int index, int shortVal); void sendObjectActivate(); void sendObjectHit(); void sendObjectPlace(); void sendObjectSpawn(); void sendObjectDelete(); void sendObjectLock(); void sendObjectRestock(); void sendObjectTrap(); void sendObjectScale(); void sendObjectState(); void sendObjectAnimPlay(); void sendDoorState(); void sendMusicPlay(); void sendVideoPlay(); void sendClientScriptLocal(); void sendScriptLocalFloat(); void sendScriptMemberShort(); void sendContainer(); void sendConsoleCommand(); private: Networking *getNetworking(); }; } #endif //OPENMW_OBJECTLIST_HPP