/* * Copyright (C) 2016+ AzerothCore , released under GNU GPL v2 license, you may redistribute it * and/or modify it under version 2 of the License, or (at your option), any later version. */ #include "WarlockActions.h" #include "Event.h" #include "Playerbots.h" bool CastDrainSoulAction::isUseful() { return AI_VALUE2(uint32, "item count", "soul shard") < 10; } Value* CastBanishAction::GetTargetValue() { return context->GetValue("cc target", "banish"); } bool CastBanishAction::Execute(Event event) { return botAI->CastSpell("banish", GetTarget()); } Value* CastFearOnCcAction::GetTargetValue() { return context->GetValue("cc target", "fear"); } bool CastFearOnCcAction::Execute(Event event) { return botAI->CastSpell("fear", GetTarget()); } bool CastFearOnCcAction::isPossible() { return botAI->CanCastSpell("fear", GetTarget()); } bool CastFearOnCcAction::isUseful() { return true; } bool CastLifeTapAction::isUseful() { return AI_VALUE2(uint8, "health", "self target") > sPlayerbotAIConfig->lowHealth; } Unit* UseSoulstoneAction::GetTarget() { return botAI->GetMaster(); }