forked from mirror/openmw-tes3mp
Conflicts: apps/openmw-mp/Networking.cpp apps/openmw-mp/Script/Functions/World.cpp apps/openmw-mp/Script/Functions/World.hpp apps/openmw-mp/processors/WorldProcessor.cpp apps/openmw-mp/processors/WorldProcessor.hpp apps/openmw-mp/processors/world/ProcessorContainer.hpp apps/openmw-mp/processors/world/ProcessorDoorState.hpp apps/openmw-mp/processors/world/ProcessorObjectDelete.hpp apps/openmw-mp/processors/world/ProcessorObjectLock.hpp apps/openmw-mp/processors/world/ProcessorObjectPlace.hpp apps/openmw-mp/processors/world/ProcessorObjectScale.hpp apps/openmw-mp/processors/world/ProcessorObjectSpawn.hpp apps/openmw-mp/processors/world/ProcessorObjectState.hpp apps/openmw-mp/processors/world/ProcessorObjectTrap.hpp apps/openmw/mwgui/container.cpp apps/openmw/mwmp/Networking.cpp apps/openmw/mwmp/ObjectList.cpp apps/openmw/mwmp/ObjectList.hpp apps/openmw/mwmp/processors/world/ProcessorContainer.hpp components/CMakeLists.txt components/openmw-mp/Base/BaseObject.hpp components/openmw-mp/Packets/Object/ObjectPacket.cpp components/openmw-mp/Packets/Object/PacketConsoleCommand.cpp components/openmw-mp/Packets/Object/PacketContainer.cpp components/openmw-mp/Packets/Object/PacketDoorState.hpp components/openmw-mp/Packets/Object/PacketMusicPlay.hpp components/openmw-mp/Packets/Object/PacketObjectAnimPlay.hpp components/openmw-mp/Packets/Object/PacketObjectLock.hpp components/openmw-mp/Packets/Object/PacketObjectMove.hpp components/openmw-mp/Packets/Object/PacketObjectPlace.hpp components/openmw-mp/Packets/Object/PacketObjectRotate.hpp components/openmw-mp/Packets/Object/PacketObjectScale.hpp components/openmw-mp/Packets/Object/PacketObjectSpawn.hpp components/openmw-mp/Packets/Object/PacketObjectState.hpp components/openmw-mp/Packets/Object/PacketObjectTrap.hpp components/openmw-mp/Packets/Object/PacketScriptGlobalShort.hpp components/openmw-mp/Packets/Object/PacketScriptLocalFloat.hpp components/openmw-mp/Packets/Object/PacketScriptLocalShort.hpp components/openmw-mp/Packets/Object/PacketScriptMemberShort.hpp components/openmw-mp/Packets/Object/PacketVideoPlay.hpp
92 lines
3.5 KiB
C++
92 lines
3.5 KiB
C++
#ifndef OPENMW_WORLDEVENT_HPP
|
|
#define OPENMW_WORLDEVENT_HPP
|
|
|
|
#include <components/openmw-mp/Base/BaseObject.hpp>
|
|
#include "../mwworld/cellstore.hpp"
|
|
#include <RakNetTypes.h>
|
|
|
|
namespace mwmp
|
|
{
|
|
class Networking;
|
|
class ObjectList : public BaseObjectList
|
|
{
|
|
public:
|
|
|
|
ObjectList();
|
|
virtual ~ObjectList();
|
|
|
|
void reset();
|
|
|
|
BaseObject getBaseObject(const MWWorld::Ptr& ptr);
|
|
void addContainerItem(mwmp::BaseObject& baseObject, const MWWorld::Ptr& itemPtr, int actionCount);
|
|
void addEntireContainer(const MWWorld::Ptr& ptr);
|
|
|
|
void editContainers(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 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 setGlobalShorts();
|
|
|
|
void playMusic();
|
|
void playVideo();
|
|
|
|
void addAllContainers(MWWorld::CellStore* cellStore);
|
|
void addRequestedContainers(MWWorld::CellStore* cellStore, const std::vector<BaseObject>& requestObjects);
|
|
|
|
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);
|
|
void addObjectDelete(const MWWorld::Ptr& ptr);
|
|
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, int state);
|
|
void addMusicPlay(std::string filename);
|
|
void addVideoPlay(std::string filename, bool allowSkipping);
|
|
void addScriptLocalShort(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 addScriptGlobalShort(std::string varName, int shortVal);
|
|
|
|
void sendObjectPlace();
|
|
void sendObjectSpawn();
|
|
void sendObjectDelete();
|
|
void sendObjectLock();
|
|
void sendObjectTrap();
|
|
void sendObjectScale();
|
|
void sendObjectState();
|
|
void sendObjectAnimPlay();
|
|
void sendDoorState();
|
|
void sendMusicPlay();
|
|
void sendVideoPlay();
|
|
void sendScriptLocalShort();
|
|
void sendScriptLocalFloat();
|
|
void sendScriptMemberShort();
|
|
void sendScriptGlobalShort();
|
|
void sendContainer();
|
|
|
|
private:
|
|
Networking *getNetworking();
|
|
|
|
};
|
|
}
|
|
|
|
#endif //OPENMW_WORLDEVENT_HPP
|