FO

Mensagem Position

Por fokus090, 14 de mar. de 2012 em Scripts

uma ajudinha rápida !!
16
2.2k
fokus090F
14 de março de 2012 às 21:03

Oi, oi galerinha do XTibia. Estou precisando de uma ajudinha rapida. Tive umas idêias aqui mas preciso dessa ajuda pra poder avançar adiante no projeto.

 

Bom.. Segue Abaixo ::

 

[+] Mensagem Position [+]

 

Gostaria que ao Pisar no Tile com Action ou Unique "XXXX", apareça uma mensagem na Posição "X" e não em cima do Personagem. É algo mais ou menos isso ::

 

function onStepIn(cid, item, position, FromPosition)

doCreatureSay(cid,'Mensagem de Teste!!',1)
return true
end

 

Mas quero que a mensagem "Mensagem de Teste" apareça na posição que eu determinar. Uma Posição diferente de onde ta o Tile com Action ou Unique ID. Tipo isso ::

 

function onStepIn(cid, item, position, FromPosition)
local pos = {x=47, y=39, z=7}

doCreatureSay(pos,'Mensagem de Teste!!',1)
return true
end

 

Resumindo :: Eu quero que aquelas "Mensagens Amarelinhas" apareça em cima do Tile, sem ter jogador lá!

Espero que tenham entendido.

Não sei como fazer. Conto com a ajuda de vocês !!

Abraços !!

Editado Março 15 por Frenesy

ZmovirZ
14 de março de 2012 às 21:09

Duvida

 

ele vai podeer pisar so uma x ou quantas quiser?

fokus090F
14 de março de 2012 às 21:11

Apenas uma vez !!

ZmovirZ
14 de março de 2012 às 21:22

Nem testei

 

function onStepIn(cid, item, position, fromPosition)

local pos = {x=47, y=39, z=7}

 

 

if (getPlayerStorageValue(cid,202060) == 1) then

doPlayerSendCancel(cid, 'voce nao pode subir aki denovo.')

doTeleportThing(cid, fromPosition, true)

return TRUE

end

 

setPlayerStorageValue(cid,202060,1)

doSendAnimatedText(pos, "Mensagem", 18)

return TRUE

end

 

end

fokus090F
14 de março de 2012 às 21:35

Talvez a culpa seja minha, eu não devo ter explicado Direito. Mas tipo ...

 

Quando o Player Pisa no Tile com Action ou Unique ID nele, aparece aquela mensagem Amarela no default. Aquela que os Players usam pra conversar normal entende. Por isso lá no exemplo eu adicionei :

doCreatureSay(cid,'Mensagem de Teste!!',1)

 

O "1" no final alí representa que a "Mensagem de Teste" aparecerá no formato daquelas "Mensagens Amarelinhas".

Acho que você me entendeu e sabe do que eu estou falando.

 

Desculpe não ter explicado direito!!

ZmovirZ
14 de março de 2012 às 21:43

Boeie veio vce quer que as mensagem amarela apareceça num tile? sem ter player la?

 

testa esse

function onStepIn(cid, item, position, fromPosition)

 

if (getPlayerStorageValue(cid,202060) == 1) then

doPlayerSendCancel(cid, 'voce nao pode subir aki denovo.')

doTeleportThing(cid, fromPosition, true)

return TRUE

end

 

setPlayerStorageValue(cid,202060,1)

doCreatureSay(cid, texto, 1)

return TRUE

end

 

end

fokus090F
14 de março de 2012 às 21:44

Boeie veio vce quer que as mensagem amarela apareceça num tile? sem ter player la?

 

Poxa vida, você explicou tudo em poucas palavras ...

 

É exatamente isso !!

ZmovirZ
14 de março de 2012 às 21:47

Nao sei se e possivel mais

 

function onStepIn(cid, item, position, fromPosition)

local pos = {x=47, y=39, z=7}

 

 

if (getPlayerStorageValue(cid,202060) == 1) then

doPlayerSendCancel(cid, 'voce nao pode subir aki denovo.')

doTeleportThing(cid, fromPosition, true)

return TRUE

end

 

setPlayerStorageValue(cid,202060,1)

doCreatureSay(pos, teste, 1)

return TRUE

end

 

end

fokus090F
14 de março de 2012 às 21:51

Olha, eu vou testar aqui, mas dando uma olhada rápida aí no Script, se eu tirar a Parte onde verifica a Storage alí, ficaria bem parecido com o meu alí do exemplo.

 

function onStepIn(cid, item, position, fromPosition)
local pos = {x=47, y=39, z=7}

doCreatureSay(pos, teste, 1)
return TRUE
end

end

 

Foi só uma Observação !! ;D

 

@Edit

 

[14/03/2012 08:55:05] [Error - MoveEvents Interface]
[14/03/2012 08:55:05] data/movements/scripts/Teste.lua:onStepIn
[14/03/2012 08:55:05] Description:
[14/03/2012 08:55:05] (luaDoCreatureSay) Creature not found

Editado Março 14 por Frenesy

ZmovirZ
14 de março de 2012 às 22:07

Eu acharia que nao ia funcionar porque isso e uma fala de player seila nao pode ser esse animated text aki?

 

function onStepIn(cid, item, position, fromPosition)

local pos = {x=47, y=39, z=7}

 

 

if (getPlayerStorageValue(cid,202060) == 1) then

doPlayerSendCancel(cid, 'voce nao pode subir aki denovo.')

doTeleportThing(cid, fromPosition, true)

return TRUE

end

 

setPlayerStorageValue(cid,202060,1)

doSendAnimatedText(pos, "Mensagem", 18)

return TRUE

end

 

end

 

 

@EDIT

 

Testa denovo

 

function onStepIn(cid, item, position, fromPosition)

local pos = {x=47, y=39, z=7}

 

 

if (getPlayerStorageValue(cid,202060) == 1) then

doPlayerSendCancel(cid, 'voce nao pode subir aki denovo.')

doTeleportThing(cid, fromPosition, true)

return TRUE

end

 

setPlayerStorageValue(cid,202060,1)

doCreatureSay(cid, pos, teste, 1)

return TRUE

end

 

end

 

 

 

Nao sei se esse /\ ira funcionar

fokus090F
14 de março de 2012 às 22:12
Eu acharia que nao ia funcionar porque isso e uma fala de player seila nao pode ser esse animated text aki?

 

AnimatedText não encaixa na minha idêia!!

 

Nao sei se esse /\ ira funcionar

 

Não deu !!

 

-----------------------

 

Não achei que seria algo tão difícil, tentei de tudo aqui em Casa mas não consegui. Por isso vim aqui no Fórum. Me pareceu algo tão simples de fazer no início. Preciso muito disso. Vou tentar algumas opções aqui em casa. Se Alguem tiver alguma solução ...

 

Abraços !!

MulizeuM
15 de março de 2012 às 10:25

Simples! edita a position e messagem

 

function onStepIn(cid, position, FromPosition)
local pos = {x=1053, y=1057, z=7}
local random = math.random(1,100)
doSendAnimatedText(pos,"Teste",random)
return TRUE
end

Editado Março 15 por mulizeu

fokus090F
15 de março de 2012 às 10:51

Eu quero que as "Mensagens Amarelas" Apareça no Tile, sem o Player estar lá!

E eu não quero usar a função ::

 

doSendAnimatedText(pos,"Teste",random)

 

Porque eu quero fazer tipo um Dialógo. E esse AnimatedText são serviria. Sâo mostrados apenas mensagens curtas que somem em instantes.

Editado Março 15 por Frenesy

2 semanas depois...
alissonfgpA
28 de março de 2012 às 09:02

vc quer que fica saindo tipo uma msg do chao de um certo tempo

bom ser for isso tenho um script aki..

 

 

 

Va em globalevents e cole isto la

 

 

 

crie um arquivo animatedtext.lua e cole isso dentro dele

 

local config = {

positions = {

["Bem Vindo!"] = { x = 32369, y = 32241, z = 7 },

[" <-- City, Casas e Npcs!"] = { x = 32039, y = 31964, z = 7 },

["Hunts, Quest, Treiners"] = { x = 32046, y = 31964, z = 7 },

["Hunts Vip!"] = { x = 32066, y = 31934, z = 7 },

["Treiners"] = { x = 32066, y = 31932, z = 7 },

["Promotion"] = { x = 32071, y = 31930, z = 7 },

["Quests"] = { x = 32066, y = 31936, z = 7 }

}

}

 

function onThink(cid, interval, lastExecution)

for text, pos in pairs(config.positions) do

doSendAnimatedText(pos, text, math.random(1, 255))

end

 

return TRUE

end

 

 

 

----> no "Bem vindo" o que vc escreve vai ser o que ira sair na posiçao ["Bem Vindo!"] = ---->Posiçao daonde vc quer que saia as msg { x = 32369, y = 32241, z = 7 },

 

dps que termina o animatedtext.lua cole ele dentro da pasta scripts que esta dentro da pasta globalevents.

 

espero ter ajudado :D

Editado Março 28 por alissonfgp

SubwatS
28 de março de 2012 às 11:51

não é isso que ele quer, ele quer que tipo como se um player tivesse dito algo num tile só que o player não vai estar lá, entendeu?