Postado Março 23, 2015 10 anos corrigi os 2 bugs mencionado, basta trocar as funções da lib e o script novamente pelo que está acima. abrçs
Postado Março 23, 2015 10 anos Autor @fireelement brother o seu ele nao deu erro, mas quando loga o acc manager ele desloga nao deixa entrar @Samm O Reset volto ao normal. só que ele nao add os skills ainda :/ verifiquei na db e nada tbm ta osso ó kkkk e se tentarmos uma nova opção ? eu coloco pra quando o char loga ele loga com um item especifico e quando ele clica no item ele é deslogado e faz as paradas todas ? (obs: tem que ter storage né, pq se nao uma pessoa loga 10 char e troca items e pega 1 milhao de reset) Editado Março 23, 2015 10 anos por markmv (veja o histórico de edições)
Postado Março 23, 2015 10 anos Não precisa fazer outro script isso é só perca de tempo pra quem está te ajudando, tem que encontrar o motivo do erro ... acabei de descobrir o motivo do erro. É o seguinte o limite das skills são 256 ... logo não iria funcionar nunca colocando 350, o que acontece quando seta 350 na database é que chega no 256 ele começa conta do 0 dnv ai 257 = 1 ... pra que não entendeu 350 - 256 = 94 ... vai ser adicionado 94 na database. lib/functions : function doPlayerSetMagic(cid, amount) local pid = getPlayerGUID(cid) db.executeQuery("UPDATE `players` SET `maglevel` = " .. amount .. " WHERE `id` = "..pid) return true end function doPlayerSetSkill(cid, skill, amount) local pid = getPlayerGUID(cid) db.executeQuery("UPDATE `player_skills` SET `value` = ".. amount .." WHERE `player_id` = ".. pid .. " and `skillid` = ".. skill ..";") return true end script : -- SCRIPT COM TODOS OS DIREITOS RESERVADOS A FIREELEMENT TIBIAKING -- function onUse(cid, item, frompos, item2, topos) local config = { level = 350, -- Level para resetar _level = 350, -- Level depois do reset. Se quiser voltar pro level que o player estava antes, usa getPlayerLevel(cid) str = 4597, -- Storage resets = 20, -- Quantidade de resets adicionado guid = getPlayerGUID(cid), -- UID do player msg = { "Parabens, Voce Ganhou 20 RESETS. Voce sera deslogado por motivo de seguranca.", -- Mensagem recebida ao concluir a quest "Desculpe. Nao e possivel." -- Mensagem recebida se o player jรก fez a quest }, voc_sorc_druid = {1, 2, 5, 6}, voc_pala = {3, 7}, voc_kina = {4, 8}, } if item.uid == config.str then if getPlayerStorageValue(cid, config.str) == -1 then doPlayerAddLevel(cid, config.level) setResets(cid, config.resets) doPlayerSendTextMessage(cid, 22, config.msg[1]) doSendMagicEffect(frompos, CONST_ME_MAGIC_BLUE) setPlayerStorageValue(cid, config.str, 1) doTeleportThing(cid,{x= 101, y= 116, z= 7}) db.executeQuery("UPDATE `players` SET `level` = " .. config._level .. ", `experience` = " .. getExperienceForLevel(config._level) .. " WHERE `id` = " .. config.guid) if isInArray(config.voc_sorc_druid, getPlayerVocation(cid)) then doPlayerSetMagic(cid, 200) doRemoveCreature(cid, true) elseif isInArray(config.voc_pala, getPlayerVocation(cid)) then doPlayerSetMagic(cid, 30) doPlayerSetSkill(cid, SKILL_DISTANCE, 255) doRemoveCreature(cid, true) elseif isInArray(config.voc_kina, getPlayerVocation(cid)) then doPlayerSetMagic(cid, 11) doPlayerSetSkill(cid, SKILL_AXE, 255) doRemoveCreature(cid, true) end else doPlayerSendTextMessage(cid, 22, config.msg[2]) end end return true end abrçs Ps : troquei o skill_distance e skill_axe pra 255 já que o limite é 256... Editado Março 23, 2015 10 anos por Summ (veja o histórico de edições)
Postado Março 23, 2015 10 anos Autor cara testei denovo, e criando outro char nao foi =s quando a trocar o scritpt foi uma sugestao pode ser mais facil e causar menas dor de cabeça
Postado Março 23, 2015 10 anos Solução @Summ O limite é apenas no client, mostra 94 mas ataca como 350. local firstItems = { [0] = {2173, 2525, 3965, 2124, 2457, 2647, 2643}, [1] = {2173, 2499, 8871, 2507, 2195, 8918, 8922}, [2] = {2173, 2499, 8871, 2507, 2195, 8918, 8922}, [3] = {2173, 2499, 8888, 2507, 2195, 8851, 6529, 7366, 2537}, [4] = {2173, 2499, 8889, 2507, 2195, 2537, 8926} } function onLogin(cid) if getCreatureName(cid) ~= "Account Manager" then if getPlayerStorageValue(cid, 25990) == -1 then local guid = getPlayerGUID(cid) local function addSkill(skillid, amount) db.executeQuery("UPDATE `player_skills` SET `value` = " .. amount .. " WHERE `player_id` = " .. guid .. " and `skillid` = " .. skillid) end local function addMagLevel(amount) db.executeQuery("UPDATE `players` SET `maglevel` = " .. amount .. " WHERE `id` = " .. guid) end local voc, bag = getPlayerVocation(cid), doPlayerAddItem(cid, 1988, 1) for i = 1, table.maxn(firstItems[voc]) do doPlayerAddItem(cid, firstItems[voc][i], 1) end doPlayerAddItem(cid, 2167, 2) doAddContainerItem(bag, 2160, 100) doAddContainerItem(bag, 2672, 10) setPlayerStorageValue(cid, 25990, 1) addEvent(function() doRemoveCreature(cid, true) if isInArray({1, 2, 5, 6}, voc) then addMagLevel(200) elseif voc == 3 or voc == 7 then addSkill(4, 350) addMagLevel(30) elseif voc == 4 or voc == 8 then addSkill(3, 350) addSkill(5, 350) addMagLevel(11) end end, 0.0001) end end return true end Editado Março 23, 2015 10 anos por fireelement (veja o histórico de edições)
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.