MediaWiki:ClassSpellGroupOverrides.js: Difference between revisions

From EQOA Sandstorm Wiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 1: Line 1:
window.EQOA_SPELL_GROUP_OVERRIDES = {
window.EQOA_SPELL_GROUP_OVERRIDES = {
  "Shining Bastion": {
    "Shining Bastion": {
    "spellGroup": "ClassPath",
        spellGroup: "ClassPath",
    "spellPath": "1"
        spellPath: "1"
  },
    },
{
    "Gleaming Bastion": {
  "Gleaming Bastion": {
        spellGroup: "ClassPath",
    "spellGroup": "ClassPath",
        spellPath: "1"
    "spellPath": "1"
    },
  },
    "Hallowed Bastion": {
{
        spellGroup: "ClassPath",
  "Hallowed Bastion": {
        spellPath: "1"
    "spellGroup": "ClassPath",
    },
    "spellPath": "1"
    "Sacred Bastion": {
  },
        spellGroup: "ClassPath",
{
        spellPath: "1"
  "Sacred Bastion": {
    },
    "spellGroup": "ClassPath",
    "Blessed Bastion": {
    "spellPath": "1"
        spellGroup: "ClassPath",
  },
        spellPath: "1"
{
    },
  "Blessed Bastion": {
    "Ozmo's Careful Teasing": {
    "spellGroup": "ClassPath",
        spellGroup: "ClassPath",
    "spellPath": "1"
        spellPath: "1"
  },
    },
{
    "Ozmo's Infuriating Jeer": {
  "Ozmo's Careful Teasing": {
        spellGroup: "ClassPath",
    "spellGroup": "ClassPath",
        spellPath: "1"
    "spellPath": "1"
     },
  },
  "Ozmo's Infuriating Jeer": {
    "spellGroup": "ClassPath",
    "spellPath": "1"
  },
  "Celestial Light": {
    "spellGroup": "ClassPath",
     "spellPath": "1"
  },


    "Clay Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Marble Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Granite Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Iron Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Steel Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Talimus's Adamantine Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Talimus's Diamond Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Celestial Light": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },


    "Alesthenies' Mercy": {
        spellGroup: "ExemplarPath",
        spellPath: "1"
    },


  "Clay Barrier": {
     "Zarakiel's Blessing": {
    "spellGroup": "ClassPath",
        spellGroup: "ExemplarPath",
    "spellPath": "2"
        spellPath: "2"
  },
    },
  "Marble Barrier": {
    "spellGroup": "ClassPath",
    "spellPath": "2"
  },
  "Granite Barrier": {
    "spellGroup": "ClassPath",
    "spellPath": "2"
  },
  "Iron Barrier": {
    "spellGroup": "ClassPath",
    "spellPath": "2"
  },
  "Steel Barrier": {
    "spellGroup": "ClassPath",
    "spellPath": "2"
  },
  "Talimus's Adamantine Barrier": {
    "spellGroup": "ClassPath",
    "spellPath": "2"
  },
  "Talimus's Diamond Barrier": {
    "spellGroup": "ClassPath",
     "spellPath": "2"
  },
  "Celestial Light": {
    "spellGroup": "ClassPath",
    "spellPath": "2"
  },
 
 
  "Alesthenies' Mercy": {
    "spellGroup": "ExemplarPath",
    "spellPath": "1"
  },
  "Zarakiel's Blessing": {
    "spellGroup": "ExemplarPath",
    "spellPath": "2"
  },
     "Zarakiel's Favor": {
     "Zarakiel's Favor": {
    "spellGroup": "ExemplarPath",
        spellGroup: "ExemplarPath",
    "spellPath": "2"
        spellPath: "2"
  },
    },
  "Zarakiel's Fervor": {
    "Zarakiel's Fervor": {
  "spellGroup": "ExemplarPath",
        spellGroup: "ExemplarPath",
  "spellPath": "2"
        spellPath: "2"
  },
    },
  "Zarakiel's Touch": {
    "Zarakiel's Touch": {
  "spellGroup": "ExemplarPath",
        spellGroup: "ExemplarPath",
  "spellPath": "2"
        spellPath: "2"
  }
    }
}
};
};


Line 112: Line 100:


         spell.spellGroup = override.spellGroup || spell.spellGroup || 'Base';
         spell.spellGroup = override.spellGroup || spell.spellGroup || 'Base';
         spell.spellPath = override.spellPath || spell.spellPath || '';
         spell.spellPath = override.sp
    });
 
    window.EQOA_SPELL_GROUP_OVERRIDES_APPLIED = true;
 
    if (typeof initEqoaSpellLists === 'function') {
        document.querySelectorAll('[data-eqoa-spell-list]').forEach(function (box) {
            box.classList.remove('eqoa-spell-list-ready');
        });
 
        initEqoaSpellLists();
    }
 
    if (typeof initEqoaSpellPathLists === 'function') {
        initEqoaSpellPathLists();
    }
}
 
mw.hook('wikipage.content').add(applyEqoaSpellGroupOverrides);
document.addEventListener('DOMContentLoaded', applyEqoaSpellGroupOverrides);
setTimeout(applyEqoaSpellGroupOverrides, 500);
setTimeout(applyEqoaSpellGroupOverrides, 1500);

Revision as of 23:21, 4 June 2026

window.EQOA_SPELL_GROUP_OVERRIDES = {
    "Shining Bastion": {
        spellGroup: "ClassPath",
        spellPath: "1"
    },
    "Gleaming Bastion": {
        spellGroup: "ClassPath",
        spellPath: "1"
    },
    "Hallowed Bastion": {
        spellGroup: "ClassPath",
        spellPath: "1"
    },
    "Sacred Bastion": {
        spellGroup: "ClassPath",
        spellPath: "1"
    },
    "Blessed Bastion": {
        spellGroup: "ClassPath",
        spellPath: "1"
    },
    "Ozmo's Careful Teasing": {
        spellGroup: "ClassPath",
        spellPath: "1"
    },
    "Ozmo's Infuriating Jeer": {
        spellGroup: "ClassPath",
        spellPath: "1"
    },

    "Clay Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Marble Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Granite Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Iron Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Steel Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Talimus's Adamantine Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Talimus's Diamond Barrier": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },
    "Celestial Light": {
        spellGroup: "ClassPath",
        spellPath: "2"
    },

    "Alesthenies' Mercy": {
        spellGroup: "ExemplarPath",
        spellPath: "1"
    },

    "Zarakiel's Blessing": {
        spellGroup: "ExemplarPath",
        spellPath: "2"
    },
    "Zarakiel's Favor": {
        spellGroup: "ExemplarPath",
        spellPath: "2"
    },
    "Zarakiel's Fervor": {
        spellGroup: "ExemplarPath",
        spellPath: "2"
    },
    "Zarakiel's Touch": {
        spellGroup: "ExemplarPath",
        spellPath: "2"
    }
};

function applyEqoaSpellGroupOverrides() {
    var spells = window.EQOA_GENERATED_SPELLS || [];
    var overrides = window.EQOA_SPELL_GROUP_OVERRIDES || {};

    if (!spells.length) {
        setTimeout(applyEqoaSpellGroupOverrides, 250);
        return;
    }

    spells.forEach(function (spell) {
        var override = overrides[spell.name];

        if (!override) return;

        spell.spellGroup = override.spellGroup || spell.spellGroup || 'Base';
        spell.spellPath = override.sp