openmw-tes3coop/apps/openmw-mp/processors/actor/ProcessorActorStatsDynamic.hpp
Koncord 2d0840cb3a [General] Modernize Script API
This commit changes the style of tes3mp serverside scripting mods. Short list of changes:
* Break compatibility with old server mods
* OOP style lua API
* Basic dependency checker, allowing the installation of multiple server mods without changing configs
* Remove support for C++ plugins
* Change outdated LuaBridge to [sol2](https://github.com/ThePhD/sol2);
* Support GCC, Clang and MSVC compilers
* New environment variables: "TES3MP_SERVER_DIR" and "TES3MP_SERVER_USERDIR";
* New entity "Command controller" for registering new chat commands;
* New Event system
* Simplified Timer API
* All Lua mods now run in their own environments
* Add global namespace - Data that can be used for communicating between mods
* Player and Actor inherit base class NetActor
2017-08-28 00:15:56 +08:00

30 lines
893 B
C++

#ifndef OPENMW_PROCESSORACTORSTATSDYNAMIC_HPP
#define OPENMW_PROCESSORACTORSTATSDYNAMIC_HPP
#include "../ActorProcessor.hpp"
namespace mwmp
{
class ProcessorActorStatsDynamic : public ActorProcessor
{
public:
ProcessorActorStatsDynamic()
{
BPP_INIT(ID_ACTOR_STATS_DYNAMIC)
}
void Do(ActorPacket &packet, std::shared_ptr<Player> player, BaseActorList &actorList) override
{
// Send only to players who have the cell loaded
Cell *serverCell = CellController::get()->getCell(&actorList.cell);
if (serverCell != nullptr && *serverCell->getAuthority() == actorList.guid)
{
serverCell->readActorList(packetID, &actorList);
serverCell->sendToLoaded(&packet, &actorList);
}
}
};
}
#endif //OPENMW_PROCESSORACTORSTATSDYNAMIC_HPP