mirror of
https://github.com/EQEmu/Server.git
synced 2026-03-06 06:12:29 +00:00
Merge branch 'master' of git://github.com/EQEmu/Server
This commit is contained in:
commit
6a4f61d3a3
@ -1,2 +1,5 @@
|
|||||||
EQEmu - Custom Game Implementation for EverQuest
|
EQEmu - Custom Game Implementation for EverQuest
|
||||||
|
|
||||||
|
TODO: A less useless readme file.
|
||||||
|
|
||||||
|
Dependencies can be obtained at http://eqemu.github.com/
|
||||||
|
|||||||
@ -1,5 +1,11 @@
|
|||||||
EQEMu Changelog (Started on Sept 24, 2003 15:50)
|
EQEMu Changelog (Started on Sept 24, 2003 15:50)
|
||||||
-------------------------------------------------------
|
-------------------------------------------------------
|
||||||
|
== 03/2/2013 ==
|
||||||
|
Bad_Captain: Fixed Merc depop bug.
|
||||||
|
Bad_Captain: Added merc rest regen.
|
||||||
|
Bad_Captain: Fixed merc group spell casting bug where mercs would continue to try to cast group buffs on pets of caster who didn't have Pet Affinity AA.
|
||||||
|
|
||||||
|
|
||||||
== 03/1/2013 ==
|
== 03/1/2013 ==
|
||||||
Bad_Captain: Fixed Merc duplicate save bug.
|
Bad_Captain: Fixed Merc duplicate save bug.
|
||||||
Bad_Captain: Focus items, spell_scale and heal_scale now work implemented and new merc equipment (with focus items).
|
Bad_Captain: Focus items, spell_scale and heal_scale now work implemented and new merc equipment (with focus items).
|
||||||
|
|||||||
@ -1441,7 +1441,6 @@ bool Merc::Process()
|
|||||||
{
|
{
|
||||||
SetMercCharacterID(0);
|
SetMercCharacterID(0);
|
||||||
SetOwnerID(0);
|
SetOwnerID(0);
|
||||||
SetID(0);
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1479,13 +1478,13 @@ bool Merc::Process()
|
|||||||
CalcRestState();
|
CalcRestState();
|
||||||
|
|
||||||
if(GetHP() < GetMaxHP())
|
if(GetHP() < GetMaxHP())
|
||||||
SetHP(GetHP() + CalcHPRegen());
|
SetHP(GetHP() + CalcHPRegen() + RestRegenHP);
|
||||||
|
|
||||||
if(GetMana() < GetMaxMana())
|
if(GetMana() < GetMaxMana())
|
||||||
SetMana(GetMana() + CalcManaRegen());
|
SetMana(GetMana() + CalcManaRegen() + RestRegenMana);
|
||||||
|
|
||||||
if(GetEndurance() < GetMaxEndurance())
|
if(GetEndurance() < GetMaxEndurance())
|
||||||
SetEndurance(GetEndurance() + CalcEnduranceRegen());
|
SetEndurance(GetEndurance() + CalcEnduranceRegen() + RestRegenEndurance);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(confidence_timer.Check()) {
|
if(confidence_timer.Check()) {
|
||||||
@ -2350,21 +2349,36 @@ bool Merc::AICastSpell(int8 iChance, int32 iSpellTypes) {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
int32 TempDontBuffMeBeforeTime = tar->DontBuffMeBefore();
|
uint32 TempDontBuffMeBeforeTime = tar->DontBuffMeBefore();
|
||||||
|
|
||||||
|
if(AIDoSpellCast(selectedMercSpell.spellid, tar, -1, &TempDontBuffMeBeforeTime)) {
|
||||||
|
if(TempDontBuffMeBeforeTime != tar->DontBuffMeBefore())
|
||||||
|
tar->SetDontBuffMeBefore(TempDontBuffMeBeforeTime);
|
||||||
|
|
||||||
if(AIDoSpellCast(selectedMercSpell.spellid, tar, -1))
|
|
||||||
castedSpell = true;
|
castedSpell = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!castedSpell && tar->GetPet()) {
|
if(!castedSpell && tar->GetPet()) {
|
||||||
|
|
||||||
|
//don't cast group spells on pets
|
||||||
|
if(IsGroupSpell(selectedMercSpell.spellid)
|
||||||
|
|| spells[selectedMercSpell.spellid].targettype == ST_Group
|
||||||
|
|| spells[selectedMercSpell.spellid].targettype == ST_GroupTeleport ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
if(!tar->GetPet()->IsImmuneToSpell(selectedMercSpell.spellid, this)
|
if(!tar->GetPet()->IsImmuneToSpell(selectedMercSpell.spellid, this)
|
||||||
&& (tar->GetPet()->CanBuffStack(selectedMercSpell.spellid, mercLevel, true) >= 0)) {
|
&& (tar->GetPet()->CanBuffStack(selectedMercSpell.spellid, mercLevel, true) >= 0)) {
|
||||||
|
|
||||||
int32 TempDontBuffMeBeforeTime = tar->DontBuffMeBefore();
|
uint32 TempDontBuffMeBeforeTime = tar->DontBuffMeBefore();
|
||||||
|
|
||||||
|
if(AIDoSpellCast(selectedMercSpell.spellid, tar->GetPet(), -1, &TempDontBuffMeBeforeTime)) {
|
||||||
|
if(TempDontBuffMeBeforeTime != tar->DontBuffMeBefore())
|
||||||
|
tar->SetDontBuffMeBefore(TempDontBuffMeBeforeTime);
|
||||||
|
|
||||||
if(AIDoSpellCast(selectedMercSpell.spellid, tar->GetPet(), -1))
|
|
||||||
castedSpell = true;
|
castedSpell = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -4644,10 +4658,12 @@ Merc* Merc::LoadMerc(Client *c, MercTemplate* merc_template, uint32 merchant_id,
|
|||||||
merc->drakkin_heritage = c->GetMercInfo().drakkinHeritage;
|
merc->drakkin_heritage = c->GetMercInfo().drakkinHeritage;
|
||||||
merc->drakkin_tattoo = c->GetMercInfo().drakkinTattoo;
|
merc->drakkin_tattoo = c->GetMercInfo().drakkinTattoo;
|
||||||
merc->drakkin_details = c->GetMercInfo().drakkinDetails;
|
merc->drakkin_details = c->GetMercInfo().drakkinDetails;
|
||||||
|
|
||||||
database.LoadMercBuffs(merc);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(merc->GetMercID()) {
|
||||||
|
database.LoadMercBuffs(merc);
|
||||||
|
}
|
||||||
|
|
||||||
merc->LoadMercSpells();
|
merc->LoadMercSpells();
|
||||||
|
|
||||||
return merc;
|
return merc;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user