Ir para conteúdo
  • Cadastre-se

(Resolvido)Experience rune


Ir para solução Resolvido por xWhiteWolf,

Posts Recomendados

Olá a todos, tenho uma rune no meu server que está funcionando 100%, mas gostaria quando for usada, mostrar a xp subindo no char...

 

 

local exp = 500000 -- Quanto de experience o player irá ganhar

local exhaust = 3600 -- Tempo para o player poder usar o item novamente! (tempo em segundos)
local text = "Congratulations, you gained "..exp.." points of experience."
local storage = 9811 -- Não mexa aqui.
 
function onUse(cid, item, fromPosition, itemEx, toPosition)
if (getPlayerStorageValue(cid, storage) <= os.time()) then
            doPlayerAddExp(cid, exp)
            doCreatureSay(cid, text, 14)
            doSendMagicEffect(getCreaturePosition(cid), 5)
            doRemoveItem(cid, item.uid, 1)
            setPlayerStorageValue(cid, storage, os.time()+exhaust)
        else
            doPlayerSendCancel(cid, "Sorry, you only can again use this item after "..exhaust.." seconds.")
        end
    return TRUE
end

 

Obrigado =)

Link para o post
Compartilhar em outros sites

adiciona isso embaixo de doPlayerAddExp(cid,exp)

 doSendAnimatedText(pos, "+"..exp , TEXTCOLOR_GREEN)   

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

Apareceu o seguinte erro:

 

Lua Script error: [action interface]

data/actions/scripts/exprune.lua:onUse

 

attempt to index a nil vaule

stack traceback:

[C]: in function 'doSendAnimatedText'

data/actions/scripts/exprune.lua:9: in function <data/actions/scripts/exprune.lua:6>

 

 

 

Action ficou assim:

 

local exp = 500000 -- Quanto de experience o player irá ganhar?!

local exhaust = 1 -- Tempo para o player poder usar o item novamente! (tempo em segundos)
local text = "Congratulations, you gained "..exp.." points of experience."
local storage = 9811 -- Não mexa aqui.
 
function onUse(cid, item, fromPosition, itemEx, toPosition)
if (getPlayerStorageValue(cid, storage) <= os.time()) then
            doPlayerAddExp(cid, exp)
            doSendAnimatedText(pos, "+"..exp , TEXTCOLOR_GREEN)  
            doCreatureSay(cid, text, 14)
            doSendMagicEffect(getCreaturePosition(cid), 5)
            doRemoveItem(cid, item.uid, 1)
            setPlayerStorageValue(cid, storage, os.time()+exhaust)
        else
            doPlayerSendCancel(cid, "Sorry, you only can again use this item after "..exhaust.." seconds.")
        end
    return TRUE
end
Editado por zuckah (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

esqueci de declarar oque era o "pos"   

    local pos = getPlayerPosition(cid)

ficando assim:

local exp = 500000 -- Quanto de experience o player irá ganhar?!local exhaust = 1 -- Tempo para o player poder usar o item novamente! (tempo em segundos)
local text = "Congratulations, you gained "..exp.." points of experience."
local storage = 9811 -- Não mexa aqui.


function onUse(cid, item, fromPosition, itemEx, toPosition)
if (getPlayerStorageValue(cid, storage) <= os.time()) then
            doPlayerAddExp(cid, exp)
  local pos = getPlayerPosition(cid)
            doSendAnimatedText(pos, "+"..exp , TEXTCOLOR_GREEN)  
            doCreatureSay(cid, text, 14)
            doSendMagicEffect(getCreaturePosition(cid), 5)
            doRemoveItem(cid, item.uid, 1)
            setPlayerStorageValue(cid, storage, os.time()+exhaust)
        else
            doPlayerSendCancel(cid, "Sorry, you only can again use this item after "..exhaust.." seconds.")
        end
    return TRUE
end
Editado por xWhiteWolf (veja o histórico de edições)

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

Tem algumas falhas agora... Agora mostra a xp subindo no char, mas n funfa com a cor verde e nem a branca que eu queria, quando eu coloco essas cores a xp sai preta.

Tambem a msg "Congratulations you gained "..exp.." points of experience." não aparece mais.

Link para o post
Compartilhar em outros sites
  • Solução

peguei isso na lib do meu server.. aqui funcionou normal a cor verde, o problema foi que o docreature say tá saindo do lado do numero de exp então fica bem zoado, sugiro que vc troque  doCreatureSay(cid, text, 14) por isso daqui:

doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, text)

e sobre a cor sair preta.. eu não testei, mas não tem porque não sair da cor que eu coloquei lá, a menos que seu server não tenha definido na lib oque é a TEXTCOLOR_GREEN.

  doSendAnimatedText(pos, "+"..exp , TEXTCOLOR_GREEN)  

tenta substituir seguindo essa tabela aqui que eu peguei na lib do meu server

TEXTCOLOR_BLUE = 5
TEXTCOLOR_GREEN = 18
TEXTCOLOR_TEAL = 35
TEXTCOLOR_LIGHTGREEN = 66
TEXTCOLOR_DARKBROWN = 78
TEXTCOLOR_LIGHTBLUE = 89
TEXTCOLOR_DARKPURPLE = 112
TEXTCOLOR_BROWN = 120
TEXTCOLOR_GREY = 129
TEXTCOLOR_DARKRED = 144
TEXTCOLOR_DARKPINK = 152
TEXTCOLOR_PURPLE = 154
TEXTCOLOR_DARKORANGE = 156
TEXTCOLOR_RED = 180
TEXTCOLOR_PINK = 190
TEXTCOLOR_ORANGE = 192
TEXTCOLOR_DARKYELLOW = 205
TEXTCOLOR_YELLOW = 210
TEXTCOLOR_WHITE = 215
TEXTCOLOR_NONE = 255

ficando assim:   

doSendAnimatedText(pos, "+"..exp , 18)  

 se quiser o white coloca 215 no lugar do 18. Testa assim

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

vou testar e já falo como foi =)

 

EDIT: xWhiteWolf obrigado por ajudar, funfou 100% !

vc é o cara!  =P

 

REP + !

 

tópico resolvido, podem fechar.

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

eu descobri ontem a noite que os donos dos tópicos podem fechar os mesmos: http://www.tibiaking.com/forum/topic/30233-sistema-de-t%C3%B3picos-resolvidos/

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo