mirror of
https://github.com/brues-code/nampower.git
synced 2026-10-03 20:20:01 +00:00
Renaming to Begin Cast
This commit is contained in:
+1
-1
@@ -1442,7 +1442,7 @@ namespace game {
|
||||
AURA_CAST_ON_SELF = 560,
|
||||
AURA_CAST_ON_OTHER = 561,
|
||||
|
||||
SPELL_SENDING_EVENT = 562,
|
||||
SPELL_BEGIN_CAST_EVENT = 562,
|
||||
};
|
||||
|
||||
enum TypeMask {
|
||||
|
||||
+2
-2
@@ -1318,8 +1318,8 @@ namespace Nampower {
|
||||
char SPELL_DAMAGE_EVENT_OTHER[] = "SPELL_DAMAGE_EVENT_OTHER";
|
||||
addCustomEvent(game::SPELL_DAMAGE_EVENT_OTHER, SPELL_DAMAGE_EVENT_OTHER);
|
||||
|
||||
char SPELL_SENDING_EVENT[] = "SPELL_SENDING_EVENT";
|
||||
addCustomEvent(game::SPELL_SENDING_EVENT, SPELL_SENDING_EVENT);
|
||||
char SPELL_BEGIN_CAST_EVENT[] = "SPELL_BEGIN_CAST_EVENT";
|
||||
addCustomEvent(game::SPELL_BEGIN_CAST_EVENT, SPELL_BEGIN_CAST_EVENT);
|
||||
|
||||
char DEBUFF_ADDED_SELF[] = "DEBUFF_ADDED_SELF";
|
||||
addCustomEvent(game::DEBUFF_ADDED_SELF, DEBUFF_ADDED_SELF);
|
||||
|
||||
+18
-21
@@ -107,6 +107,21 @@ namespace Nampower {
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
TriggerSpellBeginCastEvent(uint32_t spellId, std::uint64_t guid) {
|
||||
char format[] = "%d%s";
|
||||
char *guidStr = new char[21]; // 2 for 0x prefix, 18 for the number, and 1 for '\0'
|
||||
std::snprintf(guidStr, 21, "0x%016llX", static_cast<unsigned long long>(guid));
|
||||
|
||||
((int (__cdecl *)(int, char *, uint32_t, char *)) Offsets::SignalEventParam)(
|
||||
game::SPELL_BEGIN_CAST_EVENT, // SPELL_BEGIN_CAST_EVENT event we are adding
|
||||
format,
|
||||
spellId,
|
||||
guidStr);
|
||||
|
||||
delete[] guidStr;
|
||||
}
|
||||
|
||||
bool Spell_C_TargetSpellHook(hadesmem::PatchDetourBase *detour,
|
||||
uint32_t *player,
|
||||
uint32_t *spellId,
|
||||
@@ -236,6 +251,9 @@ namespace Nampower {
|
||||
}
|
||||
|
||||
gLastCastData.startTimeMs = currentTime;
|
||||
|
||||
|
||||
TriggerSpellBeginCastEvent(cast->spellId, cast->unitTarget);
|
||||
}
|
||||
|
||||
void CastQueuedNonGcdSpell() {
|
||||
@@ -344,21 +362,6 @@ namespace Nampower {
|
||||
delete[] guidStr;
|
||||
}
|
||||
|
||||
void
|
||||
TriggerSpellSendingEvent(uint32_t spellId, std::uint64_t guid) {
|
||||
char format[] = "%d%s";
|
||||
char *guidStr = new char[21]; // 2 for 0x prefix, 18 for the number, and 1 for '\0'
|
||||
std::snprintf(guidStr, 21, "0x%016llX", static_cast<unsigned long long>(guid));
|
||||
|
||||
((int (__cdecl *)(int, char *, uint32_t, char *)) Offsets::SignalEventParam)(
|
||||
game::SPELL_SENDING_EVENT, // SPELL_SENDING_EVENT event we are adding
|
||||
format,
|
||||
spellId,
|
||||
guidStr);
|
||||
|
||||
delete[] guidStr;
|
||||
}
|
||||
|
||||
void clearCastingSpell() {
|
||||
// clearing current casting spell id if needed
|
||||
// this prevents client from failing to cast spells without a casttime
|
||||
@@ -1063,12 +1066,6 @@ namespace Nampower {
|
||||
|
||||
void SendCastHook(hadesmem::PatchDetourBase *detour, game::SpellCast *cast, char unk) {
|
||||
|
||||
if (cast != nullptr && cast->itemTarget == 0 && cast->caster == game::ClntObjMgrGetActivePlayerGuid()) {
|
||||
const auto guid = cast->unitTarget;
|
||||
const auto spellId = cast->spellId;
|
||||
TriggerSpellSendingEvent(spellId, guid);
|
||||
}
|
||||
|
||||
auto const sendCast = detour->GetTrampolineT<SendCastT>();
|
||||
sendCast(cast, unk);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user