Parabéns haha, ficou legal.
é assim que se começa
Obrigado por me mencionar no vídeo :lolz:, a escolinha tá demorando mesmo, mas não tem o que eu possa fazer , depois quando for possível disponibilizar ela, vou explicar o porque...
Sobre o script:
if exhaustion.check(cid, 40501) == false then
essa verificação é inútil, pois se é == false, quer dizer que é false, então não precisa por comparação ==
você pode simplesmente deixar assim:
if exhaustion.check(cid, 40501) then
Eu vi esse erro:
actions/scripts/testando.lua:11 attempt to concatenate a boolean value
por isso que eu indiquei o benefício de aprender o inglês no meu tópico do anúncio da escolinha, na hora de programar Lua!
Esse erro mostra exatamente em que arquivo e linha o erro acontece, e que tipo de erro.
actions/scripts/testando.lua:11 -> Linha 11 do arquivo testando.lua
attempt to concatenate a boolean value -> Tentativa de concatenar um valor booleano
Sinais de concatenação no lua são " . . " dois pontos finais (Em outras linguagens são como " + " ou " . " e etc... ) , eles ficam entre dois pedaços strings é usado para transformar um valor não string em string, ou uma variável string.
no seu caso, exhaustion.check está dando true e pula pro else, e mesmo o check dando true, o get dá false, não sei porque, pois você alterou o script, talvez tava fazendo o script com um God, ou player sem flag de exhaustion (permite não ter exhaust)
Nessa parte e em outras que você usa a função: getPlayerPosition(cid)
pos = getCreaturePosition(cid)
local position1 = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y+1, z=getPlayerPosition(cid).z}
local position2 = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z}
você pode usar a variável para economizar:
pos = getCreaturePosition(cid)
local position1, position2 = {x=pos.x+1, y=pos.y+1, z=pos.z}, {x=pos.x, y=pos.y, z=pos.z}
Veja também como declarei as duas variáveis e a vírgula na linha 2 acima.
em todos os lugares que você precisa da posição do cid, você pode usar a variável pos.x, pos.y, pos.z ou pos.stackpos
Agora sobre as chances, me corrija se estiver errado, você não conseguiu sumonar o Gamakichi né?
isso acontece porque math.random(1) vai gerar um número entre 1 e 1, por isso nunca vai ser menor que a chance, e nunca vai sumonar.
Gamaguren = 20%
Gamakichi = 0%
Gamatatsu = 20%
Gamatatsu é 20% porque math.random que não é entre 0 e 1 , dá número inteiro...
você podia multiplicar por 10 e dividir por 10 , assim:
math.random(0, 50) / 10 = math.random(0, 5) só que com números com vírgulas
veja alguns resultados:
Eu fiz o script aqui para te mostrar, fiz ele dar 50% para cada monstro, assim:
Uma pergunta, é opção o jutsu não funcionar? porque se não funcionar ele vai dar exhaust sem sumonar...
Aaaa quase esqueci, existem valores que não podem ser concatenados, como boolean, table, nil...
@@Dbko, Tente identar o código, não use o auto indent ainda, tente aprender a identar para depois usar ele...