Ir para conteúdo
  • Cadastre-se

(Resolvido)Sistema area vip liberada por 45 minutos


Ir para solução Resolvido por vankk,

Posts Recomendados

Olá, gostaria que alguém me ajudasse neste sistema... tenho um conceito bolado porém não sei desenvolver os scripts... Meu TFS é 0.4.

 

*Explicação do uso do sistema: Todos os dias as 20:00 horas um teleport é criado no templo, sendo que quem entrar nele será levado para a área donate, e as 20:45 o teleport some e todos que entraram no mesmo são teleportados para o templo.

 

De acordo com o conceito que elaborei o sistema se divide em duas partes:

Primeira parte:

Todos os dias as 20:00 horas um teleport é criado no templo (pos onde o teleport sera criado x 1001 y 992 z 7) que teria como destino a pos x 1176 y 1048 z 15. E as 20:45 o mesmo teleport sumiria do templo. (se essa parte for muito difícil eu crio no map editor uma sala com o teleport e um obstáculo impedindo o caminho.. então o sistema só terá de remover o obstáculo e depois colocar de volta)..

 

Acredito que essa primeira parte não seja muito difícil.. o mais complicado vem agora:

 

Segunda parte:

Acho que seria mais viável fazer por movements para quando um player entrar neste teleport registrar uma storage... e as 20:45 quando o teleport sumir todos os players quais foram registrado a storage fossem teletransportados para o templo (pos x 1005 y 998 z 7) para que nenhum malandro fique dentro da área. E ao ser teleportado para o templo remover a storage para não implicar no sistema do dia seguinte.

*Obs sobre a segunda parte: Não sei se é possível fazer com que mesmo os players que entraram e receberam a storage, e no momento (20:45) estiverem offline sejam levados para o templo, caso isso não seja possível a solução seria criar uma função onLogin em creaturescripts para quando o player logar se tiver a storage registrada ser teleportado imediatamente para o templo.

 

É isso galera, tentei explicar com o máximo de detalhes o que eu quero, mas qualquer dúvidas é só perguntar que esclareço! Conto com a ajuda de vocês!

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

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

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

Não tenho a minima ideia se vai funcionar:

globalevents com time 20:00

local config = {
    teleportActionId = 1247, -- action do tp
	teleportPos = {x = 1001, y = 992, z = 7}, -- aonde vai aparecer o tp
	teleportId = 1387,
	storage = 485,
	tempo = 45,
    }
	
function TPSai()
    local get = getThingfromPos(config.teleportPos)
    if get.itemid == config.teleportId then
        doRemoveItem(get.uid, 1)
		doBroadcastMessage("O teleport sumiu do templo, amanhã as 20hrs ele volta.", MESSAGE_STATUS_WARNING)
		print('Removed TP.')
		setGlobalStorageValue(config.storage, 0)
    end
end	

function onTime(interval)
	local tp = doCreateTeleport(config.teleportId, config.teleportPos)
	doItemSetAttribute(tp, "aid", config.teleportActionId)
	doBroadcastMessage("Foi criado um teleport no templo um teleport para a area VIP por 45 minutos, aproveita!", MESSAGE_STATUS_WARNING)
	setGlobalStorageValue(config.storage, 1)
	addEvent(TPSai, config.tempo * 1000 * 60)
    print('Teleport nasceu no templo por 45 minutos.')
end
outro script no globalevents (bota com delay de 5000 miliseg)
 
function onThink(interval, lastExecution, thinkInterval)
	local pos = {x = 1001, y = 992, z = 7}
	if (getGlobalStorageValue(cid, 485) == 0) then
		doTeleportThing(cid, pos)
		doSendMagicEffect(getCreaturePosition(cid), 12)
		doPlayerSendTextMessage(cid, 22, "Voce saiu da area vip por 45 minutos, amanha tem mais.")
		setPlayerStorageValue(cid, 486, 0)
	end
end
movements
function onStepIn(cid, item, pos)
local area = {x = 1176, y = 1048, z = 15}

    if item.actionid == 1247 then
		if getPlayerStorageValue(cid, 486) < 1 then
			setPlayerStorageValue(cid, 486, 1)
		end
		doTeleportThing(cid, area)
        doSendMagicEffect(getCreaturePosition(cid), 12)
		doPlayerSendTextMessage(cid, 22, "Voce entrou na area VIP por 45 minutos.")
    end
    return TRUE
end  
login.lua
local pos = {x = 1001, y = 992, z = 7}
if (getPlayerStorageValue(cid, 486) == 1 and getGlobalStorageValue(cid, 485) == 0) then
    doTeleportThing(cid, pos)
    doSendMagicEffect(getCreaturePosition(cid), 12)
    doPlayerSendTextMessage(cid, 22, "Voce foi teletransportado para fora da area VIP.")
    setPlayerStorageValue(cid, 486, 0)
end
Esperando os 10 mil erros..

discord.pngDiscord: vankk #7765

Precisando de ajuda? Entre em contato comigo via Discord.

 

Muitos vêm seus muitos dias de glória, mas poucos vêm seus muitos dias de luta.

Link para o post
Compartilhar em outros sites
@vankk
Primeiramente obrigado pela ajuda!
Adicionei os scripts certinho... porém recebo estes erros no distro e consequentemente o sistema não funciona:erro.thumb.png.fd860c8dc774ee7bf3bd7466c
A parte do abreVIP2 seria o segundo globalevent... o erro se repete a cada 5 segundos no distro.
  Editado por luangop (veja o histórico de edições)

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites

Substitui a linha 19-20 por essa:

doItemSetAttribute(doCreateItem(config.teleportId, 1, config.teleportPos), "aid", config.teleportActionId)
Qual erro que mais da?

E troca a linha 19 por function onTime() Editado por vankk (veja o histórico de edições)

discord.pngDiscord: vankk #7765

Precisando de ajuda? Entre em contato comigo via Discord.

 

Muitos vêm seus muitos dias de glória, mas poucos vêm seus muitos dias de luta.

Link para o post
Compartilhar em outros sites
@vankk

Bom, alterei o que você falou.. agora o teleport é criado...

Porém quando da o tempo ele não some..
O erro referente a este script é esse:
erro1.thumb.png.9891f278c7b4d0df8898bb0a
Tentei arrumar por mim mesmo mas sem sucesso.. Atualmente o script está assim:

local config = {
    teleportActionId = 1247, -- action do tp
    teleportPos = {x = 1001, y = 992, z = 7}, -- aonde vai aparecer o tp
    teleportId = 1387,
    storage = 485,
    tempo = 1,
    }
    
function TPSai()
    local get = getThingfromPos(config.teleportPos)
    if get.itemid == config.teleportId then
        doRemoveItem(getThingfromPos(config.teleportPos).uid,1)
        doBroadcastMessage("O teleport para area VIP sumiu do templo, amanhã as 20hrs ele volta.", MESSAGE_STATUS_WARNING)
        print('Removed TP.')
        setGlobalStorageValue(config.storage, 0)
end
end    

function onTime()
    doItemSetAttribute(doCreateItem(config.teleportId, 1, config.teleportPos), "aid", config.teleportActionId)
    doBroadcastMessage("Foi criado um teleport no templo que leva para area VIP!\n Em 45 minutos ele some entao aproveitem!", MESSAGE_STATUS_WARNING)
    setGlobalStorageValue(config.storage, 1)
    print('Teleport nasceu no templo por 45 minutos.')
    addEvent(TPSai, config.tempo * 1000)
end



Este erro é sobre o segundo script de globalevents que deveria levar os players pro templo quando termina o evento:
erro2.thumb.png.2e0f56542719e8ce714fafbe

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

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites
local function TPSai()
    local teleport = getTileItemById(config.teleportPos, config.teleportId).uid
		if(teleport > 0) then
			doRemoveItem(teleport)
			doSendMagicEffect(config.teleportPos, CONST_ME_POFF)
		end
		doBroadcastMessage("O teleport sumiu do templo, amanhã as 20hrs ele volta.", MESSAGE_STATUS_WARNING)
		print('Removed TP.')
		setGlobalStorageValue(config.storage, 0)
    end
end	
function onThink(interval, lastExecution) 
	local pos = {x = 1001, y = 992, z = 7}
	if (getGlobalStorageValue(cid, 485) == 0 or getPlayerStorageValue(cid, 486) == 1) then
		doTeleportThing(cid, pos)
		doSendMagicEffect(getCreaturePosition(cid), 12)
		print('Removendo todos da area VIP.')
		doPlayerSendTextMessage(cid, 22, "Voce saiu da area vip por 45 minutos, amanha tem mais.")
		setPlayerStorageValue(cid, 486, 0)
	end
end
Atualiza seu login.lua tbm..
local pos = {x = 1001, y = 992, z = 7}
if (getPlayerStorageValue(cid, 486) == 1 or getGlobalStorageValue(cid, 485) == 0) then
    doTeleportThing(cid, pos)
    doSendMagicEffect(getCreaturePosition(cid), 12)
    doPlayerSendTextMessage(cid, 22, "Voce foi teletransportado para fora da area VIP.")
    setPlayerStorageValue(cid, 486, 0)
end


Tenta com esses dois scripts. Cometi alguns erros achando que no TFS 0.4 daria para fazer igual no TFS 1.2, só que com funcões mais antigas.

My bad.. hahahaa Editado por vankk (veja o histórico de edições)

discord.pngDiscord: vankk #7765

Precisando de ajuda? Entre em contato comigo via Discord.

 

Muitos vêm seus muitos dias de glória, mas poucos vêm seus muitos dias de luta.

Link para o post
Compartilhar em outros sites
@vankk
Continua dando erro :/
O teleport é criado normal, e no momento que o teleport é criado aparece esse erro no distro, e a parte de retirar o teleport não funciona:
erro1.thumb.png.504c0a0747e76ba2ba8b8ae4

local config = {
    teleportActionId = 1247, -- action do tp
    teleportPos = {x = 1001, y = 992, z = 7}, -- aonde vai aparecer o tp
    teleportId = 1387,
    storage = 485,
    tempo = 1,
    }

    function onTime()
    doItemSetAttribute(doCreateItem(config.teleportId, 1, config.teleportPos), "aid", config.teleportActionId)
    doBroadcastMessage("Foi criado um teleport no templo que leva para area VIP!\n Em 45 minutos ele some entao aproveitem!", MESSAGE_STATUS_WARNING)
    setGlobalStorageValue(config.storage, 1)
    print('Teleport nasceu no templo por 45 minutos.')
    addEvent(TPSai, config.tempo * 1000 * 60)
end

local function TPSai()
    local teleport = getTileItemById(config.teleportPos, config.teleportId).uid
        if(teleport > 0) then
            doRemoveItem(teleport)
            doSendMagicEffect(config.teleportPos, CONST_ME_POFF)
        end
        doBroadcastMessage("O teleport sumiu do templo, amanhã as 20hrs ele volta.", MESSAGE_STATUS_WARNING)
        print('Removed TP.')
        setGlobalStorageValue(config.storage, 0)
    end


O segundo script também continua dando erro:
erro2.thumb.png.fd88ba1aca454f55105702c9
Será que este segundo script não funcionaria melhor em creaturescripts?

--
A parte do login.lua ta funcionando =)
Do meu ponto de vista parece que o problema esta na função de GlobalStorage.. pois ontem fiz uns testes e quando removi as linhas que alteravam globalstorage o script funcionou. Então pensei que talvez fosse possível mudar esse sistema do globalstorage por um storage que conte o tempo tipo aqueles sistemas VIP por storage.. não sei exatamente a função que faz isso para poder descrever melhor. Editado por luangop (veja o histórico de edições)

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites

Preguica de fazer outro script p talvez da erro como storage de time. Não sou muito fã de storage time.
..

Tenta isso:

local config = {
    teleportActionId = 1247, -- action do tp
    teleportPos = {x = 1001, y = 992, z = 7}, -- aonde vai aparecer o tp
    teleportId = 1387,
    storage = 485,
    tempo = 1,
}

function TPSai()
    local teleport = getTileItemById(config.teleportPos, config.teleportId).uid
    if(teleport > 0) then
        doRemoveItem(teleport)
        doSendMagicEffect(config.teleportPos, CONST_ME_POFF)
    end
    doBroadcastMessage("O teleport sumiu do templo, amanhã as 20hrs ele volta.", MESSAGE_STATUS_WARNING)
    print('Removed TP.')
    setGlobalStorageValue(config.storage, 0)
end
    
function onTimer()
    doItemSetAttribute(doCreateItem(config.teleportId, 1, config.teleportPos), "aid", config.teleportActionId)
    doBroadcastMessage("Foi criado um teleport no templo que leva para area VIP!\n Em 45 minutos ele some entao aproveitem!", MESSAGE_STATUS_WARNING)
    setGlobalStorageValue(config.storage, 1)
    print('Teleport nasceu no templo por 45 minutos.')
    addEvent(TPSai, config.tempo * 1000 * 60)
end
function onThink(interval, lastExecution)
    local pos = {x = 1001, y = 992, z = 7}
    if (getGlobalStorageValue(cid, 485) == 0) then
        for _, cid in ipairs(getPlayersOnline()) do
            if (getPlayerStorageValue(cid, 486) == 1) then
                doTeleportThing(cid, pos)
                doSendMagicEffect(getCreaturePosition(cid), 12)
                print('Removendo todos da area VIP.')
                doPlayerSendTextMessage(cid, 22, "Voce saiu da area vip por 45 minutos, amanha tem mais.")
            end
        end
    end
end

discord.pngDiscord: vankk #7765

Precisando de ajuda? Entre em contato comigo via Discord.

 

Muitos vêm seus muitos dias de glória, mas poucos vêm seus muitos dias de luta.

Link para o post
Compartilhar em outros sites

@vankk, fiz isso, se te ajudar :D

EVENT = {
	TELEPORT_POSITION = {x = 1, y = 1, z = 1},
	TELEPORT_ACTION = 77000,
	EVENT_MINUTES = 45,
	STORAGE = 48760,
	DONATE_POSITION = {x = 1, y = 1, z = 1},
}

EVENT.globalevents = function()
	local tp = getTileItemById(EVENT.TELEPORT_POSITION, 1387).uid
	if tp > 0 then
		doRemoveItem(tp)
		doBroadcastMessage("O teleport sumiu do templo, amanhã as 20hrs ele volta.", MESSAGE_STATUS_WARNING)
		EVENT.removeAllPlayers()
	else		
		doBroadcastMessage("Foi criado um teleport no templo que leva para area VIP!\n Em 45 minutos ele some entao aproveitem!", MESSAGE_STATUS_WARNING)

		local teleport = doCreateItem(1387, 1, EVENT.TELEPORT_POSITION)
		doItemSetAttribute(teleport, "aid", EVENT.TELEPORT_ACTION)

		addEvent(EVENT.globalevents, EVENT.EVENT_MINUTES * 60 * 1000)
	end
end

EVENT.movements = function(uid)
	setPlayerStorageValue(uid, EVENT.STORAGE, 1)
	doTeleportThing(uid, EVENT.DONATE_POSITION)
	doSendMagicEffect(getCreaturePosition(uid), 12)
	doPlayerSendTextMessage(uid, 22, "Voce entrou na area VIP por 45 minutos.")
end

EVENT.creaturescript = function(uid)
	if getPlayerStorageValue(uid, EVENT.STORAGE) == 1 then
		EVENT.removePlayer()
	end
end

EVENT.removeAllPlayers = function()
	for _, uid in ipairs(getPlayersOnline()) do
		if getPlayerStorageValue(uid, EVENT.STORAGE) == 1 then
			EVENT.removePlayer()
		end
	end
	
EVENT.removePlayer = function(uid)
	doTeleportThing(uid, getTownTemplePosition(getPlayerTown(uid)), false)
	doSendMagicEffect(getCreaturePosition(uid), 12)
	doPlayerSendTextMessage(uid, 22, "Voce foi teletransportado para fora da area VIP.")
	setPlayerStorageValue(uid, EVENT.STORAGE, 0)
end

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

O primeiro script não funcionou, então mudei OnTimer por Ontime e funcionou "quase" que perfeitamente... ele faz suas funções.. cria/remove o teleport.. porém mesmo funcionando apresenta um erro no distro.
erro1.thumb.png.a727216cd42f0ca6d54ed501

O segundo script funcionou.. quando terminou o evento levou todos para o templo.. porém como o primeiro, mesmo funcionando apresenta o erro no distro de 5 em 5 segundos:
erro2.thumb.png.ca58127378a9c1083bf935fd

A função que foi no login.lua tem algo errado... mesmo durante o evento ao logar é teletransportado ao templo. Porém não necessita de ajuste.. só coloquei a mensagem assim "Voce foi teletransportado para o templo para que não haja mal-uso do evento VIP por 45 minutos."


@luanluciano93

Isso é um MOD?

----------------------EDIT---------------- @vankk
Consegui corrigir o login.lua
O sistema está funcionando perfeitamente, a única coisa que continua me perturbando é este erro que se repete no distro a cada 5 segundos mesmo o script funcionando..
*referente ao segundo script

erro2.thumb.png.73c3f8750033899222e09092

data/globalevents/scripts abreVIP2.lua

function onThink(interval, lastExecution)
    local pos = {x = 1005, y = 998, z = 7}
    if (getGlobalStorageValue(cid, 485) == 0) then
        for _, cid in ipairs(getPlayersOnline()) do
            if (getPlayerStorageValue(cid, 486) == 1) then
                doTeleportThing(cid, pos)
                doSendMagicEffect(getCreaturePosition(cid), 12)
                setPlayerStorageValue(cid, 486, 0)
                print('Removendo todos da area VIP.')
                doPlayerSendTextMessage(cid, 22, "O evento AreaVIP por 45 minutos acabou, amanha tem mais.")
            end
        end
    end
end

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

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites

Tenta isso, não tenho ideia se vai funcionar, HAHAH

 

function onThink(interval, lastExecution)
    local pos = {x = 1005, y = 998, z = 7}
    if (getGlobalStorageValue(cid, 485) == 0) then
        for _, cid in ipairs(getPlayersOnline()) do
            if (getPlayerStorageValue(cid, 486) == 1) then
                doTeleportThing(cid, pos)
                doSendMagicEffect(getCreaturePosition(cid), 12)
                setPlayerStorageValue(cid, 486, 0)
                print('Removendo todos da area VIP.')
                doPlayerSendTextMessage(cid, 22, "O evento AreaVIP por 45 minutos acabou, amanha tem mais.")
            end
        end
    end
	return TRUE
end
Editado por vankk (veja o histórico de edições)

discord.pngDiscord: vankk #7765

Precisando de ajuda? Entre em contato comigo via Discord.

 

Muitos vêm seus muitos dias de glória, mas poucos vêm seus muitos dias de luta.

Link para o post
Compartilhar em outros sites

qual versão? 8.6 ou vc usa o TFS 1.2+

ou vod desculpa lhe incomodar tem como da uma força? to a dias tentando arrumar não consigo suporte no tk nem no xtibia :( achei seu topico no xtibia dai vi você aqui 

 

http://www.tibiaking.com/forum/topic/63710-tp-monster/

desculpa pedir ajuda aqui... se estou errado sorry

Link para o post
Compartilhar em outros sites
@vankk
Eu tive essa ideia de botar um return.. não funciona rsrs
EDIT: Eu tinha colocado o return em outro lugar... do jeito que você mandou funcionou! Você é fera em cara rsrs
Agora a única coisa que acontece é este erro quando o script de criar o teleport é ativado:
*Apesar do erro o script funciona.
erro.thumb.png.7b871bebef3682700df54acff
Segue o Script:

local config = {
    teleportActionId = 1247, -- action do tp
    teleportPos = {x = 1001, y = 992, z = 7}, -- aonde vai aparecer o tp
    teleportId = 1387,
    storage = 485,
    tempo = 1,
}

function TPSai()
    local teleport = getTileItemById(config.teleportPos, config.teleportId).uid
    if(teleport > 0) then
        doRemoveItem(teleport)
        doSendMagicEffect(config.teleportPos, CONST_ME_POFF)
    end
    doBroadcastMessage("O teleport sumiu do templo, amanhã as 20hrs ele volta.", MESSAGE_STATUS_WARNING)
    print('Removed TP.')
    setGlobalStorageValue(config.storage, 0)
end
    
function onTime()
    doItemSetAttribute(doCreateItem(config.teleportId, 1, config.teleportPos), "aid", config.teleportActionId)
    doBroadcastMessage("Foi criado um teleport no templo que leva para area VIP!\n Em 45 minutos ele some entao aproveitem!", MESSAGE_STATUS_WARNING)
    setGlobalStorageValue(config.storage, 1)
    print('Teleport nasceu no templo por 45 minutos.')
    addEvent(TPSai, config.tempo * 1000 * 60)
end


@Vodkart
8.6 TFS 0.4

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

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites

Adicione um return TRUE também, hahaha.
 

local config = {
    teleportActionId = 1247, -- action do tp
    teleportPos = {x = 1001, y = 992, z = 7}, -- aonde vai aparecer o tp
    teleportId = 1387,
    storage = 485,
    tempo = 1,
}

function TPSai()
    local teleport = getTileItemById(config.teleportPos, config.teleportId).uid
    if(teleport > 0) then
        doRemoveItem(teleport)
        doSendMagicEffect(config.teleportPos, CONST_ME_POFF)
    end
    doBroadcastMessage("O teleport sumiu do templo, amanhã as 20hrs ele volta.", MESSAGE_STATUS_WARNING)
    print('Removed TP.')
    setGlobalStorageValue(config.storage, 0)
end
    
function onTime()
    doItemSetAttribute(doCreateItem(config.teleportId, 1, config.teleportPos), "aid", config.teleportActionId)
    doBroadcastMessage("Foi criado um teleport no templo que leva para area VIP!\n Em 45 minutos ele some entao aproveitem!", MESSAGE_STATUS_WARNING)
    setGlobalStorageValue(config.storage, 1)
    print('Teleport nasceu no templo por 45 minutos.')
    addEvent(TPSai, config.tempo * 1000 * 60)
	return TRUE
end

discord.pngDiscord: vankk #7765

Precisando de ajuda? Entre em contato comigo via Discord.

 

Muitos vêm seus muitos dias de glória, mas poucos vêm seus muitos dias de luta.

Link para o post
Compartilhar em outros sites

Aew finalmente funcionou.. sistema rodando 100% rsrs
Muitíssimo obrigado @vankk
 

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

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

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.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.


  • Conteúdo Similar

    • Por willian646
      O evento é totalmente baseado no Foxy Quiz proveniente do GLA, no entanto é apenas uma base para vocês alterarem como acharem melhor.
      Para começar será necessario que você crie um arquivo em talkactions>scripts para entrar no evento, como por exemplo : participar.lua
      e entao colocar sua tag em talkactions.xml, como por exemplo: 
      <talkaction words="!participar;/participar" script="!participar.lua"/> Tendo feito isso você irá colar esse codigo dentro desse arquivo: 
      function onSay(cid, words, param)pos = {x=1236, y=1125, z=15} --POSIÇAO QUE O PLAYER IRÁ COM O COMANDO if getGlobalStorageValue(88788) == 1 then doSendMagicEffect(getPlayerPosition(cid),19) doTeleportThing(cid,pos) else doPlayerSendCancel(cid, "Desculpe mas o evento esta fechado !") end return true end Agora iremos para o script principal, vá em global events>scripts e crie o arquivo pokequiz.lua em seguida coloque sua tag em globalevents.xml como por exemplo: 
      <globalevent name="Pokequiz" interval="10" event="script" value="pokequiz.lua"/> Lembrando que o intervalo de inicio do evento é com vcs, Tendo feito isso abra o arquivo e cole o  seguinte código dentro : 
      quizstrg = 88788 local wave = 0 local CPpos = {x=1051, y=1047, z=7} --POSIÇAO QUE O PLAYER IRÁ SE ERRAR function wave_acresc() wave = wave + 1 addEvent(Quiz, 5000) end function Quiz() if wave == 1 then doBroadcastMessage("Na serie pokemon RAYQUAZA possui mega evolucao ?", RED) addEvent(Resposta, 10000) elseif wave == 2 then doBroadcastMessage("Na serie pokemon ARCEUS e considerado um pokemon RARO ?", RED) addEvent(Resposta, 10000) elseif wave == 3 then doBroadcastMessage("Na serie pokemon MEW criou os 3 caes lendarios ?", RED) addEvent(Resposta, 10000) elseif wave == 4 then doBroadcastMessage("Na serie pokemon ARCEUS tem o poder de mudar de tipo livremente ?", RED) addEvent(Resposta, 10000) elseif wave == 5 then doBroadcastMessage("Na serie pokemon GIRATINA possui 2 formas sendo elas alterada e fantasma ?", RED) addEvent(Resposta, 10000) elseif wave == 6 then doBroadcastMessage("Na serie pokemon DIALGA e PALKIA sao rivais ?", RED) addEvent(Resposta, 10000) elseif wave == 7 then doBroadcastMessage("Na serie pokemon CELEBI possui a habilidade de viajar entre dimensoes ?", RED) addEvent(Resposta, 10000) elseif wave == 8 then doBroadcastMessage("Na serie pokemon SOLGALEO e a primeira evolucao de cosmog ?", RED) addEvent(Resposta, 10000) elseif wave == 9 then doBroadcastMessage("Na serie pokemon MAGEARNA e uma das ultra beasts ?", RED) addEvent(Resposta, 10000) elseif wave == 10 then doBroadcastMessage("Na serie pokemon a cor original de MAGEARNA e laranja ?", RED) addEvent(Resposta, 10000) elseif wave == 11 then doBroadcastMessage("O evento Quiz terminou !", RED) addEvent(winPlayers, 5000) end end function Resposta() if wave == 1 then addEvent(TPFalso, 5000) elseif wave == 2 then addEvent(TPVerdadeiro, 5000) elseif wave == 3 then addEvent(TPVerdadeiro, 5000) elseif wave == 4 then addEvent(TPFalso, 5000) elseif wave == 5 then addEvent(TPVerdadeiro, 5000) elseif wave == 6 then addEvent(TPFalso, 5000) elseif wave == 7 then addEvent(TPVerdadeiro, 5000) elseif wave == 8 then addEvent(TPVerdadeiro, 5000) elseif wave == 9 then addEvent(TPVerdadeiro, 5000) elseif wave == 10 then addEvent(TPFalso, 5000) end end function TPFalso() for _, sid in ipairs(getPlayersOnline()) do local posi = {x=1236, y=1122, z=15} local posf = {x=1243, y=1128, z=15} local pos = getPlayerPosition(sid) if isInArea(pos, posi, posf) then doTeleportThing(sid,CPpos) end addEvent(wave_acresc, 5000) end end function TPVerdadeiro() for _, sid in ipairs(getPlayersOnline()) do local posi = {x=1228, y=1122, z=15} local posf = {x=1235, y=1128, z=15} local pos = getPlayerPosition(sid) if isInArea(pos, posi, posf) then doTeleportThing(sid,CPpos) end addEvent(wave_acresc, 5000) end end function winPlayers() for _, sid in ipairs(getPlayersOnline()) do local posi = {x=1228, y=1122, z=15} local posf = {x=1243, y=1128, z=15} local pos = getPlayerPosition(sid) if isInArea(pos, posi, posf) then doTeleportThing(sid,CPpos) doPlayerAddItem(sid,2159, 10) end wave = 0 setGlobalStorageValue(88788, 0) end end --AVISOS DE INICIO function finalEventWarning() if getGlobalStorageValue(quizstrg) == 1 then setGlobalStorageValue(88788, 2) doBroadcastMessage("O evento Quiz fechou, a primeira pergunta surgira em 30 segundos.", RED) addEvent(wave_acresc, 30000) end end function secondEventWarning() if getGlobalStorageValue(quizstrg) == 1 then doBroadcastMessage("O evento Quiz ira iniciar em 1 minuto, usem o comando !participar ou /participar.", RED) addEvent(finalEventWarning, 60000) end end function firstEventWarning() if getGlobalStorageValue(quizstrg) == 1 then doBroadcastMessage("O evento Quiz ira iniciar em 3 minutos, usem o comando !participar ou /participar.", RED) addEvent(secondEventWarning, 120000) end end function onThink(interval, lastExecution) if getGlobalStorageValue(quizstrg) == 0 then setGlobalStorageValue(88788, 1) doBroadcastMessage("O evento Quiz ira iniciar em 5 minutos, usem o comando !participar ou /participar.", RED) addEvent(firstEventWarning, 120000) end return true end Já ia me esquecendo, a unica coisa ao qual vocês devem mudar de acordo com as coordenadas do seu mapa e área do evento são as funções TPVerdadeiro , TPFalso, winPlayers , elas servem para indicar qual área é a errada e teleportar quem tiver nessa área pro cp, caso o lado errado seja o esquerdo então será usado a função  TPVerdadeiro, e é a msm coisa para o outro lado, no caso da winPlayers é toda a área do evento.
       
      Aqui vai um exemplo: 
       
      E é isso rapaziada, não sei se já possui algum evento parecido por essas bandas, mas eu não encontrei ,então fiz  e resolvi contribuir com a comunidade, peço que se for repostar em algum outro lugar dê os devidos créditos, obg e até a próxima.
    • Por ILex WilL
      Olá, Alguém poderia me ajudar com uns Scripts? nem que seja cobrando, dependendo eu pago para me ajudar...
    • Por Kill of sumoners
      Boa noite, estou com um erro ao atacar um player em meu sv eu nao pego pk, nem sai magia, aparece a mensagem "voce so pode usar isso em criaturas"
      obs: magia em area acerta e pega pk, apenas as targets ou hits de arma nao vao 
    • Por Maniaco
      Salve TibiaKing!!! TFS 0.4 . 8.60
       
      Estou implementando o Sistema do @WooX de Cave Exlusiva

      Link:
       
      Porem estou com um problema seguindo o tutorial completo dele acabo tendo um retorno de erro na Distro! E ja que o mesmo nao entra no forum deis de 14/01! Venho solicitar ajuda de vocês!
      Caso alguem tenha o Discord Dele Favor me Passe  
      Vamos lá!
      Erro:
       
      Script :
       
      Lib
       
       
      Print Rme:
       
       
      Lembrando que nao esta funcionando em geral, Acrédito que eu tenha pulado algo ou deixado passar despercebido!
      Espero que alguem consiga me ajudar vlw!
    • Por Maniaco
      Boa Tarde TibiaKing!!!
       
      Bom estou precisando arrumar um script, não deve ser muito difícil !! (pra quem sabe  !)
      Quem poder ajudar já agradeço.
       
      Resumindo apartir do momento que falo Travel, Yes para o npc ele me teleporta para posicao inicial me transformando(LookType) e precisa me levar até o destino final. (posFinal)
      até ai tudo bem problema que ele comeca a funcionar e me leva para lugar aleatorio e fica parado lá imovel. ( não da erro na Distro ) Apenas fico parado na LookType de barco.
       
      Uso tfs 0.4 8.60
       
      local posis = {
      --[pos do npc] = {pos inicial, pos final},
      [{x = 115, y = 143, z = 10}] = {posIni = {x = 114, y = 134, z = 10}, posFinal = {x = 76, y = 134, z = 10}},
      [{x = 74, y = 132, z = 10}] = {posIni = {x = 76, y = 134, z = 10}, posFinal = {x = 95, y = 147, z = 10}},
      }
       
       é um NPC
       
       
      .LUA DO NPC
       
      LIB - TRAVEL.LUA
       
       
       
      ,XML
       
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo