Ir para conteúdo
  • Cadastre-se

(Resolvido)Npc que RESETA - erro


Ir para solução Resolvido por azzouks,

Posts Recomendados

quando eu te passei esse script eu te falei que ele ia precisar ser modificado de acordo com o seu server... a parte que edita as skills é aqui e se não tá adicionando é porque tem alguma coisa errada:
Procura estudar esses comandos de db.executeQuery

------------------------------ EDIÇÃO DAS SKILLS --------------------
local skills = {
magic = getPlayerSkillLevel(cid, SKILL__MAGLEVEL),
club = getPlayerSkillLevel(cid, SKILL_CLUB),
axe = getPlayerSkillLevel(cid, SKILL_AXE),
sword = getPlayerSkillLevel(cid, SKILL_SWORD),
shield = getPlayerSkillLevel(cid, SKILL_SHIELD),
distance = getPlayerSkillLevel(cid, SKILL_DISTANCE)
}

if isInArray({13,14}, getPlayerVocation(cid)) then
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (skills.magic + config.mlnew) .. ", `count` = 0 WHERE `skillid` = 7 and `player_id` = " .. playerid .. ";")
end


if isInArray({16}, getPlayerVocation(cid)) then
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (skill.shield + config.skillnew) .. ", `count` = 0 WHERE `skillid` = 5 and `player_id` = " .. playerid .. ";")
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (skill.axe + config.skillnew) .. ", `count` = 0 WHERE `skillid` = 3 and `player_id` = " .. playerid .. ";")
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (skill.sword + config.skillnew) .. ", `count` = 0 WHERE `skillid` = 2 and `player_id` = " .. playerid .. ";")
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (skill.club + config.skillnew) .. ", `count` = 0 WHERE `skillid` = 1 and `player_id` = " .. playerid .. ";")
end




if isInArray({15}, getPlayerVocation(cid)) then
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (skill.shield + config.skillnew) .. ", `count` = 0 WHERE `skillid` = 5 and `player_id` = " .. playerid .. ";")
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (skill.distance + config.skillnew) .. ", `count` = 0 WHERE `skillid` = 4 and `player_id` = " .. playerid .. ";")
end
------------------------FIM ---------------------------------- 

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

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Link para o post
Compartilhar em outros sites
  • Respostas 12
  • Created
  • Última resposta

Top Posters In This Topic

eu pensei nisso também mas pelo que ele falou a unica coisa que não funciona é a alteração da database de skills

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

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Link para o post
Compartilhar em outros sites

Não sei se ajuda, mas quando um mage vai resetar ele apenas perde a mana e o life, e é movido pra seu templo, e dá o seguinte erro.:

 

[29/06/2014 22:44:46] data/npc/scripts/isolda.lua:47: attempt to perform arithmetic on field 'magic' (a boolean value)
[29/06/2014 22:44:46] stack traceback:
[29/06/2014 22:44:46]  data/npc/scripts/isolda.lua:47: in function <data/npc/scripts/isolda.lua:20>

 

 

 

fiz assim -> 

local skills = { 
magic = getPlayerMagLevel(cid),
club = getPlayerSkillLevel(cid, SKILL_CLUB),
axe  = getPlayerSkillLevel(cid, SKILL_AXE),
sword = getPlayerSkillLevel(cid, SKILL_SWORD),
shield  = getPlayerSkillLevel(cid, SKILL_SHIELD),
distance = getPlayerSkillLevel(cid, SKILL_DISTANCE)
}

if isInArray({13,14}, getPlayerVocation(cid)) then 
db.executeQuery("UPDATE `players` SET `maglevel` = " .. (skills.magic + config.mlnew) .. " WHERE `maglevel` and `id` = " .. playerid .. ";")
end


if isInArray({16}, getPlayerVocation(cid)) then
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (skills.shield + config.skillnew) .. ", `count` = 0 WHERE `skillid` = 5 and `player_id` = " .. playerid .. ";")   
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (skills.axe + config.skillnew) .. ", `count` = 0 WHERE `skillid` = 3 and `player_id` = " .. playerid .. ";")
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (skills.sword + config.skillnew) .. ", `count` = 0 WHERE `skillid` = 2 and `player_id` = " .. playerid .. ";")
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (skills.club + config.skillnew) .. ", `count` = 0 WHERE `skillid` = 1 and `player_id` = " .. playerid .. ";")
end




if isInArray({15}, getPlayerVocation(cid)) then
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (skill.shield + config.skillnew) .. ", `count` = 0 WHERE `skillid` = 5 and `player_id` = " .. playerid .. ";") 
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (skill.distance + config.skillnew) .. ", `count` = 0 WHERE `skillid` = 4 and `player_id` = " .. playerid .. ";")
end
------------------------FIM ---------------------------------- 
                        doRemoveCreature(cid)
            db.executeQuery("UPDATE `players` SET `description` = ' [Reset: "..resets.."]' WHERE `players`.`id`= ".. playerid .."")
db.executeQuery("UPDATE `players` SET `level`="..config.newlevel..",`experience`= 0 WHERE `players`.`id`= ".. playerid .."")
                          return TRUE
end

 

mudei a edição do magic level, pois no meu banco de dados ele nao e dado como skill, e sim como ta ali, e em outro banco de dados nao em players_skills..
nao da NENHUM erro, apenas nao dá os skills nem o magic level :'/
Editado por azzouks (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

ele nao tá conseguindo calcular essa soma aqui:

skills.magic + config.mlnew

cara.. quando eu fiz esse script pra você eu te disse que não dava pra fazer.. criar um tópico aqui é escolha sua mas eu não tenho competência pra te ajudar nesse erro.

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

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Link para o post
Compartilhar em outros sites

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Estatísticas dos Fóruns

    96847
    Tópicos
    519607
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo