Postado Abril 30, 2014 11 anos Autor adicionei o script do max, local amuletos = { [2] = 7888, } function onAdvance(cid, skill, oldlevel, newlevel) if skill == 8 and amuletos[newlevel] then doTransformItem(getPlayerSlotItem(cid, CONST_SLOT_NECKLACE).uid, amuletos[newlevel]) doPlayerSendTextMessage(cid, 22, "You received "..getItemNameById(amuletos[newlevel).." for reaching level".. newlevel..".") end return true end e apareceu esse erro: [30/04/2014 08:57:27] [Error - LuaScriptInterface::loadFile] data/creaturescripts/scripts/medal.lua:9: ']' expected near ')' [30/04/2014 08:57:27] [Warning - Event::loadScript] Cannot load script (data/creaturescripts/scripts/medal.lua) [30/04/2014 08:57:27] data/creaturescripts/scripts/medal.lua:9: ']' expected near ')' Ot Design: https://discord.gg/VgtVRNmCD7
Postado Abril 30, 2014 11 anos endreturn trueend deixe : return trueend e teste Editado Abril 30, 2014 11 anos por AnaPaula (veja o histórico de edições)
Postado Abril 30, 2014 11 anos Autor continua, [30/04/2014 09:13:54] [Error - LuaScriptInterface::loadFile] data/creaturescripts/scripts/medal.lua:9: ']' expected near ')' [30/04/2014 09:13:54] [Warning - Event::loadScript] Cannot load script (data/creaturescripts/scripts/medal.lua) [30/04/2014 09:13:54] data/creaturescripts/scripts/medal.lua:9: ']' expected near ') Ot Design: https://discord.gg/VgtVRNmCD7
Postado Abril 30, 2014 11 anos eu tinha visto os erros e corrigido no meu script mas esqueci de avisar aqui: local amuletos = { [1] = 7887, [2] = 7888, [5] = 7889, [7] = 7890, [10] = 2129, [13] = 2130, [16] = 2131, [20] = 2132, [25] = 2133, [30] = 2134, [35] = 2135 } function onAdvance(cid, skill, oldlevel, newlevel) if skill == 8 and amuletos[newlevel] then doTransformItem(getPlayerSlotItem(cid, CONST_SLOT_NECKLACE).uid, amuletos[newlevel]) doPlayerSendTextMessage(cid, 22, "You received "..getItemNameById(amuletos[newlevel]).." for reaching level "..newlevel..".") end return true end agora é só completar com os ids seguindo a ordem, e lembre-se que não tem virgula depois do ultimo valor da table! O erro era na linha 9, mais precisamente aqui: getItemNameById(amuletos[newlevel) tava faltando fechar o colchetes do newlevel. De quebra ainda coloquei um espaço que o max havia comido na mensagem que manda ao player, tava saindo "for reaching level25" mas isso não é nada comparado com oque ele fez pro script ser possível. Editado Abril 30, 2014 11 anos por xWhiteWolf (veja o histórico de edições) Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
Postado Maio 1, 2014 11 anos local amuletos = { [1] = 7887, [2] = 7888, [5] = 7889, [7] = 7890, [10] = 7891, [13] = 7882, [16] = 7883, [20] = 7885, } function onAdvance(cid, skill, oldlevel, newlevel) if skill == 8 and amuletos[newlevel] then doPlayerSendTextMessage(cid, 22, "You received "..getItemNameById(amuletos[newlevel]).." for reaching level".. newlevel..".") doTransformItem(getPlayerSlotItem(cid, CONST_SLOT_NECKLACE).uid, amuletos[newlevel]) end return true end function onLogin(cid) local lower_lvls = {} for level, id in pairs(amuletos) do if level <= getPlayerLevel(cid) then table.insert(lower_lvls, level) end end table.sort(lower_lvls, function(a, b) return a < b end) local amuleto_novo = amuletos[lower_lvls[#lower_lvls]] if amuleto_novo ~= getPlayerSlotItem(cid, CONST_SLOT_NECKLACE).itemid then doTransformItem(getPlayerSlotItem(cid, CONST_SLOT_NECKLACE).uid, amuleto_novo) end return true end <event type="advance" name="medal" event="script" value="medal.lua"/> <event type="login" name="medalLogin" event="script" value="medal.lua"/> -"Supra Omnes Lux Lucis" - Acima de todos brilha a Luz -
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.