Ir para conteúdo

Featured Replies

  • Respostas 25
  • Visualizações 5.3k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Adriano SwaTT
    Adriano SwaTT

    Desculpe-me pela "leiguisse", mas qual é a tag (função) que adiciona a velocidade ao player novamente? local info = { {level = {8, 49}, speed = 15}, {level = {50, 99}, speed = 40}, {level = {100, 14

  • De boas, só para ninguém ficar reclamando que não funciona depois, sendo que tu fez quase tudo. Apenas errou umas coisinhas.

  • Pode usar esta tag em creaturescripts.xml: <event type="login" name="levelspeed" event="script" value="levelspeed.lua"/>   Boa sorte.

Postado

Desculpe-me pela "leiguisse", mas qual é a tag (função) que adiciona a velocidade ao player novamente?

local info = {
{level = {8, 49}, speed = 15},
{level = {50, 99}, speed = 40},
{level = {100, 149}, speed = 65},
{level = {150, 199}, speed = 90},
{level = {200, 249}, speed = 105},
{level = {250, 299}, speed = 130},
{level = {300, 999}, speed = 160}
}

function onLogin(cid)
    for l = 1, #info do
        if isPlayer(cid) and getPlayerLevel(cid) >= info[l].level[1] and getPlayerLevel(cid) <= info[l].level[2] then
            doChangeSpeed(cid, -getCreatureSpeed(cid)) -- Essa remove a velocidade.
        end
    end
return 1
end

Estou aprendendo a trabalhar com for ainda e gostaria de saber.

Já que a doChangeSpeed, está removendo toda velocidade.

Editado por Adriano SwaTT (veja o histórico de edições)

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

Postado
  • Autor

Desculpe-me pela "leiguisse", mas qual é a tag (função) que adiciona a velocidade ao player novamente?

local info = {
{level = {8, 49}, speed = 15},
{level = {50, 99}, speed = 40},
{level = {100, 149}, speed = 65},
{level = {150, 199}, speed = 90},
{level = {200, 249}, speed = 105},
{level = {250, 299}, speed = 130},
{level = {300, 999}, speed = 160}
}

function onLogin(cid)
    for l = 1, #info do
        if isPlayer(cid) and getPlayerLevel(cid) >= info[l].level[1] and getPlayerLevel(cid) <= info[l].level[2] then
            doChangeSpeed(cid, -getCreatureSpeed(cid)) -- Essa remove a velocidade.
        end
    end
return 1
end

Estou aprendendo a trabalhar com for ainda e gostaria de saber.

Já que a doChangeSpeed, está removendo toda velocidade.

Não creio como errei tantas coisas tão simples..(é o que acontece quando se fica virando dias no PC)

Obrigado pelo alerta, e esse é o último erro do meu script, por favor me perdoem por esses erros babacas :facepalm:

Correção:

doChangeSpeed(cid, -getCreatureSpeed(cid))
doChangeSpeed(cid, info[l].speed)

ou, simplificando:

doChangeSpeed(cid, info[l].speed + (-getCreatureSpeed(cid)))

Na primeira linha, remove (como você disse) toda a velocidade atual do player ao logar, e na segunda linha, adiciona a nova velocidade contida em:

local info = {

{level = {8, 49}, speed = 15},

Ou, de forma simplificada, a linha adiciona o valor da velocidade conforme foi configurado e remove a velocidade atual do player.

Mas qual a necessidade de haver a remoção da velocidade atual do player?

Caso não remova a velocidade atual, ou seja, caso não use -getCreatureSpeed(cid) na linha acima, o player receberá (a partir do level 8, por exemplo) o valor da velocidade determinada na tabela ({level = {8, 49}, speed = 15},) junto à velocidade atual (velocidade adquirida nos leveis anteriores ao level 8 por configurações "naturais" do seu servidor (sources e/ou outras configurações de qualquer que seja a forma)). Se a velocidade anterior do player era 5 e ele passa a receber 15, sem remover a anterior, sua velocidade será 20.

Agora enquanto ao comando for, sua função pode ser numérica (repete um bloco de código enquanto uma variável de controle varia de acordo com uma progressão aritmética) ou genérica (funciona usando funções, chamadas de iteradores). Me desculpe, não sei bem como explicar sobre o for, as vezes eu também tenho muitas dúvidas sobre como usá-lo..mas você pode dar uma olhada no Manual de Referência de Lua (clicando aqui).

Espero um tutorial de um membro com experiência mais avançada em Lua para esclarecer esse comando.

Novamente..me desculpem pela falta de atenção, isso não vai se repetir.

Editado por Bizzle (veja o histórico de edições)

Se te ajudei com o que postei, clique em liked.png
Bizzle

Postado

Sim sim, basicamente já conhecia estas funções, só o for que uso bem pouco criando do zero.

Mas o script está muito bom, parabéns.

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

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.7k

Informação Importante

Confirmação de Termo