Ir para conteúdo
  • Cadastre-se

(Resolvido)[AJUDA] Sistema de checar a life do personagem !life


Ir para solução Resolvido por narazaky,

Posts Recomendados

Eu estava pesando e devido o sistema da armor o kra n ve quanto de life tem entao penseio em um comando estilo o de nto server que o player diria o seguinte comando.

 

!life === ae mostraria assim.

 

Exemplo:

 

Life [19000]-[20000]

 

         /\                /\

quanto se tem.  O total que vc tem.

 

Obrigado galerinha ate dps...

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

Primeiro, uma observação que eu penso que foi um erro... :s

Life [19000]-[2000]            /\                /\ quanto se tem.  O total que vc tem.
 

Como que o total de life é menor que a qntd atual de life? Por ixxo, deduzi que o maximo que vc qria dizer seria "20000".

 

 

Mas passando pro que vc pediu: Agora não posso fazer, pois estou de saída (apesar de ser relativamente facil de fazer o que vc qr.).

 

Quem puder ajudar o amigo, pode fazer assim:

mandar uma mensagem pro player contendo o health atual do player (getPlayerHealth) e o máximo de life possivel atualmente pro player (getPlayerMaxHealth).

Te ajudei?? REP + e ficamos quites... <ahttp://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'>

Atenciosamente,

Daniel.

Abraços!

Link para o post
Compartilhar em outros sites

veja

function onSay(cid, words, param, channel)
local pid = getPlayerByNameWildcard(param)
if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "O jogador com o nome " .. param .. " não esta online ou não existe.")
return true
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Life ["..getPlayerHealth(pid).."] ["..getPlayerMaxHealth(pid).."]")
return true
end

Te ajudei? Então Rep + ;)

Link para o post
Compartilhar em outros sites

Man nn pegou aki nn eu falo !life e ae diz O jogador com o nome  não esta online ou não existe. ae quanmdo eu digo !life e o nome do player buga a DB e o servidor cai man...

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

Fiz para mostrar exatamente como vc disse lá em cima. Assim deve funcionar:

 

lifeP.lua (data/talkactions/scripts):

function onSay(cid, words, param, channel)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Life ["..getPlayerHealth(cid).."] - ["..getPlayerMaxHealth(cid).."]")
return true
end

Tag em talkactions.xml:

	<talkaction words="!life;/life" event="script" value="lifeP.lua"/>

Te ajudei?? REP + e ficamos quites... <ahttp://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'>

Atenciosamente,

Daniel.

Abraços!

Link para o post
Compartilhar em outros sites

Man nn pegou nn olha oq ta dando:

 

[Error - TalkAction Interface]
data/talkactions/scripts/lifeP.lua:onSay
Description:
data/talkactions/scripts/lifeP.lua:2: attempt to call global 'getPlayerHealth' (a nil value)
stack traceback:
        data/talkactions/scripts/lifeP.lua:2: in function <data/talkactions/scripts/lifeP.lua:1>

Link para o post
Compartilhar em outros sites

Tenta assim:

function onSay(cid, words, param, channel)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Life ["..tonumber(getPlayerHealth(cid)).."] - ["..tonumber(getPlayerMaxHealth(cid)).."]"
return true
end

Te ajudei?? REP + e ficamos quites... <ahttp://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'>

Atenciosamente,

Daniel.

Abraços!

Link para o post
Compartilhar em outros sites

Ainda nn deu man olha:

 

[Error - TalkAction Interface]
data/talkactions/scripts/lifeP.lua:onSay
Description:
data/talkactions/scripts/lifeP.lua:2: attempt to call global 'getPlayerHealth' (
a nil value)
stack traceback:
        data/talkactions/scripts/lifeP.lua:2: in function <data/talkactions/scri
pts/lifeP.lua:1>
[Error - LuaScriptInterface::loadFile] data/talkactions/scripts/lifeP.lua:3: ')'
 expected (to close '(' at line 2) near 'return'
[Warning - Event::loadScript] Cannot load script (data/talkactions/scripts/lifeP
.lua)
data/talkactions/scripts/lifeP.lua:3: ')' expected (to close '(' at line 2) near
 'return'
Link para o post
Compartilhar em outros sites

Tente esse:

function onSay(cid, words, param, channel)
local pid = getPlayerByNameWildcard(param)
if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "O jogador com o nome " .. param .. " não esta online ou não existe.")
return true
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Life ["..getCreatureHealth(pid).."] ["..getCreatureMaxHealth(pid).."]")
return true
end

ou esse

function onSay(cid, words, param, channel)
local pid = getPlayerByNameWildcard(param)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Life ["..getCreatureHealth(pid).."] - ["..getCreatureMaxHealth(pid).."]")
return true
end
Editado por narazaky (veja o histórico de edições)

Te ajudei? Então Rep + ;)

Link para o post
Compartilhar em outros sites

Man obrigadao mesmo pegou so tem um probleminha pra chekar a life tem que dizer o nome do player mais nn tem problema eu coloco esplicaçao sobre como usar o comando :) Rep pra vc e pro Danihvc que pelo menos tentou me ajudar mais os dele nn pegou obrigado...

 

Ao me ajudar vc esta ajudando a todos pq minha net nn pode por server online entao eu edito eles e posto aki no TK pra pessoas que gostao de jogar e dexalos online :)    :P

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

@narazaky, amigo, ele não qr ter que escrever o nome do player não... Ele quer apenas o comando !life sem nenhum parâmetro. Pelo que eu entendi, é claro. :s

 

@Edit, acabei de ver que o membro já explicou. :S

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

Te ajudei?? REP + e ficamos quites... <ahttp://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'>

Atenciosamente,

Daniel.

Abraços!

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

enttao so usar esse:

o de cima editado

function onSay(cid, words, param, channel)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Life ["..getCreatureHealth(cid).."] - ["..getCreatureMaxHealth(cid).."]")
return true
end

Te ajudei? Então Rep + ;)

Link para o post
Compartilhar em outros sites

Calma galera o problema ja foi resolvido funcionol perfeitamente como eu queria kkk... Obrigado a todos podem remover o topico Obrigado...

Link para o post
Compartilhar em outros sites

@danihcv / @narazaky

attempt to call global 'getPlayerHealth' (a nil value)


O erro indicava que o que foi executado retornou um valor nulo, ou seja, a função chamada não existe.
Nas versões mais atuais, as funções getPlayerHealth e getPlayerMaxHealth não são mais utilizadas.




@Master zikka
Já que o seu pedido foi atendido, por favor clique no botão HetmXYO.png?1?9508 que está localizado abaixo do post de quem te ajudou. Automaticamente ele irá ficar destacado como a melhor resposta e o tópico ficará com o prefixo "Resolvido" no início do título.

The corrupt fear us.

The honest support us.

The heroic join us.

Link para o post
Compartilhar em outros sites

@Suicide, obrigado por alertar, mas justamente por ter sido retornado um valor nulo, tentei fazer modificações para achar outro jeito de pegar o cid... :s Inclusive mandei o script modificado por pm pro membro. Mas o problema ja havia sido solucionado. ^^ 

 

Mas enfim, não qro floodar mais o tópico. :s

Te ajudei?? REP + e ficamos quites... <ahttp://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'>

Atenciosamente,

Daniel.

Abraços!

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