Ir para conteúdo

Featured Replies

Postado

Fala galera.. Tô com um problema nos irmãos da Inquisition, no caso, os bosses Golgordan e Latrivan.. Os mesmo residem em uma mesma sala da Inquisition.. O script que tô usando funciona da seguinte maneira: ao matar o boss latrivan e o golgordan, ou vice-versa, um teleport é criado para o player prosseguir na quest.. Mas ele tá apresentando dois probleminhas.. Se eu matar o Latrivan e depois o Golgordan, ou vice-versa, o teleport é criado, mas se eu matar 2 vezes o Latrivan ou 2 vezes o Golgordan, o teleport é criado do mesmo jeito, esse é o primeiro erro. O segundo erro é que: se eu matar o Latrivan e deixar o Golgordan vivo, ou matar o Golgordan e deixar o latrivan vivo e em seguida fechar o servidor e abrir em seguida, é só matar um deles que o teleport é criado. Tenho certeza que o problema é nas storages. Alguém pode me ajudar? Valendo REP+!

Script:

function onDeath(cid, killer)

local tp = {x = 601, y = 759, z = 13} -- Posição do Teleport

local tpgo = {x = 504, y = 827, z = 13} -- Posição em que o teleport levará

local tempo = 180 -- Tempo em que o Teleport ficará aberto em segundos

local tpid = 1387 -- ID do teleport

local stor = 18291

local message = "You now have 3 minutes to exit this room through the teleporter. It will bring you to the next room only during his time or the teleporter will disappear."



if getGlobalStorageValue(stor) == -1 then

setGlobalStorageValue(stor, getGlobalStorageValue(stor)+1)

elseif getGlobalStorageValue(stor) == 0 then

doCreatureSay(cid, message, TALKTYPE_ORANGE_1)

doCreateTeleport(tpid, tpgo, tp)

setGlobalStorageValue(stor, -1)

addEvent(removeTp, tempo*1000, tp, tpid)

end

return true

end


function removeTp(tp, tpid)

local t = getTileItemById(tp, tpid)

if t.uid >= 1 then

doRemoveItem(t.uid, 1)

doSendMagicEffect(tp, CONST_ME_POFF)

end

end

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

  • Respostas 7
  • Visualizações 758
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • local storG = 5658 local pos, toPos = {x = 1024, y = 1025, z = 7}, {x = 1017, y = 1025, z = 7} local time = 10 function onDeath(cid, corpse, killer) if (getCreatureName(cid) == "Golgordan") and

Postado

Eu fiz esse, ele pode acontecer alguns bugs... é que eu estou com preguiça de scriptar direito. haha.

Então, a pessoa vai matar os dois monstros ali, mas se ela matar um e deslogar, volta e matar o mesmo, o teleport vai se abrir...

Da pra resolver isso fazendo um evento onLogin, se você quiser me avise.

Ah, e retire todos os jeitos de os players sairem do boss (se tiver), pra funcionar 100%.

\data\creaturescripts\scripts\killBoss

local monster = {"Latrivan", "Golgordan"}

local pos, toPos = {x = 1024, y = 1025, z = 7}, {x = 1017, y = 1025, z = 7}

local storage = 5670

local time = 10


function onDeath(cid, corpse, killer)

 for i = 1, #monster do   

   if isMonster(cid) then

	 if string.lower(getCreatureName(cid)) == string.lower(monster[i]) then

	    doSetStorage(storage, getStorage(storage) + 1)

	    cTeleport(cid)

	    addEvent(rTeleport, time * 1000, cid)

	 end   

  end

end


return TRUE

end


function cTeleport(cid)

 if (getStorage(storage) >= 1) then

   doCreatureSay(cid, "Você tem "..time.. " segundos para passar pelo teleport, antes que ele seja removido.", TALKTYPE_ORANGE_1)

   return doCreateTeleport(1387, toPos, pos)

 end

end


function rTeleport(cid)

 local t = getTileItemById(pos, 1387)

 if (t.uid > 0) then

  doSendMagicEffect(pos, CONST_ME_MAGIC_RED)

  doSetStorage(storage, -1)

  return doRemoveItem(t.uid)

 end

end

\data\creaturescripts\creaturescripts.xml
    <event type="death" name="killBoss" event="script" value="killBoss.lua"/>
E nos monstros, você tem que adicionar a tag:
<script>

	 <event name="killBoss"/>

</script>

Postado
  • Autor

@Kimoszin

Não deu certo o script, veio com alguns errinhos.. Cara, tive uma ideia melhor.. Existe algum script que tipo, quando um monstro morrer, outro nasce? Daí seria assim, quando o Golgordan morresse, o Latrivan nasceria e quando o Latrivan morresse, o teleport seria criado.. Mas tipo, só preciso do primeiro script, no caso, quando o Golgordan moresse, o Latrivan nasceria, porque o outro, eu tenho. Grato!

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