KU
pedido

Função

Por KUNGLOW, 08 de out. de 2012 em Scripts

script
19
2.5k
KUNGLOWK
08 de outubro de 2012 às 09:33

Preciso de uma função para por em uma action de um item, que ela checa a área que o Player está.

 

 

function onUse(cid, item, frompos, item2, topos)

 

 

pos = {x=573, y=500, z=7}

 

if item.itemid == 2349 then

if math.random(1, 100) >= 1 and math.random(1, 100) <= 40 then

doPlayerSay(cid, "-*- Magic Teleport! -*- Teleportado Para Wisland!", TALKTYPE_ORANGE_1)

doRemoveItem(item.uid,1)

doTeleportThing(cid,pos)

doSendMagicEffect(pos,10)

doSendMagicEffect(topos,10)

else

doPlayerSay(cid, "*Tentativa de uso de Magic Teleport * -*- Falhou! -*-", TALKTYPE_ORANGE_1)

doRemoveItem(item.uid,1)

end

end

return TRUE

end

 

 

Preciso que encaixe nesse script a função:

 

Que checa a área ou seja, ele não pode usar este item em área NO-LOGOUT.

 

Mas pode ser usado nas outras. Ao tentar usar em área NO-LOGOUT retorna uma MSG no console em AZUL:

 

Você não pode usar teleport em áreas NO-Logout.

SlicerS
08 de outubro de 2012 às 10:12

tenta isso...

 

function onUse(cid, item, frompos, item2, topos)

pos = {x=573, y=500, z=7}

 

if item.itemid == 2349 then

if math.random(1, 100) >= 1 and math.random(1, 100) <= 40 then

if getTileInfo(getPlayerPosition(cid)).nologout then

doPlayerSendCancel(cid, "Você não pode usar teleport em áreas NO-Logout.")

return true

end

doPlayerSay(cid, "-*- Magic Teleport! -*- Teleportado Para Wisland!", TALKTYPE_ORANGE_1)

doRemoveItem(item.uid,1)

doTeleportThing(cid,pos)

doSendMagicEffect(pos,10)

doSendMagicEffect(topos,10)

else

doPlayerSay(cid, "*Tentativa de uso de Magic Teleport * -*- Falhou! -*-", TALKTYPE_ORANGE_1)

doRemoveItem(item.uid,1)

end

end

return TRUE

end

 

Editado Outubro 8 por Slicer

KUNGLOWK
08 de outubro de 2012 às 10:28

@EDIT DEU ERRO:

 

 

10/2012 10:30:49] >>> Loading actions... [Error - LuaInterface::loadFile] data/actions/scripts/RadBR/teleport.lua:7: ')' expected near 'ê'

[8/10/2012 10:30:54] [Error - Event::checkScript] Cannot load script (data/actions/scripts/RadBR/teleport.lua)

[8/10/2012 10:30:54] data/actions/scripts/RadBR/teleport.lua:7: ')' expected near 'ê'

 

 

Olha esse pra mim? \/

 

http://www.xtibia.co...ssar-ele-morre/

Editado Outubro 8 por KUNGLOW

SlicerS
08 de outubro de 2012 às 10:36

doPlayerSendCancel(cid, "Você não pode usar teleport em áreas NO-Logout.")

malz erro meu.. soh troca essa linha ali no script...;

KUNGLOWK
08 de outubro de 2012 às 10:54

Não funcionou está teleportando normalmente.

SlicerS
08 de outubro de 2012 às 11:02

o.O tpw.. ta pra n teleportar caso o Tile embaixo do player seja no-logout...

tu coloco o 'pz' certo no mapa editor? pq cabei de testar aki e funciono certinhu... ;x

qual eh a versao do teu serv?

KUNGLOWK
08 de outubro de 2012 às 11:07

9.6. Sim o tile ta No Logout. Já testei e refiz no map editor tudo dinovo e não da pra logar na area so que teleporta normal.

SlicerS
08 de outubro de 2012 às 11:11

hum eh tenso... eu n sei como funciona os servs 9.6... talvez a function n funcione desse jeito nesse tpw de serv... ;/

achu q vai ter q esperar mais alguem vir tentar te ajudar... desculpe...

KUNGLOWK
08 de outubro de 2012 às 12:15

Tranquilo cara se já me ajudou de mais muito obrigado! VOu tentar aqui fazer ;s

 

éeh não conseugi =/

notle2012N
08 de outubro de 2012 às 13:44

tenta assim

function onUse(cid, item, frompos, item2, topos)
pos = {x=573, y=500, z=7}
if item.itemid == 2349 then  
if getTilePzInfo(getPlayerPosition(cid)) == false and doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você precisa estar em Protection Zone para usar o Teleport Magico.") then
elseif math.random(1, 100) >= 1 and math.random(1, 100) <= 40 then
doPlayerSay(cid, "-*- Magic Teleport! -*- Teleportado Para Wisland!", TALKTYPE_ORANGE_1)
doRemoveItem(item.uid,1)
doTeleportThing(cid,pos)
doSendMagicEffect(pos,10)
doSendMagicEffect(topos,10)
else
doPlayerSay(cid, "*Tentativa de uso de Magic Teleport * -*- Falhou! -*-", TALKTYPE_ORANGE_1)
doRemoveItem(item.uid,1)
end
return TRUE
end
end

Editado Outubro 8 por notle2012

KUNGLOWK
08 de outubro de 2012 às 14:54

Notle ta bugado.

Ele so deixa o player usar o item dentro de areas PZ e não é isso que eu quero.

 

Quero que NÃO possa usa-lo em areas NO-LOGOUT.

KUNGLOWK
13 de outubro de 2012 às 14:43

Alguém pode tentar fazer pra mim?

 

#Up

KUNGLOWK
20 de outubro de 2012 às 10:32

function onUse(cid, item, frompos, item2, topos)

pos = {x=573, y=500, z=7}

if item.itemid == 2349 then

if math.random(1, 100) >= 1 and math.random(1, 100) <= 40 then

doPlayerSay(cid, "-*- Magic Teleport! -*- Teleportado Para Wisland!", TALKTYPE_ORANGE_1)

doRemoveItem(item.uid,1)

doTeleportThing(cid,pos)

doSendMagicEffect(pos,10)

doSendMagicEffect(topos,10)

return TRUE

end

doPlayerSay(cid, "*Tentativa de uso de Magic Teleport * -*- Falhou! -*-", TALKTYPE_ORANGE_1)

doRemoveItem(item.uid,1)

end

return TRUE

end

 

Qual o erro deste ae? Uso TFS de 9.60 global comprado do Vodkart so que com outro servidor.

20 de outubro de 2012 às 10:38

reportado por três posts seguidos

LuckOakeL
20 de outubro de 2012 às 10:41

@KUNGLOW

 

Rapaz, você quebrou as regras de novo? REP- e reportado para a coordenação.