1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-01-25 06:35:30 +00:00
OpenMW/apps/opencs/model/tools/magiceffectcheck.hpp

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

60 lines
1.5 KiB
C++
Raw Normal View History

2015-08-03 19:08:01 +03:00
#ifndef CSM_TOOLS_MAGICEFFECTCHECK_HPP
#define CSM_TOOLS_MAGICEFFECTCHECK_HPP
2022-10-19 19:02:00 +02:00
#include <string>
#include <apps/opencs/model/world/universalid.hpp>
#include <components/esm3/loadsoun.hpp>
2015-08-03 19:08:01 +03:00
#include "../world/idcollection.hpp"
#include "../doc/stage.hpp"
2022-10-19 19:02:00 +02:00
namespace CSMDoc
{
class Messages;
}
namespace CSMWorld
{
class RefIdCollection;
class Resources;
}
namespace ESM
{
struct MagicEffect;
struct Sound;
}
2015-08-03 19:08:01 +03:00
namespace CSMTools
{
/// \brief VerifyStage: make sure that magic effect records are internally consistent
class MagicEffectCheckStage : public CSMDoc::Stage
{
const CSMWorld::IdCollection<ESM::MagicEffect>& mMagicEffects;
const CSMWorld::IdCollection<ESM::Sound>& mSounds;
2018-08-24 16:57:32 +03:00
const CSMWorld::RefIdCollection& mObjects;
2015-08-03 19:08:01 +03:00
const CSMWorld::Resources& mIcons;
const CSMWorld::Resources& mTextures;
bool mIgnoreBaseRecords;
2022-09-22 21:26:05 +03:00
2015-08-03 19:08:01 +03:00
private:
2018-08-24 16:57:32 +03:00
std::string checkObject(
const ESM::RefId& id, const CSMWorld::UniversalId& type, const std::string& column) const;
2022-09-22 21:26:05 +03:00
2015-08-03 19:08:01 +03:00
public:
MagicEffectCheckStage(const CSMWorld::IdCollection<ESM::MagicEffect>& effects,
const CSMWorld::IdCollection<ESM::Sound>& sounds, const CSMWorld::RefIdCollection& objects,
const CSMWorld::Resources& icons, const CSMWorld::Resources& textures);
2022-09-22 21:26:05 +03:00
int setup() override;
2015-08-03 19:08:01 +03:00
///< \return number of steps
void perform(int stage, CSMDoc::Messages& messages) override;
2015-08-03 19:08:01 +03:00
///< Messages resulting from this tage will be appended to \a messages.
};
}
#endif