Ir para conteúdo
Banner com Efeitos

Featured Replies

Postado
function onUse(cid, item, topos)
        local doors = {
                [88651] = {vocation = {1, 5, 2, 6}, messageFail = "Sorry, you need to be a Sorcerer or Druid to pass."},
                [88653] = {vocation = {3, 7}, messageFail = "Sorry, you need to be a Paladin or Royal Paladin to pass."},
                [88654] = {vocation = {4, 8}, messageFail = "Sorry, you need to be a Knight or Elite Knight to pass."}
        }
 
        if isInArray(doors[item.actionid].vocation, getPlayerVocation(cid)) then
			doTeleportThing(cid, toPosition)
			doTransformItem(item.uid, item.itemid + 1)
		else
            return doPlayerSendCancel(cid, doors[item.actionid].messageFail)
        end
    return true
end
<action actionid="88651;88653;88654" event="script" value="portavocation.lua"/>

EQD4Qy4.gif

  • Respostas 12
  • Visualizações 829
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • function onUse(cid, item, topos) local doors = { [88651] = {vocation = {1, 5, 2, 6}, messageFail = "Sorry, you need to be a Sorcerer or Druid to pass."}, [88653

  • function onUse(cid, item, topos) local doors = { [88651] = {vocation = {1, 5, 2, 6}, messageFail = "Sorry, you need to be a Sorcerer or Druid to pass."}, [88653

  • Aqui, tente esse... vá em action/script e crie um script chamado pdoor.lua e coloque isso dentro function onUse(cid, item, frompos, item2, topos) reqvoc = getPlayerVocation(cid) if item.uid == 8200

Postado
  • Autor
function onUse(cid, item, topos)
        local doors = {
                [88651] = {vocation = {1, 5, 2, 6}, messageFail = "Sorry, you need to be a Sorcerer or Druid to pass."},
                [88653] = {vocation = {3, 7}, messageFail = "Sorry, you need to be a Paladin or Royal Paladin to pass."},
                [88654] = {vocation = {4, 8}, messageFail = "Sorry, you need to be a Knight or Elite Knight to pass."}
        }
 
        if isInArray(doors[item.actionid].vocation, getPlayerVocation(cid)) then
			doTeleportThing(cid, toPosition)
			doTransformItem(item.uid, item.itemid + 1)
		else
            return doPlayerSendCancel(cid, doors[item.actionid].messageFail)
        end
    return true
end
<action actionid="88651;88653;88654" event="script" value="portavocation.lua"/>

Amigo a porta fala que esta Locked agora e apresenta o seguinte erro 

 

 

[01/02/2015 21:43:59] [Error - Action Interface] 
[01/02/2015 21:43:59] data/actions/scripts/Portasquestvip.lua:onUse
[01/02/2015 21:43:59] Description: 
[01/02/2015 21:43:59] attempt to index a nil value
[01/02/2015 21:43:59] stack traceback:
[01/02/2015 21:43:59] [C]: in function 'doTeleportThing'
[01/02/2015 21:43:59] data/actions/scripts/Portasquestvip.lua:9: in function <data/actions/scripts/Portasquestvip.lua:1>
Postado
function onUse(cid, item, topos)
        local doors = {
                [88651] = {vocation = {1, 5, 2, 6}, messageFail = "Sorry, you need to be a Sorcerer or Druid to pass."},
                [88653] = {vocation = {3, 7}, messageFail = "Sorry, you need to be a Paladin or Royal Paladin to pass."},
                [88654] = {vocation = {4, 8}, messageFail = "Sorry, you need to be a Knight or Elite Knight to pass."}
        }
 
        if isInArray(doors[item.actionid].vocation, getPlayerVocation(cid)) then
			doTeleportThing(cid, toPosition, true)
			doTransformItem(item.uid, item.itemid + 1)
		else
            return doPlayerSendCancel(cid, doors[item.actionid].messageFail)
        end
    return true
end

EQD4Qy4.gif

Postado
  • Autor


function onUse(cid, item, topos)
        local doors = {
                [88651] = {vocation = {1, 5, 2, 6}, messageFail = "Sorry, you need to be a Sorcerer or Druid to pass."},
                [88653] = {vocation = {3, 7}, messageFail = "Sorry, you need to be a Paladin or Royal Paladin to pass."},
                [88654] = {vocation = {4, 8}, messageFail = "Sorry, you need to be a Knight or Elite Knight to pass."}
        }
 
        if isInArray(doors[item.actionid].vocation, getPlayerVocation(cid)) then
			doTeleportThing(cid, toPosition, true)
			doTransformItem(item.uid, item.itemid + 1)
		else
            return doPlayerSendCancel(cid, doors[item.actionid].messageFail)
        end
    return true
end

 

 

amigo , Este script ele não passa pela portinha ela fala que esta locked . o script do nosso amigo la de cima ele passa pelo porta só que ao invés dele abrir a porta ele passa por cima dela . sem abrir ou fechar  e ainda continua o erro    .. Tava fuçando e vi que se eu trocar estar parte  Onde esta escrito Toposition por ( TOPOS) a portinha abre e fecha quando o char passa , mais o problema é que ao ficar no meio da porta se alguém der use ela ira trocar de porta automaticamente bugando a mesma ---   

 

 

doTeleportThing(cid, toPosition, true) ---

 

doTeleportThing(cid, Topos, true)

 

[01/02/2015 23:16:50] [Error - Action Interface] 

[01/02/2015 23:16:50] data/actions/scripts/Portasquestvip.lua:on Use
[01/02/2015 23:16:50] Description: 
[01/02/2015 23:16:50] attempt to index a nil value
[01/02/2015 23:16:50] stack traceback:
[01/02/2015 23:16:50] [C]: in function 'doTeleportThing'
[01/02/2015 23:16:50] data/actions/scripts/Portasquestvip.lua:9: in function <data/actions/scripts/Portasquestvip.lua:1>

Editado por igorcbc (veja o histórico de edições)

Postado

Aqui, tente esse...

vá em action/script e crie um script chamado pdoor.lua e coloque isso dentro

function onUse(cid, item, frompos, item2, topos)
reqvoc = getPlayerVocation(cid)
if item.uid == 8200 then  -- mude para 8201 se quando for usar o mesmo script para outra vocação e 8203....
if reqvoc == 3 or recvoc == 7 then -- Aqui é o id da vocação, 3 é paladin e 7 é royal
pos = getPlayerPosition(cid)

if pos.x == topos.x then
if pos.y < topos.y then
pos.y = topos.y + 1
else
pos.y = topos.y - 1
end
elseif pos.y == topos.y then
if pos.x < topos.x then
pos.x = topos.x + 1
else
pos.x = topos.x - 1
end
else
doPlayerSendTextMessage(cid,22,'Stand in front of the door.')
return 1
end

doTeleportThing(cid,pos)
doSendMagicEffect(topos,12)
else
doPlayerSendTextMessage(cid,22,'Somente Paladins entram aqui.')   -- Mensagem
end
return 1
else
return 0
end
end

e em action,xml coloque
<action uniqueid="8200" script="pdoor.lua" /> PS: quando for criar outra voc, mude o uniqueID aqui tbm, coloque o mesmo do pdoor.lua

 

feito isso é só colocar actionID 8200, nas portas de paladin.
 

Te ajudei?
Se você achar que eu mereço, me dê uma "rep+" e selecione meu post como "melhor resposta"

 

Skype: JoadsonAion

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo