Ir para conteúdo

(Resolvido)[pedido] storage que retorna o player morto para um local

Featured Replies

Postado
3 minutos atrás, Mecianosz disse:

acho que fica mais fácil se eu te mandar todas as linhas kkkk.. eu coloquei false, olha:

Não sei o que a função leaveArena faz, mas se o script está registrado corretamente deveria funcionar.

 

 

 

Nós somos aquilo que fazemos repetidamente. Excelência, não é um modo de agir, mas um hábito.

                                                                                                                                                                                                                                        Aristóteles 

  • Respostas 34
  • Visualizações 2.3k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • local storage = 2000 local from,to = {x = 2100, y = 2100, z = 7}, {x = 2200, y = 2200, z = 7} local death_pos = {x = 1100, y = 1100, z = 7} function onPrepareDeath(cid, deathList) if isPlayer(cid) a

  • Utiliza isso com o callback onPrepareDeath que devê funcionar.

  • Pra funcionar o callback precisa retornar falso.

Posted Images

Postado

Não entendi muito bem oque você quer, ver se funciona o script que fiz pelo bloco de notas:
OBS: não esqueça de adicionar a tags do creaturescripts.xml, e dentro do login.lua. Após adicionar o script, se caso o servidor estiver aberto, feche-o e o abra novamente.

local c = {
	storage = 20000, -- storage do evento ativo
	arena = {from = {x = 2100, y = 2100, z = 7}, to = {x = 2100, y = 2100, z = 7}}, -- posição superior esquerda, posição inferior direita
	pos = {x = 2100, y = 2100, z = 7}, -- posição que o player sera teleportado dentro do storage
	oldPEffect = 200, -- efeito quando ele morrer
	newPEffect = 200, -- efeito quando ele renascer
	exit = {x = 1000, y = 1000, z = 7}, -- posição que ele sera levado caso ele não tenha a storage
}

function onDeath(cid, corpse, lasthitkiller, mostdamagekiller, lasthitunjustified, mostdamageunjustified)

	if (isInRange(getCreaturePosition(cid), c.arena.from, c.arena.to)) then
		if (getPlayerStorageValue(cid, c.storage) ~= 0) then 
			doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
			doCreatureAddMana(cid, getCreatureMaxMana(cid))
			doSendMagicEffect(getCreaturePosition(cid), c.oldPEffect)
			doTeleportThing(cid, c.pos)
			doSendMagicEffect(getCreaturePosition(cid), c.newPEffect)
		else
			doTeleportThing(cid, c.pos)
			doSendMagicEffect(getCreaturePosition(cid), c.newPEffect)
		end
	end

return false
end	

 

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

 

Projeto/Serviços que desenvolvi durante esse Tempo.

[SERVIDOR] - NTO By Madara Rinnegan - Criado em 2014

Postado
Em 30/07/2020 em 17:04, Mecianosz disse:

Qual servidor ou website você utiliza como base? 

TFS 0.5 exclusive edition (ot 8.60)

 

Olá, gente. Como estão? Eu estou fazendo um evento onde um grupo de pessoas entram quando o primeiro aperta a alavanca (tipo annihilator). O evento dura 5 minutos. Porém, eu quero acrescentar uma coisa: se uma das pessoas morrer dentro destes 5 minutos, ela retorna para um local específico que fica dentro do mapa do evento. Como eu faço para cancelar a morte ou retornar o player para a área do evento? Alguém pode me ajudar com esta parte? Já tentei fazer isto para cancelar a morte, mas nao funciona:


    doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)), FALSE)
    doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
    doCreatureAddMana(cid, getCreatureMaxMana(cid))
    doRemoveConditions(cid, FALSE)

REP desde já! valeu!

 

 

Cara, nao sei na tua versão, mas na minha se vc coloca só o return, sem o true, ele funciona, essa aqui nao deixa morrer, nao preciso nem por pra curar ->

function onPrepareDeath(cid, lastHitKiller, mostDamageKiller)
    if not isPlayer(cid) then
        return TRUE
    end
	player = Player(cid)
	if player:getStorageValue(Storage.Events.Cerco.timeBlue) == 1 or player:getStorageValue(Storage.Events.Cerco.timeRed) == 1 then
	player:teleport(blalbalbla)
	return
	end
	return true
end

 

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

MEUS POSTS:

 

SE AJUDEI, DÁ O REP+, ESQUECE NÃO, VLW BB <3

Postado
  • Autor
49 minutos atrás, Mor3nao disse:

Cara, nao sei na tua versão, mas na minha se vc coloca só o return, sem o true, ele funciona, essa aqui nao deixa morrer, nao preciso nem por pra curar ->


function onPrepareDeath(creature, lastHitKiller, mostDamageKiller)
local player = creature:getPlayer()
if not player then
	return true
end

	if player:getStorageValue(Storage.Events.Cerco.timeBlue) == 1 or player:getStorageValue(Storage.Events.Cerco.timeRed) == 1 then
	player:teleport(blalbalbla)
	return
	end
	return true
end

 

deu um erro na distro:

Citar

image.thumb.png.800880007e0593ffd11d4e91ec6555b3.png

 

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.6k

Informação Importante

Confirmação de Termo