Ir para conteúdo
  • Cadastre-se

Derivado [HELP-ME] Stone com mal funcionamento!


Posts Recomendados

Olá novamente pessoas,

 

Recentemente (ontém e.e) eu adicionei uma stone ao server, peguei como base o script de uma stone que já funcionava antes e, deu certo... Quase.

Acontece assim: A stone funciona, evolui o poke normalmente, remove o item da bag após uso e o poke aparece na ball... Tudo ok, certo? O problema é: O poke vem com 130 de HP ;-;

Ele volta ao normal se morrer uma vez ou voltar p ball e for posto p fora novamente, mas acho meio chato isso, por dois motivos:

 

1°. A felicidade do pokémon é totalmente zerada, e no meu servidor, pokémon triste = pokémon fraco;

2°. É chato para o player ter que, sempre que evoluir um poke com esta stone, ficar colocando o poke de volta na ball.

 

Quando usa a stone, aparece o seguinte erro:

[Error - Action Interface] 
attempt to index local 'getShinyPokeballs' (a nil value)

Não entendi este erro, sei que fala sobre um valor nulo, mas não sei o que significa.            Obs.: Nunca vi ou ouvi sobre Shiny Pokeball no server.

 

Por favor, me ajudem?

(deve estar ficando chato ver tantos posts meu pedindo ajuda... um dia trago algo p vcs, mesmo q demore um tempo rsrs)

Editado por Yukari Moon (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Como você quer que alguem te ajuda se você não disponibiliza a script ?

giphy.gif

Link para o post
Compartilhar em outros sites

Sorry, nem pensei nisso :/

Aqui está:

Spoiler

local evo = {

["Mega Manectric"] = {"Black Mega Manectric", 1},
}

local balls = { [2391] = {newBall = 2391},
        [2392] = {newBall = 2392},
        [2393] = {newBall = 2393},
        [2394] = {newBall = 2394},
        }

function onUse(cid, item, fromPosition, itemEx, toPosition)
   if isMonster(itemEx.uid) and getCreatureMaster(itemEx.uid) == cid then
          local monster = getCreatureName(itemEx.uid)
          if evo[monster] then  
                 if getPlayerItemCount(cid, item.itemid) >= evo[monster][2] then
                    doPlayerSendTextMessage(cid, 27, "Parabens! Seu "..getPokeName(itemEx.uid).." evoluiu para"..evo[monster][1].."!")
                    local health, maxHealth = getCreatureHealth(itemEx.uid), getCreatureMaxHealth(itemEx.uid)
                    doSendMagicEffect(getThingPos(itemEx.uid), 18)
                    doRemoveCreature(itemEx.uid)
                    doPlayerRemoveItem(cid, item.itemid, evo[monster][2]-1)
                    doRemoveItem(item.uid, 1)
                    doSummonMonster(cid,evo[monster][1])
                    local pokeball = getPlayerSlotItem(cid, 8)
                    doItemSetAttribute(pokeball.uid, "poke", evo[monster][1])
                    doItemSetAttribute(pokeball.uid, "level", pokes[evo[monster][1]].level)
                    doItemSetAttribute(ball, "hp", 1)
                    doItemSetAttribute(ball, "happy", 110)
                    local pk = getCreatureSummons(cid)[1]
                    local getShinyPokeballs = balls[getPlayerSlotItem(cid, 8).itemid]
                    doTransformItem(getPlayerSlotItem(cid, 8).uid, getShinyPokeballs.newBall)
                    adjustStatus(pk, pokeball.uid, true, false, true)
                    return TRUE
                 else
                    return doPlayerSendTextMessage(cid, 27, "You need atleast ".. evo[monster][2] .." stones to do it!")
                 end
          end
end
return FALSE
end

Localizado em data > actions > scripts

Se precisar saber como está em actions.xml ou algum outro, diga. Mas creio que não seja preciso, já que a Stone funciona no jogo.

 

Link para o post
Compartilhar em outros sites

Troque : 

doItemSetAttribute(ball, "hp", 1)

Por :

doItemSetAttribute(ball, "hp", maxHealth)

 

giphy.gif

Link para o post
Compartilhar em outros sites

Troquei, mas não deu certo. A evolução continua ocorrendo, mas o pokémon continua aparecendo com a vida baixa.

 

Edit: Acabei de reparar também que aparece um erro (mas não sei qual seria ele) também nessa linha:

function onUse(cid, item, fromPosition, itemEx, toPosition)

 

Editado por Yukari Moon (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Apenas delete as linhas:
 

Citar

                    doItemSetAttribute(ball, "hp", 1)
                    doItemSetAttribute(ball, "happy", 110)

E o sistema da stone não vai alterar o HP e Happy do poke.

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

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.

  • Conteúdo Similar

    • Por LeoTK
      Salve galera neste tópico irei postar algumas prints do mapa do servidor para quem queira acompanhar e quem sabe até utilizar de inspiração para mapear o seu NTO.
       
      #Att 11/08/2022

       
       
       
       
      Konoha (Em Desenvolvimento)
       
       
       
       
    • Por DiigooMix
      Como o título já diz, será que alguém possui sprite do hitto e se possível as transformações dele?
    • Por OmegaZero
      Olá gostaria que alguém me ajudasse com uma "scripting" não sei se é pela mesma, seria o seguinte uma determinada arma teria a chance de dar double hit e não sei oque fazer alguem poderia ajudar?

      OBS:não sei se é o local correto se não for mova, desculpe
    • Por Madarasenju
      Olá galera do Tibia King, queria por uns npc's no meu server que não tem função de trade nem nada do tipo, queria que eles só andassem como enfeite, Rep+ Pra quem me ajudar... grato desde já.
    • Por SilenceRoot
      A magia é assim o você usa a a magia e ela ficará ativado por 10 segundos, até que o inimigo lance a primeira magia ou todos de uma vez, quando ele lançar a primeira magia, ele não lhe acertará ou seja esquivando dela, e logo em seguida será teletransportado aleatoriamente ao redor do inimigo que usou.
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo