mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-02-06 18:45:32 +00:00
[Client] Add createRecord() function to RecordHelper
This commit is contained in:
parent
13deaa88f2
commit
aa06056d00
3 changed files with 18 additions and 27 deletions
|
@ -160,7 +160,7 @@ void DedicatedPlayer::setBaseInfo()
|
||||||
|
|
||||||
if (!reference)
|
if (!reference)
|
||||||
{
|
{
|
||||||
npc.mId = RecordHelper::createNpcRecord(npc);
|
npc.mId = RecordHelper::createRecord(npc)->mId;
|
||||||
createReference(npc.mId);
|
createReference(npc.mId);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -202,7 +202,7 @@ void DedicatedPlayer::setShapeshift()
|
||||||
// and reuse it
|
// and reuse it
|
||||||
if (creatureRecordId.empty())
|
if (creatureRecordId.empty())
|
||||||
{
|
{
|
||||||
creature.mId = creatureRecordId = RecordHelper::createCreatureRecord(creature);
|
creature.mId = creatureRecordId = RecordHelper::createRecord(creature)->mId;
|
||||||
LOG_APPEND(TimedLog::LOG_INFO, "- Creating new creature record %s", creatureRecordId.c_str());
|
LOG_APPEND(TimedLog::LOG_INFO, "- Creating new creature record %s", creatureRecordId.c_str());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
@ -7,20 +7,6 @@
|
||||||
|
|
||||||
#include "RecordHelper.hpp"
|
#include "RecordHelper.hpp"
|
||||||
|
|
||||||
std::string RecordHelper::createCreatureRecord(const ESM::Creature& record)
|
|
||||||
{
|
|
||||||
MWBase::World *world = MWBase::Environment::get().getWorld();
|
|
||||||
|
|
||||||
return world->createRecord(record)->mId;
|
|
||||||
}
|
|
||||||
|
|
||||||
std::string RecordHelper::createNpcRecord(const ESM::NPC& record)
|
|
||||||
{
|
|
||||||
MWBase::World *world = MWBase::Environment::get().getWorld();
|
|
||||||
|
|
||||||
return world->createRecord(record)->mId;
|
|
||||||
}
|
|
||||||
|
|
||||||
void RecordHelper::overrideCreatureRecord(const mwmp::CreatureRecord& record)
|
void RecordHelper::overrideCreatureRecord(const mwmp::CreatureRecord& record)
|
||||||
{
|
{
|
||||||
const ESM::Creature &recordData = record.data;
|
const ESM::Creature &recordData = record.data;
|
||||||
|
|
|
@ -8,9 +8,6 @@
|
||||||
|
|
||||||
namespace RecordHelper
|
namespace RecordHelper
|
||||||
{
|
{
|
||||||
std::string createCreatureRecord(const ESM::Creature& record);
|
|
||||||
std::string createNpcRecord(const ESM::NPC& record);
|
|
||||||
|
|
||||||
void overrideCreatureRecord(const mwmp::CreatureRecord& record);
|
void overrideCreatureRecord(const mwmp::CreatureRecord& record);
|
||||||
void overrideNpcRecord(const mwmp::NpcRecord& record);
|
void overrideNpcRecord(const mwmp::NpcRecord& record);
|
||||||
|
|
||||||
|
@ -38,14 +35,6 @@ namespace RecordHelper
|
||||||
void overrideLightRecord(const mwmp::LightRecord& record);
|
void overrideLightRecord(const mwmp::LightRecord& record);
|
||||||
void overrideCellRecord(const mwmp::CellRecord& record);
|
void overrideCellRecord(const mwmp::CellRecord& record);
|
||||||
|
|
||||||
template<class RecordType>
|
|
||||||
bool doesRecordIdExist(const std::string& id)
|
|
||||||
{
|
|
||||||
MWBase::World *world = MWBase::Environment::get().getWorld();
|
|
||||||
|
|
||||||
return world->getStore().get<RecordType>().search(id);
|
|
||||||
}
|
|
||||||
|
|
||||||
template<class RecordType>
|
template<class RecordType>
|
||||||
void overrideRecord(const RecordType &record)
|
void overrideRecord(const RecordType &record)
|
||||||
{
|
{
|
||||||
|
@ -53,6 +42,22 @@ namespace RecordHelper
|
||||||
|
|
||||||
world->getModifiableStore().overrideRecord(record);
|
world->getModifiableStore().overrideRecord(record);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template<class RecordType>
|
||||||
|
const RecordType *createRecord(const RecordType &record)
|
||||||
|
{
|
||||||
|
MWBase::World *world = MWBase::Environment::get().getWorld();
|
||||||
|
|
||||||
|
return world->createRecord(record);
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class RecordType>
|
||||||
|
bool doesRecordIdExist(const std::string& id)
|
||||||
|
{
|
||||||
|
MWBase::World *world = MWBase::Environment::get().getWorld();
|
||||||
|
|
||||||
|
return world->getStore().get<RecordType>().search(id);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue