Ir para conteúdo

Featured Replies

Postado

Galera poderiam min ajudar nesse script aqui quero que ele faça o seguinte:

Ao entrar no jogo ele verifica se o level e todos os skills do player são menores que os definidos.

 

O level está funcionando como desejo, mas o restante não tão bem, quero que eles funcionem da mesma forma que o level.

 

Um problema que também está acontecendo é que se a diferença de skill for grande ele não está adicionando tudo de uma vez tem, ele adiciona uma parte e você tem que ficar deslogando e logando para que chegue no minimo.

 

Obs.: Se souberem fazer com que não apareça a mensagem que upou de level ou skill seria bom.

function onLogin(cid)
local SkillsAtuais = {
    getPlayerSkillLevel(cid, SKILL_FIST),
    getPlayerSkillLevel(cid, SKILL_CLUB),
    getPlayerSkillLevel(cid, SKILL_SWORD),
    getPlayerSkillLevel(cid, SKILL_AXE),
    getPlayerSkillLevel(cid, SKILL_DISTANCE),
    getPlayerSkillLevel(cid, SKILL_SHIELD),
    getPlayerSkillLevel(cid, SKILL_FISHING),
    }

local MinimoSkill = { --Entre Coxetes [] está o id de cada vocação e, cada vocação tem seus skills definidos, na ordem citada abaixo
    [1] = {10, 10, 10, 10, 10, 10, 10, 10}, -- Fist, Club, Sword, Axe, Distance, Shield, Fish, MagicLevel
    [2] = {10, 10, 10, 10, 10, 10, 10, 10},
    [3] = {10, 10, 10, 10, 10, 10, 10, 10},
    [4] = {10, 10, 10, 10, 10, 10, 10, 10},
    }

local LevelMinimo = 100

local Voc = getPlayerVocation(cid)

if getPlayerLevel(cid) < LevelMinimo then
    local ExperienciaMinima = getExperienceForLevel(LevelMinimo)
    local ExperienciaAtual = getPlayerExperience(cid)
    doPlayerAddExp(cid, (ExperienciaMinima - ExperienciaAtual))
end
    
for ID = 1, 7 do
    if SkillsAtuais[ID] < MinimoSkill[Voc][ID] then
        doPlayerAddSkillTry(cid, (ID - 1), (MinimoSkill[Voc][ID] - SkillsAtuais[ID]))
    end
end
doPlayerAddMagLevel(cid, (MinimoSkill[Voc][8] - getPlayerMagLevel(cid)), true)

return true
end

Se puderem ajudar ficarei grato!

 
Postado

edita isso 

for ID = 1, 7 do
    if SkillsAtuais[ID] < MinimoSkill[Voc][ID] then
        doPlayerAddSkillTry(cid, (ID - 1), (MinimoSkill[Voc][ID] - SkillsAtuais[ID]))
    end
end
doPlayerAddMagLevel(cid, (MinimoSkill[Voc][8] - getPlayerMagLevel(cid)), true)

e coloca

for ID = 1, 8 do
    while SkillsAtuais[ID] < MinimoSkill[Voc][ID] do
        doPlayerAddSkillTry(cid, (ID - 1), (MinimoSkill[Voc][ID] - SkillsAtuais[ID]))
        doPlayerAddMagLevel(cid, (MinimoSkill[Voc][8] - getPlayerMagLevel(cid)), true)
    end
end

deve resolver.

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)

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo