mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-15 00:01:28 +00:00
Use CastTime == 0 on clickies to prevent reagent consumption
This /may/ not be correct, but we think it is
This commit is contained in:
parent
53a289a6bc
commit
a7479a628c
@ -1151,7 +1151,13 @@ void Mob::CastedSpellFinished(uint16 spell_id, uint32 target_id, CastingSlot slo
|
|||||||
// first check for component reduction
|
// first check for component reduction
|
||||||
if(IsClient()) {
|
if(IsClient()) {
|
||||||
int reg_focus = CastToClient()->GetFocusEffect(focusReagentCost,spell_id);//Client only
|
int reg_focus = CastToClient()->GetFocusEffect(focusReagentCost,spell_id);//Client only
|
||||||
if(zone->random.Roll(reg_focus)) {
|
/* it seems something causes some items not to consume reagents, it's not click type or temp flag
|
||||||
|
* it maybe cast time being instant, which I had a hard time disproving, so lets do that
|
||||||
|
* Items that might prove this wrong: Mystic Cloak (1057), Moss Mask (1400), and a bunch others
|
||||||
|
*/
|
||||||
|
if (item && item->GetItem() && item->GetItem()->CastTime == 0) {
|
||||||
|
LogSpells("Spell [{}]: Casted from instant clicky, prevent reagent consumption", spell_id);
|
||||||
|
} else if(zone->random.Roll(reg_focus)) {
|
||||||
LogSpells("Spell [{}]: Reagent focus item prevented reagent consumption ([{}] chance)", spell_id, reg_focus);
|
LogSpells("Spell [{}]: Reagent focus item prevented reagent consumption ([{}] chance)", spell_id, reg_focus);
|
||||||
} else {
|
} else {
|
||||||
if(reg_focus > 0)
|
if(reg_focus > 0)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user