mirror of
https://github.com/EQEmu/Server.git
synced 2026-04-18 03:22:27 +00:00
Zero out default SpawnNPC stats
This commit is contained in:
parent
06e668108a
commit
0752edcab0
102
zone/npc.cpp
102
zone/npc.cpp
@ -911,7 +911,8 @@ bool NPC::DatabaseCastAccepted(int spell_id) {
|
||||
return false;
|
||||
}
|
||||
|
||||
bool NPC::SpawnZoneController(){
|
||||
bool NPC::SpawnZoneController()
|
||||
{
|
||||
|
||||
if (!RuleB(Zone, UseZoneController))
|
||||
return false;
|
||||
@ -1040,90 +1041,7 @@ NPC* NPC::SpawnNPC(const char* spawncommand, const glm::vec4& position, Client*
|
||||
sprintf(sep.arg[10], "0");
|
||||
//Calc MaxHP if client neglected to enter it...
|
||||
if (!sep.IsNumber(4)) {
|
||||
//Stolen from Client::GetMaxHP...
|
||||
uint8 multiplier = 0;
|
||||
int tmplevel = atoi(sep.arg[2]);
|
||||
switch(atoi(sep.arg[5]))
|
||||
{
|
||||
case WARRIOR:
|
||||
if (tmplevel < 20)
|
||||
multiplier = 22;
|
||||
else if (tmplevel < 30)
|
||||
multiplier = 23;
|
||||
else if (tmplevel < 40)
|
||||
multiplier = 25;
|
||||
else if (tmplevel < 53)
|
||||
multiplier = 27;
|
||||
else if (tmplevel < 57)
|
||||
multiplier = 28;
|
||||
else
|
||||
multiplier = 30;
|
||||
break;
|
||||
|
||||
case DRUID:
|
||||
case CLERIC:
|
||||
case SHAMAN:
|
||||
multiplier = 15;
|
||||
break;
|
||||
|
||||
case PALADIN:
|
||||
case SHADOWKNIGHT:
|
||||
if (tmplevel < 35)
|
||||
multiplier = 21;
|
||||
else if (tmplevel < 45)
|
||||
multiplier = 22;
|
||||
else if (tmplevel < 51)
|
||||
multiplier = 23;
|
||||
else if (tmplevel < 56)
|
||||
multiplier = 24;
|
||||
else if (tmplevel < 60)
|
||||
multiplier = 25;
|
||||
else
|
||||
multiplier = 26;
|
||||
break;
|
||||
|
||||
case MONK:
|
||||
case BARD:
|
||||
case ROGUE:
|
||||
//case BEASTLORD:
|
||||
if (tmplevel < 51)
|
||||
multiplier = 18;
|
||||
else if (tmplevel < 58)
|
||||
multiplier = 19;
|
||||
else
|
||||
multiplier = 20;
|
||||
break;
|
||||
|
||||
case RANGER:
|
||||
if (tmplevel < 58)
|
||||
multiplier = 20;
|
||||
else
|
||||
multiplier = 21;
|
||||
break;
|
||||
|
||||
case MAGICIAN:
|
||||
case WIZARD:
|
||||
case NECROMANCER:
|
||||
case ENCHANTER:
|
||||
multiplier = 12;
|
||||
break;
|
||||
|
||||
default:
|
||||
if (tmplevel < 35)
|
||||
multiplier = 21;
|
||||
else if (tmplevel < 45)
|
||||
multiplier = 22;
|
||||
else if (tmplevel < 51)
|
||||
multiplier = 23;
|
||||
else if (tmplevel < 56)
|
||||
multiplier = 24;
|
||||
else if (tmplevel < 60)
|
||||
multiplier = 25;
|
||||
else
|
||||
multiplier = 26;
|
||||
break;
|
||||
}
|
||||
sprintf(sep.arg[4],"%i",5+multiplier*atoi(sep.arg[2])+multiplier*atoi(sep.arg[2])*75/300);
|
||||
sep.arg[4] = 0;
|
||||
}
|
||||
|
||||
// Autoselect NPC Gender
|
||||
@ -1153,13 +1071,13 @@ NPC* NPC::SpawnNPC(const char* spawncommand, const glm::vec4& position, Client*
|
||||
npc_type->merchanttype = atoi(sep.arg[9]);
|
||||
npc_type->bodytype = atoi(sep.arg[10]);
|
||||
|
||||
npc_type->STR = 150;
|
||||
npc_type->STA = 150;
|
||||
npc_type->DEX = 150;
|
||||
npc_type->AGI = 150;
|
||||
npc_type->INT = 150;
|
||||
npc_type->WIS = 150;
|
||||
npc_type->CHA = 150;
|
||||
npc_type->STR = 0;
|
||||
npc_type->STA = 0;
|
||||
npc_type->DEX = 0;
|
||||
npc_type->AGI = 0;
|
||||
npc_type->INT = 0;
|
||||
npc_type->WIS = 0;
|
||||
npc_type->CHA = 0;
|
||||
|
||||
npc_type->attack_delay = 3000;
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user