1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-15 21:49:56 +00:00
openmw-tes3mp/apps/openmw/mwmechanics/summoning.hpp

41 lines
1,011 B
C++
Raw Normal View History

#ifndef OPENMW_MECHANICS_SUMMONING_H
#define OPENMW_MECHANICS_SUMMONING_H
#include <set>
#include "../mwworld/ptr.hpp"
2020-08-28 18:43:22 +00:00
#include <components/esm/magiceffects.hpp>
2016-06-17 14:07:16 +00:00
#include "magiceffects.hpp"
namespace MWMechanics
{
class CreatureStats;
2020-04-04 14:45:03 +00:00
bool isSummoningEffect(int effectId);
std::string getSummonedCreature(int effectId);
struct UpdateSummonedCreatures : public EffectSourceVisitor
{
UpdateSummonedCreatures(const MWWorld::Ptr& actor);
virtual ~UpdateSummonedCreatures() = default;
void visit (MWMechanics::EffectKey key, int effectIndex,
const std::string& sourceName, const std::string& sourceId, int casterActorId,
float magnitude, float remainingTime = -1, float totalTime = -1) override;
/// To call after all effect sources have been visited
void process(bool cleanup);
private:
MWWorld::Ptr mActor;
2020-08-28 18:43:22 +00:00
std::set<ESM::SummonKey> mActiveEffects;
};
}
#endif