Ir para conteúdo
  • Cadastre-se

(Resolvido)Editar coordenadas do tp


Ir para solução Resolvido por Mor3nao,

Posts Recomendados

Boa Tarde rapaziada!

 

Então, venho pedir uma ajuda, consegui esse script aqui mesmo no tibiaking. esse script ele serve para "ao matar um boss", ele cria um tp e da uma storage para o player ou o grupo de player dentro dessa área, sendo que a pessoa que solicitou ou criou esse script , pediu que teleportasse para o determinado local que ja esta configurado ai.

 

Enfim, gostaria de pedir a vcs que colocasse a localização para ser teleportado, configurável ao meu gosto. Ex: quero que teleporte para {x= 2, y= 2, z= 2}.

 

Agradeço a ajuda!

 

 

local tps = {
                        ["Ushuriel"] = {pos = {x=33157, y=31730, z=11}, toPos = {x=33069, y=31783, z=13}, time = 60, storage = 56123, value = 1},
}
local storage = 56123
local function removeTp(tp)
local t = getTileItemById(tp.pos, 5023).uid
return t > 0 and doRemoveItem(t) and doSendMagicEffect(tp.pos, CONST_ME_POFF)
end
function onDeath(cid)
                        local tp = tps[getCreatureName(cid)]
                        if tp then
						--setPlayerStorageValue(cid, tp.storage, tp.value)
    
    					-- Area adicionada \/ --
						for i, k in ipairs(players) do
                		setPlayerStorageValue(k, tp.storage, (getPlayerStorageValue(k, tp.storage)+1))
            			end
    					-- Fim da área /\ --
    
						print(tp.storage)
						print(tp.value)
                        doCreateTeleport(5023, tp.toPos, tp.pos)
                        doCreatureSay(cid, "O teleport irá sumir em "..tp.time.." segundos.", TALKTYPE_ORANGE_1)
                        addEvent(removeTp, tp.time*1000, tp)
                        end
						
                        return true
end 

 

 

 

Link para o post
Compartilhar em outros sites
  • Solução

Só mudar nessa linha aqui em baixo, pos é a posição q o tp tem q aparecer, topos é pra onde o tp vai levar

 

["Rat"] = {pos = {x=10, y=10, z=10}, toPos = {x=2, y=2, z=2}, time = 92, storage = 56123, value = 1},

 

Nesse caso aqui, quando matar um Rat, vai aparecer um npc na posição x=10, y=10, z=10, e esse tp vai levar pra posição x=2 y=2 z=2, e ele vai durar 92 segundos

 

E se quiser colocar mais bixos pra aparecerem o tp, copiar e colocar essa linha e colocar abaixo, tipo:

["Rat"] = {pos = {x=10, y=10, z=10}, toPos = {x=2, y=2, z=2}, time = 92, storage = 56123, value = 1},
["Bug"] = {pos = {x=10, y=10, z=10}, toPos = {x=2, y=2, z=2}, time = 92, storage = 56124, value = 1},

 

 

Quanto a storage, nao é bom que tenha outra igual ela, oque te recomendo fazer, pra n botar uma storage q ja tenha, é colocar como numero de celular, tipo,

as minhas storages todas são: xx1754231, xx1754232

e assim por diante xD

 

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

MEUS POSTS:

 

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

Link para o post
Compartilhar em outros sites

ahh , entendi, show mano rep+ então, pois achei que essa topos e pos era para dar storage a todos os players nessa área. Eu li erradão rsrs

 

agora sobre as storages em que momento ele da as storage ao grupo de players? Ex: somente em party? todos na mesma area de combat? ou somente quem atacar o monstro?

 

e se vc puder me diz pelo menos onde eu coloco essa tag : "no codigo do boss" , que ele diz ai no topico?

 

Editado por Lisbeky (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Ola amigo, acredito que você precisa prestar mais atenção ao ler um tópico ou até mesmo uma script, pois a própria script já lhe responde estas perguntas
pos -> posição de criação do teleport
toPos -> posição na qual ele vai levar
time -> tempo de duração do teleport
storage -> valor da storage que vai adicionar
value -> valor da storage

 ["Ushuriel"] = {pos = {x=33157, y=31730, z=11}, toPos = {x=33069, y=31783, z=13}, time = 60, storage = 56123, value = 1},

referente a sua duvida "código do boss", ele se refere ao arquivo na qual fica o código do monster, resumindo é o arquivo.xml que você criou na pasta data/monsters.

----------------EDIT--------------
Outra observação, o script acredito esta errado, pois o mesmo faz um laço em "players", porem não existe nenhuma variável players, Caso eu esteja enganado peço que alguem me corrija.

-- EDIT --

caso queira testar para ver se funciona

local tps = {
	["Ushuriel"] = {
		pos_zone = {from = {x=33069, y=31783, z=13}, to = {x=33069, y=31783, z=13}}, -- from canto superior esquerdo, to canto inferior direito
		pos = {x=33157, y=31730, z=11}, -- posição que vai ser criado o teleport
		toPos = {x=33069, y=31783, z=13},  -- posição que vai levar o teleport
		time = 60, -- duração do teleport
		storage = 56123, -- numero da storage ganha
		value = 1 -- valor da storage ganha
		},
}

local function removeTp(tp)
	local t = getTileItemById(tp.pos, 5023).uid
	
	if (t > 0) then
		doRemoveItem(t)
		doSendMagicEffect(tp.pos, CONST_ME_POFF
	end
end

function onDeath(cid)

	local tp = tps[getCreatureName(cid)]

	if tp then
	local zone = tp.zone

	for _, pid in ipairs(getPlayersOnline()) do
		if (isInRange(getPlayerPosition(cid), zone.from, zone.to)) then
			setCreatureStorageValue(pid, tp.storage, tp.value)
		end
	end

	doCreateTeleport(5023, tp.toPos, tp.pos)
	doCreatureSay(cid, "O teleport irá sumir em "..tp.time.." segundos.", TALKTYPE_ORANGE_1)
	addEvent(removeTp, tp.time*1000, tp)
	end
return true
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

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo