Ir para conteúdo
  • 0

Tile que Npc não passe por ele, e guild tile.


Pergunta

Galera, mais uma vez eu aqui pedindo kk, preciso de uma script, (movements) que não deixe npcs passar sobre ele, ele tenta passar e volta pra tras.

Preciso também de um guild tile (também movements) que só players de certa guild consiga passar sobre ele.

 

Vlw Vlw :D (quando eu puder dar rep+ eu dou)

Link para o comentário
https://xtibia.com/forum/topic/209898-tile-que-npc-n%C3%A3o-passe-por-ele-e-guild-tile/
Compartilhar em outros sites

Posts Recomendados

  • 0

Bom, o do NPC eu dou uma pesquizada depois

Porém o do player que é de certa guild, está aqui...

Voce edita o nome da guild na variavel

Guild '-'..

 

 


function onStepIn(cid, item, pos)
guild = "Ppkeiros"
pos = {x = 123, y = 321, z = 7}
if isPlayer(cid) then

if getPlayerGuildName(cid) ~= guild then
doTeleportThing(cid, pos)
return true
end
end

  • 0
function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor)

if isNpc(cid) then
return doTeleportThing(cid, fromPosition, false)
end
return true
end

  • 0

Orochi n daria pra por como action id ? pra n ficar colocando a position, caso a resposta seja não, para colocar varios tiles teria que fazer muitas copias da script ?

Editado por BrenoNeto
  • 0

faz assim

 

function onStepIn(cid, item, pos)
guild = "Ppkeiros"
pos = {x = 123, y = 321, z = 7
if isPlayer(cid) then
if getPlayerGuildName(cid) ~= guild then
doTeleportThing(cid, pos)
return true
end
else
doTeleportThing(cid, fromPosition, true)
end

Editado por Gears
  • 0

Breno, o ActionID voce poe no XML do Movements.

 

 

function onStepIn(cid, item, pos)

guild = "Ppkeiros"

if isPlayer(cid) then

 

if getPlayerGuildName(cid) ~= guild then

doTeleportThing(cid, fromPosition, false)

return true

end

end

  • 0

@UP o teu e o do orochi não vai funcionar

 

@Orochi, Você declarou a variável pos 2 vezes uma na função e a variável lá.

 

@Gears, Você não declarou a variável fromPosition.

 

@EDIT

Agora os 2 não declararam a variável fromPosition.

Editado por Skymagnum
  • 0

pos = {x = 123, y = 321, z = 7}

 

E pra que serve isso então ?

Pergunto se não da pra fazer igual o SkyMagnum fez, sem position apenas daquele geito ali...

  • 0

Na verdade skymagnum, ali o fromPosition, vai teleportar da posição que o player veio, logo true é verdade, ou seja, se ele não tiver aquela guild ele vai ser teleportado para a posição daonde ele veio :)

  • 0

@gears

ta ligado q tu n declado a variavel fromPosition neh? -ela n ta nos parametros da funçao...-

 

@sky

n faz mal declarar a variavel* 2x... a ultima vez eh q vai valer...

function onStepIn(cid, item, pos)
pos = {x = 1, y = 1, z = 1}
doTeleportThing(cid, pos, false)
end

vai teleportar o player para {x = 1, y = 1, z = 1}....

 

mas realmente n tem necessidade disso... ja q existe o fromPosition...

Editado por Slicer
  • 0

Olha, o do npc funfo perfeitamente, o npc tenta passar encima e é teleportado de volta.

 

o Guild tile n funfo, não seria melhor fazer por guild id e não por guild name ?

  • 0

function onStepIn(cid, item, fromPosition)

guild = "Ppkeiros"

if isPlayer(cid) then

 

if getPlayerGuildName(cid) ~= guild then

doTeleportThing(cid, fromPosition, false)

return true

end

end

@OFF: Skymagnum , ja estou no sync.

Editado por OrochiElf
  • 0

 

local guild_id = 5

function onStepIn(cid, item, position, fromPosition)
if not isPlayer(cid) then return true end
if getPlayerGuildId(cid) ~= guild_id then
  doTeleportThing(cid, fromPosition, true)
end
return true
end

 

 

edit: mudei umas coisinhas...

Editado por Slicer
  • 0

Resolvido, obrigado a todos, mais as scripts que funcionaram foram, Guild Tile do Slicer e Npc Tile do SkyMagnum, quando meu rep volta irei reputa-los :D

×
×
  • Criar Novo...