1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-23 04:53:52 +00:00
openmw/apps/opencs/model/tools/magiceffectcheck.hpp
2022-09-22 21:35:26 +03:00

41 lines
1.4 KiB
C++

#ifndef CSM_TOOLS_MAGICEFFECTCHECK_HPP
#define CSM_TOOLS_MAGICEFFECTCHECK_HPP
#include <components/esm3/loadmgef.hpp>
#include <components/esm3/loadsoun.hpp>
#include "../world/idcollection.hpp"
#include "../world/refidcollection.hpp"
#include "../world/resources.hpp"
#include "../doc/stage.hpp"
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;
const CSMWorld::RefIdCollection& mObjects;
const CSMWorld::Resources& mIcons;
const CSMWorld::Resources& mTextures;
bool mIgnoreBaseRecords;
private:
std::string checkObject(
const std::string& id, const CSMWorld::UniversalId& type, const std::string& column) const;
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);
int setup() override;
///< \return number of steps
void perform(int stage, CSMDoc::Messages& messages) override;
///< Messages resulting from this tage will be appended to \a messages.
};
}
#endif