Ir para conteúdo
  • Cadastre-se

(Resolvido)Script que impede o player de executar uma talkaction em determinada area


Ir para solução Resolvido por MaTTch,

Posts Recomendados

Olá pessoal, estou precisando de um script que impeça os players de usarem uma talkaction em determinado lugar.

No meu servidor existe uma talkaction que teleporta o player para o templo, porem queria que ela não pudesse ser usada em alguns eventos e algumas áreas do mapa, agradeço a qualquer um que queira ajudar.

 

Spoiler

function onSay(cid, words, param)
local pos = {x=1030, y=913, z=6}

if(getCreatureCondition(cid, CONDITION_INFIGHT)) == FALSE then
doTeleportThing(cid, pos, true)
doSendMagicEffect(getPlayerPosition(cid),3)
doPlayerSendTextMessage(cid, 19, "Teleportado!")
else
return doPlayerSendTextMessage(cid, 19, "Somente sem battle.")
end

return true
end

 

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

Esta é uma mensagem automática! Este tópico foi movido para a área correta.
Pedimos que você leia as regras do fórum.

Spoiler

This is an automated message! This topic has been moved to the correct area.
Please read the forum rules.

 

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites

 

 

1 hora atrás, PedroSTT disse:

Poste a script para que alguem possa lhe ajudar

script adicionado no topico, obrigado

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

Espero que você saiba configurar o resto...

Spoiler

local goTo = {x=1030, y=913, z=6}

local forbiddenAreas = {
	{from = {x = 1000, y = 1000, z = 7}, to = {x = 1050, y = 1050, z = 7}},
	{from = {x = 2000, y = 2000, z = 7}, to = {x = 2050, y = 2050, z = 7}}
}

function onSay(cid, words, param)
	local pos = getThingPos(cid)
	for _, area in pairs(forbiddenAreas) do
		if(isInRange(pos, area.from, area.to)) then
			doPlayerSendTextMessage(cid, 19, "Você não pode usar isto nesta area.")
			return true
		end
	end
	
	if(not getCreatureCondition(cid, CONDITION_INFIGHT)) then
		doTeleportThing(cid, goTo)
		doSendMagicEffect(pos, 3)
		doPlayerSendTextMessage(cid, 19, "Teleportado!")
	else
		doPlayerSendTextMessage(cid, 19, "Somente sem battle.")
	end
	return true
end

 

 

Editado por MaTTch (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
2 horas atrás, MaTTch disse:

Espero que você saiba configurar o resto...

  Ocultar conteúdo


local goTo = {x=1030, y=913, z=6}

local forbiddenAreas = {
	{from = {x = 1000, y = 1000, z = 7}, to = {x = 1050, y = 1050, z = 7}},
	{from = {x = 2000, y = 2000, z = 7}, to = {x = 2050, y = 2050, z = 7}}
}

function onSay(cid, words, param)
	local pos = getThingPos(cid)
	for _, area in pairs(forbiddenAreas) do
		if(isInRange(pos, area.from, area.to)) then
			doPlayerSendTextMessage(cid, 19, "Você não pode usar isto nesta area.")
			return true
		end
	end
	
	if(not getCreatureCondition(cid, CONDITION_INFIGHT)) then
		doTeleportThing(cid, goTo)
		doSendMagicEffect(pos, 3)
		doPlayerSendTextMessage(cid, 19, "Teleportado!")
	else
		doPlayerSendTextMessage(cid, 19, "Somente sem battle.")
	end
	return true
end

 

 

funcionando perfeitamente, muito obrigado!! ajudou muito amigo! rep+

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo