Pedido Script globalsave~

alesson jhones
em Scripts

alesson jhones

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/03/09Posts: 6

olá preciso de uma ajudinha aqui ;) ( Errei no titulo não tem nada a ver com global save xd )

 

1# Sacrificio

o código seria dessa forma~

 

pos1

pos2

pos3

teleport

 

 

na pos1,2,3, é necessario colocar 1 corpo ex: " orc "

em um lugar vai ter um teleporte, onde só é possivel entrar enquando houver os corpse nas pos1,2,3~

se o corpo secar, não é permitido entrar~

 

 

eae alguém consegue ?

 

 

porfavor testar o codigo em 8.6

aguardo~

HidekiKty

#7
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 04/10/12Posts: 68

Abra a pasta data/movements/scripts e crie um arquivo chamado corpsetile.lua

Adicione o script:

local stor = 4040
local corpseid = 5966
local pos1 = {x=111, y=222, z=333}
local pos2 = {x=112, y=223, z=334}
local pos3 = {x=113, y=224, z=335}

function onStepIn(cid, item, frompos, moveitem, tileitem, position)
if isCorpse(getTileItemById(corpseid, pos1).uid) and isCorpse(getTileItemById(corpseid, pos2).uid) and isCorpse(getTileItemById(corpseid, pos3).uid) then
setPlayerStorageValue(cid, stor, 1)
else
doPlayerSendCancel(cid, "Você não pode entrar no teleport.")
return false
end
return true
end

function onStepOut(cid, item, frompos)
if getPlayerStorageValue(cid, stor) >= 1 then
setPlayerStorageValue(cid, stor, 0)
end
return true
end

 

Agora na pasta data/movements abra o arquivo movements.xml

Adicione as tags:

<movevent type="StepIn" actionid="4040" event="script" value="corpsetile.lua"/>
<movevent type="StepOut" actionid="4040" event="script" value="corpsetile.lua"/>

Configure local stor pelo ID da Storage do Script, local corpseid pelo ID do corpse que será necessário estar nas positions e pos1/pos2/pos3 com as positions x/y/z que os corpses deveram estar para o player poder entrar no teleport.

PS: Adicione a ActionID 4040 no piso em que o teleport está.

slipkx.png

MaXwEllDeN

string.reverse("adiV a arohaD")
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 18/10/10Posts: 246Char no Tibia: Elite Pamcadaum

Abra a pasta data/movements/scripts e crie um arquivo chamado corpsetile.lua

Adicione o script:

local stor = 4040
local corpseid = 5966
local pos1 = {x=111, y=222, z=333}
local pos2 = {x=112, y=223, z=334}
local pos3 = {x=113, y=224, z=335}

function onStepIn(cid, item, frompos, moveitem, tileitem, position)
if isCorpse(corpseid, pos1) and isCorpse(corpseid, pos2) and isCorpse(corpseid, pos3) then
setPlayerStorageValue(cid, stor, 1)
else
doPlayerSendCancel(cid, "Você não pode entrar no teleport.")
return false
end
end

function onStepOut(cid, item, frompos)
if getPlayerStorageValue(cid, stor) >= 1 then
setPlayerStorageValue(cid, stor, 0)
return true
end
end

Agora na pasta data/movements abra o arquivo movements.xml

Adicione as tags:

<movevent type="StepIn" actionid="4040" event="script" value="corpsetile.lua"/>
<movevent type="StepOut" actionid="4040" event="script" value="corpsetile.lua"/>

Configure local stor pelo ID da Storage do Script, local corpseid pelo ID do corpse que será necessário estar nas positions e pos1/pos2/pos3 com as positions x/y/z que os corpses deveram estar para o player poder entrar no teleport.

PS: Adicione a ActionID 4040 no piso em que o teleport está.

 

Amigo, só uma correçãozinha, o isCorpse recebe como parâmetro o uid de um item.

 

local stor = 4040
local corpseid = 5966
local pos1 = {x=111, y=222, z=333}
local pos2 = {x=112, y=223, z=334}
local pos3 = {x=113, y=224, z=335}


-- isCorpse(uid)

function onStepIn(cid, item, frompos, moveitem, tileitem, position)
  if isCorpse(getTileItemById(corpseid, pos1).uid) and isCorpse(getTileItemById(corpseid, pos2).uid) and isCorpse(getTileItemById(corpseid, pos3).uid) then
  setPlayerStorageValue(cid, stor, 1)
  else
  doPlayerSendCancel(cid, "Você não pode entrar no teleport.")
  return false
  end

  return true
end

function onStepOut(cid, item, frompos)
  if getPlayerStorageValue(cid, stor) >= 1 then
  setPlayerStorageValue(cid, stor, 0)
  end
  return true
end

eq9qh0.png

HidekiKty

#7
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 04/10/12Posts: 68

~Edited

Ok MaXwEllDeN, obrigado.

slipkx.png

MaXwEllDeN

string.reverse("adiV a arohaD")
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 18/10/10Posts: 246Char no Tibia: Elite Pamcadaum

~Edited

Ok MaXwEllDeN, obrigado.

 

Por nada ^^. Olha, edita novamente! Eu esquecí de por o .uid no getTileItemById

eq9qh0.png

alesson jhones

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/03/09Posts: 6

pensei que ia pegar mas aprensentou um erro no distro ~

 

[Error - MoveEvents INterface]

data/movements/scripts/corpsetile.lua:onStepIn

Description:

attampt to index a number value

stack traceback

[C]: in function 'getTileItemById'

data/movements/scripts/corpsetile.lua:9: in function <data/movemetns/scripts/corpsetile.lua:8

 

 

alguma ideia ?

 

 

no teleport add action 4040 com a pos de teste 160, 54, 7

HidekiKty

#7
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 04/10/12Posts: 68

Use este script, está correto:

local stor = 4040
local corpseid = 5966
local pos1 = {x=111, y=222, z=333}
local pos2 = {x=112, y=223, z=334}
local pos3 = {x=113, y=224, z=335}
function onStepIn(cid, item, frompos, moveitem, tileitem, position)
if isCorpse(getTileItemById(corpseid, pos1).uid) and isCorpse(getTileItemById(corpseid, pos2).uid) and isCorpse(getTileItemById(corpseid, pos3).uid) then
setPlayerStorageValue(cid, stor, 1)
else
doPlayerSendCancel(cid, "Você não pode entrar no teleport.")
return false
end
return true
end
function onStepOut(cid, item, frompos)
if getPlayerStorageValue(cid, stor) >= 1 then
setPlayerStorageValue(cid, stor, 0)
end
return true
end

slipkx.png

alesson jhones

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/03/09Posts: 6

Erro ~

 

Como deixei o teleporte

http://img268.images.../semttulone.jpg

 

 

Erro no distro ao pisar no teleporte.

 

erro2a.jpg

 

 

 

alguma ideia ?

 

@up Alguem ajuda ?

alesson jhones

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/03/09Posts: 6

peço que feixem, vou abrir um novo topico com o titulo sobre a dúvida.

Obrigado pela ajuda lek ~

Stigal

don't ever stop...
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 28/11/10Posts: 3402Gênero: Masculino

Movido!

VI6MDIG.png

 

"O fracasso é a oportunidade de se começar de novo inteligentemente"

Minhas Redes Sociais: Youtube | Página & Grupo | Steam  | Discord Xtibia | Skype: @mrooger

 

OTpanel