Postado Março 18, 2016 9 anos Vocês conhecem aqueles globalevents que ficam falando de x em x minutos tal mensagem... alguem pode fazer um que apareça essa mensagem em apenas um local? tipo local fpos = {x = 888, y = 767, z = 7} -- pos da area < /\ local tpos = {x = 902, y = 781, z = 7} -- pos da area > \/ ira aparecer a mensagem... se nao estiver dentro das cordenadas não aparece nada. Editado Março 21, 2016 9 anos por pablobion (veja o histórico de edições)
Postado Março 19, 2016 9 anos Solução Não deu pra entender muito bem, fiz um aqui veja se é o que você precisa. Em "Data/globalevents/scripts", broadcastArea.lua: local t = { fromPos = {x = 888, y = 767, z = 7}, toPos = {x = 902, y = 781, z = 7}, message = {[[ Mensagem. Pode adicionar outras linhas: linha 3 linha 4... ]]} } function onThink(interval, lastExecution) for _, pid in pairs(getPlayersOnline()) do if isInRange(getPlayerPosition(pid), t.fromPos, t.toPos) then doPlayerSendTextMessage(pid, 22, t.message[math.random(1,table.maxn(t.message))]) end end return true end Em "Data/globalevents", no arquivo globalevents.xml: <globalevent name="broadcastArea" interval="5" event="script" value="broadcastArea.lua"/> Se não for isso que você está procurando, tente explicar melhor.
Postado Março 21, 2016 9 anos Em 18/03/2016 em 21:04, pablobion disse: Vocês conhecem aqueles globalevents que ficam falando de x em x minutos tal mensagem... alguem pode fazer um que apareça essa mensagem em apenas um local? tipo local fpos = {x = 888, y = 767, z = 7} -- pos da area < /\ local tpos = {x = 902, y = 781, z = 7} -- pos da area > \/ ira aparecer a mensagem... se nao estiver dentro das cordenadas não aparece nada. fiz um bem simples pra vc poder modificar a gosto é em globalevents crie la o arquivo .lua e coloque: Mostrar conteúdo oculto function onThink(interval, lastExecution, thinkInterval) local pos = {x=925, y=1021, z=10} -- posição doSendAnimatedText(pos, "mensagem que vc quer", 30) -- mensagem e o 30 é a cor doSendMagicEffect(pos , 12) -- o 12 é o efeito que vai aparecer quando soltar a mensagem return true end a tag é: Mostrar conteúdo oculto <globalevent name="msg" interval="2" event="script" value="nomedoarquivo.lua"/> name=" é o nome da sua tag interval é o tempo que vai demorar para o globlaevents ficar ativando, o meu é em segundos se o seu servidor for em milisegundo coloque 1000, 2000... e assim por diante value=" o nome do arquivo.lua que vc coloco o arquivo Em 19/03/2016 em 16:45, Wakon disse: Não deu pra entender muito bem, fiz um aqui veja se é o que você precisa. Em "Data/globalevents/scripts", broadcastArea.lua: local t = { fromPos = {x = 888, y = 767, z = 7}, toPos = {x = 902, y = 781, z = 7}, message = {[[ Mensagem. Pode adicionar outras linhas: linha 3 linha 4... ]]} } function onThink(interval, lastExecution) for _, pid in pairs(getPlayersOnline()) do if isInRange(getPlayerPosition(pid), t.fromPos, t.toPos) then doPlayerSendTextMessage(pid, 22, t.message[math.random(1,table.maxn(t.message))]) end end return true end Em "Data/globalevents", no arquivo globalevents.xml: <globalevent name="broadcastArea" interval="5" event="script" value="broadcastArea.lua"/> Se não for isso que você está procurando, tente explicar melhor. @Wakon seu script é ótimo mais acho que não foi bem isso o que ele pediu rsrs ele quer um piso falante tlg igua tibia onde fica aquelas mensagens que fica em um unico piso falando VIP... VIP (isso foi um exemplo) uheueuhe
Postado Março 22, 2016 9 anos Pedro, você deu reputação para os dois mas não informou se o seu problema foi resolvido. Favor marcar como melhor resposta aquele que te ajudou.
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.