mirror of
https://github.com/EQEmu/Server.git
synced 2026-02-18 19:02:29 +00:00
add quest::get_spell_level(uint16 spell_id, uint8 class_id) (#1295)
This commit is contained in:
parent
e9cd0b15a2
commit
b3fbe1b015
@ -899,6 +899,27 @@ XS(XS__getspellname) {
|
||||
XSRETURN(1);
|
||||
}
|
||||
|
||||
XS(XS__get_spell_level);
|
||||
XS(XS__get_spell_level) {
|
||||
dXSARGS;
|
||||
if (items != 2)
|
||||
Perl_croak(aTHX_ "Usage: quest::get_spell_level(uint16 spell_id, uint8 class_id)");
|
||||
|
||||
dXSTARG;
|
||||
uint16 spell_id = (int)SvIV(ST(0));
|
||||
uint8 class_id = (int)SvIV(ST(1));
|
||||
uint8 spell_level = IsValidSpell(spell_id) ? GetSpellLevel(spell_id, class_id) : 0;
|
||||
uint8 server_max_level = RuleI(Character, MaxLevel);
|
||||
|
||||
if (spell_level && spell_level > server_max_level)
|
||||
spell_level = 0;
|
||||
|
||||
XSprePUSH;
|
||||
PUSHu((UV)spell_level);
|
||||
|
||||
XSRETURN(1);
|
||||
}
|
||||
|
||||
XS(XS__getskillname);
|
||||
XS(XS__getskillname) {
|
||||
dXSARGS;
|
||||
@ -6647,6 +6668,7 @@ EXTERN_C XS(boot_quest) {
|
||||
newXS(strcpy(buf, "getraididbycharid"), XS__getraididbycharid, file);
|
||||
newXS(strcpy(buf, "getracename"), XS__getracename, file);
|
||||
newXS(strcpy(buf, "getspellname"), XS__getspellname, file);
|
||||
newXS(strcpy(buf, "get_spell_level"), XS__get_spell_level, file);
|
||||
newXS(strcpy(buf, "getskillname"), XS__getskillname, file);
|
||||
newXS(strcpy(buf, "getlevel"), XS__getlevel, file);
|
||||
newXS(strcpy(buf, "getplayerburiedcorpsecount"), XS__getplayerburiedcorpsecount, file);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user