forked from teamnwah/openmw-tes3coop
[Server] Rework Get/SetAttributeCurrent into Get/SetAttributeModifier
As seen here, attributes don't use the concept of current values, but rather of value modifiers and value damage: https://github.com/OpenMW/openmw/blob/master/apps/openmw/mwmechanics/stat.cpp#L217
This commit is contained in:
parent
c9c363ebef
commit
e8d636ebc3
2 changed files with 8 additions and 8 deletions
|
@ -217,7 +217,7 @@ int StatsFunctions::GetAttributeBase(unsigned short pid, unsigned short attribut
|
||||||
return player->creatureStats.mAttributes[attribute].mBase;
|
return player->creatureStats.mAttributes[attribute].mBase;
|
||||||
}
|
}
|
||||||
|
|
||||||
int StatsFunctions::GetAttributeCurrent(unsigned short pid, unsigned short attribute) noexcept
|
int StatsFunctions::GetAttributeModifier(unsigned short pid, unsigned short attribute) noexcept
|
||||||
{
|
{
|
||||||
Player *player;
|
Player *player;
|
||||||
GET_PLAYER(pid, player, 0);
|
GET_PLAYER(pid, player, 0);
|
||||||
|
@ -225,7 +225,7 @@ int StatsFunctions::GetAttributeCurrent(unsigned short pid, unsigned short attri
|
||||||
if (attribute >= Attribute::Length)
|
if (attribute >= Attribute::Length)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
return player->creatureStats.mAttributes[attribute].mCurrent;
|
return player->creatureStats.mAttributes[attribute].mMod;
|
||||||
}
|
}
|
||||||
|
|
||||||
int StatsFunctions::GetSkillBase(unsigned short pid, unsigned short skill) noexcept
|
int StatsFunctions::GetSkillBase(unsigned short pid, unsigned short skill) noexcept
|
||||||
|
@ -431,7 +431,7 @@ void StatsFunctions::SetAttributeBase(unsigned short pid, unsigned short attribu
|
||||||
player->creatureStats.mAttributes[attribute].mBase = value;
|
player->creatureStats.mAttributes[attribute].mBase = value;
|
||||||
}
|
}
|
||||||
|
|
||||||
void StatsFunctions::SetAttributeCurrent(unsigned short pid, unsigned short attribute, int value) noexcept
|
void StatsFunctions::SetAttributeModifier(unsigned short pid, unsigned short attribute, int value) noexcept
|
||||||
{
|
{
|
||||||
Player *player;
|
Player *player;
|
||||||
GET_PLAYER(pid, player,);
|
GET_PLAYER(pid, player,);
|
||||||
|
@ -439,7 +439,7 @@ void StatsFunctions::SetAttributeCurrent(unsigned short pid, unsigned short attr
|
||||||
if (attribute >= Attribute::Length)
|
if (attribute >= Attribute::Length)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
player->creatureStats.mAttributes[attribute].mCurrent = value;
|
player->creatureStats.mAttributes[attribute].mMod = value;
|
||||||
}
|
}
|
||||||
|
|
||||||
void StatsFunctions::SetSkillBase(unsigned short pid, unsigned short skill, int value) noexcept //TODO: need packet for one value
|
void StatsFunctions::SetSkillBase(unsigned short pid, unsigned short skill, int value) noexcept //TODO: need packet for one value
|
||||||
|
|
|
@ -36,7 +36,7 @@
|
||||||
{"GetFatigueCurrent", StatsFunctions::GetFatigueCurrent},\
|
{"GetFatigueCurrent", StatsFunctions::GetFatigueCurrent},\
|
||||||
\
|
\
|
||||||
{"GetAttributeBase", StatsFunctions::GetAttributeBase},\
|
{"GetAttributeBase", StatsFunctions::GetAttributeBase},\
|
||||||
{"GetAttributeCurrent", StatsFunctions::GetAttributeCurrent},\
|
{"GetAttributeModifier", StatsFunctions::GetAttributeModifier},\
|
||||||
\
|
\
|
||||||
{"GetSkillBase", StatsFunctions::GetSkillBase},\
|
{"GetSkillBase", StatsFunctions::GetSkillBase},\
|
||||||
{"GetSkillCurrent", StatsFunctions::GetSkillCurrent},\
|
{"GetSkillCurrent", StatsFunctions::GetSkillCurrent},\
|
||||||
|
@ -64,7 +64,7 @@
|
||||||
{"SetFatigueCurrent", StatsFunctions::SetFatigueCurrent},\
|
{"SetFatigueCurrent", StatsFunctions::SetFatigueCurrent},\
|
||||||
\
|
\
|
||||||
{"SetAttributeBase", StatsFunctions::SetAttributeBase},\
|
{"SetAttributeBase", StatsFunctions::SetAttributeBase},\
|
||||||
{"SetAttributeCurrent", StatsFunctions::SetAttributeCurrent},\
|
{"SetAttributeModifier", StatsFunctions::SetAttributeModifier},\
|
||||||
\
|
\
|
||||||
{"SetSkillBase", StatsFunctions::SetSkillBase},\
|
{"SetSkillBase", StatsFunctions::SetSkillBase},\
|
||||||
{"SetSkillCurrent", StatsFunctions::SetSkillCurrent},\
|
{"SetSkillCurrent", StatsFunctions::SetSkillCurrent},\
|
||||||
|
@ -113,7 +113,7 @@ public:
|
||||||
static double GetFatigueCurrent(unsigned short pid) noexcept;
|
static double GetFatigueCurrent(unsigned short pid) noexcept;
|
||||||
|
|
||||||
static int GetAttributeBase(unsigned short pid, unsigned short attribute) noexcept;
|
static int GetAttributeBase(unsigned short pid, unsigned short attribute) noexcept;
|
||||||
static int GetAttributeCurrent(unsigned short pid, unsigned short attribute) noexcept;
|
static int GetAttributeModifier(unsigned short pid, unsigned short attribute) noexcept;
|
||||||
|
|
||||||
static int GetSkillBase(unsigned short pid, unsigned short skill) noexcept;
|
static int GetSkillBase(unsigned short pid, unsigned short skill) noexcept;
|
||||||
static int GetSkillCurrent(unsigned short pid, unsigned short skill) noexcept;
|
static int GetSkillCurrent(unsigned short pid, unsigned short skill) noexcept;
|
||||||
|
@ -141,7 +141,7 @@ public:
|
||||||
static void SetFatigueCurrent(unsigned short pid, double value) noexcept;
|
static void SetFatigueCurrent(unsigned short pid, double value) noexcept;
|
||||||
|
|
||||||
static void SetAttributeBase(unsigned short pid, unsigned short attribute, int value) noexcept;
|
static void SetAttributeBase(unsigned short pid, unsigned short attribute, int value) noexcept;
|
||||||
static void SetAttributeCurrent(unsigned short pid, unsigned short attribute, int value) noexcept;
|
static void SetAttributeModifier(unsigned short pid, unsigned short attribute, int value) noexcept;
|
||||||
|
|
||||||
static void SetSkillBase(unsigned short pid, unsigned short skill, int value) noexcept;
|
static void SetSkillBase(unsigned short pid, unsigned short skill, int value) noexcept;
|
||||||
static void SetSkillCurrent(unsigned short pid, unsigned short skill, int value) noexcept;
|
static void SetSkillCurrent(unsigned short pid, unsigned short skill, int value) noexcept;
|
||||||
|
|
Loading…
Reference in a new issue