Ir para conteúdo

[Pedido] Ao Passar No Tile A Placa Grava O Seu Nome


CoGames

Posts Recomendados

Galera, foi mal eu estar perguntando varias ves, mas quando voltei ao xtibia fiquei com muitas duvidas e perguntas, então vou tentar moderar os meus pedidos!

 

O pedido é assim, gostaria que ao player pisar num tile, apareça o seu nome numa placa, tipo assim: 14:29 You see a blackboard

You read: Pessoas que passaram aqui: CoGames, Blabla, praqnome, etc...

 

Então, se puderem me ajudar fico muito agradecido!

 

REP+ Para quem me ajudar!

 

OBRIGADO!

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

tenta isso

em moveevemts/script crie um arquivo lua com o nome placa.lua e coloca esse script

function onSpetIn(cid, item, pos)
if isPlayer(cid) then
n = getPlayerName(cid)
k = getThing(99988)
s = string.explode(getItemText(k), ",")
if not s then
doSetItemText(k, n)
return TRUE
end
if not table.find(s, n) then
doSetItemText(k, ""..getItemText(k)..","..n.."")
return true
end
end
return TRUE
end

dai se regista no moveevmts.xml com uma essa tag

<movevent event="StepIn" uniqueid="99989" script="placa.lua" />

dai se vai no remere e coloque o uid 99989 no tile e o uid 99988 na placa

 

se n funcionar avise

Link para o comentário
Compartilhar em outros sites

@UP

 

Faltou colocar a mensagem "Pessoas que passaram aqui:"

 

@topic

 

Explicação:

 

Você vai colocar lá a sua placa no mapa sem editar nada nela,deixa em branco que quando passar vai ficar "Pessoas que passaram aqui: /Name1/Name2/.."

 

movements

 

nome do seu script.lua

function onStepIn(cid, item, pos)

local v = getTileItemById({x=154,y=49,z=7}, 1810) -- aqui coloque pos da placa e id da placa
if v.uid < 1 then return false
elseif getPlayerStorageValue(cid,78449) >= 1 then
return false
end
if getItemText(v.uid) == "" then doSetItemText(v.uid,"Pessoas que passaram aqui: ") end
doSetItemText(v.uid,""..getItemText(v.uid):match(".%S*")..""..getItemText(v.uid):match("%S*(.+)").."/"..getPlayerName(cid))
setPlayerStorageValue(cid, 78449, 1)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu nome foi marcado na placa.")
return true
end

 

obs: não precisa editar nada

 

movements.xml

<movevent type="StepIn" actionid="13802" event="script" value="nome do seu script.lua"/>

Link para o comentário
Compartilhar em outros sites

oq não pego? eu testei ake

fez algo errado

 

 

17:50 Seu nome foi marcado na placa.

17:50 You see a blackboard

You read: Pessoas que passaram aqui: /Devil/Vodkart.

ItemID: [1810].

Position: [X: 154] [Y: 49] [Z: 7].

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

n sei, tipo, eu coloquei a action e unique nos chao aonde o cara ia pisa pra aparece na placa, mas n acontece nada quando pisa

 

AH!!! É pra 8.4!

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...