Core/Spells: Implement spell queue

Port From (https://github.com/TrinityCore/TrinityCore/commit/27019a62a4294f8dd48d975f85b1907c5adee0e3)
This commit is contained in:
hondacrx
2024-02-03 13:11:01 -05:00
parent 284cb628c9
commit a5b8efd032
10 changed files with 390 additions and 192 deletions
+37
View File
@@ -0,0 +1,37 @@
// Copyright (c) CypherCore <http://github.com/CypherCore> All rights reserved.
// Licensed under the GNU GENERAL PUBLIC LICENSE. See LICENSE file in the project root for full license information.
using Game.Entities;
using Game.Networking.Packets;
namespace Game.Spells
{
public class SpellCastRequestItemData
{
public byte PackSlot;
public byte Slot;
public ObjectGuid CastItem;
public SpellCastRequestItemData(byte packSlot, byte slot, ObjectGuid castItem)
{
PackSlot = packSlot;
Slot = slot;
CastItem = castItem;
}
}
public class SpellCastRequest
{
public SpellCastRequestPkt CastRequest;
public ObjectGuid CastingUnitGUID;
public SpellCastRequestItemData ItemData;
public SpellCastRequest(SpellCastRequestPkt castRequest, ObjectGuid castingUnitGUID, SpellCastRequestItemData? itemData = null)
{
CastRequest = castRequest;
CastingUnitGUID = castingUnitGUID;
ItemData = itemData;
}
}
}