store unit's level in uint8 format
TODO: may be change db format too --HG-- branch : trunk
This commit is contained in:
@@ -132,7 +132,7 @@ bool AssistDelayEvent::Execute(uint64 /*e_time*/, uint32 /*p_time*/)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
CreatureBaseStats const* CreatureBaseStats::GetBaseStats(uint32 level, uint8 unitClass)
|
CreatureBaseStats const* CreatureBaseStats::GetBaseStats(uint8 level, uint8 unitClass)
|
||||||
{
|
{
|
||||||
return objmgr.GetCreatureBaseStats(level, unitClass);
|
return objmgr.GetCreatureBaseStats(level, unitClass);
|
||||||
}
|
}
|
||||||
@@ -1083,6 +1083,7 @@ void Creature::SelectLevel(const CreatureInfo *cinfo)
|
|||||||
SetLevel(level);
|
SetLevel(level);
|
||||||
|
|
||||||
CreatureBaseStats const* stats = objmgr.GetCreatureBaseStats(level, cinfo->unit_class);
|
CreatureBaseStats const* stats = objmgr.GetCreatureBaseStats(level, cinfo->unit_class);
|
||||||
|
assert(stats); // should not be null
|
||||||
|
|
||||||
// health
|
// health
|
||||||
float healthmod = _GetHealthMod(rank);
|
float healthmod = _GetHealthMod(rank);
|
||||||
|
|||||||
+4
-4
@@ -82,8 +82,8 @@ struct CreatureInfo
|
|||||||
char* SubName;
|
char* SubName;
|
||||||
char* IconName;
|
char* IconName;
|
||||||
uint32 GossipMenuId;
|
uint32 GossipMenuId;
|
||||||
uint32 minlevel;
|
uint8 minlevel;
|
||||||
uint32 maxlevel;
|
uint8 maxlevel;
|
||||||
uint32 expansion;
|
uint32 expansion;
|
||||||
uint32 faction_A;
|
uint32 faction_A;
|
||||||
uint32 faction_H;
|
uint32 faction_H;
|
||||||
@@ -172,7 +172,7 @@ struct CreatureInfo
|
|||||||
// Defines base stats for creatures (used to calculate HP/mana/armor).
|
// Defines base stats for creatures (used to calculate HP/mana/armor).
|
||||||
struct CreatureBaseStats
|
struct CreatureBaseStats
|
||||||
{
|
{
|
||||||
uint32 Level;
|
uint8 Level;
|
||||||
uint8 Class;
|
uint8 Class;
|
||||||
uint32 BaseHealth[MAX_CREATURE_BASE_HP];
|
uint32 BaseHealth[MAX_CREATURE_BASE_HP];
|
||||||
uint32 BaseMana;
|
uint32 BaseMana;
|
||||||
@@ -199,7 +199,7 @@ struct CreatureBaseStats
|
|||||||
return uint32((BaseArmor * info->ModArmor) + 0.5f);
|
return uint32((BaseArmor * info->ModArmor) + 0.5f);
|
||||||
}
|
}
|
||||||
|
|
||||||
static CreatureBaseStats const* GetBaseStats(uint32 level, uint8 unitClass);
|
static CreatureBaseStats const* GetBaseStats(uint8 level, uint8 unitClass);
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef std::vector<CreatureBaseStats> CreatureBaseStatsList;
|
typedef std::vector<CreatureBaseStats> CreatureBaseStatsList;
|
||||||
|
|||||||
@@ -8920,7 +8920,7 @@ void ObjectMgr::RemoveGMTicket(uint64 ticketGuid, int64 source, bool permanently
|
|||||||
RemoveGMTicket(ticket, source, permanently);
|
RemoveGMTicket(ticket, source, permanently);
|
||||||
}
|
}
|
||||||
|
|
||||||
CreatureBaseStats const* ObjectMgr::GetCreatureBaseStats(uint32 level, uint8 unitClass)
|
CreatureBaseStats const* ObjectMgr::GetCreatureBaseStats(uint8 level, uint8 unitClass)
|
||||||
{
|
{
|
||||||
for (CreatureBaseStatsList::const_iterator it = m_creatureBaseStatsList.begin(); it != m_creatureBaseStatsList.end(); ++it)
|
for (CreatureBaseStatsList::const_iterator it = m_creatureBaseStatsList.begin(); it != m_creatureBaseStatsList.end(); ++it)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -690,7 +690,7 @@ class ObjectMgr
|
|||||||
|
|
||||||
void ReturnOrDeleteOldMails(bool serverUp);
|
void ReturnOrDeleteOldMails(bool serverUp);
|
||||||
|
|
||||||
CreatureBaseStats const* GetCreatureBaseStats(uint32 level, uint8 unitClass);
|
CreatureBaseStats const* GetCreatureBaseStats(uint8 level, uint8 unitClass);
|
||||||
|
|
||||||
void SetHighestGuids();
|
void SetHighestGuids();
|
||||||
uint32 GenerateLowGuid(HighGuid guidhigh);
|
uint32 GenerateLowGuid(HighGuid guidhigh);
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ extern DatabaseMysql WorldDatabase;
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
const char CreatureInfosrcfmt[]="iiiiiiiiiisssiiiiiiiffiffiifiiiiiiiiiiffiiiiiiiiiiiiiiiiiiiiiiiisiifffliiiiiiiliiisi";
|
const char CreatureInfosrcfmt[]="iiiiiiiiiisssiiiiiiiffiffiifiiiiiiiiiiffiiiiiiiiiiiiiiiiiiiiiiiisiifffliiiiiiiliiisi";
|
||||||
const char CreatureInfodstfmt[]="iiiiiiiiiisssiiiiiiiffiffiifiiiiiiiiiiffiiiiiiiiiiiiiiiiiiiiiiiisiifffliiiiiiiliiiii";
|
const char CreatureInfodstfmt[]="iiiiiiiiiisssibbiiiiffiffiifiiiiiiiiiiffiiiiiiiiiiiiiiiiiiiiiiiisiifffliiiiiiiliiiii";
|
||||||
const char CreatureDataAddonInfofmt[]="iiiiiis";
|
const char CreatureDataAddonInfofmt[]="iiiiiis";
|
||||||
const char CreatureModelfmt[]="iffbi";
|
const char CreatureModelfmt[]="iffbi";
|
||||||
const char CreatureInfoAddonInfofmt[]="iiiiiis";
|
const char CreatureInfoAddonInfofmt[]="iiiiiis";
|
||||||
|
|||||||
Reference in New Issue
Block a user