Ir para conteúdo
Close
lordzetros

Sistema [TFS 1.3] Teleport com janela

Posts Recomendados

Parabéns, seu tópico de conteúdo foi aprovado!
Muito obrigado pela sua contribuição, nós do Tibia King agradecemos.
Seu conteúdo com certeza ajudará à muitos outros, você recebeu +1 REP.

Spoiler

Congratulations, your content has been approved!
Thank you for your contribution, we of Tibia King we are grateful.
Your content will help many other users, you received +1 REP.

 



Não esqueçam de me marca quando eu responder em seu tópico, assim recebo a notificação e volto em seu tópico.
Não dou suporte em mensagem privada ou fora do fórum.
Não esqueça de reputa e agradecer a pessoa que lhe ajudou em algum tópico seu.
"Só ajudo quem eu vejo ajudando." xD

Não esqueça de reputa alguém que lhe ajudou ou tentou lhe ajudar, e agradeça com suas palavras. Seja grato por alguém ter lhe ajudado ou tentado lhe ajudar!

O coitadismo e o conformismo potencializado é a arte de sentir compaixão de si mesmo para você não utilize ferramentas capazes de transformar
sua história!!

-- Augusto Cury

 

                                                               ezgif-1-98aab239f3.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

testado, obrigado amigao me ajudou muito


Editado por Cleiton Felipi
Erro corrigido (veja o histórico de edições)

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Cleiton Felipi Disponha! 😄 

 

@Semideus Haha, esse daí é o mito. 🤣



Feliz daquele que ensina o que sabe, e aprende o que ensina.

 

               

star-wars-animated-gif-23.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 10/11/2018 em 00:37, lordzetros disse:

TFS 1.3 - TESTADO EM VERSÃO 10.98

* Introdução *

 

    Bom, estive navegando no Fórum e vi que o usuário @Cleiton Felipi pediu um script que ao player entrasse no teleport de um X monstro, um Demon por exemplo, listasse qual hunt o jogador queria entrar. Achei interessante, e resolvi desenvolver e postar no TK, já que não tinha ainda, :).

 

 

 

* Sobre o sistema *

 

     Você utiliza diversas hunts com vários tps criados no mapa no seu servidor do mesmo monstro? Bom, este script será muito útil para você! Pois ele permitirá que você habilite ao jogador em qual hunt ele quer caçar, por exemplo, se tiver Demon 01, Demon 02, Demon 03, Demon X, basta apenas você criar um tp indicando o monstro e que uma janela irá aparecer com a lista de opções de hunts, prático, né? Segue imagens de demonstração:

Screenshot_69.png.4608229bb4c9f711e85466d3f158d7db.png

Screenshot_70.thumb.png.f165d49d596184e5c98a541d2a7a3833.png

 

 

OBS¹.: Você pode colocar TODOS OS MONSTROS neste script, contando que tenha o actionID que ficará no teleporte, não é de uma quantidade limitada, em outras palavras, você pode adicionar as hunts de Demon, Frost Dragon, Dragon, ..., tudo aqui, apenas mudando o actionID (tudo configurável, não se preocupe).

 

* Instalação *

 

Em data/movements/scripts/ crie um arquivo chamado mov_janela_hunts.lua e adicione dentro:


--[[
Script - Lordzetros
Fórum Tibia King
]]

local config = {
	titulo = "BEM VINDO(A) A JANELA DE HUNTS!", -- Título da Janela
	mensagem = "Selecione qual hunt voce deseja ir:", -- Mensagem abaixo do título da janela
}

CONFIG_TPS_JANELA = {
	[19090] = { -- ID do action que ficará no portal da hunt
		{nome = "Demon 01", pos = {x = 98, y = 139, z = 7}}, -- Segue padrão, nome da cave e posição que o player será teleportado
		{nome = "Demon 02", pos = {x = 93, y = 144, z = 7}},
		{nome = "Demon 03", pos = {x = 91, y = 140, z = 7}},
		{nome = "Demon 04", pos = {x = 94, y = 138, z = 7}},
		{nome = "Demon 05", pos = {x = 95, y = 136, z = 7}},
	},
	[19091] = { 
		{nome = "Frost 01", pos = {x = 98, y = 140, z = 7}},
		{nome = "Frost 02", pos = {x = 93, y = 145, z = 7}},
		{nome = "Frost 03", pos = {x = 91, y = 141, z = 7}},
		{nome = "Frost 04", pos = {x = 94, y = 139, z = 7}},
		{nome = "Frost 05", pos = {x = 95, y = 137, z = 7}},
	},
}

local function getActions(tabela) 
	t = {}
	for c, v in pairs(tabela) do
		table.insert(t, c)
	end
	return t
end

function onStepIn(creature, item, pos, fromPosition)
	local t_actions = getActions(CONFIG_TPS_JANELA)
	if (isInArray(t_actions, item:getActionId()) and creature:isPlayer()) then
		local i_action = item:getActionId()
		creature:teleportTo(fromPosition, true)
		creature:registerEvent("janela hunts")
		local janela = ModalWindow(1000, config.titulo, config.mensagem)
		
		for i, v in ipairs(CONFIG_TPS_JANELA[i_action]) do
			janela:addChoice(i, v.nome)
		end
		janela:addButton(100, "Confirmar")
		janela:addButton(101, "Fechar")
		janela:setDefaultEnterButton(100)
		janela:setDefaultEscapeButton(101)
		JANELA_TP_ACTION = i_action
		janela:sendToPlayer(creature)
	end
	return true
end

 

Em data/movements/movements.xml adicione o seguinte código abaixo de um semelhante:


<movevent event="StepIn" itemid="5023" script="mov_janela_hunts.lua" />

 

 

Agora em data/creaturescripts/scripts/ crie um arquivo chamado creature_janela_hunts.lua e adicione dentro:


function onModalWindow(player, modalWindowId, buttonId, choiceId)
	player:unregisterEvent("janela hunts")
	if (modalWindowId == 1000) then
		if (buttonId == 100) then
			local tele_pos = CONFIG_TPS_JANELA[JANELA_TP_ACTION][choiceId].pos
			player:teleportTo(tele_pos)
			local pos_t = Position(tele_pos)
			pos_t:sendMagicEffect(CONST_ME_MAGIC_BLUE)
		end
	end
	return true
end

 

Em data/creaturescripts/creaturescripts.xml adicione o seguinte código abaixo de um semelhante:


<event type="ModalWindow" name="janela hunts" script="creature_janela_hunts.lua"/>

 

* Configuração *

    Bom, apesar de que não seja difícil de configurar, é necessário uma explicação, vamos lá...

1 - 


[19090] = { -- ID do action que ficará no portal da hunt
		{nome = "Demon 01", pos = {x = 98, y = 139, z = 7}}, -- Segue padrão, nome da cave e posição que o player será teleportado
		{nome = "Demon 02", pos = {x = 93, y = 144, z = 7}},
		{nome = "Demon 03", pos = {x = 91, y = 140, z = 7}},
		{nome = "Demon 04", pos = {x = 94, y = 138, z = 7}},
		{nome = "Demon 05", pos = {x = 95, y = 136, z = 7}},
	},

Em [19090] este número de dentro é o actionID que ficará no portal. Com ele será identificado de qual monstro se trata, bastando apenas configurar este número e o nome das opções de monstros que você quer aparecendo na janela, em seguida, a posição na qual o jogador será teleportado, seguindo a ordem. Segue imagem de como deve ficar o seu portal:

Screenshot_71.png.d5bd967d26e4cd1b17c63f4a82e38a5d.png

OBS²: VOCÊ EDITA O ACTIONID NO SEU EDITOR DE MAPA COLOCANDO NO ID DO ITEM DE TELEPORTE.

OBS³: PARA ADICIONAR NOVAS HUNTS NO SCRIPT, BASTA SEGUIR O PADRÃO QUE ESTÁ NO CÓDIGO, DO 19090 PARA O 19091.

 

2 - (por fim)

Em data/movements/movements.xml


<movevent event="StepIn" itemid="5023" script="mov_janela_hunts.lua" />

itemID = Id do item que o player andará para abrir a janela de hunt

Está como 5023 por conta que o magic forcefield é 5023, no qual utilizei para teste, aconselho você deixar da mesma forma (caso seja o mesmo id no seu servidor), ou mude, mas cuidado para não cometer algum erro.

 

 

Enfim, algo simples, porém não encontrei no TK.

Abraços. :) 
 

 

 

mano deu esse erro, porém meu tfs é 1.2, será que é por isso?

 

erro.jpg


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

Compartilhar este post


Link para o post
Compartilhar em outros sites

.@JuremaFox Qual a versão do seu servidor? Modal Window só foi implementada a partir do 9.6.
 



Feliz daquele que ensina o que sabe, e aprende o que ensina.

 

               

star-wars-animated-gif-23.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites
7 horas atrás, lordzetros disse:

.@JuremaFox Qual a versão do seu servidor? Modal Window só foi implementada a partir do 9.6.
 

 

8.6 tfs 1.2, não sabia que estava relacionado a versao do tibia e sim do tfs


Compartilhar este post


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.


Open Tibia Server

Quer aprender a criar seu próprio servidor de Tibia? Então está no lugar certo, aqui você encontrará milhares de tutorias, scripts, códigos, mapas e utilitários para que você possa fazer o seu próprio servidor de Tibia partindo do zero.

Redes Sociais

Anuncie no Tibia King

Precisa de mais visibilidade em seus projetos? Quer publicidade para o seu servidor? Anuncie no Tibia King e faça sua divulgação, possuímos centenas de acessos simultâneos e milhares diários, com certeza será a sua solução! A publicação do seu anuncio é instantânea!

×
×
  • Criar Novo...