Ir para conteúdo

Duvidas Argumentos


R.A

Posts Recomendados

Seguinte pessoal estou com uma duvida mt hard, eu queria que executa-se um /pedirtag <link do video> e a tag no caso a tag <divulgador>

Entao fiz o seguinte: 

Citar

if ((args[0].contains("www.youtube.com/watch?v=")) 
                        || args[0].contains("https://www.youtube.com/watch?v=") 
                        || args[0].contains("https://youtube.com/watch?v=") 
                        || args[0].contains("http://www.youtube.com/watch?v=")
                        || args[0].contains("http://youtube.com/watch?v=")
                        || args[0].contains("http://streamcraft.com/user/")
                        || args[0].contains("http://www.streamcraft.com/user/")
                        || args[0].contains("www.streamcraft.com/user/")
                        || args[0].contains("https://www.twitch.tv/")
                        || args[0].contains("https://twitch.tv/")
                        || args[0].contains("www.twitch.tv/")  && args[1].equalsIgnoreCase("divulgador")){

Mas isso da erro pra quem nao entendeu os args 0 vao verificar se o comando contem esses links que sao os links basicos para os videos

do youtube e outras plataformas. Entao se conter os args 0 e tbm o comando Divulgador que no caso o args[1] ele vai executar algo.

Mas isso da erro pois se eu botar um link correto e dps colocar qualquer coisa ele executa esse algo. Entao ele nao verifica o "Divulgador"

ele verifica o link mas n verifica o args[1] como posso fazer pra ele verificar o args[1] e os args[0] no caso os links ?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Link para o comentário
Compartilhar em outros sites

Boa noite amigo, antes de tudo prazer me chame de Ninja.



Bom, para isso que você falou acontecer você precisa "detectar" se o primeiro e o segundo argumento está vazio, você pode fazer isso dessa forma:

 

Spoiler

                
                if(args.length == 0) {
                    sender.sendMessage("Use: /pedirtag <link> <divulgador>"); //AQUI "DETECTA" SE O PRIMEIRO ARGUMENTO ESTÁ VAZIO 
                    return true;                                                                                                 //E SE O MESMO TIVER VAZIO VAI ENVIAR A MENSAGEM
                }
                if(args.length == 1) {
                    sender.sendMessage("Use: /pedirtag <link> <divulgador>"); //JÁ AQUI "DETECTA" SE O SEGUNDO ARGUMENTO ESTÁ VAZIO
                                                                                                                                            //E SE O MESMO TIVER VAZIO VAI ENVIAR A MENSAGEM
                    return true;
                }
            
            }

Link para o comentário
Compartilhar em outros sites

  • Tente criar em sua config da seguinte maneira: 

    Um método para pegar a stringList;
    Na config.yml você deixa assim:

    Links Permitidos:
    - 'youtube.com'
    - 'etc...'

    Não sei se o problema está sendo verificar os links mais poderia tentar isso.
Link para o comentário
Compartilhar em outros sites

 

if ((args[0].contains("www.youtube.com/watch?v=")
                        || args[0].contains("https://www.youtube.com/watch?v=") 
                        || args[0].contains("https://youtube.com/watch?v=") 
                        || args[0].contains("http://www.youtube.com/watch?v=")
                        || args[0].contains("http://youtube.com/watch?v=")
                        || args[0].contains("http://streamcraft.com/user/")
                        || args[0].contains("http://www.streamcraft.com/user/")
                        || args[0].contains("www.streamcraft.com/user/")
                        || args[0].contains("https://www.twitch.tv/")
                        || args[0].contains("https://twitch.tv/")
                        || args[0].contains("www.twitch.tv/"))  && args[1].equalsIgnoreCase("divulgador"))

Você esqueceu de isolar a condição ¹, é tudo questão dos "(/)";

Caso você vá fazer o sistema do tipo:

/pedirtag <Link> Divulgador|YT; Ou outros, eu recomendo fazer assim:

 

if ((args[0].contains("www.youtube.com/watch?v=")
                        || args[0].contains("https://www.youtube.com/watch?v=") 
                        || args[0].contains("https://youtube.com/watch?v=") 
                        || args[0].contains("http://www.youtube.com/watch?v=")
                        || args[0].contains("http://youtube.com/watch?v=")
                        || args[0].contains("http://streamcraft.com/user/")
                        || args[0].contains("http://www.streamcraft.com/user/")
                        || args[0].contains("www.streamcraft.com/user/")
                        || args[0].contains("https://www.twitch.tv/")
                        || args[0].contains("https://twitch.tv/")
                        || args[0].contains("www.twitch.tv/"))  && args[1].equalsIgnoreCase("divulgador")){

switch(args[0].toLowerCase()) {
	case "youtuber":
       sender.sendMesssage("Seu pedido foi en********, aguarde a confirmação!");
       metodoParaCachear;
       break;
    case "divulgador":
       sender.sendMesssage("Seu pedido foi en********, aguarde a confirmação!");
       metodoParaCachear;
       break;
    case default:
       sender.sendMessage("Não existe essa tag, tente novamente com uma tag existente!");
       break;
}

}



Lembrando que, fiz pelo fórum, ou seja, pode conter algum erro. Qualquer coisa só chamar privado.

Link para o comentário
Compartilhar em outros sites

16 minutos atrás, iHuck disse:
  • Tente criar em sua config da seguinte maneira: 

    Um método para pegar a stringList;
    Na config.yml você deixa assim:

    Links Permitidos:
    - 'youtube.com'
    - 'etc...'

    Não sei se o problema está sendo verificar os links mais poderia tentar isso.

Entao esse pl n tem config 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...