DO
pedido

Script Ganhar Storage Posx (X,x,x)

Por doia, 16 de set. de 2012 em Scripts

otserv
tibia
script
10
1.1k
doiaD
16 de setembro de 2012 às 01:14

eae galera do xtibia, então é o seguinte no meu servidor a inq está bugada, tipo o player faz a primeira parte, ai se ele morrer ele não consegue passar pela porta, ai tem que recomeçar, então estou aqui pedindo um script (ou se alguem souber resolver este bug).

 

 

SCRIPT:

 

 

O script é o seguinte, quando o player "pisar" em (x,x,x) posiçao, ele ganhar uma storage pra sempre ( que no caso vou adicionar ela no lugar da porta.)

 

 

Obrigado

Aguardando

theu1995T
16 de setembro de 2012 às 02:48

decha eu ver se intendi, o player vai passar em "x" tile e vai ganhar o storage ?

doiaD
16 de setembro de 2012 às 02:58

decha eu ver se intendi, o player vai passar em "x" tile e vai ganhar o storage ?

 

sim, tipo ele vai andar em cima de (x,x,x) posiçao e vai ganhar o storage xxx, o tile que tu falo é tipo um actionid, qe eu adiciono em (x.x.x) pra ele ganhar o storage?

caoticC
16 de setembro de 2012 às 10:40

E recomendável fazer por moveements e colocando actionid como você disse:

 

 
function onStepIn(cid, item, pos)
local str = 1
local storage = 28291
if isPlayer(cid) then
setPlayerStorageValue(cid, storage, str)
return true
end
return true
end

 

<movevent event="StepIn" actionid="21212" script="str.lua" />

doiaD
16 de setembro de 2012 às 13:11

E recomendável fazer por moveements e colocando actionid como você disse:

 

function onStepIn(cid, item, pos)
local str = 1
local storage = 28291
if isPlayer(cid) then
setPlayerStorageValue(cid, storage, str)
return true
end
return true
end

 

<movevent event="StepIn" actionid="21212" script="str.lua" />

 

então fiz isso ai, ai no lugar onde é pro player passar e ganhar a storage eu puis 21212, e no lugar que só pode passar quem tiver passado em 21212 botei 28291, mais não funcionou não.

SkyDangerousS
16 de setembro de 2012 às 21:54

Vendo o script está correto sim, coloque pra sair uma mensagem para ver se está funcionando perfeitamente.

 

function onStepIn(cid, item, pos)
local str = 1
local storage = 28291
if isPlayer(cid) then
setPlayerStorageValue(cid, storage, str)
doPlayerSendTextMessage(cid,21,"Testando")
end
return true
end

 

verificar a storage:

function onStepIn(cid, item, pos, fromPosition)
local str = 1
local storage = 28291
if isPlayer(cid) and getPlayerStorageValue(cid,storage) == 1 then  
  doPlayerSendTextMessage(cid,21,"Passou")
else    
doTeleportThing(cid, fromPosition)
doPlayerSendTextMessage(cid,21,"Nao passou")
end
return true
end

 

Testa ai.

Editado Setembro 16 por SkyDangerous

caoticC
16 de setembro de 2012 às 21:57

Sim o script esta correto.

Você deve que realizou alguma etapa incorretamente

notle2012N
16 de setembro de 2012 às 23:20

deve ter colocando numero errado com map editor pq essa etapa e muito importante

21212

doiaD
17 de setembro de 2012 às 20:38

Vendo o script está correto sim, coloque pra sair uma mensagem para ver se está funcionando perfeitamente.

 

function onStepIn(cid, item, pos)
local str = 1
local storage = 28291
if isPlayer(cid) then
setPlayerStorageValue(cid, storage, str)
doPlayerSendTextMessage(cid,21,"Testando")
end
return true
end

 

verificar a storage:

function onStepIn(cid, item, pos, fromPosition)
local str = 1
local storage = 28291
if isPlayer(cid) and getPlayerStorageValue(cid,storage) == 1 then  
  doPlayerSendTextMessage(cid,21,"Passou")
else	
doTeleportThing(cid, fromPosition)
doPlayerSendTextMessage(cid,21,"Nao passou")
end
return true
end

 

Testa ai.

 

Vlw !!! deu certo.

SkyDangerousS
17 de setembro de 2012 às 20:39

Reportado para moverem !

dúvida sanada