Clean up SoF+ swarm pet F8 hack

This commit is contained in:
Michael Cook (mackal) 2014-12-10 02:15:15 -05:00
parent 820f99067d
commit d9a1bcb3fd
3 changed files with 6 additions and 17 deletions

View File

@ -136,7 +136,6 @@ RULE_CATEGORY_END()
RULE_CATEGORY( Pets )
RULE_REAL( Pets, AttackCommandRange, 150 )
RULE_BOOL( Pets, UnTargetableSwarmPet, false )
RULE_BOOL( Pets, SwarmPetNotTargetableWithHotKey, false ) //On SOF+ clients this a semi-hack to make swarm pets not F8 targetable.
RULE_CATEGORY_END()
RULE_CATEGORY( GM )

View File

@ -600,9 +600,6 @@ void Mob::TemporaryPets(uint16 spell_id, Mob *targ, const char *name_override, u
if(npc_dup != nullptr)
npca->GiveNPCTypeData(npc_dup);
if (IsClient())
npca->no_target_hotkey = 1;
entity_list.AddNPC(npca, true, true);
summon_count--;
}
@ -699,9 +696,6 @@ void Mob::TypesTemporaryPets(uint32 typesid, Mob *targ, const char *name_overrid
if(npc_dup != nullptr)
npca->GiveNPCTypeData(npc_dup);
if (IsClient())
npca->no_target_hotkey = 1;
entity_list.AddNPC(npca, true, true);
summon_count--;
}
@ -889,9 +883,6 @@ void Mob::WakeTheDead(uint16 spell_id, Mob *target, uint32 duration)
if(make_npc != nullptr)
npca->GiveNPCTypeData(make_npc);
if (IsClient())
npca->no_target_hotkey = 1;
entity_list.AddNPC(npca, true, true);
//the target of these swarm pets will take offense to being cast on...

View File

@ -1861,14 +1861,13 @@ void NPC::PetOnSpawn(NewSpawn_Struct* ns)
{
SetPetOwnerClient(true); //Simple flag to determine if pet belongs to a client
SetAllowBeneficial(1);//Allow temp pets to receive buffs and heals if owner is client.
//This is a hack to allow CLIENT swarm pets NOT to be targeted with F8. Warning: Will turn name 'Yellow'!
if (RuleB(Pets, SwarmPetNotTargetableWithHotKey))
ns->spawn.IsMercenary = 1;
//This will allow CLIENT swarm pets NOT to be targeted with F8.
ns->spawn.targetable_with_hotkey = 0;
}
else
{
//NPC cast swarm pets should still be targetable with F8.
ns->spawn.IsMercenary = 0;
ns->spawn.targetable_with_hotkey = 1;
}
SetTempPet(true); //Simple mob flag for checking if temp pet