Ir para conteúdo
  • Cadastre-se

(Resolvido)Tile que heala monstro [8.60]


Ir para solução Resolvido por Wise,

Posts Recomendados

Gostaria de um tile que heale os bichos que passem encima, mas apenas criaturas. Caso um player passe, nada aconteça.

 

OBS.: como vai ser mais de um tile, se possível, que possa repetir o AID ou UID (sei lá qual vai ser usado) em mais de um tile.

OBS2,: favor, colocar efeito quando o bicho passar encima.

 

Vlw <3

Link para o post
Compartilhar em outros sites

Não Testei

function onStepIn(cid)
    if isMonster(cid) then
 
        doCreatureAddHealth(cid, getCreatureHealthMax(cid))
        doSendMagicEffect(getThingPos(cid), 12)
    end
    return true
end
Link para o post
Compartilhar em outros sites
  • Solução
doCreatureAddHealth(cid, getCreatureHealthMax(cid))

Amigo, essa função que você utilizou no segundo parâmetro, não existe. Portanto retornaria um valor nulo; seria getCreatureMaxHealth.

E o modo como ela está sendo aplicada, provavelmente iria bugar os health points do creatureid, já que você fez uma adição do HP máximo dele ao HP atual.

Você têm de subtrair os points máximos pelos points atuais, então, resultando na quantidade exata para "completar" o HP do creatureid:

function onStepIn(cid)
    if isMonster(cid) then
        doCreatureAddHealth(cid, getCreatureMaxHealth(cid) - getCreatureHealth(cid))
        doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE)
    end
    
    return true
end

The corrupt fear us.

The honest support us.

The heroic join us.

Link para o post
Compartilhar em outros sites

 

Amigo, essa função que você utilizou no segundo parâmetro, não existe. Portanto retornaria um valor nulo; seria getCreatureMaxHealth.

E o modo como ela está sendo aplicada, provavelmente iria bugar os health points do creatureid, já que você fez uma adição do HP máximo dele ao HP atual.

Você têm de subtrair os points máximos pelos points atuais, então, resultando na quantidade exata para "completar" o HP do creatureid:

function onStepIn(cid)
    if isMonster(cid) then
        doCreatureAddHealth(cid, getCreatureMaxHealth(cid) - getCreatureHealth(cid))
        doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE)
    end
    
    return true
end

Sim, o código pode estar errado, porém na função "doCreatureAddHealth", não seria necessário adicionar apenas o restante, porque esta função o máximo que ela adiciona é o valor máximo do HP da criatura.

Link para o post
Compartilhar em outros sites

 

na função "doCreatureAddHealth", não seria necessário adicionar apenas o restante, porque esta função o máximo que ela adiciona é o valor máximo do HP da criatura.

Observe-a:

function doCreatureAddHealth(cid, health)
    local c = Creature(cid)
    return c ~= nil and c:addHealth(health) or false
end

Já que não crê em mim, tire a prova, teste.

The corrupt fear us.

The honest support us.

The heroic join us.

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 Sphynx1
      Olá galera, vocês conhecem as lendas dos Trolls de baixo da ponte? Eles estão sempre na espreita, aguardando alguém para roubar, assassinar, estuprar e comer suas almas (as últimas partes são brincadeira). Me baseando nessa lenda eu fiz esse simples script, é um dos primeiros códigos que consigo desenvolver sozinho(tive ajuda), eu espero que ajude alguém em algum lugar do tempoespaço, é um script ótimo se você assim como eu gosta de pontes e também sempre teve a vontade de incrementar alguns de seus mapas com scripts.




       
      1º. Acesse a pasta raiz do seu servidor, logo após siga o seguinte caminho: data/movements e abra o arquivo movements.xml. O código que você devera adicionar dentro deste arquivo está listado abaixo.
      <movevent type="StepIn" actionid="DigiteONumeroDeUmaActionAqui" event="script" value="ponte.lua"/>  
      2º. Dentro de data/movements abra a pasta 'scripts' e crie um arquivo .lua nomeado de 'ponte', dentro deste adicione o seguinte código.
      function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) local configuration = { monstrosTime = 1*5*1000, -- tempo até a criatura aparecer tempoDeStorage = 1*20*1000, -- em quanto tempo será removido a storage e se tornará possivel as criaturas resurgirem storage = 987459, -- numero da storage monsters = { [1] = {name = "Troll Champion", pos = {x = 1001, y = 1110, z = 9}}, -- Nome, quantidade e posição dos monstros, altere a vontade [2] = {name = "Troll", pos = {x = 1000, y = 1107, z = 9}}, [3] = {name = "Troll", pos = {x = 1007, y = 1109, z = 9}} } } if isPlayer(cid) == true then if getPlayerStorageValue(cid, configuration.storage) < 1 then doCreatureSay(cid, "A ponte não parece segura e quando você dá o primeiro passo ouve um grunhido e nota a presença de um ser estranho.", TALKTYPE_ORANGE_1) -- MSG que você quer exibir addEvent(function() for k, v in pairs(configuration.monsters) do doCreateMonster(v.name, v.pos) end end, configuration.monstrosTime) setPlayerStorageValue(cid, configuration.storage, 1) addEvent(function() setPlayerStorageValue(cid, configuration.storage, 0) end, configuration.tempoDeStorage) end end return true end  
      3º. Inicie o seu servidor e adicione o número da 'ActionID' que você inseriu em 'movements.xml' a algum piso de sua preferência, no caso eu adicionei no meio da ponte. Seja criativo.
    • Por ViitinG
      Gostaria de um script que fizese com que o player não possa passar por cima de um certo tile !!
    • Por danielduarte96
      Seguinte galera.. Eu dei uma procurada porém não encontrei. Eu gostaria de um item que desse vip (Vip permanente), e de quebra já queria o tile que a pessoa só passa caso seja vip.
       
      Agradeço desde já!
    • Por llucas75
      Oi tudo bem galera do Tk?
       
      Eu gostaria de saber como eu ativo o display numérico das pots.. tipo ela cura 200 aparece em verde +200.. No meu ele cura e não aparece o display em verdinho.. acontece isso tanto com magia e pots como eu altero isso?
    • Por allanzinh
      Fala galera blz ? espero que sim . Estou presisando de alguem edit ese Script pr mim . ele esrta funfando de boa eo só kero que só players Premio teleport nele a função de lv ele jah contem .
       



       
       
      Quem Ajudar eo do Rep +  obrigado des de ja
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo