Ir para conteúdo

Featured Replies

Postado

Boa noite galera.

 

Eu queria um script que se o jogador clicar na alavanca ele faz um efeito de ataque, tipo:

 

O jogador clica na alavanca e quem estive nessas coordenadas sofrem danos "X" escolhido por mim.

 

A configuração do script sobre as coordenadas podem ser assim:

 

local pos = {
fromx=556,
fromy=451,
tox=566,
toy=456,
z=6
}
 
Dai quem estiver nesses tiles durante o click do jogador perde a quantidade de hp que eu definir no caso se não tiver o suficiente morre se o caso do Dano sofrido for maior do que o Hp que o jogador tiver.
 
Se tiver como fazer esse tipo de script me ajudará muito e até a outros que queiram implementar esse tipo de ideia em uma quest ou evento.
 
Agradeço a quem poder ajudar.. Abraço!
  • Respostas 7
  • Visualizações 448
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • local config = {  fromPos = {x=556,y=451,z=6}, -- posição superior esquerda do mapa, da area em que esta mapeado a area.  toPos = {x=566,y=456,z=6}, -- posição inferior direita do mapa, da area em que

Postado

amigo tente esse:

function onUse(cid, item, fromPosition, itemEx, toPosition)
doSendMagicEffect(getCreaturePosition(cid),33)
doPlayerRemoveHealth(cid, 1)
pos = {x = 100, y = 100, z = 7}

return TRUE
end

pos = {x = 100, y = 100, z = 7} ---> Aqui você coloca a posição do mapa onde vai surgir o efeito

doPlayerRemoveHealth(cid, 1) --> No 1 é a life que vai tirar do player

Postado
  • Autor

Daaniel o script não funcionou aqui não, aparece no distro, Attempt to call global 'doPlayerRemoveHealth' <a nil value>

 

Teria como ver isso ai? Agradeço! ^^,

Postado
local config = {
 fromPos = {x=556,y=451,z=6}, -- posição superior esquerda do mapa, da area em que esta mapeado a area.
 toPos = {x=566,y=456,z=6}, -- posição inferior direita do mapa, da area em que esta mapeado a area.
 damage = 100 -- quantidade de vida que os jogadores na area irão perder
}

function onUse(cid, item, fromPosition, itemEx, toPosition)
 doDamagePlayerInArea(fromPos, toPos)
 return TRUE
end

function doDamagePlayerInArea() -- by Daaniel
  local positionsCheck = {}
  for i = config.fromPos.x, config.toPos.x do
   positionsCheck[#positionsCheck+1] = {x=i, y = config.fromPos.y, z = config.fromPos.z, stackpos = 0}
   for j = config.fromPos.y+1, config.toPos.y do
    positionsCheck[#positionsCheck+1] = {x=i, y = j, z = config.fromPos.z, stackpos = 0}
   end
  end
  for j=1, #positionsCheck do
   for i = 0, 255 do
    positionsCheck[j].stackpos = i
    local tile = getTileThingByPos(positionsCheck[j])
    if isPlayer(tile.uid) then
     doSendMagicEffect(tile.uid,33)
     doCreatureAddHealth(tile.uid, -config.damage)     
    end
   end
  end
end
Postado
  • Autor

Daaniel esse script que você passou deu certo só ta com um erro, se eu deixar o "doSendMagicEffect(tile.uid,33)" - Description: Attempt to index a number value stack traceback: [C]: in function 'doSendMagicEffect', in function 'doDamagePlayerInArea' - o script não funciona, mais se eu tirar o efeito ele funciona perfeitamente, o problema é que sem efeito, os jogadores não saberão de onde veio os hits.. Rsrsrsrs

 

Já dei Rep se ajeitar essa parte da magia darei mais outro .. De todo jeito eu vou tentando aqui também!

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo