forked from mirror/openmw-tes3mp
Merge remote-tracking branch 'mellotanica/master'
This commit is contained in:
commit
d4c27d4ce0
6 changed files with 24 additions and 18 deletions
|
@ -33,7 +33,7 @@ void CSMTools::BodyPartCheckStage::perform ( int stage, Messages &messages )
|
||||||
if ( bodyPart.mData.mVampire < 0 )
|
if ( bodyPart.mData.mVampire < 0 )
|
||||||
messages.push_back(std::make_pair( id, bodyPart.mId + " has negative vampire flag." ));
|
messages.push_back(std::make_pair( id, bodyPart.mId + " has negative vampire flag." ));
|
||||||
|
|
||||||
if ( bodyPart.mData.mFlags < 0 || bodyPart.mData.mFlags > 2 )
|
if ( bodyPart.mData.mFlags < 0 || bodyPart.mData.mFlags > 3 )
|
||||||
messages.push_back(std::make_pair( id, bodyPart.mId + " has out of range flags value." ));
|
messages.push_back(std::make_pair( id, bodyPart.mId + " has out of range flags value." ));
|
||||||
|
|
||||||
if ( bodyPart.mData.mType < 0 || bodyPart.mData.mType > 2 )
|
if ( bodyPart.mData.mType < 0 || bodyPart.mData.mType > 2 )
|
||||||
|
@ -52,4 +52,4 @@ void CSMTools::BodyPartCheckStage::perform ( int stage, Messages &messages )
|
||||||
messages.push_back(std::make_pair( id, bodyPart.mId + " has no race." ));
|
messages.push_back(std::make_pair( id, bodyPart.mId + " has no race." ));
|
||||||
else if ( mRaces.searchId( bodyPart.mRace ) == -1 )
|
else if ( mRaces.searchId( bodyPart.mRace ) == -1 )
|
||||||
messages.push_back(std::make_pair( id, bodyPart.mId + " has invalid race." ));
|
messages.push_back(std::make_pair( id, bodyPart.mId + " has invalid race." ));
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,8 +16,10 @@ namespace ESM
|
||||||
|
|
||||||
struct AIData
|
struct AIData
|
||||||
{
|
{
|
||||||
// These are probabilities
|
unsigned char mHello;
|
||||||
char mHello, mU1, mFight, mFlee, mAlarm, mU2, mU3, mU4;
|
char mU1;
|
||||||
|
unsigned char mFight, mFlee, mAlarm; // These are probabilities [0, 100]
|
||||||
|
char mU2, mU3, mU4; // Unknown values
|
||||||
int mServices; // See the Services enum
|
int mServices; // See the Services enum
|
||||||
|
|
||||||
void blank();
|
void blank();
|
||||||
|
|
|
@ -46,7 +46,7 @@ enum PartReferenceType
|
||||||
// Reference to body parts
|
// Reference to body parts
|
||||||
struct PartReference
|
struct PartReference
|
||||||
{
|
{
|
||||||
char mPart;
|
unsigned char mPart; // possible values [0, 26]
|
||||||
std::string mMale, mFemale;
|
std::string mMale, mFemale;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -49,10 +49,10 @@ struct BodyPart
|
||||||
|
|
||||||
struct BYDTstruct
|
struct BYDTstruct
|
||||||
{
|
{
|
||||||
char mPart;
|
unsigned char mPart; // mesh part
|
||||||
char mVampire;
|
unsigned char mVampire; // boolean
|
||||||
char mFlags;
|
unsigned char mFlags;
|
||||||
char mType;
|
unsigned char mType; // mesh type
|
||||||
};
|
};
|
||||||
|
|
||||||
BYDTstruct mData;
|
BYDTstruct mData;
|
||||||
|
|
|
@ -80,10 +80,12 @@ struct NPC
|
||||||
mPersonality,
|
mPersonality,
|
||||||
mLuck;
|
mLuck;
|
||||||
|
|
||||||
char mSkills[Skill::Length];
|
// mSkill can grow up to 200, it must be unsigned
|
||||||
char mReputation;
|
unsigned char mSkills[Skill::Length];
|
||||||
|
|
||||||
|
char mFactionID;
|
||||||
unsigned short mHealth, mMana, mFatigue;
|
unsigned short mHealth, mMana, mFatigue;
|
||||||
char mDisposition, mFactionID, mRank;
|
signed char mDisposition, mReputation, mRank;
|
||||||
char mUnknown;
|
char mUnknown;
|
||||||
int mGold;
|
int mGold;
|
||||||
}; // 52 bytes
|
}; // 52 bytes
|
||||||
|
@ -91,9 +93,10 @@ struct NPC
|
||||||
struct NPDTstruct12
|
struct NPDTstruct12
|
||||||
{
|
{
|
||||||
short mLevel;
|
short mLevel;
|
||||||
char mDisposition, mReputation, mRank;
|
// see above
|
||||||
|
signed char mDisposition, mReputation, mRank;
|
||||||
char mUnknown1, mUnknown2, mUnknown3;
|
char mUnknown1, mUnknown2, mUnknown3;
|
||||||
int mGold; // ?? not certain
|
int mGold;
|
||||||
}; // 12 bytes
|
}; // 12 bytes
|
||||||
|
|
||||||
struct Dest
|
struct Dest
|
||||||
|
@ -103,7 +106,7 @@ struct NPC
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
char mNpdtType;
|
unsigned char mNpdtType;
|
||||||
NPDTstruct52 mNpdt52;
|
NPDTstruct52 mNpdt52;
|
||||||
NPDTstruct12 mNpdt12; //for autocalculated characters
|
NPDTstruct12 mNpdt12; //for autocalculated characters
|
||||||
|
|
||||||
|
|
|
@ -24,10 +24,11 @@ struct Region
|
||||||
#pragma pack(1)
|
#pragma pack(1)
|
||||||
struct WEATstruct
|
struct WEATstruct
|
||||||
{
|
{
|
||||||
// I guess these are probabilities
|
// These are probabilities that add up to 100
|
||||||
char mClear, mCloudy, mFoggy, mOvercast, mRain, mThunder, mAsh, mBlight,
|
unsigned char mClear, mCloudy, mFoggy, mOvercast, mRain, mThunder, mAsh, mBlight,
|
||||||
// Unknown weather, probably snow and something. Only
|
// Unknown weather, probably snow and something. Only
|
||||||
// present in file version 1.3.
|
// present in file version 1.3.
|
||||||
|
// the engine uses mA as "snow" and mB as "blizard"
|
||||||
mA, mB;
|
mA, mB;
|
||||||
}; // 10 bytes
|
}; // 10 bytes
|
||||||
|
|
||||||
|
@ -35,7 +36,7 @@ struct Region
|
||||||
struct SoundRef
|
struct SoundRef
|
||||||
{
|
{
|
||||||
NAME32 mSound;
|
NAME32 mSound;
|
||||||
char mChance;
|
unsigned char mChance;
|
||||||
}; // 33 bytes
|
}; // 33 bytes
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue