Exactly
New Member
- Joined
- Jul 14, 2014
- Messages
- 117
- Reaction score
- 4
Hello i have problem on script:
Error on console:
Thanks rep for help +++
Lua:
--//Credits: Printer//--
local config = {
savePlayer = true, --Save Player When The Gain Level!
healPlayerOnLevel = true, --Heal Players Hp And Mana On Level!
effectOnLevel = true, --Fireworks Effect On Level!
getServerVersionUnder860 = true, --If the server is 860 and lower than that, leave it true! If its over 860, use false!
levelText = "LEVEL UP!", --Gain Level Text!
Sorcerer = {
Vocsid = {1,5,9}, --Vocs id for Wizards
[20] = {item = 2160, count = 5, storage = 3001}, --///[Level] = {item = ItemId, count = ItemCount}///--
[15] = {item = 2188, count = 1, storage = 3002}, --///[Level] = {item = ItemId, count = ItemCount}///--
[21] = {item = 8921, count = 1, storage = 3003}, --///[Level] = {item = ItemId, count = ItemCount}///--
[30] = {item = 2187, count = 1, storage = 3004}, --///[Level] = {item = ItemId, count = ItemCount}///--
[10] = {item = 2191, count = 1, storage = 3005}, --///[Level] = {item = ItemId, count = ItemCount}///--
[40] = {item = 2160, count = 10, storage = 3006}, --///[Level] = {item = ItemId, count = ItemCount}///--
[41] = {item = 8922, count = 1, storage = 3007}, --///[Level] = {item = ItemId, count = ItemCount}///--
[50] = {item = 8902, count = 1, storage = 3008}, --///[Level] = {item = ItemId, count = ItemCount}///--
[100] = {item = 2160, count = 25, storage = 3017}, --///[Level] = {item = ItemId, count = ItemCount}///--
},
Druid = {
Vocsid = {2,6}, --Vocs id for Priest
[10] = {item = 2186, count = 1, storage = 3009}, --///[Level] = {item = ItemId, count = ItemCount}///--
[15] = {item = 2185, count = 1, storage = 3010}, --///[Level] = {item = ItemId, count = ItemCount}///--
[20] = {item = 2160, count = 5, storage = 3011}, --///[Level] = {item = ItemId, count = ItemCount}///--
[21] = {item = 8911, count = 1, storage = 3012}, --///[Level] = {item = ItemId, count = ItemCount}///--
[30] = {item = 8912, count = 1, storage = 3013}, --///[Level] = {item = ItemId, count = ItemCount}///--
[41] = {item = 8910, count = 1, storage = 3014}, --///[Level] = {item = ItemId, count = ItemCount}///--
[40] = {item = 2160, count = 10, storage = 3015}, --///[Level] = {item = ItemId, count = ItemCount}///--
[50] = {item = 8922, count = 1, storage = 3016}, --///[Level] = {item = ItemId, count = ItemCount}///--
[100] = {item = 2160, count = 25, storage = 3018}, --///[Level] = {item = ItemId, count = ItemCount}///--
},
Paladin = {
Vocsid = {3,7}, --Vocs id for Rangers
[20] = {item = 2160, count = 5, storage = 3019}, --///[Level] = {item = ItemId, count = ItemCount}///--
[35] = {item = 7367, count = 1, storage = 3020}, --///[Level] = {item = ItemId, count = ItemCount}///--
[40] = {item = 2160, count = 10, storage = 3021}, --///[Level] = {item = ItemId, count = ItemCount}///--
[50] = {item = 8891, count = 1, storage = 3022}, --///[Level] = {item = ItemId, count = ItemCount}///--
[70] = {item = 7368, count = 1, storage = 3023}, --///[Level] = {item = ItemId, count = ItemCount}///--
[100] = {item = 2160, count = 25, storage = 3024}, --///[Level] = {item = ItemId, count = ItemCount}///--
},
Knight = {
Vocsid = {4,8}, --Vocs id for Warriors
[20] = {item = 2160, count = 5, storage = 3025}, --///[Level] = {item = ItemId, count = ItemCount}///--
[30] = {item = 2407, count = 1, storage = 3026}, --///[Level] = {item = ItemId, count = ItemCount}///--
[30] = {item = 2430, count = 1, storage = 3027}, --///[Level] = {item = ItemId, count = ItemCount}///--
[30] = {item = 2434, count = 1, storage = 3028}, --///[Level] = {item = ItemId, count = ItemCount}///--
[40] = {item = 2160, count = 10, storage = 3029}, --///[Level] = {item = ItemId, count = ItemCount}///--
[60] = {item = 2446, count = 1, storage = 3030}, --///[Level] = {item = ItemId, count = ItemCount}///--
[100] = {item = 2160, count = 25, storage = 3031} --///[Level] = {item = ItemId, count = ItemCount}///--
},
}
function onAdvance(cid, skill, oldLevel, newLevel)
if(skill == SKILL__EXPERIENCE) then
return true
end
if(newLevel < oldLevel)then return true end
if(skill == SKILL__LEVEL and config.healPlayerOnLevel) then
doCreatureAddHealth(cid, getCreatureMaxHealth(cid) - getCreatureHealth(cid))
doCreatureAddMana(cid, getCreatureMaxMana(cid) - getCreatureMana(cid))
doSendMagicEffect(getCreaturePosition(cid), math.random(28, 30))
if config.getServerVersionUnder860 then
doSendAnimatedText(getCreaturePosition(cid), config.levelText, math.random(1,255))
else
doCreatureSay(cid,config.levelText,TALKTYPE_ORANGE_1)
end
end
if(config.savePlayer) then
doPlayerSave(cid, true)
end
local sorc,druid,pally,knight = config.Sorcerer[getPlayerLevel(cid)],config.Druid[getPlayerLevel(cid)],config.Paladin[getPlayerLevel(cid)],config.Knight[getPlayerLevel(cid)]
if (isInArray(config.Sorcerer.Vocsid, getPlayerVocation(cid)) or isInArray(config.Druid.Vocsid, getPlayerVocation(cid)) or isInArray(config.Paladin.Vocsid, getPlayerVocation(cid)) or isInArray(config.Knight.Vocsid, getPlayerVocation(cid))) then
if (sorc and isInArray(config.Sorcerer.Vocsid, getPlayerVocation(cid)) and (getPlayerStorageValue(cid,config.Sorcerer.storage) == -1)) then
doPlayerAddItem(cid,sorc.item,sorc.count)
setPlayerStorageValue(cid, config.sorc.storage,1)
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have recived "..sorc.count.."x "..getItemNameById(sorc.item).."." )
elseif (druid and isInArray(config.Druid.Vocsid, getPlayerVocation(cid)) and (getPlayerStorageValue(cid,config.Druid.storage) == -1)) then
doPlayerAddItem(cid,druid.item,druid.count)
setPlayerStorageValue(cid, config.druid.storage,1)
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have recived "..druid.count.."x "..getItemNameById(druid.item).."." )
elseif (pally and isInArray(config.Paladin.Vocsid, getPlayerVocation(cid)) and (getPlayerStorageValue(cid,config.Paladin.storage) == -1)) then
doPlayerAddItem(cid,pally.item,pally.count)
setPlayerStorageValue(cid, config.pally.storage,1)
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have recived "..pally.count.."x "..getItemNameById(pally.item).."." )
elseif (Knight and isInArray(config.Knight.Vocsid, getPlayerVocation(cid)) and (getPlayerStorageValue(cid,config.Knight.storage) == -1)) then
doPlayerAddItem(cid,Knight.item,Knight.count)
setPlayerStorageValue(cid, config.Knight.storage,1)
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have recived "..knight.count.."x "..getItemNameById(knight.item).."." )
end
else
print("Your vocation id doesn't exsist: "..getPlayerVocation(cid)..".")
end
return true
end
Error on console:
Code:
[Error - CreatureScript Interface]
data/creaturescripts/scripts/levelup.lua:onAdvance
Description:
data/creaturescripts/scripts/levelup.lua:90: attempt to index field 'knight' (a nil value)
stack traceback:
data/creaturescripts/scripts/levelup.lua:90: in function <data/creaturescripts/scripts/levelup.lua:53>
Thanks rep for help +++