Bom resolvi Postar algumas script de porta que vocês um dia podem precisar para quest!
ao longo da semana estarei adicionando mais algumas portas...
Passar só se tiver X item.
v1- com teleport.
function onUse(cid, item, frompos, item2, topos)
pos = {x=175, y=45, z=7} -- coordenadas para onde o jogador vai se tiver o item
item = getPlayerItemCount(cid,8266) -- 8266 é o item necessario ter para passar
if item >= 1 then
doTeleportThing(cid, pos)
else
doPlayerSendTextMessage(cid,22,"você nao tem o item para passar.") -- mensagem caso ele nao tiver o item
end
return TRUE
end
v2- sem teleport.
function onUse(cid, item, frompos, item2, topos)
item = getPlayerItemCount(cid,8266) -- 8266 é o item necessario ter para passar
if item >= 1 then
playerpos = getPlayerPosition(cid)
doorpos = {x = frompos.x, y = frompos.y, z = frompos.z, stackpos = 253}
if playerpos.y == doorpos.y + 1 and playerpos.x == doorpos.x then
doMoveCreature(cid, 0)
elseif playerpos.x == doorpos.x - 1 and playerpos.y == doorpos.y then
doMoveCreature(cid, 1)
elseif playerpos.y == doorpos.y - 1 and playerpos.x == doorpos.x then
doMoveCreature(cid, 2)
elseif playerpos.y == doorpos.y and playerpos.x == doorpos.x + 1 then
doMoveCreature(cid, 3)
elseif playerpos.x == doorpos.x + 1 and playerpos.y == doorpos.y - 1 then
doMoveCreature(cid, 4)
elseif playerpos.x == doorpos.x - 1 and playerpos.y == doorpos.y - 1 then
doMoveCreature(cid, 5)
elseif playerpos.x == doorpos.x + 1 and playerpos.y == doorpos.y + 1 then
doMoveCreature(cid, 6)
elseif playerpos.x == doorpos.x - 1 and playerpos.y == doorpos.y + 1 then
doMoveCreature(cid, 7)
end
else
doPlayerSendTextMessage(cid,22,"você nao tem o item para passar.")
end
return TRUE
end
caso você queira para quando o jogador pela porta retirar o item use:
doPlayerRemoveItem(cid,8266,1)
Magic Level Door.
function onUse(cid, item, frompos, item2, topos)
local mlevel = 10 -- magic level necessario
local teleport = {x=160, y=54, z=7} -- coordenada para onde vai ao usar a porta
local msgsucess = "Bem vindo!" -- mensagem que vai aparece caso ele passar pela porta
local msgfault = "Você não tem magic level suficiente!" -- mensagem que ira aparecer caso ele nao tiver o magic level
if getPlayerMagLevel(cid) >= mlevel then
doTeleportThing(cid, teleport)
doSendMagicEffect(getCreaturePosition(cid), 12)
doPlayerSendTextMessage(cid, 22, msgsucess)
else
doPlayerSendTextMessage(cid, 22, msgfault)
end
return TRUE
end
Passar só se tiver a Storage.
function onUse(cid, item, fromPosition)
if getPlayerStorageValue(cid, 6557) >= 1 then -- 6557 é o valor da storage
doTeleportThing(cid,{x=33266,y=32446,z=12}) -- coordenadas para onde o player vai caso tiver a storage
doSendMagicEffect(getPlayerPosition(cid), 10)
else
doPlayerSendCancel(cid,"You have already done this quest.")
end
return TRUE
end
Premium Door.
function onUse(cid, item, frompos, item2, topos)
doorpos = {x=topos.x, y=topos.y, z=topos.z, stackpos=253}
doorplayer = getThingfromPos(doorpos)
if isPremium(cid) == TRUE then
doTeleportThing(cid,doorpos)
doPlayerSendTextMessage(cid,22,"Welcome.")
end
return 1
end
Se alguem tiver ideia para mais Portas,por favor me notificar Via PM ou postar no tópico.
abraços
















