Ir para conteúdo

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

Featured Replies

Postado

Editei, ve ai

MEUS POSTS:

 

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

  • 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

tenta dnv

MEUS POSTS:

 

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

Postado
  • Autor
1 hora atrás, Mor3nao disse:

tenta dnv

Arruma um e aparece outro! kkk.. foi mal, estou comecando a estudar essa linguagem agora..

image.thumb.png.d06a8a3d1a7e596e1364d043b6e761a3.png

 

o script todo é:

Citar

local IS_IN_ARENA_PLAYER_STORAGE = 23305

local function isInArena(cid)
    local isInArena = getPlayerStorageValue(cid, IS_IN_ARENA_PLAYER_STORAGE)
    return isInArena == 1
end

local function leaveArena(cid)
    setPlayerStorageValue(cid, IS_IN_ARENA_PLAYER_STORAGE, 0)
end

function onPrepareDeath(cid, lastHitKiller, mostDamageKiller)
    if not isPlayer(cid) or not isInArena(cid) then
        return TRUE
    end
	player = Player(cid)
	if player:getStorageValue(IS_IN_ARENA_PLAYER_STORAGE) == 1 then
	player:teleport(cid, {x=1979,y=217,z=6}, true)
	return
	end
	return true
end

 

Sabe o que pode ser?

 

---

7 horas atrás, Onepiece disse:

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(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	

 

Este retornou um erro:

image.thumb.png.a96fe1f28352d77bde0e8ad9286fb08a.png

No meu arquivo lib/032-position:

image.thumb.png.7e018e9e1976a0ed82a9116602ad26e5.png

Fiz uma mudança na função mas não deu certo:

if (isInRange(getThingPosition(cid), c.arena.from, c.arena.to)) then

 

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

Postado
local c = {
	storage = 20000, -- storage do evento ativo
	from,to = {x = 2100, y = 2100, z = 7}, {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.from, c.to) then
		if ((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	

tenta desta forma que coloquei acima.

 

Projeto/Serviços que desenvolvi durante esse Tempo.

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

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