mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-03-19 16:21:08 +00:00
Merge branch 'dont_look_at_me_im_hideous' into 'master'
Ignored flag part 2 Closes #6699 See merge request OpenMW/openmw!1782
This commit is contained in:
commit
a0d0f60490
@ -15,6 +15,7 @@
|
||||
#include <components/esm/records.hpp>
|
||||
|
||||
#include "record.hpp"
|
||||
#include "labels.hpp"
|
||||
|
||||
#define ESMTOOL_VERSION 1.2
|
||||
|
||||
@ -398,7 +399,8 @@ int load(Arguments& info)
|
||||
|
||||
if(!quiet && interested)
|
||||
{
|
||||
std::cout << "\nRecord: " << n.toStringView() << " '" << record->getId() << "'\n";
|
||||
std::cout << "\nRecord: " << n.toStringView() << " '" << record->getId() << "'\n"
|
||||
<< "Record flags: " << recordFlags(record->getFlags()) << '\n';
|
||||
record->print();
|
||||
}
|
||||
|
||||
|
@ -902,3 +902,17 @@ std::string weaponFlags(int flags)
|
||||
properties += Misc::StringUtils::format("(0x%08X)", flags);
|
||||
return properties;
|
||||
}
|
||||
|
||||
std::string recordFlags(uint32_t flags)
|
||||
{
|
||||
std::string properties;
|
||||
if (flags == 0) properties += "[None] ";
|
||||
if (flags & ESM::FLAG_Deleted) properties += "Deleted ";
|
||||
if (flags & ESM::FLAG_Persistent) properties += "Persistent ";
|
||||
if (flags & ESM::FLAG_Ignored) properties += "Ignored ";
|
||||
if (flags & ESM::FLAG_Blocked) properties += "Blocked ";
|
||||
int unused = ~(ESM::FLAG_Deleted | ESM::FLAG_Persistent | ESM::FLAG_Ignored | ESM::FLAG_Blocked);
|
||||
if (flags & unused) properties += "Invalid ";
|
||||
properties += Misc::StringUtils::format("(0x%08X)", flags);
|
||||
return properties;
|
||||
}
|
@ -60,6 +60,8 @@ std::string raceFlags(int flags);
|
||||
std::string spellFlags(int flags);
|
||||
std::string weaponFlags(int flags);
|
||||
|
||||
std::string recordFlags(uint32_t flags);
|
||||
|
||||
// Missing flags functions:
|
||||
// aiServicesFlags, possibly more
|
||||
|
||||
|
@ -196,6 +196,11 @@ namespace EsmLoader
|
||||
{
|
||||
const ESM::NAME recName = reader.getRecName();
|
||||
reader.getRecHeader();
|
||||
if (reader.getRecordFlags() & ESM::FLAG_Ignored)
|
||||
{
|
||||
reader.skipRecord();
|
||||
continue;
|
||||
}
|
||||
loadRecord(query, recName, reader, content);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user