Jungle Maw Prison

Fabiian
em Scripts
  • 1
  • 2

Fabiian

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 01/11/13Posts: 8

Ola galera, queria um script que quando vc pisa numa "Jungle Maw" Jungle_Maw.gif

ela te prende por 30 segundos. Impossível de se mover para nenhum lado...

 

ID: Jungle Maw (aberta) = 4208

ID: Jungle Maw (Fechada) = 4209

 

se alguém puder ajudar ficarei muito grato! REP+

gonorreiaswat

I'm AdrianøØ SwaTT
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 16/09/07Posts: 600Gênero: MasculinoChar no Tibia: NãoJogoMais

Vou tentar montar pra ti, é fácil.

Só que não estou em casa e então preciso ver se ela funciona como script;

 

Já edito.

Atenciosamente,
Adriano Swatt'

Fabiian

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 01/11/13Posts: 8

o Script pra ela seria MoveEvent function "onStepIn", o meu problema é que não estou conseguindo fazer o player ou monstro ficar preso no item... tentei a Condition_Paralyze, mas os players andam mesmo com forma super forte do tipo (-99999999, 0, -9999999, 0).

eu queria que impedisse totalmente o movimento. ^^

gonorreiaswat

I'm AdrianøØ SwaTT
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 16/09/07Posts: 600Gênero: MasculinoChar no Tibia: NãoJogoMais

É só por a tag abaixo:

mayNotMove(cid, true)

Dentro da parte do script e pronto.

Falta só configurar o tempo, se quiser, posta o script e eu arrumo pra ti.

 

E para remover a 'paralização', basta por para executar tag com valor "false".

 

Boa sorte.

Atenciosamente,
Adriano Swatt'

Fabiian

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 01/11/13Posts: 8
function onStepIn(cid, item, pos)
	if isPlayer(cid) == 1 then
		-- Passou Player
		doSendMagicEffect(pos, 0)
	elseif isCreature(cid) == 1 then
		-- Passou Bicho
		doSendMagicEffect(pos, 3)
	end
	doPlayerAddHealth(cid, -30)
	doTransformItem(item.uid,4209)
	doDecayItem(item.uid)
	return 1
end

Aonde eu encaixo essa tag no code ?

Sertthoon

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 03/12/09Posts: 37Char no Tibia: varios

script legal, mas vai encher o saco dos players :p

Fabiian

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 01/11/13Posts: 8

essa é a ideia, quero colocar esse script em uma spell... Mas claro que também vou criar uma spell para se soltar da trap algo como "pisotear armadilha"!

gonorreiaswat

I'm AdrianøØ SwaTT
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 16/09/07Posts: 600Gênero: MasculinoChar no Tibia: NãoJogoMais

Tenta assim:

 

local tempo = 30 -- tempo em segundos
function onStepIn(cid, item, pos)
    if isPlayer(cid) == 1 then
        -- Passou Player
        doSendMagicEffect(pos, 0)
    elseif isCreature(cid) == 1 then
        -- Passou Bicho
        doSendMagicEffect(pos, 3)
    end
    doPlayerAddHealth(cid, -30)
mayNotMove(cid, true)
addEvent(Liberar, tempo * 1000, cid)
    doTransformItem(item.uid,4209)
    doDecayItem(item.uid)
    return 1
end
 
function Liberar(cid)
mayNotMove(cid, false)
end

 

Fiz correndo pois não estou em casa e estou indo assistir filme na minha sogra...

Porém, teste aí e poste o resultado.

 

Boa sorte.

Atenciosamente,
Adriano Swatt'

Fabiian

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 01/11/13Posts: 8

Funcionou em players mas em monstros eles não travam se puder ajudar assim que possível, ficarei muito grato!

ja ganhou seu REP+ por ajudar, valeu !

gonorreiaswat

I'm AdrianøØ SwaTT
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 16/09/07Posts: 600Gênero: MasculinoChar no Tibia: NãoJogoMais

Teste assim:

 

local tempo = 30 -- tempo em segundos
function onStepIn(cid, item, pos)
    if isPlayer(cid) == 1 then
        -- Passou Player
mayNotMove(cid, true)
addEvent(Liberar, tempo * 1000, cid)
        doSendMagicEffect(pos, 0)
    elseif isCreature(cid) == 1 then
        -- Passou Bicho
mayNotMove(cid, true)
addEvent(Liberar, tempo * 1000, cid)
        doSendMagicEffect(pos, 3)
    end
    doPlayerAddHealth(cid, -30)
mayNotMove(cid, true)
addEvent(Liberar, tempo * 1000, cid)
    doTransformItem(item.uid,4209)
    doDecayItem(item.uid)
    return 1
end
 
function Liberar(cid)
mayNotMove(cid, false)
end

 

Não sei se usa "cid" mesmo para monster, mas teste aí.

Atenciosamente,
Adriano Swatt'

Fabiian

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 01/11/13Posts: 8

ainda não funcionou, talvez não seja "cid" que se usa para monstros. Mas se não for qual seria ?

gonorreiaswat

I'm AdrianøØ SwaTT
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 16/09/07Posts: 600Gênero: MasculinoChar no Tibia: NãoJogoMais

Cara, já que é pra funcionar em tudo que passar pelo tile, testa assim:

 

local tempo = 30 -- tempo em segundos
function onStepIn(cid, item, pos)
    doPlayerAddHealth(cid, -30)
mayNotMove(cid, true)
addEvent(Liberar, tempo * 1000, cid)
    doTransformItem(item.uid,4209)
    doDecayItem(item.uid)
    return 1
end
end
 
function Liberar(cid)
mayNotMove(cid, false)
end

 

Sei lá, é que não estou em casa agora e não estou achando a função exata para este script verificar o monstro.

 

Boa sorte.

Atenciosamente,
Adriano Swatt'

LuckOake

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 23/07/12Posts: 1104Gênero: MasculinoChar no Tibia: Luck Oake

Não adianta usar mayNotMove em monstros, não vai funcionar.

 

Use doChangeSpeed(cid, -getCreatureSpeed(cid)).

 

Tá aqui o script:

local tempo = 30 -- Tempo em segundos

function onStepIn(cid, item, pos)
    if isMonster(cid) then
        doCreatureSetStorage(cid, "base_speed", getCreatureBaseSpeed(cid))
        doChangeSpeed(cid, -getCreatureSpeed(cid))
    else
        mayNotMove(cid, true)
    end
    doCreatureAddHealth(cid, -30)
    addEvent(function() if not isCreature(cid) then return true end if isMonster(cid) then doChangeSpeed(cid, getCreatureStorage(cid, "base_speed")) else mayNotMove(cid, false) end end, tempo*1000)
    doTransformItem(item.uid, 4209)
    return true
end

gonorreiaswat

I'm AdrianøØ SwaTT
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 16/09/07Posts: 600Gênero: MasculinoChar no Tibia: NãoJogoMais

 

Não adianta usar mayNotMove em monstros, não vai funcionar.

 

Use doChangeSpeed(cid, -getCreatureSpeed(cid)).

 

Tá aqui o script:

local tempo = 30 -- Tempo em segundos

function onStepIn(cid, item, pos)
    if isMonster(cid) then
        doCreatureSetStorage(cid, "base_speed", getCreatureBaseSpeed(cid))
        doChangeSpeed(cid, -getCreatureSpeed(cid))
    else
        mayNotMove(cid, true)
    end
    doCreatureAddHealth(cid, -30)
    addEvent(function() if not isCreature(cid) then return true end if isMonster(cid) then doChangeSpeed(cid, getCreatureStorage(cid, "base_speed")) else mayNotMove(cid, false) end end, tempo*1000)
    doTransformItem(item.uid, 4209)
    return true
end

 

Ah sim, muito interessante.

Na verdade o script pega a velocidade do monstro e depois subtrai, tornando então velocidade zero, ou seja, monster parado.

 

Interessante.

Obrigado por contribuir, pois estava quebrando a cabeça para isso.

Atenciosamente,
Adriano Swatt'

Fabiian

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 01/11/13Posts: 8

Bom, testei aqui deu tudo certinho.. Muito obrigado pela ajuda galera !

  • 1
  • 2