[ Actions ]Algumas Portas

Vodkart
em Actions e Talkactions

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

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

bossisg.png

Tonynh

Miau! É isso ai!
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 07/01/08Posts: 2282Gênero: MasculinoChar no Tibia: Tonynh

Pack roxzão manolo... já sei até quais pegar e.e

Thnks

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

Se alguem tiver Mais ideia para portas Só postar aqui...

 

abraços

bossisg.png

tadzio

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/09/07Posts: 85Char no Tibia: Revaux

Para fazer a porta com storage basta entrar no map editor e botar o actionid=storage que você quer, muito mais prático do que fazer 1 script para cada porta.

Acho que as outras portas também podem ser feitas via map editor, não me lembro agora :~

 

//Re~

Bondx

É só pentada violenta!
avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 07/12/09Posts: 155Char no Tibia: King Bondzera

Belos scripts, e bem uteis.

Parabéns :)

 

 

Atenciosamente,

Bondx.

Lançamentos Oficiais

 

01/01/18 [NEWS] Global Server 11.0

 

 Global 100% Full, Mapa atualizado na versão 11.0!
 Monstros, Npcs, Mounts - Todas Features atualizadas!!!
 Incluso: Servidor completo + Gesior 1.0 Completo + Distro Win/Linux!

Doidin

Delícia
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 25/06/08Posts: 723Gênero: MasculinoChar no Tibia: Diiva

Parabéns, scripts simples, porem bem uteis... ;]

Tenho certeza que muita grente irá precisar, principalmente para quests!

REP+ abraços...

Meu site pessoal:
https://devmat.com.br/


dono do um sitezinho qualquer

o lado negro da força, bjs

ZaskxD

Imperial Zasks!
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 29/04/10Posts: 74Char no Tibia: Walking Knight

Kraa você me ajudou muito com este script ai das door

 

+REP

 

@edit@

kk ja atingi o limite por hj mais quando der eu dou o +REP!

 

 

 

Crie Você Tbm Seu Avatar Clique aqui

MaxxJuba

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 21/12/07Posts: 60Char no Tibia: Supremo Black

Alguém sabe como eu faço para adicionar mais items necessários para abrir a porta com teleport?

eu quero criar uma porta q precise de 6 itens para passar..

é possivel isso?

Não precisa me dar +Rep, se eu te ajudo, com certeza não é pra ganhar nada em troca..



 

69.gif

70.gif

 

xdun9d.gif

 

Entrem e se divirtam, soulflix o melhor server global

;)

 

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

claro cara

 

 

 

function onUse(cid, item, frompos, item2, topos)
pos = {x=175, y=45, z=7} -- coordenadas para onde o jogador vai se tiver o item
local item = 8266 -- id do seu item
local quant = 6 -- quantidade

if(getPlayerItemCount(cid, item) >= quant) then
doTeleportThing(cid, pos)
else
doPlayerSendTextMessage(cid,22,"você nao tem os items para passar.") -- mensagem caso ele nao tiver o item
end
return TRUE
end

 

se você quer que qndo passe remova os itens só colocar

 

doPlayerRemoveItem(cid, item, quant)

 

bossisg.png

MaxxJuba

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 21/12/07Posts: 60Char no Tibia: Supremo Black

VodKart está quase certo oq você me passou

a única coisa q está errada é q os itens não serão iguais, q nem está no script.

pode me passar outro com 6 itens diferentes?

Não precisa me dar +Rep, se eu te ajudo, com certeza não é pra ganhar nada em troca..



 

69.gif

70.gif

 

xdun9d.gif

 

Entrem e se divirtam, soulflix o melhor server global

;)

 

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

 

 

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

local Ppos = {x=175, y=45, z=7} -- coordenadas para onde o jogador vai se tiver o item

local t = {item1={XXXX,YY},item2={XXXX,YY},item3={XXXX,Y},item4={XXXX,YY},item5={XXXX,YY},item6={XXXX,YY}}


if(getPlayerItemCount(cid, t.item1[1]) >= t.item1[2]) then
if(getPlayerItemCount(cid, t.item2[1]) >= t.item2[2]) then
if(getPlayerItemCount(cid, t.item3[1]) >= t.item3[2]) then
if(getPlayerItemCount(cid, t.item4[1]) >= t.item4[2]) then
if(getPlayerItemCount(cid, t.item5[1]) >= t.item5[2]) then
if(getPlayerItemCount(cid, t.item6[1]) >= t.item6[2]) then
doTeleportThing(cid, pos)
else
doPlayerSendTextMessage(cid,22,"você precisa ter " .. t.item6[2] .. " " .. getItemNameById(t.item1[6]) .. "  para passar.")
end
else
doPlayerSendTextMessage(cid,22,"você precisa ter " .. t.item5[2] .. " " .. getItemNameById(t.item5[1]) .. "  para passar.")
end
else
doPlayerSendTextMessage(cid,22,"você precisa ter " .. t.item4[2] .. " " .. getItemNameById(t.item1[4]) .. "  para passar.")
end
else
doPlayerSendTextMessage(cid,22,"você precisa ter " .. t.item3[2] .. " " .. getItemNameById(t.item3[1]) .. "  para passar.")
end
else
doPlayerSendTextMessage(cid,22,"você precisa ter  " .. t.item2[2] .. " " .. getItemNameById(t.item2[1]) .. " para passar.")
end
else
doPlayerSendTextMessage(cid,22,"você precisa ter " .. t.item1[2] .. " " .. getItemNameById(t.item1[1]) .. "  para passar.")
end
return TRUE
end

 

XXXX == ID DO ITEM

YY = QUANTIDADE DO ITEM

 

 

 

bossisg.png

HeartBreak

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 17/07/10Posts: 48

vo testa aqui , isso vai ajuda muitas pessoas , muito bom !

MaxxJuba

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 21/12/07Posts: 60Char no Tibia: Supremo Black

Muito obrigado pela ajuda!

=D

Rep +

Não precisa me dar +Rep, se eu te ajudo, com certeza não é pra ganhar nada em troca..



 

69.gif

70.gif

 

xdun9d.gif

 

Entrem e se divirtam, soulflix o melhor server global

;)

 

FehFlycks

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/07/10Posts: 2Char no Tibia: Judge Lissy

opa, a porta de premy n ta funfando aki, explica ai como faço