Ir para conteúdo
  • 0

Como usar a API do Legendchat


Cassiano_14

Pergunta

10 respostass a esta questão

Posts Recomendados

  • 0

Para setar uma tag, você precisar utilizar o event ChatMessageEvent do LegendChat.

@EventHandler
    public void playerDigitaChat(ChatMessageEvent ev) {

        //Pego uma instancia do jogador
        Player jogador = ev.getSender();

        //O metodo abaixo serve pra substituir a tag do elo
        if (ev.getTags().contains("{loteria}")) {
            String tagLoteria = plugin.getConfig().getString("Tag");

            ev.setTagValue("{loteria}", tagLoteria);

        }


    }

 

Link para o comentário
Compartilhar em outros sites

  • 0
2 minutos atrás, Kees_T disse:

Para setar uma tag, você precisar utilizar o event ChatMessageEvent do LegendChat.


@EventHandler
    public void playerDigitaChat(ChatMessageEvent ev) {

        //Pego uma instancia do jogador
        Player jogador = ev.getSender();

        //O metodo abaixo serve pra substituir a tag do elo
        if (ev.getTags().contains("{loteria}")) {
            String tagLoteria = plugin.getConfig().getString("Tag");

            ev.setTagValue("{loteria}", tagLoteria);

        }


    }

 

Tá, mas como eu faço para setar a tag no player?

 

Link para o comentário
Compartilhar em outros sites

  • 0
5 minutos atrás, Cassiano_14 disse:

Tá, mas como eu faço para setar a tag no player?

 

Ah é esqueci, basta salvar o nome do jogador em algum lugar (aconselho criar uma String com o nome do jogador), ou se preferir pegue do local de onde salvou, e no chat, compare se quem mandou a mensagem é quem foi o vencedor da loteria. Exemplo:

 

@EventHandler
    public void playerDigitaChata(ChatMessageEvent ev) {

        //Pego uma instancia do jogador
        Player jogador = ev.getSender();

        //Verifico se quem digitou no chat é o vencedor do evento
        if (plugin.getVencedor().equalsIgnoreCase(jogador.getName())) {
            
            //O metodo abaixo serve para substituir a tag do jogador
            if (ev.getTags().contains("{loteria}")) {
                String tagLoteria = plugin.getConfig().getString("Tag");

                ev.setTagValue("{loteria}", tagLoteria);

            }
        }

    }
Editado por Kees_T
Link para o comentário
Compartilhar em outros sites

  • 0
6 minutos atrás, Kees_T disse:

Ah é esqueci, basta salvar o nome do jogador em algum lugar (aconselho criar uma String com o nome do jogador), ou se preferir pegue do local de onde salvou, e no chat, compare se quem mandou a mensagem é quem foi o vencedor da loteria. Exemplo:

  Ocultar conteúdo


@EventHandler
    public void playerDigitaChata(ChatMessageEvent ev) {

        //Pego uma instancia do jogador
        Player jogador = ev.getSender();

        //Verifico se quem digitou no chat é o vencedor do evento
        if (plugin.getVencedor().equalsIgnoreCase(jogador.getName())) {
            
            //O metodo abaixo serve para substituir a tag do jogador
            if (ev.getTags().contains("{loteria}")) {
                String tagLoteria = plugin.getConfig().getString("Tag");

                ev.setTagValue("{loteria}", tagLoteria);

            }
        }

    }

Cara, não sei porque, mas não funciona a tag

Link para o comentário
Compartilhar em outros sites

  • 0
11 minutos atrás, Cassiano_14 disse:

Cara, não sei porque, mas não funciona a tag

Sim pode, o importante é você ter acesso ao ultimo ganhador. Você registrou a classe onde você colocou o listener do ChatMessageEvent? Também coloque alguma mensagens de debug dentro do método do event para garantir que ele esteja sendo executado.

Link para o comentário
Compartilhar em outros sites

  • 0
Agora, Kees_T disse:

Sim pode, o importante é você ter acesso ao ultimo ganhador. Você registrou a classe onde você colocou o listener do ChatMessageEvent? Também coloque alguma mensagens de debug dentro do método do event para garantir que ele esteja sendo executado.

Tem discord? Para nos falarmos amanha

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...