mirror of
https://github.com/EQEmu/Server.git
synced 2026-06-13 02:38:45 +00:00
converted spell id's to integers and made the internal representation 322-bit
This commit is contained in:
+17
-17
@@ -128,7 +128,7 @@ struct LDoNTrapTemplate
|
||||
{
|
||||
uint32 id;
|
||||
LDoNChestTypes type;
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
uint16 skill;
|
||||
uint8 locked;
|
||||
};
|
||||
@@ -422,7 +422,7 @@ struct NewZone_Struct {
|
||||
*/
|
||||
struct MemorizeSpell_Struct {
|
||||
uint32 slot; // Spot in the spell book/memorized slot
|
||||
uint32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
int32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
uint32 scribing; // 1 if memorizing a spell, set to 0 if scribing to book, 2 if un-memming
|
||||
uint32 reduction; // lower reuse
|
||||
};
|
||||
@@ -471,7 +471,7 @@ struct ManaChange_Struct
|
||||
{
|
||||
/*00*/ uint32 new_mana; // New Mana AMount
|
||||
/*04*/ uint32 stamina;
|
||||
/*08*/ uint32 spell_id;
|
||||
/*08*/ int32 spell_id;
|
||||
/*12*/ uint8 keepcasting; // won't stop the cast. Change mana while casting?
|
||||
/*13*/ uint8 padding[3]; // client doesn't read it, garbage data seems like
|
||||
/*16*/ int32 slot; // -1 normal, otherwise clear ETA and GCD
|
||||
@@ -489,14 +489,14 @@ struct BeginCast_Struct
|
||||
{
|
||||
// len = 8
|
||||
/*000*/ uint16 caster_id;
|
||||
/*002*/ uint16 spell_id;
|
||||
/*002*/ int16 spell_id;
|
||||
/*004*/ uint32 cast_time; // in miliseconds
|
||||
};
|
||||
|
||||
struct CastSpell_Struct
|
||||
{
|
||||
uint32 slot;
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
uint32 inventoryslot; // slot for clicky item, 0xFFFF = normal cast
|
||||
uint32 target_id;
|
||||
uint32 cs_unknown1;
|
||||
@@ -544,7 +544,7 @@ struct SpellBuff_Struct
|
||||
/*001*/ uint8 level;
|
||||
/*002*/ uint8 bard_modifier;
|
||||
/*003*/ uint8 unknown003; // MQ2 used to call this "damage shield" -- don't see client referencing it, so maybe server side DS type tracking? -- OSX client calls this "activated"
|
||||
/*004*/ uint32 spellid;
|
||||
/*004*/ int32 spellid;
|
||||
/*008*/ int32 duration;
|
||||
/*012*/ uint32 counters; // single book keeping value (counters, rune/vie)
|
||||
/*016*/ uint32 player_id; // caster ID, pretty sure just zone ID
|
||||
@@ -574,7 +574,7 @@ struct BuffRemoveRequest_Struct
|
||||
|
||||
struct PetBuff_Struct {
|
||||
/*000*/ uint32 petid;
|
||||
/*004*/ uint32 spellid[PET_BUFF_COUNT];
|
||||
/*004*/ int32 spellid[PET_BUFF_COUNT];
|
||||
/*124*/ int32 ticsremaining[PET_BUFF_COUNT];
|
||||
/*244*/ uint32 buffcount;
|
||||
};
|
||||
@@ -875,7 +875,7 @@ struct BindStruct {
|
||||
|
||||
struct SuspendedMinion_Struct
|
||||
{
|
||||
/*000*/ uint16 SpellID;
|
||||
/*000*/ int16 SpellID;
|
||||
/*002*/ uint32 HP;
|
||||
/*006*/ uint32 Mana;
|
||||
/*010*/ SpellBuff_Struct Buffs[BUFF_COUNT];
|
||||
@@ -1010,7 +1010,7 @@ struct PlayerProfile_Struct
|
||||
/*2505*/ uint8 unknown2541[47]; // ?
|
||||
/*2552*/ uint8 languages[MAX_PP_LANGUAGE];
|
||||
/*2580*/ uint8 unknown2616[4];
|
||||
/*2584*/ uint32 spell_book[EQ::spells::SPELLBOOK_SIZE];
|
||||
/*2584*/ int32 spell_book[EQ::spells::SPELLBOOK_SIZE];
|
||||
/*4504*/ uint8 unknown4540[128]; // Was [428] all 0xff
|
||||
/*4632*/ uint32 mem_spells[EQ::spells::SPELL_GEM_COUNT];
|
||||
/*4668*/ uint8 unknown4704[32]; //
|
||||
@@ -1344,7 +1344,7 @@ struct CombatDamage_Struct
|
||||
/* 00 */ uint16 target;
|
||||
/* 02 */ uint16 source;
|
||||
/* 04 */ uint8 type; //slashing, etc. 231 (0xE7) for spells, skill
|
||||
/* 05 */ uint16 spellid;
|
||||
/* 05 */ int16 spellid;
|
||||
/* 07 */ uint32 damage;
|
||||
/* 11 */ float force;
|
||||
/* 15 */ float hit_heading; // see above notes in Action_Struct
|
||||
@@ -1377,7 +1377,7 @@ struct Death_Struct
|
||||
/*004*/ uint32 killer_id;
|
||||
/*008*/ uint32 corpseid; // was corpseid
|
||||
/*012*/ uint32 bindzoneid;
|
||||
/*016*/ uint32 spell_id;
|
||||
/*016*/ int32 spell_id;
|
||||
/*020*/ uint32 attack_skill;
|
||||
/*024*/ uint32 damage;
|
||||
/*028*/ uint32 unknown028;
|
||||
@@ -2983,7 +2983,7 @@ struct Resurrect_Struct {
|
||||
/*024*/ char your_name[64];
|
||||
/*088*/ uint32 unknown088;
|
||||
/*092*/ char rezzer_name[64];
|
||||
/*156*/ uint32 spellid;
|
||||
/*156*/ int32 spellid;
|
||||
/*160*/ char corpse_name[64];
|
||||
/*224*/ uint32 action;
|
||||
/* 228 */
|
||||
@@ -2991,7 +2991,7 @@ struct Resurrect_Struct {
|
||||
|
||||
struct Translocate_Struct {
|
||||
/*000*/ uint32 ZoneID;
|
||||
/*004*/ uint32 SpellID;
|
||||
/*004*/ int32 SpellID;
|
||||
/*008*/ uint32 unknown008; //Heading ?
|
||||
/*012*/ char Caster[64];
|
||||
/*076*/ float y;
|
||||
@@ -3008,7 +3008,7 @@ struct PendingTranslocate_Struct
|
||||
float x;
|
||||
float y;
|
||||
float z;
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
};
|
||||
|
||||
struct Sacrifice_Struct {
|
||||
@@ -4875,7 +4875,7 @@ struct MarkNPC_Struct
|
||||
};
|
||||
|
||||
struct InspectBuffs_Struct {
|
||||
/*000*/ uint32 spell_id[BUFF_COUNT];
|
||||
/*000*/ int32 spell_id[BUFF_COUNT];
|
||||
/*100*/ int32 tics_remaining[BUFF_COUNT];
|
||||
};
|
||||
|
||||
@@ -5144,7 +5144,7 @@ struct SendAA_Struct {
|
||||
/*0040*/ uint32 prereq_skill; //is < 0, abs() is category #
|
||||
/*0044*/ uint32 prereq_minpoints; //min points in the prereq
|
||||
/*0048*/ uint32 type;
|
||||
/*0052*/ uint32 spellid;
|
||||
/*0052*/ int32 spellid;
|
||||
/*0056*/ uint32 spell_type;
|
||||
/*0060*/ uint32 spell_refresh;
|
||||
/*0064*/ uint16 classes;
|
||||
@@ -5645,7 +5645,7 @@ struct HideCorpse_Struct
|
||||
struct BuffIconEntry_Struct
|
||||
{
|
||||
uint32 buff_slot;
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
int32 tics_remaining;
|
||||
uint32 num_hits;
|
||||
char caster[64];
|
||||
|
||||
@@ -960,7 +960,7 @@ namespace PlayerEvent {
|
||||
struct ResurrectAcceptEvent {
|
||||
std::string resurrecter_name;
|
||||
std::string spell_name;
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
|
||||
// cereal
|
||||
template <class Archive>
|
||||
@@ -1058,7 +1058,7 @@ namespace PlayerEvent {
|
||||
uint32 killer_id;
|
||||
std::string killer_name;
|
||||
int64 damage;
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
std::string spell_name;
|
||||
int skill_id;
|
||||
std::string skill_name;
|
||||
|
||||
+1
-1
@@ -11,7 +11,7 @@ void Links::FormatItemLink(char* Buffer, size_t BufferSize, const EQ::ItemInstan
|
||||
// TODO: Reverse 0x14064B220 to get definition of this function
|
||||
}
|
||||
|
||||
void Links::FormatSpellLink(char* Buffer, size_t BufferSize, uint32_t SpellID,
|
||||
void Links::FormatSpellLink(char* Buffer, size_t BufferSize, int32_t SpellID,
|
||||
const char* spellNameOverride)
|
||||
{
|
||||
snprintf(Buffer, BufferSize, "%c%d3^%d^0^'%s%c", ITEM_TAG_CHAR, ETAG_SPELL, SpellID,
|
||||
|
||||
+1
-1
@@ -49,7 +49,7 @@ void FormatItemLink(char* Buffer, size_t BufferSize, const EQ::ItemInstance* ite
|
||||
|
||||
// Create a spell link for the given spell, with optional spell name override. Spells on items often have
|
||||
// spell name overrides that changes the display name of the spell.
|
||||
void FormatSpellLink(char* Buffer, size_t BufferSize, uint32_t SpellID,
|
||||
void FormatSpellLink(char* Buffer, size_t BufferSize, int32_t SpellID,
|
||||
const char* spellNameOverride = nullptr);
|
||||
|
||||
// Format text into a clickable dialog link. The keyword is the text that will be displayed in the chat window,
|
||||
|
||||
@@ -466,7 +466,7 @@ namespace RoF
|
||||
for (int i = 0; i < emu->count; ++i)
|
||||
{
|
||||
__packet->WriteUInt32(emu->type == 0 ? ServerToRoFBuffSlot(emu->entries[i].buff_slot) : emu->entries[i].buff_slot);
|
||||
__packet->WriteUInt32(emu->entries[i].spell_id);
|
||||
__packet->WriteSInt32 (emu->entries[i].spell_id);
|
||||
__packet->WriteUInt32(emu->entries[i].tics_remaining);
|
||||
__packet->WriteUInt32(emu->entries[i].num_hits); // Unknown
|
||||
__packet->WriteString(emu->entries[i].caster);
|
||||
@@ -1879,7 +1879,7 @@ namespace RoF
|
||||
if (emu->spellid[i])
|
||||
{
|
||||
__packet->WriteUInt32(i);
|
||||
__packet->WriteUInt32(emu->spellid[i]);
|
||||
__packet->WriteSInt32 (emu->spellid[i]);
|
||||
__packet->WriteUInt32(emu->ticsremaining[i]);
|
||||
__packet->WriteUInt32(0); // numhits
|
||||
__packet->WriteString("");
|
||||
@@ -2179,7 +2179,7 @@ namespace RoF
|
||||
outapp->WriteUInt32(emu->buffs[r].counters);
|
||||
outapp->WriteUInt32(emu->buffs[r].duration);
|
||||
outapp->WriteUInt8(emu->buffs[r].level);
|
||||
outapp->WriteUInt32(emu->buffs[r].spellid);
|
||||
outapp->WriteSInt32 (emu->buffs[r].spellid);
|
||||
outapp->WriteUInt8(effect_type); // Only ever seen 2
|
||||
outapp->WriteUInt32(emu->buffs[r].num_hits);
|
||||
outapp->WriteUInt32(0);
|
||||
|
||||
@@ -724,7 +724,7 @@ namespace RoF2
|
||||
for (int i = 0; i < emu->count; ++i)
|
||||
{
|
||||
__packet->WriteUInt32(emu->type == 0 ? ServerToRoF2BuffSlot(emu->entries[i].buff_slot) : emu->entries[i].buff_slot);
|
||||
__packet->WriteUInt32(emu->entries[i].spell_id);
|
||||
__packet->WriteSInt32 (emu->entries[i].spell_id);
|
||||
__packet->WriteUInt32(emu->entries[i].tics_remaining);
|
||||
__packet->WriteUInt32(emu->entries[i].num_hits); // Unknown
|
||||
__packet->WriteString(emu->entries[i].caster);
|
||||
@@ -2485,7 +2485,7 @@ namespace RoF2
|
||||
if (emu->spellid[i])
|
||||
{
|
||||
__packet->WriteUInt32(i);
|
||||
__packet->WriteUInt32(emu->spellid[i]);
|
||||
__packet->WriteSInt32 (emu->spellid[i]);
|
||||
__packet->WriteUInt32(emu->ticsremaining[i]);
|
||||
__packet->WriteUInt32(0); // num hits
|
||||
__packet->WriteString("");
|
||||
@@ -2786,7 +2786,7 @@ namespace RoF2
|
||||
outapp->WriteUInt32(emu->buffs[r].counters);
|
||||
outapp->WriteUInt32(emu->buffs[r].duration);
|
||||
outapp->WriteUInt8(emu->buffs[r].level);
|
||||
outapp->WriteUInt32(emu->buffs[r].spellid);
|
||||
outapp->WriteSInt32 (emu->buffs[r].spellid);
|
||||
outapp->WriteUInt8(effect_type); // Only ever seen 2
|
||||
outapp->WriteUInt32(emu->buffs[r].num_hits);
|
||||
outapp->WriteUInt32(0);
|
||||
|
||||
@@ -668,7 +668,7 @@ struct NewZone_Struct {
|
||||
*/
|
||||
struct MemorizeSpell_Struct {
|
||||
uint32 slot; // Spot in the spell book/memorized slot
|
||||
uint32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
int32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
uint32 scribing; // 1 if memorizing a spell, set to 0 if scribing to book, 2 if un-memming
|
||||
uint32 reduction; // lowers reuse
|
||||
};
|
||||
@@ -705,7 +705,7 @@ struct ManaChange_Struct
|
||||
{
|
||||
/*00*/ uint32 new_mana; // New Mana AMount
|
||||
/*04*/ uint32 stamina;
|
||||
/*08*/ uint32 spell_id;
|
||||
/*08*/ int32 spell_id;
|
||||
/*12*/ uint8 keepcasting; // won't stop the cast. Change mana while casting?
|
||||
/*13*/ uint8 padding[3]; // client doesn't read it, garbage data seems like
|
||||
/*16*/ int32 slot; // -1 for normal usage slot for when we want silent interrupt? I think it does timer stuff or something. Linked Spell Reuse interrupt uses it
|
||||
@@ -719,7 +719,7 @@ struct SwapSpell_Struct
|
||||
|
||||
struct BeginCast_Struct
|
||||
{
|
||||
/*000*/ uint32 spell_id;
|
||||
/*000*/ int32 spell_id;
|
||||
/*004*/ uint16 caster_id;
|
||||
/*006*/ uint32 cast_time; // in miliseconds
|
||||
/*010*/
|
||||
@@ -728,7 +728,7 @@ struct BeginCast_Struct
|
||||
struct CastSpell_Struct
|
||||
{
|
||||
/*00*/ uint32 slot;
|
||||
/*04*/ uint32 spell_id;
|
||||
/*04*/ int32 spell_id;
|
||||
/*08*/ InventorySlot_Struct inventory_slot; // slot for clicky item, Seen unknown of 131 = normal cast
|
||||
/*20*/ uint32 target_id;
|
||||
/*24*/ uint32 cs_unknown[2];
|
||||
@@ -760,7 +760,7 @@ struct SpellBuff_Struct
|
||||
/*002*/ uint8 unknown002; //pretty sure padding now
|
||||
/*003*/ uint8 unknown003; // MQ2 used to call this "damage shield" -- don't see client referencing it, so maybe server side DS type tracking?
|
||||
/*004*/ float bard_modifier;
|
||||
/*008*/ uint32 spellid;
|
||||
/*008*/ int32 spellid;
|
||||
/*012*/ uint32 duration;
|
||||
/*016*/ uint32 player_id; // caster ID, pretty sure just zone ID
|
||||
/*020*/ uint32 num_hits;
|
||||
@@ -791,7 +791,7 @@ struct BuffRemoveRequest_Struct
|
||||
// not in use
|
||||
struct BuffIconEntry_Struct {
|
||||
/*000*/ uint32 buff_slot;
|
||||
/*004*/ uint32 spell_id;
|
||||
/*004*/ int32 spell_id;
|
||||
/*008*/ uint32 tics_remaining;
|
||||
/*012*/ uint32 num_hits;
|
||||
// char name[0]; caster name is also here sometimes
|
||||
@@ -1513,7 +1513,7 @@ struct CombatDamage_Struct
|
||||
/* 00 */ uint16 target;
|
||||
/* 02 */ uint16 source;
|
||||
/* 04 */ uint8 type; //slashing, etc. 231 (0xE7) for spells
|
||||
/* 05 */ uint32 spellid;
|
||||
/* 05 */ int32 spellid;
|
||||
/* 09 */ int32 damage;
|
||||
/* 13 */ float force; // cd cc cc 3d
|
||||
/* 17 */ float hit_heading; // see above notes in Action_Struct
|
||||
@@ -1549,7 +1549,7 @@ struct Death_Struct
|
||||
/*004*/ uint32 killer_id;
|
||||
/*008*/ uint32 corpseid; // was corpseid
|
||||
/*012*/ uint32 attack_skill; // was type
|
||||
/*016*/ uint32 spell_id;
|
||||
/*016*/ int32 spell_id;
|
||||
/*020*/ uint32 bindzoneid; //bindzoneid?
|
||||
/*024*/ uint32 damage;
|
||||
/*028*/ uint32 unknown028;
|
||||
@@ -2658,7 +2658,7 @@ struct GroupFollow_Struct { // Live Follow Struct
|
||||
};
|
||||
|
||||
struct InspectBuffs_Struct {
|
||||
/*000*/ uint32 spell_id[BUFF_COUNT];
|
||||
/*000*/ int32 spell_id[BUFF_COUNT];
|
||||
/*168*/ int32 tics_remaining[BUFF_COUNT];
|
||||
};
|
||||
|
||||
@@ -3077,7 +3077,7 @@ struct Resurrect_Struct
|
||||
/*024*/ char your_name[64];
|
||||
/*088*/ uint32 unknown088;
|
||||
/*092*/ char rezzer_name[64];
|
||||
/*156*/ uint32 spellid;
|
||||
/*156*/ int32 spellid;
|
||||
/*160*/ char corpse_name[64];
|
||||
/*224*/ uint32 action;
|
||||
/*228*/ uint32 unknown228;
|
||||
@@ -4581,7 +4581,7 @@ struct SendAA_Struct {
|
||||
/*0045*/ uint32 prereq_minpoints_count; // mutliple prereqs at least 1, even no prereqs
|
||||
/*0049*/ uint32 prereq_minpoints; //min points in the prereq
|
||||
/*0053*/ uint32 type;
|
||||
/*0057*/ uint32 spellid;
|
||||
/*0057*/ int32 spellid;
|
||||
/*0061*/ uint32 unknown057; // Introduced during HoT - Seen 1 - Maybe account status or enable/disable AA?
|
||||
/*0065*/ uint32 spell_type;
|
||||
/*0069*/ uint32 spell_refresh;
|
||||
|
||||
@@ -614,7 +614,7 @@ struct NewZone_Struct {
|
||||
*/
|
||||
struct MemorizeSpell_Struct {
|
||||
uint32 slot; // Spot in the spell book/memorized slot
|
||||
uint32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
int32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
uint32 scribing; // 1 if memorizing a spell, set to 0 if scribing to book, 2 if un-memming
|
||||
uint32 reduction; // lowers reuse
|
||||
};
|
||||
@@ -651,7 +651,7 @@ struct ManaChange_Struct
|
||||
{
|
||||
/*00*/ uint32 new_mana; // New Mana AMount
|
||||
/*04*/ uint32 stamina;
|
||||
/*08*/ uint32 spell_id;
|
||||
/*08*/ int32 spell_id;
|
||||
/*12*/ uint8 keepcasting; // won't stop the cast. Change mana while casting?
|
||||
/*13*/ uint8 padding[3]; // client doesn't read it, garbage data seems like
|
||||
/*16*/ int32 slot; // -1 for normal usage slot for when we want silent interrupt? I think it does timer stuff or something. Linked Spell Reuse interrupt uses it
|
||||
@@ -665,7 +665,7 @@ struct SwapSpell_Struct
|
||||
|
||||
struct BeginCast_Struct
|
||||
{
|
||||
/*000*/ uint32 spell_id;
|
||||
/*000*/ int32 spell_id;
|
||||
/*004*/ uint16 caster_id;
|
||||
/*006*/ uint32 cast_time; // in miliseconds
|
||||
/*010*/
|
||||
@@ -674,7 +674,7 @@ struct BeginCast_Struct
|
||||
struct CastSpell_Struct
|
||||
{
|
||||
/*00*/ uint32 slot;
|
||||
/*04*/ uint32 spell_id;
|
||||
/*04*/ int32 spell_id;
|
||||
/*08*/ InventorySlot_Struct inventory_slot; // slot for clicky item, Seen unknown of 131 = normal cast
|
||||
/*20*/ uint32 target_id;
|
||||
/*24*/ uint32 cs_unknown[2];
|
||||
@@ -706,7 +706,7 @@ struct SpellBuff_Struct
|
||||
/*002*/ uint8 unknown002; //pretty sure padding now
|
||||
/*003*/ uint8 unknown003; // MQ2 used to call this "damage shield" -- don't see client referencing it, so maybe server side DS type tracking?
|
||||
/*004*/ float bard_modifier;
|
||||
/*008*/ uint32 spellid;
|
||||
/*008*/ int32 spellid;
|
||||
/*012*/ uint32 duration;
|
||||
/*016*/ uint32 player_id; // caster ID, pretty sure just zone ID
|
||||
/*020*/ uint32 num_hits;
|
||||
@@ -737,7 +737,7 @@ struct BuffRemoveRequest_Struct
|
||||
// not in use
|
||||
struct BuffIconEntry_Struct {
|
||||
/*000*/ uint32 buff_slot;
|
||||
/*004*/ uint32 spell_id;
|
||||
/*004*/ int32 spell_id;
|
||||
/*008*/ uint32 tics_remaining;
|
||||
/*012*/ uint32 num_hits;
|
||||
// char name[0]; caster name is also here sometimes
|
||||
@@ -1500,7 +1500,7 @@ struct CombatDamage_Struct
|
||||
/* 00 */ uint16 target;
|
||||
/* 02 */ uint16 source;
|
||||
/* 04 */ uint8 type; //slashing, etc. 231 (0xE7) for spells
|
||||
/* 05 */ uint32 spellid;
|
||||
/* 05 */ int32 spellid;
|
||||
/* 09 */ int32 damage;
|
||||
/* 13 */ float force; // cd cc cc 3d
|
||||
/* 17 */ float hit_heading; // see above notes in Action_Struct
|
||||
@@ -1536,7 +1536,7 @@ struct Death_Struct
|
||||
/*004*/ uint32 killer_id;
|
||||
/*008*/ uint32 corpseid; // was corpseid
|
||||
/*012*/ uint32 attack_skill; // was type
|
||||
/*016*/ uint32 spell_id;
|
||||
/*016*/ int32 spell_id;
|
||||
/*020*/ uint32 bindzoneid; //bindzoneid?
|
||||
/*024*/ uint32 damage;
|
||||
/*028*/ uint32 unknown028;
|
||||
@@ -2603,7 +2603,7 @@ struct GroupFollow_Struct { // Live Follow Struct
|
||||
};
|
||||
|
||||
struct InspectBuffs_Struct {
|
||||
/*000*/ uint32 spell_id[BUFF_COUNT];
|
||||
/*000*/ int32 spell_id[BUFF_COUNT];
|
||||
/*168*/ int32 tics_remaining[BUFF_COUNT];
|
||||
};
|
||||
|
||||
@@ -3013,7 +3013,7 @@ struct Resurrect_Struct
|
||||
/*024*/ char your_name[64];
|
||||
/*088*/ uint32 unknown088;
|
||||
/*092*/ char rezzer_name[64];
|
||||
/*156*/ uint32 spellid;
|
||||
/*156*/ int32 spellid;
|
||||
/*160*/ char corpse_name[64];
|
||||
/*224*/ uint32 action;
|
||||
/*228*/ uint32 unknown228;
|
||||
@@ -4333,7 +4333,7 @@ struct SendAA_Struct {
|
||||
/*0045*/ uint32 prereq_minpoints_count; // mutliple prereqs at least 1, even no prereqs
|
||||
/*0049*/ uint32 prereq_minpoints; //min points in the prereq
|
||||
/*0053*/ uint32 type;
|
||||
/*0057*/ uint32 spellid;
|
||||
/*0057*/ int32 spellid;
|
||||
/*0061*/ uint32 unknown057; // Introduced during HoT - Seen 1 - Maybe account status or enable/disable AA?
|
||||
/*0065*/ uint32 spell_type;
|
||||
/*0069*/ uint32 spell_refresh;
|
||||
|
||||
@@ -480,7 +480,7 @@ struct NewZone_Struct {
|
||||
*/
|
||||
struct MemorizeSpell_Struct {
|
||||
uint32 slot; // Spot in the spell book/memorized slot
|
||||
uint32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
int32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
uint32 scribing; // 1 if memorizing a spell, set to 0 if scribing to book, 2 if un-memming
|
||||
uint32 reduction; // lowers reuse
|
||||
};
|
||||
@@ -517,7 +517,7 @@ struct ManaChange_Struct
|
||||
{
|
||||
/*00*/ uint32 new_mana; // New Mana AMount
|
||||
/*04*/ uint32 stamina;
|
||||
/*08*/ uint32 spell_id;
|
||||
/*08*/ int32 spell_id;
|
||||
/*12*/ uint8 keepcasting; // won't stop the cast. Change mana while casting?
|
||||
/*13*/ uint8 padding[3]; // client doesn't read it, garbage data seems like
|
||||
/*16*/ int32 slot; // -1 for normal usage slot for when we want silent interrupt? I think it does timer stuff or something. Linked Spell Reuse interrupt uses it
|
||||
@@ -535,14 +535,14 @@ struct BeginCast_Struct
|
||||
{
|
||||
// len = 8
|
||||
/*004*/ uint16 caster_id;
|
||||
/*006*/ uint16 spell_id;
|
||||
/*006*/ int16 spell_id;
|
||||
/*016*/ uint32 cast_time; // in miliseconds
|
||||
};
|
||||
|
||||
struct CastSpell_Struct
|
||||
{
|
||||
uint32 slot;
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
uint32 inventoryslot; // slot for clicky item, 0xFFFF = normal cast
|
||||
uint32 target_id;
|
||||
uint8 cs_unknown[4];
|
||||
@@ -571,7 +571,7 @@ struct SpellBuff_Struct
|
||||
/*001*/ uint8 level; // Seen 1 for no buff
|
||||
/*002*/ uint8 bard_modifier;
|
||||
/*003*/ uint8 unknown003; // MQ2 used to call this "damage shield" -- don't see client referencing it, so maybe server side DS type tracking?
|
||||
/*004*/ uint32 spellid;
|
||||
/*004*/ int32 spellid;
|
||||
/*008*/ uint32 duration;
|
||||
/*012*/ uint32 counters;
|
||||
/*016*/ uint32 unknown016;
|
||||
@@ -1266,7 +1266,7 @@ struct CombatDamage_Struct
|
||||
/* 00 */ uint16 target;
|
||||
/* 02 */ uint16 source;
|
||||
/* 04 */ uint8 type; //slashing, etc. 231 (0xE7) for spells
|
||||
/* 05 */ uint16 spellid;
|
||||
/* 05 */ int16 spellid;
|
||||
/* 07 */ int32 damage;
|
||||
/* 11 */ float force; // cd cc cc 3d
|
||||
/* 15 */ float hit_heading; // see above notes in Action_Struct
|
||||
@@ -1301,7 +1301,7 @@ struct Death_Struct
|
||||
/*004*/ uint32 killer_id;
|
||||
/*008*/ uint32 corpseid; // was corpseid
|
||||
/*012*/ uint32 attack_skill; // was type
|
||||
/*016*/ uint32 spell_id;
|
||||
/*016*/ int32 spell_id;
|
||||
/*020*/ uint32 bindzoneid; //bindzoneid?
|
||||
/*024*/ uint32 damage;
|
||||
/*028*/ uint32 unknown028;
|
||||
@@ -2534,7 +2534,7 @@ struct Resurrect_Struct {
|
||||
char your_name[64];
|
||||
uint32 unknown88;
|
||||
char rezzer_name[64];
|
||||
uint32 spellid;
|
||||
int32 spellid;
|
||||
char corpse_name[64];
|
||||
uint32 action;
|
||||
/* 228 */
|
||||
@@ -3787,7 +3787,7 @@ struct SendAA_Struct {
|
||||
/*0037*/ uint32 prereq_skill; //is < 0, abs() is category #
|
||||
/*0041*/ uint32 prereq_minpoints; //min points in the prereq
|
||||
/*0045*/ uint32 type;
|
||||
/*0049*/ uint32 spellid;
|
||||
/*0049*/ int32 spellid;
|
||||
/*0053*/ uint32 spell_type;
|
||||
/*0057*/ uint32 spell_refresh;
|
||||
/*0061*/ uint32 classes;
|
||||
|
||||
@@ -480,7 +480,7 @@ struct NewZone_Struct {
|
||||
*/
|
||||
struct MemorizeSpell_Struct {
|
||||
uint32 slot; // Spot in the spell book/memorized slot
|
||||
uint32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
int32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
uint32 scribing; // 1 if memorizing a spell, set to 0 if scribing to book, 2 if un-memming
|
||||
uint32 reduction; // lowers reuse
|
||||
};
|
||||
@@ -517,7 +517,7 @@ struct ManaChange_Struct
|
||||
{
|
||||
/*00*/ uint32 new_mana; // New Mana AMount
|
||||
/*04*/ uint32 stamina;
|
||||
/*08*/ uint32 spell_id;
|
||||
/*08*/ int32 spell_id;
|
||||
/*12*/ uint8 keepcasting; // won't stop the cast. Change mana while casting?
|
||||
/*13*/ uint8 padding[3]; // client doesn't read it, garbage data seems like
|
||||
/*16*/ int32 slot; // -1 for normal usage slot for when we want silent interrupt? I think it does timer stuff or something. Linked Spell Reuse interrupt uses it
|
||||
@@ -535,14 +535,14 @@ struct BeginCast_Struct
|
||||
{
|
||||
// len = 8
|
||||
/*004*/ uint16 caster_id;
|
||||
/*006*/ uint16 spell_id;
|
||||
/*006*/ int16 spell_id;
|
||||
/*016*/ uint32 cast_time; // in miliseconds
|
||||
};
|
||||
|
||||
struct CastSpell_Struct
|
||||
{
|
||||
uint32 slot;
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
uint32 inventoryslot; // slot for clicky item, 0xFFFF = normal cast
|
||||
uint32 target_id;
|
||||
uint8 cs_unknown[4];
|
||||
@@ -571,7 +571,7 @@ struct SpellBuff_Struct
|
||||
/*001*/ uint8 level; // Seen 1 for no buff
|
||||
/*002*/ uint8 bard_modifier;
|
||||
/*003*/ uint8 unknown003; // MQ2 used to call this "damage shield" -- don't see client referencing it, so maybe server side DS type tracking?
|
||||
/*004*/ uint32 spellid;
|
||||
/*004*/ int32 spellid;
|
||||
/*008*/ uint32 duration;
|
||||
/*012*/ uint32 counters;
|
||||
/*016*/ uint32 unknown016;
|
||||
@@ -1266,7 +1266,7 @@ struct CombatDamage_Struct
|
||||
/* 00 */ uint16 target;
|
||||
/* 02 */ uint16 source;
|
||||
/* 04 */ uint8 type; //slashing, etc. 231 (0xE7) for spells
|
||||
/* 05 */ uint16 spellid;
|
||||
/* 05 */ int16 spellid;
|
||||
/* 07 */ int32 damage;
|
||||
/* 11 */ float force; // cd cc cc 3d
|
||||
/* 15 */ float hit_heading; // see above notes in Action_Struct
|
||||
@@ -1301,7 +1301,7 @@ struct Death_Struct
|
||||
/*004*/ uint32 killer_id;
|
||||
/*008*/ uint32 corpseid; // was corpseid
|
||||
/*012*/ uint32 attack_skill; // was type
|
||||
/*016*/ uint32 spell_id;
|
||||
/*016*/ int32 spell_id;
|
||||
/*020*/ uint32 bindzoneid; //bindzoneid?
|
||||
/*024*/ uint32 damage;
|
||||
/*028*/ uint32 unknown028;
|
||||
@@ -2504,7 +2504,7 @@ struct Resurrect_Struct {
|
||||
char your_name[64];
|
||||
uint32 unknown88;
|
||||
char rezzer_name[64];
|
||||
uint32 spellid;
|
||||
int32 spellid;
|
||||
char corpse_name[64];
|
||||
uint32 action;
|
||||
/* 228 */
|
||||
@@ -3711,7 +3711,7 @@ struct SendAA_Struct {
|
||||
/*0037*/ uint32 prereq_skill; //is < 0, abs() is category #
|
||||
/*0041*/ uint32 prereq_minpoints; //min points in the prereq
|
||||
/*0045*/ uint32 type;
|
||||
/*0049*/ uint32 spellid;
|
||||
/*0049*/ int32 spellid;
|
||||
/*0053*/ uint32 spell_type;
|
||||
/*0057*/ uint32 spell_refresh;
|
||||
/*0061*/ uint32 classes;
|
||||
|
||||
@@ -406,7 +406,7 @@ struct NewZone_Struct {
|
||||
*/
|
||||
struct MemorizeSpell_Struct {
|
||||
uint32 slot; // Spot in the spell book/memorized slot
|
||||
uint32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
int32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
uint32 scribing; // 1 if memorizing a spell, set to 0 if scribing to book, 2 if un-memming
|
||||
uint32 reduction; // lowers reuse
|
||||
};
|
||||
@@ -442,7 +442,7 @@ struct ManaChange_Struct
|
||||
{
|
||||
/*00*/ uint32 new_mana; // New Mana AMount
|
||||
/*04*/ uint32 stamina;
|
||||
/*08*/ uint32 spell_id;
|
||||
/*08*/ int32 spell_id;
|
||||
/*12*/ uint8 keepcasting; // won't stop the cast. Change mana while casting?
|
||||
/*13*/ uint8 padding[3]; // client doesn't read it, garbage data seems like
|
||||
};
|
||||
@@ -459,14 +459,14 @@ struct BeginCast_Struct
|
||||
{
|
||||
// len = 8
|
||||
/*000*/ uint16 caster_id;
|
||||
/*002*/ uint16 spell_id;
|
||||
/*002*/ int16 spell_id;
|
||||
/*004*/ uint32 cast_time; // in miliseconds
|
||||
};
|
||||
|
||||
struct CastSpell_Struct
|
||||
{
|
||||
uint32 slot;
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
uint32 inventoryslot; // slot for clicky item, 0xFFFF = normal cast
|
||||
uint32 target_id;
|
||||
uint8 cs_unknown[4];
|
||||
@@ -495,7 +495,7 @@ struct SpellBuff_Struct
|
||||
/*001*/ uint8 level;
|
||||
/*002*/ uint8 bard_modifier;
|
||||
/*003*/ uint8 unknown003; // MQ2 used to call this "damage shield" -- don't see client referencing it, so maybe server side DS type tracking?
|
||||
/*004*/ uint32 spellid;
|
||||
/*004*/ int32 spellid;
|
||||
/*008*/ int32 duration;
|
||||
/*012*/ uint32 counters; // single book keeping value (counters, rune/vie)
|
||||
/*016*/ uint32 player_id; // caster ID, pretty sure just zone ID
|
||||
@@ -1142,7 +1142,7 @@ struct CombatDamage_Struct
|
||||
/* 00 */ uint16 target;
|
||||
/* 02 */ uint16 source;
|
||||
/* 04 */ uint8 type; //slashing, etc. 231 (0xE7) for spells, skill
|
||||
/* 05 */ uint16 spellid;
|
||||
/* 05 */ int16 spellid;
|
||||
/* 07 */ uint32 damage;
|
||||
/* 11 */ float force;
|
||||
/* 15 */ float hit_heading; // see above notes in Action_Struct
|
||||
@@ -1177,7 +1177,7 @@ struct Death_Struct
|
||||
/*004*/ uint32 killer_id;
|
||||
/*008*/ uint32 corpseid; // was corpseid
|
||||
/*012*/ uint32 attack_skill; // was type
|
||||
/*016*/ uint32 spell_id;
|
||||
/*016*/ int32 spell_id;
|
||||
/*020*/ uint32 bindzoneid; //bindzoneid?
|
||||
/*024*/ uint32 damage;
|
||||
/*028*/ uint32 unknown028;
|
||||
@@ -2233,7 +2233,7 @@ struct Resurrect_Struct {
|
||||
char your_name[64];
|
||||
uint32 unknown88;
|
||||
char rezzer_name[64];
|
||||
uint32 spellid;
|
||||
int32 spellid;
|
||||
char corpse_name[64];
|
||||
uint32 action;
|
||||
/* 228 */
|
||||
@@ -3247,7 +3247,7 @@ struct SendAA_Struct {
|
||||
/*0040*/ uint32 prereq_skill; //is < 0, abs() is category #
|
||||
/*0044*/ uint32 prereq_minpoints; //min points in the prereq
|
||||
/*0048*/ uint32 type;
|
||||
/*0052*/ uint32 spellid;
|
||||
/*0052*/ int32 spellid;
|
||||
/*0056*/ uint32 spell_type;
|
||||
/*0060*/ uint32 spell_refresh;
|
||||
/*0064*/ uint32 classes;
|
||||
|
||||
@@ -627,7 +627,7 @@ namespace TOB {
|
||||
/*004*/ uint32 killer_id;
|
||||
/*008*/ uint32 corpseid; //not read by client
|
||||
/*012*/ uint32 unknown1; //not read by client
|
||||
/*016*/ uint32 spell_id;
|
||||
/*016*/ int32 spell_id;
|
||||
/*020*/ uint32 attack_skill;
|
||||
/*024*/ uint64 damage;
|
||||
/*032*/ uint32 unknown2; //not read by client
|
||||
@@ -672,7 +672,7 @@ namespace TOB {
|
||||
|
||||
struct BeginCast_Struct
|
||||
{
|
||||
/*000*/ uint32 spell_id;
|
||||
/*000*/ int32 spell_id;
|
||||
/*004*/ uint16 caster_id;
|
||||
/*006*/ uint32 cast_time; // in miliseconds
|
||||
/*010*/ uint32 unknown0a; // I think this is caster effective level but im not sure. live always sends 0. The client uses this for the spell link
|
||||
@@ -682,7 +682,7 @@ namespace TOB {
|
||||
|
||||
struct MemorizeSpell_Struct {
|
||||
uint32 slot; // Spot in the spell book/memorized slot
|
||||
uint32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
int32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
uint32 scribing; // -1 refreshes book, 0 scribe to book, 2 end mem, 1 start mem, 3 unmem, 4 set activated item keyring -- client will send back 2 if a 0 operation updated a memorized spell of the same group + subgroup
|
||||
uint32 reduction; // lower reuse (only used if scribing is 4)
|
||||
};
|
||||
@@ -702,7 +702,7 @@ namespace TOB {
|
||||
struct CastSpell_Struct
|
||||
{
|
||||
/*00*/ uint32 slot;
|
||||
/*04*/ uint32 spell_id;
|
||||
/*04*/ int32 spell_id;
|
||||
/*08*/ CastSpellInventorySlot_Struct inventory_slot;
|
||||
/*18*/ uint32 target_id;
|
||||
/*22*/ uint32 spell_crc;
|
||||
@@ -732,7 +732,7 @@ namespace TOB {
|
||||
/*000*/ EQAffectSlot_Struct slots[6];
|
||||
/*096*/ EqGuid caster_id;
|
||||
/*104*/ uint32 flags;
|
||||
/*108*/ uint32 spell_id;
|
||||
/*108*/ int32 spell_id;
|
||||
/*112*/ uint32 duration;
|
||||
/*116*/ uint32 initial_duration;
|
||||
/*120*/ uint32 hit_count;
|
||||
@@ -762,7 +762,7 @@ namespace TOB {
|
||||
{
|
||||
uint32 new_mana;
|
||||
uint32 stamina; // endurance
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
uint32 keepcasting;
|
||||
int32 slot; // gem slot
|
||||
};
|
||||
@@ -775,7 +775,7 @@ namespace TOB {
|
||||
{
|
||||
uint16 target;
|
||||
uint16 source;
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
//4 leaves a buff
|
||||
uint32 effect_type;
|
||||
uint32 effective_casting_level;
|
||||
|
||||
@@ -473,7 +473,7 @@ namespace UF
|
||||
for (int i = 0; i < emu->count; ++i)
|
||||
{
|
||||
__packet->WriteUInt32(emu->type == 0 ? ServerToUFBuffSlot(emu->entries[i].buff_slot) : emu->entries[i].buff_slot);
|
||||
__packet->WriteUInt32(emu->entries[i].spell_id);
|
||||
__packet->WriteSInt32 (emu->entries[i].spell_id);
|
||||
__packet->WriteUInt32(emu->entries[i].tics_remaining);
|
||||
__packet->WriteUInt32(emu->entries[i].num_hits);
|
||||
__packet->WriteString(emu->entries[i].caster);
|
||||
|
||||
+11
-11
@@ -480,7 +480,7 @@ struct NewZone_Struct {
|
||||
*/
|
||||
struct MemorizeSpell_Struct {
|
||||
uint32 slot; // Spot in the spell book/memorized slot
|
||||
uint32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
int32 spell_id; // Spell id (200 or c8 is minor healing, etc)
|
||||
uint32 scribing; // 1 if memorizing a spell, set to 0 if scribing to book, 2 if un-memming
|
||||
uint32 reduction; // lowers reuse
|
||||
};
|
||||
@@ -517,7 +517,7 @@ struct ManaChange_Struct
|
||||
{
|
||||
/*00*/ uint32 new_mana; // New Mana AMount
|
||||
/*04*/ uint32 stamina;
|
||||
/*08*/ uint32 spell_id;
|
||||
/*08*/ int32 spell_id;
|
||||
/*12*/ uint8 keepcasting; // won't stop the cast. Change mana while casting?
|
||||
/*13*/ uint8 padding[3]; // client doesn't read it, garbage data seems like
|
||||
/*16*/ int32 slot; // -1 for normal usage slot for when we want silent interrupt? I think it does timer stuff or something. Linked Spell Reuse interrupt uses it
|
||||
@@ -535,14 +535,14 @@ struct BeginCast_Struct
|
||||
{
|
||||
// len = 8
|
||||
/*004*/ uint16 caster_id;
|
||||
/*006*/ uint16 spell_id;
|
||||
/*006*/ int16 spell_id;
|
||||
/*016*/ uint32 cast_time; // in miliseconds
|
||||
};
|
||||
|
||||
struct CastSpell_Struct
|
||||
{
|
||||
uint32 slot;
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
uint32 inventoryslot; // slot for clicky item, 0xFFFF = normal cast
|
||||
uint32 target_id;
|
||||
uint32 cs_unknown1;
|
||||
@@ -575,7 +575,7 @@ struct SpellBuff_Struct
|
||||
/*002*/ uint8 unknown002; //pretty sure padding now
|
||||
/*003*/ uint8 unknown003; // MQ2 used to call this "damage shield" -- don't see client referencing it, so maybe server side DS type tracking?
|
||||
/*004*/ float bard_modifier;
|
||||
/*008*/ uint32 spellid;
|
||||
/*008*/ int32 spellid;
|
||||
/*012*/ uint32 duration;
|
||||
/*016*/ uint32 num_hits;
|
||||
/*020*/ uint32 player_id; // caster ID, pretty sure just zone ID
|
||||
@@ -595,7 +595,7 @@ struct SpellBuffPacket_Struct {
|
||||
#if 0
|
||||
struct BuffIconEntry_Struct {
|
||||
/*000*/ uint32 buff_slot;
|
||||
/*004*/ uint32 spell_id;
|
||||
/*004*/ int32 spell_id;
|
||||
/*008*/ uint32 tics_remaining;
|
||||
/*012*/ uint32 num_hits;
|
||||
// char name[0]; caster name is also here sometimes
|
||||
@@ -1306,7 +1306,7 @@ struct CombatDamage_Struct
|
||||
/* 00 */ uint16 target;
|
||||
/* 02 */ uint16 source;
|
||||
/* 04 */ uint8 type; //slashing, etc. 231 (0xE7) for spells
|
||||
/* 05 */ uint16 spellid;
|
||||
/* 05 */ int16 spellid;
|
||||
/* 07 */ int32 damage;
|
||||
/* 11 */ float force; // cd cc cc 3d
|
||||
/* 15 */ float hit_heading; // see above notes in Action_Struct
|
||||
@@ -1342,7 +1342,7 @@ struct Death_Struct
|
||||
/*004*/ uint32 killer_id;
|
||||
/*008*/ uint32 corpseid; // was corpseid
|
||||
/*012*/ uint32 attack_skill; // was type
|
||||
/*016*/ uint32 spell_id;
|
||||
/*016*/ int32 spell_id;
|
||||
/*020*/ uint32 bindzoneid; //bindzoneid?
|
||||
/*024*/ uint32 damage;
|
||||
/*028*/ uint32 unknown028;
|
||||
@@ -2194,7 +2194,7 @@ struct GroupFollow_Struct { // Underfoot Follow Struct
|
||||
};
|
||||
|
||||
struct InspectBuffs_Struct {
|
||||
/*000*/ uint32 spell_id[BUFF_COUNT];
|
||||
/*000*/ int32 spell_id[BUFF_COUNT];
|
||||
/*120*/ int32 tics_remaining[BUFF_COUNT];
|
||||
};
|
||||
|
||||
@@ -2610,7 +2610,7 @@ struct Resurrect_Struct {
|
||||
char your_name[64];
|
||||
uint32 unknown88;
|
||||
char rezzer_name[64];
|
||||
uint32 spellid;
|
||||
int32 spellid;
|
||||
char corpse_name[64];
|
||||
uint32 action;
|
||||
/* 228 */
|
||||
@@ -3896,7 +3896,7 @@ struct SendAA_Struct {
|
||||
/*0037*/ uint32 prereq_skill; //is < 0, abs() is category #
|
||||
/*0041*/ uint32 prereq_minpoints; //min points in the prereq
|
||||
/*0045*/ uint32 type;
|
||||
/*0049*/ uint32 spellid;
|
||||
/*0049*/ int32 spellid;
|
||||
/*0053*/ uint32 spell_type;
|
||||
/*0057*/ uint32 spell_refresh;
|
||||
/*0061*/ uint32 classes;
|
||||
|
||||
@@ -37,7 +37,7 @@ class BaseBlockedSpellsRepository {
|
||||
public:
|
||||
struct BlockedSpells {
|
||||
int32_t id;
|
||||
uint32_t spellid;
|
||||
int32_t spellid;
|
||||
int8_t type;
|
||||
int32_t zoneid;
|
||||
float x;
|
||||
|
||||
@@ -37,7 +37,7 @@ class BaseBotBlockedBuffsRepository {
|
||||
public:
|
||||
struct BotBlockedBuffs {
|
||||
uint32_t bot_id;
|
||||
uint32_t spell_id;
|
||||
int32_t spell_id;
|
||||
uint8_t blocked;
|
||||
uint8_t blocked_pet;
|
||||
};
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
struct BotBuffs {
|
||||
uint32_t buffs_index;
|
||||
uint32_t bot_id;
|
||||
uint32_t spell_id;
|
||||
int32_t spell_id;
|
||||
uint8_t caster_level;
|
||||
uint32_t duration_formula;
|
||||
uint32_t tics_remaining;
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
struct BotPetBuffs {
|
||||
uint32_t pet_buffs_index;
|
||||
uint32_t pets_index;
|
||||
uint32_t spell_id;
|
||||
int32_t spell_id;
|
||||
uint32_t caster_level;
|
||||
uint32_t duration;
|
||||
};
|
||||
|
||||
@@ -37,7 +37,7 @@ class BaseBotPetsRepository {
|
||||
public:
|
||||
struct BotPets {
|
||||
uint32_t pets_index;
|
||||
uint32_t spell_id;
|
||||
int32_t spell_id;
|
||||
uint32_t bot_id;
|
||||
std::string name;
|
||||
int32_t mana;
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
struct BotSpellSettings {
|
||||
uint32_t id;
|
||||
int32_t bot_id;
|
||||
int16_t spell_id;
|
||||
int32_t spell_id;
|
||||
int16_t priority;
|
||||
int16_t min_hp;
|
||||
int16_t max_hp;
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
struct BotSpellsEntries {
|
||||
uint32_t id;
|
||||
int32_t npc_spells_id;
|
||||
uint16_t spell_id;
|
||||
int32_t spell_id;
|
||||
uint32_t type;
|
||||
uint8_t minlevel;
|
||||
uint8_t maxlevel;
|
||||
|
||||
@@ -42,7 +42,7 @@ public:
|
||||
uint32_t recast_time;
|
||||
uint8_t is_spell;
|
||||
uint8_t is_disc;
|
||||
uint32_t spell_id;
|
||||
int32_t spell_id;
|
||||
uint8_t is_item;
|
||||
uint32_t item_id;
|
||||
};
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
struct CharacterBuffs {
|
||||
uint32_t character_id;
|
||||
uint8_t slot_id;
|
||||
uint16_t spell_id;
|
||||
int32_t spell_id;
|
||||
uint8_t caster_level;
|
||||
std::string caster_name;
|
||||
int32_t ticsremaining;
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
struct CharacterMemmedSpells {
|
||||
uint32_t id;
|
||||
uint16_t slot_id;
|
||||
uint16_t spell_id;
|
||||
int32_t spell_id;
|
||||
};
|
||||
|
||||
static std::string PrimaryKey()
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
struct CharacterSpells {
|
||||
uint32_t id;
|
||||
uint16_t slot_id;
|
||||
uint16_t spell_id;
|
||||
int32_t spell_id;
|
||||
};
|
||||
|
||||
static std::string PrimaryKey()
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
class BaseDamageshieldtypesRepository {
|
||||
public:
|
||||
struct Damageshieldtypes {
|
||||
uint32_t spellid;
|
||||
int32_t spellid;
|
||||
uint8_t type;
|
||||
};
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
struct LdonTrapTemplates {
|
||||
uint32_t id;
|
||||
uint8_t type;
|
||||
uint16_t spell_id;
|
||||
int32_t spell_id;
|
||||
uint16_t skill;
|
||||
uint8_t locked;
|
||||
};
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
struct MercBuffs {
|
||||
uint32_t MercBuffId;
|
||||
uint32_t MercId;
|
||||
uint32_t SpellId;
|
||||
int32_t SpellId;
|
||||
uint32_t CasterLevel;
|
||||
uint32_t DurationFormula;
|
||||
int32_t TicsRemaining;
|
||||
|
||||
@@ -39,7 +39,7 @@ public:
|
||||
struct MercSpellListEntries {
|
||||
uint32_t merc_spell_list_entry_id;
|
||||
uint32_t merc_spell_list_id;
|
||||
uint32_t spell_id;
|
||||
int32_t spell_id;
|
||||
uint32_t spell_type;
|
||||
uint8_t stance_id;
|
||||
uint8_t minlevel;
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
struct NpcSpellsEntries {
|
||||
uint32_t id;
|
||||
int32_t npc_spells_id;
|
||||
uint16_t spellid;
|
||||
int32_t spellid;
|
||||
uint32_t type;
|
||||
uint8_t minlevel;
|
||||
uint8_t maxlevel;
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
class BaseSpellBucketsRepository {
|
||||
public:
|
||||
struct SpellBuckets {
|
||||
uint32_t spell_id;
|
||||
int32_t spell_id;
|
||||
std::string bucket_name;
|
||||
std::string bucket_value;
|
||||
uint8_t bucket_comparison;
|
||||
|
||||
+2
-2
@@ -1425,7 +1425,7 @@ struct CZSpell_Struct {
|
||||
uint8 update_type; // 0 - Character, 1 - Group, 2 - Raid, 3 - Guild, 4 - Expedition, 5 - Character Name
|
||||
uint8 update_subtype; // 0 - Cast Spell, 1 - Remove Spell
|
||||
int update_identifier; // Character ID, Group ID, Raid ID, Guild ID, or Expedition ID based on update type, 0 for Character Name
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
char client_name[64]; // Only used by Character Name Type, else empty
|
||||
};
|
||||
|
||||
@@ -1498,7 +1498,7 @@ struct WWSignal_Struct {
|
||||
|
||||
struct WWSpell_Struct {
|
||||
uint8 update_type; // 0 - Cast Spell, 1 - Remove Spell
|
||||
uint32 spell_id;
|
||||
int32 spell_id;
|
||||
uint8 min_status;
|
||||
uint8 max_status;
|
||||
};
|
||||
|
||||
+148
-148
File diff suppressed because it is too large
Load Diff
+152
-153
@@ -21,9 +21,8 @@
|
||||
#include "common/item_data.h"
|
||||
#include "common/skills.h"
|
||||
|
||||
#define SPELL_UNKNOWN 0xFFFF
|
||||
#define POISON_PROC 0xFFFE
|
||||
#define SPELLBOOK_UNKNOWN 0xFFFFFFFF //player profile spells are 32 bit
|
||||
#define SPELL_UNKNOWN -1
|
||||
#define POISON_PROC -2
|
||||
|
||||
//some spell IDs which will prolly change, but are needed
|
||||
#define SPELL_COMPLETE_HEAL 13
|
||||
@@ -914,10 +913,10 @@ bool BotSpellTypeRequiresTarget(uint16 spell_type);
|
||||
bool BotSpellTypeRequiresAEChecks(uint16 spell_type);
|
||||
bool IsCommandedBotSpellType(uint16 spell_type);
|
||||
bool IsPullingBotSpellType(uint16 spell_type);
|
||||
uint16 GetCorrectBotSpellType(uint16 spell_type, uint16 spell_id);
|
||||
uint16 GetCorrectBotSpellType(uint16 spell_type, int32 spell_id);
|
||||
uint16 GetPetBotSpellType(uint16 spell_type);
|
||||
bool IsBotBuffSpellType(uint16 spell_type);
|
||||
bool BotRequiresLoSToCast(uint16 spell_type, uint16 spell_id);
|
||||
bool BotRequiresLoSToCast(uint16 spell_type, int32 spell_id);
|
||||
|
||||
// These should not be used to determine spell category..
|
||||
// They are a graphical affects (effects?) index only
|
||||
@@ -1762,157 +1761,157 @@ struct SPDat_Spell_Struct
|
||||
extern const SPDat_Spell_Struct* spells;
|
||||
extern int32 SPDAT_RECORDS;
|
||||
|
||||
bool IsTargetableAESpell(uint16 spell_id);
|
||||
bool IsSacrificeSpell(uint16 spell_id);
|
||||
bool IsLifetapSpell(uint16 spell_id);
|
||||
bool IsMesmerizeSpell(uint16 spell_id);
|
||||
bool SpellBreaksMez(uint16 spell_id);
|
||||
bool IsStunSpell(uint16 spell_id);
|
||||
bool IsSlowSpell(uint16 spell_id);
|
||||
bool IsHasteSpell(uint16 spell_id);
|
||||
bool IsHarmonySpell(uint16 spell_id);
|
||||
bool IsPercentalHealSpell(uint16 spell_id);
|
||||
bool IsGroupOnlySpell(uint16 spell_id);
|
||||
bool IsBeneficialSpell(uint16 spell_id);
|
||||
bool IsDetrimentalSpell(uint16 spell_id);
|
||||
bool IsInvisibleSpell(uint16 spell_id);
|
||||
bool IsInvulnerabilitySpell(uint16 spell_id);
|
||||
bool IsCompleteHealDurationSpell(uint16 spell_id);
|
||||
bool IsPoisonCounterSpell(uint16 spell_id);
|
||||
bool IsDiseaseCounterSpell(uint16 spell_id);
|
||||
bool IsSummonItemSpell(uint16 spell_id);
|
||||
bool IsSummonSkeletonSpell(uint16 spell_id);
|
||||
bool IsSummonPetSpell(uint16 spell_id);
|
||||
bool IsSummonPCSpell(uint16 spell_id);
|
||||
bool IsPetSpell(uint16 spell_id);
|
||||
bool IsCharmSpell(uint16 spell_id);
|
||||
bool IsResurrectionSicknessSpell(uint16 spell_id);
|
||||
bool IsBlindSpell(uint16 spell_id);
|
||||
bool IsHealthSpell(uint16 spell_id);
|
||||
bool IsCastTimeReductionSpell(uint16 spell_id);
|
||||
bool IsIncreaseDurationSpell(uint16 spell_id);
|
||||
bool IsManaCostReductionSpell(uint16 spell_id);
|
||||
bool IsIncreaseRangeSpell(uint16 spell_id);
|
||||
bool IsImprovedHealingSpell(uint16 spell_id);
|
||||
bool IsImprovedDamageSpell(uint16 spell_id);
|
||||
bool IsAEDurationSpell(uint16 spell_id);
|
||||
bool IsPureNukeSpell(uint16 spell_id);
|
||||
bool IsAENukeSpell(uint16 spell_id);
|
||||
bool IsPBAENukeSpell(uint16 spell_id);
|
||||
bool IsAERainNukeSpell(uint16 spell_id);
|
||||
bool IsAnyNukeOrStunSpell(uint16 spell_id);
|
||||
bool IsAnyAESpell(uint16 spell_id);
|
||||
bool IsAESpell(uint16 spell_id);
|
||||
bool IsPBAESpell(uint16 spell_id);
|
||||
bool IsAERainSpell(uint16 spell_id);
|
||||
bool IsPartialResistableSpell(uint16 spell_id);
|
||||
bool IsResistableSpell(uint16 spell_id);
|
||||
bool IsGroupSpell(uint16 spell_id);
|
||||
bool IsTGBCompatibleSpell(uint16 spell_id);
|
||||
bool IsBardSong(uint16 spell_id);
|
||||
bool IsEffectInSpell(uint16 spell_id, int effect_id);
|
||||
uint16 GetSpellTriggerSpellID(uint16 spell_id, int effect_id);
|
||||
bool IsBlankSpellEffect(uint16 spell_id, int effect_index);
|
||||
bool IsValidSpell(uint32 spell_id);
|
||||
bool IsSummonSpell(uint16 spell_id);
|
||||
bool IsDamageSpell(uint16 spell_id);
|
||||
bool IsAnyDamageSpell(uint16 spell_id);
|
||||
bool IsDamageOverTimeSpell(uint16 spell_i);
|
||||
bool IsFearSpell(uint16 spell_id);
|
||||
bool IsCureSpell(uint16 spell_id);
|
||||
bool IsHarmTouchSpell(uint16 spell_id);
|
||||
int GetSpellEffectIndex(uint16 spell_id, int effect_id);
|
||||
uint8 GetSpellMinimumLevel(uint16 spell_id);
|
||||
uint8 GetSpellLevel(uint16 spell_id, uint8 class_id);
|
||||
bool IsTargetableAESpell(int32 spell_id);
|
||||
bool IsSacrificeSpell(int32 spell_id);
|
||||
bool IsLifetapSpell(int32 spell_id);
|
||||
bool IsMesmerizeSpell(int32 spell_id);
|
||||
bool SpellBreaksMez(int32 spell_id);
|
||||
bool IsStunSpell(int32 spell_id);
|
||||
bool IsSlowSpell(int32 spell_id);
|
||||
bool IsHasteSpell(int32 spell_id);
|
||||
bool IsHarmonySpell(int32 spell_id);
|
||||
bool IsPercentalHealSpell(int32 spell_id);
|
||||
bool IsGroupOnlySpell(int32 spell_id);
|
||||
bool IsBeneficialSpell(int32 spell_id);
|
||||
bool IsDetrimentalSpell(int32 spell_id);
|
||||
bool IsInvisibleSpell(int32 spell_id);
|
||||
bool IsInvulnerabilitySpell(int32 spell_id);
|
||||
bool IsCompleteHealDurationSpell(int32 spell_id);
|
||||
bool IsPoisonCounterSpell(int32 spell_id);
|
||||
bool IsDiseaseCounterSpell(int32 spell_id);
|
||||
bool IsSummonItemSpell(int32 spell_id);
|
||||
bool IsSummonSkeletonSpell(int32 spell_id);
|
||||
bool IsSummonPetSpell(int32 spell_id);
|
||||
bool IsSummonPCSpell(int32 spell_id);
|
||||
bool IsPetSpell(int32 spell_id);
|
||||
bool IsCharmSpell(int32 spell_id);
|
||||
bool IsResurrectionSicknessSpell(int32 spell_id);
|
||||
bool IsBlindSpell(int32 spell_id);
|
||||
bool IsHealthSpell(int32 spell_id);
|
||||
bool IsCastTimeReductionSpell(int32 spell_id);
|
||||
bool IsIncreaseDurationSpell(int32 spell_id);
|
||||
bool IsManaCostReductionSpell(int32 spell_id);
|
||||
bool IsIncreaseRangeSpell(int32 spell_id);
|
||||
bool IsImprovedHealingSpell(int32 spell_id);
|
||||
bool IsImprovedDamageSpell(int32 spell_id);
|
||||
bool IsAEDurationSpell(int32 spell_id);
|
||||
bool IsPureNukeSpell(int32 spell_id);
|
||||
bool IsAENukeSpell(int32 spell_id);
|
||||
bool IsPBAENukeSpell(int32 spell_id);
|
||||
bool IsAERainNukeSpell(int32 spell_id);
|
||||
bool IsAnyNukeOrStunSpell(int32 spell_id);
|
||||
bool IsAnyAESpell(int32 spell_id);
|
||||
bool IsAESpell(int32 spell_id);
|
||||
bool IsPBAESpell(int32 spell_id);
|
||||
bool IsAERainSpell(int32 spell_id);
|
||||
bool IsPartialResistableSpell(int32 spell_id);
|
||||
bool IsResistableSpell(int32 spell_id);
|
||||
bool IsGroupSpell(int32 spell_id);
|
||||
bool IsTGBCompatibleSpell(int32 spell_id);
|
||||
bool IsBardSong(int32 spell_id);
|
||||
bool IsEffectInSpell(int32 spell_id, int effect_id);
|
||||
int32 GetSpellTriggerSpellID(int32 spell_id, int effect_id);
|
||||
bool IsBlankSpellEffect(int32 spell_id, int effect_index);
|
||||
bool IsValidSpell(int32 spell_id);
|
||||
bool IsSummonSpell(int32 spell_id);
|
||||
bool IsDamageSpell(int32 spell_id);
|
||||
bool IsAnyDamageSpell(int32 spell_id);
|
||||
bool IsDamageOverTimeSpell(int32 spell_id);
|
||||
bool IsFearSpell(int32 spell_id);
|
||||
bool IsCureSpell(int32 spell_id);
|
||||
bool IsHarmTouchSpell(int32 spell_id);
|
||||
int GetSpellEffectIndex(int32 spell_id, int effect_id);
|
||||
uint8 GetSpellMinimumLevel(int32 spell_id);
|
||||
uint8 GetSpellLevel(int32 spell_id, uint8 class_id);
|
||||
int CalcBuffDuration_formula(int level, int formula, int duration);
|
||||
int32 CalculatePoisonCounters(uint16 spell_id);
|
||||
int32 CalculateDiseaseCounters(uint16 spell_id);
|
||||
int32 CalculateCurseCounters(uint16 spell_id);
|
||||
int32 CalculateCorruptionCounters(uint16 spell_id);
|
||||
int32 CalculateCounters(uint16 spell_id);
|
||||
bool IsDisciplineBuff(uint16 spell_id);
|
||||
bool IsDiscipline(uint16 spell_id);
|
||||
bool IsCombatSkill(uint16 spell_id);
|
||||
bool IsResurrectionEffects(uint16 spell_id);
|
||||
int8 GetSpellResurrectionSicknessCheck(uint16 spell_id_one, uint16 spell_id_two);
|
||||
bool IsRuneSpell(uint16 spell_id);
|
||||
bool IsMagicRuneSpell(uint16 spell_id);
|
||||
bool IsManaTapSpell(uint16 spell_id);
|
||||
bool IsAllianceSpell(uint16 spell_id);
|
||||
bool IsDeathSaveSpell(uint16 spell_id);
|
||||
bool IsFullDeathSaveSpell(uint16 spell_id);
|
||||
bool IsPartialDeathSaveSpell(uint16 spell_id);
|
||||
bool IsShadowStepSpell(uint16 spell_id);
|
||||
bool IsSuccorSpell(uint16 spell_id);
|
||||
bool IsTeleportSpell(uint16 spell_id);
|
||||
bool IsTranslocateSpell(uint16 spell_id);
|
||||
bool IsGateSpell(uint16 spell_id);
|
||||
bool IsIllusionSpell(uint16 spell_id);
|
||||
bool IsLDoNObjectSpell(uint16 spell_id);
|
||||
int GetSpellResistType(uint16 spell_id);
|
||||
int GetSpellTargetType(uint16 spell_id);
|
||||
bool IsHealOverTimeSpell(uint16 spell_id);
|
||||
bool IsCompleteHealSpell(uint16 spell_id);
|
||||
bool IsFastHealSpell(uint16 spell_id);
|
||||
bool IsVeryFastHealSpell(uint16 spell_id);
|
||||
bool IsRegularSingleTargetHealSpell(uint16 spell_id);
|
||||
bool IsRegularPetHealSpell(uint16 spell_id);
|
||||
bool IsRegularGroupHealSpell(uint16 spell_id);
|
||||
bool IsGroupCompleteHealSpell(uint16 spell_id);
|
||||
bool IsGroupHealOverTimeSpell(uint16 spell_id);
|
||||
bool IsAnyHealSpell(uint16 spell_id);
|
||||
bool IsAnyBuffSpell(uint16 spell_id);
|
||||
bool IsDispelSpell(uint16 spell_id);
|
||||
bool IsEscapeSpell(uint16 spell_id);
|
||||
bool IsDebuffSpell(uint16 spell_id);
|
||||
bool IsHateReduxSpell(uint16 spell_id);
|
||||
bool IsResistDebuffSpell(uint16 spell_id);
|
||||
bool IsSelfConversionSpell(uint16 spell_id);
|
||||
bool IsBuffSpell(uint16 spell_id);
|
||||
bool IsPersistDeathSpell(uint16 spell_id);
|
||||
bool IsSuspendableSpell(uint16 spell_id);
|
||||
bool IsCastOnFadeDurationSpell(uint16 spell_id);
|
||||
bool IsDistanceModifierSpell(uint16 spell_id);
|
||||
int GetSpellPartialMeleeRuneReduction(uint16 spell_id);
|
||||
int GetSpellPartialMagicRuneReduction(uint16 spell_id);
|
||||
int GetSpellPartialMeleeRuneAmount(uint16 spell_id);
|
||||
int GetSpellPartialMagicRuneAmount(uint16 spell_id);
|
||||
bool IsNoDetrimentalSpellAggroSpell(uint16 spell_id);
|
||||
bool IsStackableDOT(uint16 spell_id);
|
||||
int32 CalculatePoisonCounters(int32 spell_id);
|
||||
int32 CalculateDiseaseCounters(int32 spell_id);
|
||||
int32 CalculateCurseCounters(int32 spell_id);
|
||||
int32 CalculateCorruptionCounters(int32 spell_id);
|
||||
int32 CalculateCounters(int32 spell_id);
|
||||
bool IsDisciplineBuff(int32 spell_id);
|
||||
bool IsDiscipline(int32 spell_id);
|
||||
bool IsCombatSkill(int32 spell_id);
|
||||
bool IsResurrectionEffects(int32 spell_id);
|
||||
int8 GetSpellResurrectionSicknessCheck(int32 spell_id_one, int32 spell_id_two);
|
||||
bool IsRuneSpell(int32 spell_id);
|
||||
bool IsMagicRuneSpell(int32 spell_id);
|
||||
bool IsManaTapSpell(int32 spell_id);
|
||||
bool IsAllianceSpell(int32 spell_id);
|
||||
bool IsDeathSaveSpell(int32 spell_id);
|
||||
bool IsFullDeathSaveSpell(int32 spell_id);
|
||||
bool IsPartialDeathSaveSpell(int32 spell_id);
|
||||
bool IsShadowStepSpell(int32 spell_id);
|
||||
bool IsSuccorSpell(int32 spell_id);
|
||||
bool IsTeleportSpell(int32 spell_id);
|
||||
bool IsTranslocateSpell(int32 spell_id);
|
||||
bool IsGateSpell(int32 spell_id);
|
||||
bool IsIllusionSpell(int32 spell_id);
|
||||
bool IsLDoNObjectSpell(int32 spell_id);
|
||||
int GetSpellResistType(int32 spell_id);
|
||||
int GetSpellTargetType(int32 spell_id);
|
||||
bool IsHealOverTimeSpell(int32 spell_id);
|
||||
bool IsCompleteHealSpell(int32 spell_id);
|
||||
bool IsFastHealSpell(int32 spell_id);
|
||||
bool IsVeryFastHealSpell(int32 spell_id);
|
||||
bool IsRegularSingleTargetHealSpell(int32 spell_id);
|
||||
bool IsRegularPetHealSpell(int32 spell_id);
|
||||
bool IsRegularGroupHealSpell(int32 spell_id);
|
||||
bool IsGroupCompleteHealSpell(int32 spell_id);
|
||||
bool IsGroupHealOverTimeSpell(int32 spell_id);
|
||||
bool IsAnyHealSpell(int32 spell_id);
|
||||
bool IsAnyBuffSpell(int32 spell_id);
|
||||
bool IsDispelSpell(int32 spell_id);
|
||||
bool IsEscapeSpell(int32 spell_id);
|
||||
bool IsDebuffSpell(int32 spell_id);
|
||||
bool IsHateReduxSpell(int32 spell_id);
|
||||
bool IsResistDebuffSpell(int32 spell_id);
|
||||
bool IsSelfConversionSpell(int32 spell_id);
|
||||
bool IsBuffSpell(int32 spell_id);
|
||||
bool IsPersistDeathSpell(int32 spell_id);
|
||||
bool IsSuspendableSpell(int32 spell_id);
|
||||
bool IsCastOnFadeDurationSpell(int32 spell_id);
|
||||
bool IsDistanceModifierSpell(int32 spell_id);
|
||||
int GetSpellPartialMeleeRuneReduction(int32 spell_id);
|
||||
int GetSpellPartialMagicRuneReduction(int32 spell_id);
|
||||
int GetSpellPartialMeleeRuneAmount(int32 spell_id);
|
||||
int GetSpellPartialMagicRuneAmount(int32 spell_id);
|
||||
bool IsNoDetrimentalSpellAggroSpell(int32 spell_id);
|
||||
bool IsStackableDOT(int32 spell_id);
|
||||
bool IsBardOnlyStackEffect(int effect_id);
|
||||
bool IsCastWhileInvisibleSpell(uint16 spell_id);
|
||||
bool IsCastWhileInvisibleSpell(int32 spell_id);
|
||||
bool IsEffectIgnoredInStacking(int effect_id);
|
||||
bool IsFocusLimit(int effect_id);
|
||||
bool IsTargetRequiredForSpell(uint16 spell_id);
|
||||
bool IsVirusSpell(uint16 spell_id);
|
||||
int GetSpellViralMinimumSpreadTime(uint16 spell_id);
|
||||
int GetSpellViralMaximumSpreadTime(uint16 spell_id);
|
||||
int GetSpellViralSpreadRange(uint16 spell_id);
|
||||
bool IsInstrumentModifierAppliedToSpellEffect(uint16 spell_id, int effect_id);
|
||||
bool IsPulsingBardSong(uint16 spell_id);
|
||||
int GetSpellProcLimitTimer(uint16 spell_id, int proc_type);
|
||||
bool IsCastNotStandingSpell(uint16 spell_id);
|
||||
int GetSpellEffectDescriptionNumber(uint16 spell_id);
|
||||
DmgShieldType GetDamageShieldType(uint16 spell_id, int damage_shield_type = 0);
|
||||
bool IsRestAllowedSpell(uint16 spell_id);
|
||||
int GetSpellNimbusEffect(uint16 spell_id);
|
||||
int GetSpellFuriousBash(uint16 spell_id);
|
||||
bool IsShortDurationBuff(uint16 spell_id);
|
||||
bool IsSpellUsableInThisZoneType(uint16 spell_id, uint8 zone_type);
|
||||
const char *GetSpellName(uint16 spell_id);
|
||||
int GetSpellStatValue(uint16 spell_id, const char* stat_identifier, uint8 slot = 0);
|
||||
bool IsCastRestrictedSpell(uint16 spell_id);
|
||||
bool IsAegolismSpell(uint16 spell_id);
|
||||
bool AegolismStackingIsSymbolSpell(uint16 spell_id);
|
||||
bool AegolismStackingIsArmorClassSpell(uint16 spell_id);
|
||||
int8 SpellEffectsCount(uint16 spell_id);
|
||||
bool IsLichSpell(uint16 spell_id);
|
||||
bool IsInstantHealSpell(uint32 spell_id);
|
||||
bool IsResurrectSpell(uint16 spell_id);
|
||||
bool IsTargetRequiredForSpell(int32 spell_id);
|
||||
bool IsVirusSpell(int32 spell_id);
|
||||
int GetSpellViralMinimumSpreadTime(int32 spell_id);
|
||||
int GetSpellViralMaximumSpreadTime(int32 spell_id);
|
||||
int GetSpellViralSpreadRange(int32 spell_id);
|
||||
bool IsInstrumentModifierAppliedToSpellEffect(int32 spell_id, int effect_id);
|
||||
bool IsPulsingBardSong(int32 spell_id);
|
||||
int GetSpellProcLimitTimer(int32 spell_id, int proc_type);
|
||||
bool IsCastNotStandingSpell(int32 spell_id);
|
||||
int GetSpellEffectDescriptionNumber(int32 spell_id);
|
||||
DmgShieldType GetDamageShieldType(int32 spell_id, int damage_shield_type = 0);
|
||||
bool IsRestAllowedSpell(int32 spell_id);
|
||||
int GetSpellNimbusEffect(int32 spell_id);
|
||||
int GetSpellFuriousBash(int32 spell_id);
|
||||
bool IsShortDurationBuff(int32 spell_id);
|
||||
bool IsSpellUsableInThisZoneType(int32 spell_id, uint8 zone_type);
|
||||
const char *GetSpellName(int32 spell_id);
|
||||
int GetSpellStatValue(int32 spell_id, const char* stat_identifier, uint8 slot = 0);
|
||||
bool IsCastRestrictedSpell(int32 spell_id);
|
||||
bool IsAegolismSpell(int32 spell_id);
|
||||
bool AegolismStackingIsSymbolSpell(int32 spell_id);
|
||||
bool AegolismStackingIsArmorClassSpell(int32 spell_id);
|
||||
int8 SpellEffectsCount(int32 spell_id);
|
||||
bool IsLichSpell(int32 spell_id);
|
||||
bool IsInstantHealSpell(int32 spell_id);
|
||||
bool IsResurrectSpell(int32 spell_id);
|
||||
bool RequiresStackCheck(uint16 spell_type);
|
||||
bool IsResistanceBuffSpell(uint16 spell_id);
|
||||
bool IsResistanceOnlySpell(uint16 spell_id);
|
||||
bool IsDamageShieldOnlySpell(uint16 spell_id);
|
||||
bool IsDamageShieldAndResistSpell(uint16 spell_id);
|
||||
bool IsHateSpell(uint16 spell_id);
|
||||
bool IsResistanceBuffSpell(int32 spell_id);
|
||||
bool IsResistanceOnlySpell(int32 spell_id);
|
||||
bool IsDamageShieldOnlySpell(int32 spell_id);
|
||||
bool IsDamageShieldAndResistSpell(int32 spell_id);
|
||||
bool IsHateSpell(int32 spell_id);
|
||||
bool IsDisciplineTome(const EQ::ItemData* item);
|
||||
|
||||
@@ -432,7 +432,7 @@ bool IsPullingBotSpellType(uint16 spell_type) {
|
||||
return false;
|
||||
}
|
||||
|
||||
uint16 GetCorrectBotSpellType(uint16 spell_type, uint16 spell_id) {
|
||||
uint16 GetCorrectBotSpellType(uint16 spell_type, int32 spell_id) {
|
||||
if (!IsValidSpell(spell_id)) {
|
||||
return UINT16_MAX;
|
||||
}
|
||||
@@ -504,7 +504,7 @@ bool IsBotBuffSpellType(uint16 spell_type) {
|
||||
return false;
|
||||
}
|
||||
|
||||
bool BotRequiresLoSToCast(uint16 spell_type, uint16 spell_id) {
|
||||
bool BotRequiresLoSToCast(uint16 spell_type, int32 spell_id) {
|
||||
if (!BotSpellTypeRequiresTarget(spell_type)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user