Scripts/Spells: Implemented various rogue spells

Port From (https://github.com/TrinityCore/TrinityCore/commit/a3d06f2f329a6d21b9a79aed8b39f1d56fa933e6)
This commit is contained in:
hondacrx
2022-01-07 16:42:42 -05:00
parent 5bb553b0e3
commit cb7438506f
4 changed files with 794 additions and 25 deletions
+11 -2
View File
@@ -6165,7 +6165,7 @@ namespace Game.Spells
if (spellEffectInfo.ItemType != 0)
{
List<ItemPosCount> dest = new();
InventoryResult msg = target.ToPlayer().CanStoreNewItem(ItemConst.NullBag, ItemConst.NullSlot, dest, spellEffectInfo.ItemType, spellEffectInfo.CalcValue());
InventoryResult msg = target.ToPlayer().CanStoreNewItem(ItemConst.NullBag, ItemConst.NullSlot, dest, spellEffectInfo.ItemType, (uint)spellEffectInfo.CalcValue());
if (msg != InventoryResult.Ok)
{
ItemTemplate itemTemplate = Global.ObjectMgr.GetItemTemplate(spellEffectInfo.ItemType);
@@ -6591,7 +6591,16 @@ namespace Game.Spells
public bool HasPowerTypeCost(PowerType power)
{
return m_powerCost.Any(cost => cost.Power == power);
return GetPowerTypeCostAmount(power).HasValue;
}
public int? GetPowerTypeCostAmount(PowerType power)
{
var powerCost = m_powerCost.Find(cost => cost.Power == power);
if (powerCost == null)
return null;
return powerCost.Amount;
}
bool UpdatePointers()