Ir para conteúdo
  • 0

Piso Falante


coriel

Pergunta

Fala galera, tô precisando da ajuda de vocês.. Tenho um script que ao um player passar por um certo piso do mapa, automaticamente todos os players do servidor recebem uma menssagem que esse player está invadindo um castelo. Só que tipo, nesse script não tem o nome da guild do player e nem o tempo certo de enviar a mensagem.. Porque tipo, ele vai ficar passando no piso direto e vai ficar mandando mensagem direto pros players, isso vai ficar chato.. Queria que ao player passar, a menssagem fosse enviada, porem, em um intervalo de 15 segundos. Se ele passar, a mensagem é enviada, se ele passar novamente, a mensagem só pode ser enviada em um intervalo de 15 segundos. Ah, esse intervalo tem que ser de player para player.. Tipo, se um player passar, a mensagem aparece, se outro passar, a mensagem também aparece, ou seja, o intervalo não é pro piso e sim para cada player que passar. Grato! Valendo REP+!

data\movements\scripts\nomedoarquivo.lua

function onStepIn(cid, item, position, fromPosition)
--- configuration by notle  ---
local frase1 = "O player"  -- frase que vem antes do nome do player
local frase2 = "está invadindo o castelo de Rhyves."   -- frase que vem depois do nome do player
--- configuration by notle  ---
broadcastMessage(""..frase1.." ["..getCreatureName(cid).."] "..frase2.." ", MESSAGE_STATUS_WARNING)
return true
end

data\movements\movements.xml

<movevent type="StepIn" actionid="5800" event="script" value="nomedoarquivo.lua"/>
Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

testa esse

function onStepIn(cid, item, position, fromPosition)
--- configuration by notle  ---
local exhaust = 20  -- Tempo para player poder manda messagem denovo! (1 por segundos)
local frase1 = "O player"  -- frase que vem antes do nome do player
local frase2 = "está invadindo o castelo de Rhyves."   -- frase que vem depois do nome do player
--- configuration by notle  ---
if getPlayerStorageValue(cid, 14799) >= os.time() and doPlayerSendCancel(cid, "aguardando "..(getPlayerStorageValue(cid, 14799) - os.time()).." segundos.") then return true end
broadcastMessage(""..frase1.." ["..getCreatureName(cid).."] "..frase2.." ", MESSAGE_STATUS_WARNING)
setPlayerStorageValue(cid, 14799, os.time() + exhaust)
return true
end

só editar local exhaust = 20 -- Block message (1 por segundos)

Editado por notle2012
Link para o comentário
Compartilhar em outros sites

  • 0

Deu certo cara, só que você não colocou a guild.. :/

pode me dizer como vc quer que eu coloque

faz uma simulação ai

exemplo

ta assim

O player [Notle] está invadindo o castelo de Rhyves.

quer que eu coloque como

tipo assim

O player Da Guild [nomedaguild] com nome [Notle] está invadindo o castelo de Rhyves.

 

function onStepIn(cid, item, position, fromPosition)
--- configuration by notle  ---
local exhaust = 20  -- Tempo para player poder manda messagem denovo! (1 por segundos)
local frase1 = "O player da guild"  -- frase que vem antes do nome da guild
local frase2 = "com nome"  -- frase que vem antes do nome dos players
local frase3 = "está invadindo o castelo de Rhyves."   -- frase que vem depois do nome do player
--- configuration by notle  ---
if getPlayerStorageValue(cid, 14799) >= os.time() and doPlayerSendCancel(cid, "aguardando "..(getPlayerStorageValue(cid, 14799) - os.time()).." segundos.") then return true end
broadcastMessage(""..frase1.." ["..getPlayerGuildName(cid).."] "..frase2.." ["..getCreatureName(cid).."] "..frase3.." ", MESSAGE_STATUS_WARNING)
setPlayerStorageValue(cid, 14799, os.time() + exhaust)
return true
end

Editado por notle2012
Link para o comentário
Compartilhar em outros sites

  • 0

pronto

function onStepIn(cid, item, position, fromPosition)
--- configuration by notle  ---
local exhaust = 20  -- Tempo para player poder manda messagem denovo! (1 por segundos)
local frase1 = "O player"  -- frase que vem antes do nome da guild
local frase2 = "da guild"  -- frase que vem antes do nome dos players
local frase3 = "está invadindo o castelo de Rhyves."   -- frase que vem depois do nome do player
--- configuration by notle  ---
if getPlayerStorageValue(cid, 14799) >= os.time() and doPlayerSendCancel(cid, "aguardando "..(getPlayerStorageValue(cid, 14799) - os.time()).." segundos.") then return true end
broadcastMessage(""..frase1.." ["..getCreatureName(cid).."] "..frase2.." ["..getPlayerGuildName(cid).."] "..frase3.." ", MESSAGE_STATUS_WARNING)
setPlayerStorageValue(cid, 14799, os.time() + exhaust)
return true
end

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...