Ir para conteúdo
  • Anúncios

    • AiroN

      Anuncie no L2JBrasil

      Deseja anunciar aqui no fórum, no Top L2JBrasil ou em nossa página no Facebook? Confira: www.l2jbrasil.com/anunciar
    • Grundor

      Método de login alterado   08-10-2017

      Com a atualização do fórum para versão  IPB 4.2 não é mais possível fazer login usando username, ao invés disso você deve usar e-mail ou seu Display Name (nome como é exibido no forum).      
    • AiroN

      Tenha seu clube formalmente no L2JBrasil!   18-10-2017

      Você tem amigos que estão sempre juntos contigo na alegria e na tristeza, na saúde e na doença, em todos os desenvolvimentos de suas vida, no pvp, nas quests? rsrs   Monte seu clube formalmente na L2J Brasil!
      Criar um clube é muito fácil, basta você entrar nesse tópico e se interar do assunto:    Dominem o mundo!


      Atenciosamente,
      Administração L2jBrasil.
  • 1
Psiu

Duvidas com o Announcements To ALL

Pergunta

Oiii, estou com mais uma pequena dúvida. 

Com esse projeto que estou fazendo, terei varias na verdade no decorrer dos dias... kk :3

Tipo, estou ADD um Mod de um novo evento e toda vez que eu inicio ele aparece a mensagem para todo o mundo do lineage 2 ver isso:

Announcements.getInstance().announceToAll

Mais eu quero deixar o anuncio restrito somente a uma cidade especifica e sua região, como Giran por exemplo. 

Ai não to sabendo qual o código correto para por no final da linha, invés de ToAll, TownofGiran, já tentei varias coisas mais só da error. :/ 

Compartilhar este post


Link para o post
Compartilhar em outros sites

8 respostass a esta questão

Posts recomendados

  • 1

Para fazer isso você vai ter que ter a localização de giran em x e y e você vai colocar esse método que criei dentro de sua classe e vai chamar ele da seguinte forma : 

anunciaPorCidade("O Evento iniciou!", xGiran, yGiran);

Você tem que pegar o x e o Y da cidade que quer fazer esse anúncio, para cada cidade que for anunciar isso vai ter que colocar uma chamada do método.

 

	private void anunciaPorCidade(final String text, int x, int y)
	{
		final CreatureSay cs = new CreatureSay(0, Say2.ANNOUNCEMENT, "", text);
		final int region = MapRegionTable.getInstance().getMapRegion(x, y);
		for (final L2PcInstance player : L2World.getInstance().getAllPlayers())
		{
			if (region == MapRegionTable.getInstance().getMapRegion(player.getX(), player.getY()))
			{
				player.sendPacket(cs);
			}
		}
	}

 

Editado por Tayran.JavaDev
  • Gostei 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0
19 minutos atrás, Psiu disse:

 

voce pode colocar no chat superior acima, agora anunciar em regioes vou fica te deveno..

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0
3 minutos atrás, Onã disse:

 

Onã não te entendi... Como seria pra por o anuncio pra falar pelo "!" até onde eu sei isso se limita somente as city não? 

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0
1 minuto atrás, Psiu disse:

Onã não te entendi... Como seria pra por o anuncio pra falar pelo "!" até onde eu sei isso se limita somente as city não? 

Eu quis dizer que tem como voce mudar o anuncio de cor, mas limitar pra regioes, como eu disse, vou ficar te deveno..

  • Gostei 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0
		
		String text = "O que voce quer anunciar aqui";
		CreatureSay cs = new CreatureSay(0, Say2.ANNOUNCEMENT, "", text);
		for(L2PcInstance player : L2World.getInstance().getAllPlayers())
		{
			if(player.isInsideZone(L2Character.ZONE_PEACE))
				player.sendPacket(cs);
		}

 

Editado por Tayran.JavaDev

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0
10 horas atrás, Tayran.JavaDev disse:
		
		String text = "O que voce quer anunciar aqui";
		CreatureSay cs = new CreatureSay(0, Say2.ANNOUNCEMENT, "", text);
		for(L2PcInstance player : L2World.getInstance().getAllPlayers())
		{
			if(player.isInsideZone(L2Character.ZONE_PEACE))
				player.sendPacket(cs);
		}

 

Oi Tayran, você poderia me explicar esse código? Pois de uma simples linha deu tudo isso, e ao substituir as linhas que eu mencionei por isso da error no compilar, ou seja não funciona. 

Esse código seria um anuncio somente para cidade onde o evento foi iniciado? No caso de ser iniciado por um NPC na cidade tal somente naquela cidade ira aparecer o anuncio certo? 

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0

Amigo me explica primeiro o que quer, agora eu to entendendo mais nada, o código que fiz vai anunciar o que você quer só se a pessoa estiver dentro de uma zona de paz, ou seja dentro de uma cidade.

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0
2 horas atrás, Tayran.JavaDev disse:

Amigo me explica primeiro o que quer, agora eu to entendendo mais nada, o código que fiz vai anunciar o que você quer só se a pessoa estiver dentro de uma zona de paz, ou seja dentro de uma cidade.

Como expliquei acima, toda vez que o Evento começa ele anuncia nos "Announcements" para todo o mundo do lineage 2 ver.

    public static void openRegi()
     {
         Announcements.getInstance().announceToAll("O Evento iniciou!");
         Announcements.getInstance().announceToAll("Digite .Join para entrar ou .Leave para sair!");
         Announcements.getInstance().announceToAll("Voce tem 2 minutos para se registrar!");
         isRunning = true;
         isFinished = false;
         CastleRegi = true;
         waitSecs(120);
         stopRegi();
         preparecastle();
         shufflePlayers();
         teleportThem();
         Announcements.getInstance().announceToAll("Voce tem 5 minutos ate o evento terminar!");
         waitSecs(300);
         if (!isFinished)

 

Ve ai? Eu quero deixar de uma forma que esses anuncio só apareçam em cidades que eu determinar, como em Giran por exemplo. Assim como funciona com o   !    do jogo. 

Só giran vai ver esse anuncio, e não as pessoas que estao em outras cidades, ai se eu quiser por pra só Heine ver, ou só Goddart ver

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora




     



Anuncie em nossa página no Facebook!
Confira o regulamento.
Contate-nos através do e-mail: [email protected] para mais informações.


  • Quem Está Navegando

    Nenhum usuário registrado visualizando esta página.

×