Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''lucca''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • Comunidade
    • Informações Importantes
    • Anúncios
    • Membros
    • Lista negra
    • Eventos
  • Minecraft
    • Seu servidor hospedado no lugar certo!
    • Servidores
    • Construções
    • Plugins
    • Skripts
    • Serviços
    • Geral
  • FiveM
    • Servidores
    • Desenvolvimento
    • Serviços
    • Outros
  • Programação
    • Geral
    • Java
    • Web & Desktop
    • Discord
    • Servidores dedicados para grandes projetos.
  • Sistemas operacionais
    • Windows
    • Linux
    • Celular
  • Fóruns
    • Invision Power Services (IPS)
    • XenForo
    • Legacy IPB
    • Outros
  • Design
    • Pedidos
    • Dúvidas
    • Exposição
    • Tutoriais
    • Recursos
  • Jornalismo
    • Notícias
    • Entrevistas
    • Eventos
    • Outros
  • Jogos
    • Geral
    • Novidades
    • Tutoriais
    • Gêneros
    • Outros Jogos
  • Outros
    • Tutoriais Gerais
    • Mercado
    • Assuntos diversos
    • Barzinho
    • Arquivos

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Discord


Instagram


X (Ex-Twitter)


WhatsApp


GitHub


Localização


Nick do Minecraft

Encontrado 4 registros

  1. SCROLLER DIFERENCIADO! (SCOREBOARD) Olá! bom, neste tutorial irei ensinar como fazer um scoreboard com um título que fica trocando de cores! (GIRANDO) e.e Exemplo: temos esta String: "DUALVIADAO" Este scroller, fará o seguinte: Ele irá deixar todas as letras com a cor que você escolheu, e depois, passará de letra por letra trocando as cores. (se isso te bugou, é semelhante ao mineplex/hypixel). Explicação²: Ficará tipo assim, só que automático: §eDUALVIADAO §6§lDUALVIADAO §eD§6§lU§eALVIADAO §eDU§6§lA§eLVIADAO Até zerar a string, depois recomeçará novamente este ciclo. Agora, vamos ao code: Em seu code de scoreboard, basta adicionar: final String texto = "EXEMPLO"; final String cor1 = "§e"; final String cor2 = "§6§l"; new BukkitRunnable() { int c = 0; public void run() { if(c + 1 < texto.length()) { String msg = cor1 + texto.substring(0, c) + cor2 + texto.substring(c, c+1) + cor1 + texto.substring(c+1); c += 1; score.setDisplayName(msg); }else{ c = 0; } } }.runTaskTimer(Main.c, 0, 6); LEMBRANDO: score é a variável de seu scoreboard. OBS: Não fui eu que criei este code! OBS²: Não sei quem foi, então não tem como por créditos.. (se alguém souber, me avise) Para editar as cores, basta alterar a string: ''cor1'' e ''cor2'', e para alterar o texto: String ''texto'' Se eu ajudei, da uma laikada aew! \o
  2. Olá! bom, neste tutorial irei ensinar um sistema básico de proteção pelo sistema da DEVHUB.. Bom, e oque é a dev hub? Caso queira entender TUDO sobre a devhub, veja o tópico do próprio criador, mas, caso você tenha preguiça (que nem eu), irei explicar + - aqui. Para acessar a devhub clique aqui A devhub é um site totalmente free, onde você cria sua conta, e, após criada, você pode criar PROJETOS no site, para ser o ''manager'' de proteção de seu plugin. Quando você estiver criando seu projeto, você precisará inserir 2 dados, para concluir a criação. Após criado, seu projeto terá 4 ''dados'', que são: Tag (Nome de seu projeto), Key (Key que você cria), Ip(O ip, caso, você habilite a ''proteção de ip'' na hora de criar o projeto, ele irá marcar toda vez que alguém utiliza sua key, qual ip foi), e a SecretKey(Uma key extra de segurança gerada pelo próprio site). Será + - assim: Bom, após fazer tudo isso, partiremos para parte em seu plugin! Primeiramente, (em meu caso), faremos um arquivo .yml, onde você colocará os dados de seu projeto: public File key; public FileConfiguration key_conf; Após isso, partiremos para o método onLoad(), que será a parte onde o plugin ''carrega'', e criaremos o arquivo da ''key.yml'', onde ficará os dados necessários: public void onLoad(){ UUID uuid = UUID.randomUUID(); //Aqui, geraremos uma key aleatória apenas para setar na config como exemplo String myRandom = uuid.toString(); //Aqui transformaremos a key gerada em uma string, para setar na config. this.key = new File(getDataFolder(), "key.yml"); this.key_conf = YamlConfiguration.loadConfiguration(this.key); if (!this.key.exists()) { try { this.key.createNewFile(); this.key_conf.set("Authentication.Key", "0000-0000-0000-0000"); this.key_conf.set("Authentication.Secret Key", myRandom.substring(0,20).replace("-", myRandom.substring(0,1))); //Aqui pegamos a key gerada, reduzimos o tamanho da string a 20 caracteres, e como toda UUID gerada possui alguns traços nela, daremos replace nesses traços com outras letras aleatórias this.key_conf.save(this.key); } catch (IOException e) { e.printStackTrace(); } } } Após isso, precisaremos checar se a licença está correta, certo? Então vamos lá: Primeiramente, adicione este code a sua class: public static String lerURL(String url){ try { URL eita = new URL(url); BufferedReader br = new BufferedReader(new InputStreamReader(eita.openStream())); String s; String z = ""; while ((s = br.readLine()) != null) { z+=s; } br.close(); return z.replace("<br>", "\n"); } catch (MalformedURLException excecao) {} catch (IOException excecao) {Bukkit.getConsoleSender().sendMessage("§c[" + prefix2 + "§c] §4§lIOException error! Há algo errado em sua key.yml");} return ""; } Este code, será para ler tudo que a pagina retornará quando fazer a leitura (O site retorna um JSON, dizendo se a licença foi aceita o não). Bom, agora vamos para parte da checagem: Crie uma boolean em sua class: boolean keycheck = false; Agora, ainda no onLoad(), adicione isto após a parte de criação da key: if (lerURL("http://devhub.mcdevelopersbr.net/api/auth/<NOME DE SEU PROJETO>/" + this.key_conf.getString("Authentication.Key") + "/" + this.key_conf.getString("Authentication.Secret Key") + "").contains("true")){ //Esta parte, será onde checamos se a key está totalmente correta Bukkit.getConsoleSender().sendMessage(" §a§l-=ANTI§2PIRATARIA§a=-"); Bukkit.getConsoleSender().sendMessage("§a[" + prefix2 + "§a] §3Sua licenca foi aceita!"); Bukkit.getConsoleSender().sendMessage("§a[" + prefix2 + "§a] §3Plugin iniciando."); Bukkit.getConsoleSender().sendMessage(" §a§l-=ANTI§2PIRATARIA§a=-"); keycheck = true; } else { //Caso a key não esteja correta, iremos dizer esta mensagem: Bukkit.getConsoleSender().sendMessage(" §c§l-=ANTI§4PIRATARIA§c=-"); Bukkit.getConsoleSender().sendMessage("§c[" + prefix2 + "§c] §4Sua licenca não foi encontrada!"); keycheck = false; //Agora, checaremos porque a licença não foi aceita: if (lerURL("http://devhub.mcdevelopersbr.net/api/auth/<NOME DE SEU PROJETO>/" + this.key_conf.getString("Authentication.Key") + "/" + this.key_conf.getString("Authentication.Secret Key") + "").contains("Key")){ //Caso apenas a KEY esteja incorreta, diremos isto: Bukkit.getConsoleSender().sendMessage("§c[" + prefix2 + "§c] §4§lKEY §cincorreta!"); //Caso não for a KEY que esteja incorreta, checaremos se é a SECRET-KEY: } else if (lerURL("http://devhub.mcdevelopersbr.net/api/auth/<NOME DE SEU PROJETO>/" + this.key_conf.getString("Authentication.Key") + "/" + this.key_conf.getString("Authentication.Secret Key") + "").contains("Secret")){ //Agora, caso apenas a SECRET-KEY esteja incorreta, diremos isto: Bukkit.getConsoleSender().sendMessage("§c[" + prefix2 + "§c] §4§lSECRET-KEY §cincorreta!"); } Bukkit.getConsoleSender().sendMessage(" §c§l-=ANTI§4PIRATARIA§c=-"); } Agora, no onEnable() (void em que o plugin se inicia), adicionaremos: if (!keycheck){ //Caso a key não foi encontrada, a boolean será false e o plugin não funcionará, porém caso for TRUE, este método será ignorado. Bukkit.getPluginManager().disablePlugin(this); return; } Pronto! sua ''proteção'' está finalizada. Agora, explicando o método da checagem com palavras: Quando a checagem é feita no site, pelo método lerURL, o site retornará algo parecido com isto: {"authorized":true,"ainfo-1":"FrameMc","ainfo-2":""} Por isso, na checagem, após ''lerURL'', temos: lerURL(<url>).contains("true") pois se a licença estiver correta, nesta JSON teremos TRUE, e se estiver errado, FALSE. E em relação a boolean, ela será alterada de acordo com a checagem, se a licença aceita, a boolean será TRUE, caso não, false.. Por isso a checagem também no onEnable(). Fim de tutorial, espero que tenham entendido, caso não tenham, basta perguntar aqui no tópico que explicarei melhor! LEMBRANDO QUE ESTE MÉTODO NÃO E 100% SEGURO, ALIÁS, NENHUM MÉTODO DE PROTEÇÃO DE PLUGIN SERÁ 100% SEGURO! Se gostou da um like aew, não cai o dedo \o
  3. CommandAPI Bom, esta api é simples porém bem útil, ela consiste em você ''registrar'' comandos, sem necessidade de coloca-los na plugin.yml Este plugin é funcional nas versões 1.5.X - 1.8.X Vamos para o uso: Primeiramente, em sua Main/onEnable coloque: CommandAPI.setupAPI(getServer()); Agora, criaremos uma classe de comando normal, exemplo: public class Teste implements CommandExecutor{ public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { if (label.equalsIgnoreCase("testando")){ System.out.println("ta tranquilo"); } if (label.equalsIgnoreCase("testando2")){ System.out.println("ta favoravel"); } return false; } } ok! classe criada, agora vamos ''registrar'' o comando: Vamos no onEnable(), e colocamos: CommandAPI.registerCommand("nomedocomando", new ClasseDoComando()); Exemplo: CommandAPI.registerCommand("testando", new Teste()); CommandAPI.registerCommand("testando2", new Teste()); Pronto! seu comando está registrado! Resultados: Clique aqui para fazer o download.
  4. MENSAGENS CENTRALIZADAS! Olá! hoje irei ensinar como enviar uma mensagem centralizada para algum player no chat! OBS: Não fui eu que criei este code! OBS²: Não sei quem foi, então não tem como por créditos.. (se alguém souber, me avise) Bom, basta você adicionar o seguinte método a sua class: private final static int CENTER_PX = 154; public static void sendCenteredMessage(Player player, String message){ if(message == null || message.equals("")) player.sendMessage(""); message = ChatColor.translateAlternateColorCodes('&', message); int messagePxSize = 0; boolean previousCode = false; boolean isBold = false; for(char c : message.toCharArray()){ if(c == '§'){ previousCode = true; continue; }else if(previousCode == true){ previousCode = false; if(c == 'l' || c == 'L'){ isBold = true; continue; }else isBold = false; }else{ DefaultFontInfo dFI = DefaultFontInfo.getDefaultFontInfo(c); messagePxSize += isBold ? dFI.getBoldLength() : dFI.getLength(); messagePxSize++; } } int halvedMessageSize = messagePxSize / 2; int toCompensate = CENTER_PX - halvedMessageSize; int spaceLength = DefaultFontInfo.SPACE.getLength() + 1; int compensated = 0; StringBuilder sb = new StringBuilder(); while(compensated < toCompensate){ sb.append(" "); compensated += spaceLength; } player.sendMessage(sb.toString() + message); } Após isso, basta fazer apenas isto: sendCenteredMessage(p, "Teste gamersboard"); E sua mensagem será enviada ao player p, totalmente centralizada! @EDIT Você também precisará criar uma class de nome DefaultFontInfo, contendo o seguinte code: CLIQUE AQUI PARA VER O CODE E lembrando, este code suporta totalmente o uso de cores (§).
×
×
  • Criar Novo...