function LevelUpSkills1To70(_loadonly) if _showdebug then cprintf(cli.blue," DEBUGl:: Starting LevelUpSkills1To70() \n") ; end local skillLevelupMap = { [CLASS_WARRIOR] = { [1] = { aslevel = 1, skillname = "WARRIOR_SLASH", atlevel = {99} }, [2] = { aslevel = 2, skillname = "WARRIOR_OPEN_FLANK", atlevel = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,22,24,26,28,30 } }, [3] = { aslevel = 2, skillname = "WARRIOR_PROBING_ATTACK", atlevel = {0} }, [4] = { aslevel = 4, skillname = "WARRIOR_ENRAGED", atlevel = {0} }, [5] = { aslevel = 6, skillname = "WARRIOR_THUNDER", atlevel = {0} } }, [CLASS_SCOUT] = { [1] = { aslevel = 1, skillname = "SCOUT_SHOT", atlevel = {0} }, [2] = { aslevel = 2, skillname = "SCOUT_WIND_ARROWS", atlevel = {0} }, [3] = { aslevel = 4, skillname = "SCOUT_VAMPIRE_ARROWS", atlevel = {99} } }, [CLASS_ROGUE] = { [1] = { aslevel = 1, skillname = "ROGUE_SHADOWSTAB", atlevel = {0} }, [2] = { aslevel = 2, skillname = "ROGUE_LOW_BLOW", atlevel = {0} }, [3] = { aslevel = 6, skillname = "ROGUE_WOUND_ATTACK", atlevel = {0} }, [4] = { aslevel = 8, skillname = "ROGUE_BLIND_STAB", atlevel = {0} } }, [CLASS_MAGE] = { [1] = { aslevel = 1, skillname = "MAGE_FLAME", atlevel = {99} }, [2] = { aslevel = 2, skillname = "MAGE_ELECTROSTATIC_CHARGE", atlevel = {2,3,4,5,6,7,8,10,12,14,16,18,20,22,24,26,28,30} }, [3] = { aslevel = 4, skillname = "MAGE_FIREBALL", atlevel = {4,6,8,10,12,14,16,18,20,22,24,26,28,30} }, [4] = { aslevel = 8, skillname = "MAGE_LIGHTNING", atlevel = {8,10,12,14,16,18,20,22,24,26,28,30} }, [5] = { aslevel = 10, skillname = "MAGE_DISCHARGE", atlevel = {0} }, [6] = { aslevel = 10, skillname = "MAGE_ELECTRIC_BOLT", atlevel = {10,11,12,14,16,18,20,22,24,26,28,30} }, [7] = { aslevel = 12, skillname = "MAGE_WISDOM", skilltab = 2, skillnum = 3, skillatlevel = {99} }, [8] = { aslevel = 14, skillname = "MAGE_METEOR_SHOWER", atlevel = {14,16,18,20,22,24,26,28,30} }, [9] = { aslevel = 16, skillname = "MAGE_INTENSIFICATION", atlevel = {99} } }, [CLASS_PRIEST] = { [1] = { aslevel = 1, skillname = "PRIEST_RISING_TIDE", atlevel = {0} }, [2] = { aslevel = 1, skillname = "PRIEST_URGENT_HEAL", atlevel = {0} }, -- [3] = { aslevel = 2, skillname = "PRIEST_WAVE_ARMOR", atlevel = {0} }, -- needs too much mana [3] = { aslevel = 4, skillname = "PRIEST_REGENERATE", atlevel = {0} } , [4] = { aslevel = 8, skillname = "PRIEST_HOLY_AURA", atlevel = {0} } }, [CLASS_KNIGHT] = { [1] = { aslevel = 1, skillname = "KNIGHT_PUNISHMENT", atlevel = {0} }, [2] = { aslevel = 1, skillname = "KNIGHT_HOLY_STRIKE", atlevel = {0} } }, [CLASS_WARDEN] = { [1] = { aslevel = 1, skillname = "WARDEN_CHARGED_CHOP", atlevel = {0} }, [2] = { aslevel = 1, skillname = "WARDEN_ENERGY_ABSORB", atlevel = {0} }, [3] = { aslevel = 2, skillname = "WARDEN_THORNY_VINE", atlevel = {0} }, [4] = { aslevel = 4, skillname = "WARDEN_BRIAR_SHIELD", atlevel = {0} }, [5] = { aslevel = 8, skillname = "WARDEN_POWER_OF_THE_WOOD_SPIRIT", atlevel = {0} } }, [CLASS_DRUID] = { [1] = { aslevel = 1, skillname = "DRUID_RECOVER", atlevel = {0} }, [2] = { aslevel = 1, skillname = "DRUID_EARTH_ARROW", atlevel = {0} }, [3] = { aslevel = 2, skillname = "DRUID_BRIAR_ENTWINEMENT", atlevel = {0} }, [4] = { aslevel = 6, skillname = "DRUID_RESTORE_LIFE", atlevel = {0} } }, }; player:update() local leveluptable = skillLevelupMap[player.Class1]; printf(" Player: Level:%d Class:%s\n", player.Level, player.Class1) for i,v in pairs(leveluptable) do if (_loadonly ~= "loadonly") and ( player.Level >= v.aslevel ) then player:update() local _skillname = v.skillname if database.skills[_skillname] == nil then printf(" Skill:%s is not in the Skill database, going to add it in.\n", _skillname) local tmp = CSkill(); tmp.skilltab = v.skilltab tmp.skillnum = v.skillnum database.skills[_skillname] = tmp end local skill_from_db = database.skills[_skillname]; local name, _, icon, _, rank, type, upgradeCost, isSkillable, isAvailable = RoMScript("GetSkillDetail("..skill_from_db.skilltab..","..skill_from_db.skillnum..")") local whentolevel = v.atlevel for j,w in ipairs(whentolevel) do if w == 99 then local _timestolevel = player.Level - rank if _timestolevel > 0 then printf(" Adding (or attempting to add) levels to skill:%s x%d\n",_skillname, _timestolevel) ; levelupSkill(v.skillname, _timestolevel); end elseif w == player.Level then if j > rank then _timestolevel = j - rank printf(" Adding (or attempting to add) %d level(s) to skill:%s \n", _timestolevel, _skillname) levelupSkill(v.skillname, _timestolevel); else printf(" Skill:%s is already at the desired rank:%d for the class level:%d \n", _skillname, rank, player.Level) end end end end end end