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_CATEGORY( Pets )
RULE_REAL( Pets, AttackCommandRange, 150 ) RULE_REAL( Pets, AttackCommandRange, 150 )
RULE_BOOL( Pets, UnTargetableSwarmPet, false ) 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_END()
RULE_CATEGORY( GM ) 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) if(npc_dup != nullptr)
npca->GiveNPCTypeData(npc_dup); npca->GiveNPCTypeData(npc_dup);
if (IsClient())
npca->no_target_hotkey = 1;
entity_list.AddNPC(npca, true, true); entity_list.AddNPC(npca, true, true);
summon_count--; summon_count--;
} }
@ -699,9 +696,6 @@ void Mob::TypesTemporaryPets(uint32 typesid, Mob *targ, const char *name_overrid
if(npc_dup != nullptr) if(npc_dup != nullptr)
npca->GiveNPCTypeData(npc_dup); npca->GiveNPCTypeData(npc_dup);
if (IsClient())
npca->no_target_hotkey = 1;
entity_list.AddNPC(npca, true, true); entity_list.AddNPC(npca, true, true);
summon_count--; summon_count--;
} }
@ -889,9 +883,6 @@ void Mob::WakeTheDead(uint16 spell_id, Mob *target, uint32 duration)
if(make_npc != nullptr) if(make_npc != nullptr)
npca->GiveNPCTypeData(make_npc); npca->GiveNPCTypeData(make_npc);
if (IsClient())
npca->no_target_hotkey = 1;
entity_list.AddNPC(npca, true, true); entity_list.AddNPC(npca, true, true);
//the target of these swarm pets will take offense to being cast on... //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 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. 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'! //This will allow CLIENT swarm pets NOT to be targeted with F8.
if (RuleB(Pets, SwarmPetNotTargetableWithHotKey)) ns->spawn.targetable_with_hotkey = 0;
ns->spawn.IsMercenary = 1;
} }
else else
{ {
//NPC cast swarm pets should still be targetable with F8. //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 SetTempPet(true); //Simple mob flag for checking if temp pet