

Mateusão
Membros-
Total de itens
13 -
Registro em
-
Última visita
Sobre Mateusão

- Data de Nascimento Março 3
Meios de comunicação
-
Discord
Mateusão#0001
-
GitHub
TheMFjulio
Informações pessoais
-
Sexo
Masculino
-
Nick do Minecraft
Mateusaum
Últimos Visitantes
O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.
-
TheusDEV reagiu a uma resposta no tópico: Usando mapas no Bukkit/Spigot
-
dúvida resolvida Por onde começar a aprender a fazer plugin
tópico respondeu ao GGoodT de Mateusão em Dúvidas resolvidas
Aprenda Java primeiramente, depois de você ter um conhecimento bom nisto e também em POO você pode partir para o Spigot/Bukkit. Eu aprendi Java e Bukkit por prática, tenta fazer plugin que seja interessante para você. Você provavelmente não vai conseguir fazer ele de primeira, mas é exatamente por isso que se chama prática. Quando você tiver uma dúvida de como fazer algo, tente pesquisar no Google ou leia a documentação. De recomendação para já entender os básicos do Bukkit, recomendo este vídeo: -
MFLogger Eu fiz esse plugin para testar o "SqlLite", porém decidi compartilhar com todos. O plugin é gratuito e tem seu código aberto, então se você quiser fazer quaisquer melhorias nele o GitHub vai ficar no fim desse tópico. Funções: Registrar quando um jogador usar comandos. Registrar quando um jogador abrir um inventário. Registrar quando um jogador colocar um bloco. Registrar quando um jogador quebrar um bloco. Registrar quando um jogador jogar um item no chão. Registrar quando um jogador falar no chat. Coletar todos os registros de uma região. config.yml: Permissões: A única permissão do plugin é a "mflogger.admin", ela é usada para executar o único comando do plugin. O comando "/getLogs": Este comando é simples de se utilizar, o único argumento dele é o de raio. O argumento vai pegar todos os registros em um raio, começando pela região de quem executou o comando. Um exemplo de sua utilização é usar "/getLogs 15" que vai pegar todos os registros em um raio de 15 blocos. O comando retorna registros dessa maneira: Retornando a data, o horário, o jogador, o que ele fez e também as coordenadas de quando ele executou. Links: GitHub Download Recomendação: Se você quiser ler o arquivo de "logs.db" do plugin, recomendo usar o SqLiteBrowser.
-
É bem simples de entender, o nome já fala, se eu usar este modelo: new SimpleDateFormat("dd/MM/yyyy") Com "dd" sendo o dia do mês, "MM" sendo o mês do ano e "yyyy" sendo o ano em si. Quando eu usar então o ".format(date)", a data vai ser formatada para ficar no modelo exato que escrevi.
-
danielzinh reagiu a uma resposta no tópico: DateFormat ajuda =D
-
Você pode usar o "SimpleDateFormat", um exemplo é assim: SimpleDateFormat sdf1 = new SimpleDateFormat("dd/MM/yyyy"); SimpleDateFormat sdf2 = new SimpleDateFormat("HH:mm:ss"); Date date = new Date(); System.out.println(sdf1.format(date)); System.out.println(sdf2.format(date)); O resulto vai sair nesse estilo: 07/08/2020 07:18:23 Tem várias outras maneiras de formatação que ele suporta, é possível até ver se o ano é antes ou depois de cristo, a lista de todos os jeitos de formatar está aqui: https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html
-
Mateusão reagiu a uma resposta no tópico: Gifs no chat, usando o novo sistema de cores RGB do Spigot
-
Mateusão reagiu a uma resposta no tópico: Gifs no chat, usando o novo sistema de cores RGB do Spigot
-
Mateusão reagiu a uma resposta no tópico: Gifs no chat, usando o novo sistema de cores RGB do Spigot
-
Mateusão reagiu a uma resposta no tópico: AJUDA COM HASHMAP
-
Achei um código no StackOverflow, acho que vai ajudar você: public static <K, V extends Comparable<? super V>> Map<K, V> sortByValue(Map<K, V> map) { List<Entry<K, V>> list = new ArrayList<>(map.entrySet()); list.sort(Entry.comparingByValue()); Map<K, V> result = new LinkedHashMap<>(); for (Entry<K, V> entry : list) { result.put(entry.getKey(), entry.getValue()); } return result; } Isso vai retornar um Map ordenado por valor, vê se funciona.
-
Dargoh reagiu a uma resposta no tópico: AJUDA COM HASHMAP
-
HashMaps não guardam a ordem, porém LinkedHashMaps sim, então recomendo usa-lo
-
Marsh, o Lendário reagiu a uma resposta no tópico: Gifs no chat, usando o novo sistema de cores RGB do Spigot
-
žƒэเ†เ¢эเя๏ reagiu a uma resposta no tópico: Gifs no chat, usando o novo sistema de cores RGB do Spigot
-
Com o novo Spigot 1.16, o sistema de cores do chat agora é RGB, aproveitando isso acabei criando um tocador de gifs. O código fonte está no GitHub, qualquer crítica construtiva é bem vinda: https://github.com/TheMFjulio/MFChatFrame
-
dúvida resolvida Renomear os encantamentos
tópico respondeu ao S0_Dev de Mateusão em Dúvidas resolvidas
Acabei criando um snippet, se você quer ter um exemplo de como fazer: https://gist.github.com/TheMFjulio/81cc92f00f3bc08501738986954b9e79 -
dúvida resolvida Renomear os encantamentos
tópico respondeu ao S0_Dev de Mateusão em Dúvidas resolvidas
Eu acho que é possível fazer o seguinte, registra um evento que pega toda vez que um item é encantado, quando o evento for chamado, você formata a "lore". -
dúvida resolvida Renomear os encantamentos
tópico respondeu ao S0_Dev de Mateusão em Dúvidas resolvidas
Você pode esconder os encantamentos com: item.addItemFlags(ItemFlag.HIDE_ENCHANTMENTS) Depois disso, você pode adicionar esses encantamentos pelo "lore" do item. -
Marsh, o Lendário reagiu a uma resposta no tópico: [ChatHead] Um código snippet simples para mandar a face do jogador no chat
-
Olá, eu fiz esse código já faz tempo, então decidi postar ele aqui. Ele é bem simples de se utilizar. Quaisquer críticas construtivas e sugestões para o código serão aceitas. Exemplo: ChatHead chatHead = new ChatHead(player).setSuffix(5, ChatColor.GREEN + " Olá Mundo!").setMainPrefix(ChatColor.DARK_PURPLE + ">"); player.sendMessage(chatHead.getMessage()); Resultado: Link para o código: https://gist.github.com/TheMFjulio/7837779f33400722f6ae66d93b20a565
-
Rebs reagiu a uma resposta no tópico: Usando mapas no Bukkit/Spigot
-
Eu acho que por conta das limitações do próprio minecraft vanilla, não seja possível fazer isso, mas irei pesquisar mais sobre o assunto
-
RUSHyoutuber reagiu a uma resposta no tópico: Usando mapas no Bukkit/Spigot
-
Mateusão reagiu a uma resposta no tópico: Usando mapas no Bukkit/Spigot
-
Mapas no minecraft são ótimos, e na minha opinião a ferramenta menos utilizada em plugins mesmo sendo extremamente fácil a modificação dele usando bukkit, e neste tutorial irei mostrar como utilizar o bukkit nesta modificação,para começar mapas no minecraft tem 128x128 pixeis, cada pixel sendo 1 chunk, fazendo assim 2048x2048 blocos cada mapa, sabendo disso já poderemos começar o tutorial. Iniciando os mapas Para inicializar mapas no minecraft eu recomendo usar o evento de inicialização @EventHandler public void onMap(MapInitializeEvent event) { //Fazer código } Esse evento vai ser chamado toda vez que um jogador abrir um mapa O próximo passo e colocar a escala do mapa event.getMap().setScale(MapView.Scale.FARTHEST); isso é quanto de zoom o mapa tem, de mais perto até o mais longe exatamente nessa ordem CLOSEST CLOSE NORMAL FAR FARTHEST Mudando a renderização do mapa Para você poder renderizar imagens ou apenas mudar os pixeis de um mapa, você primeiro tem que remover o renderizador normal do minecraft event.getMap().removeRenderer(event.getMap().getRenderers().get(0)); Depois de remover o renderizador padrão, agora você vai ter que criar sua própria classe public class CustomMapRenderer extends MapRenderer { @Override public void render(MapView mapView, MapCanvas mapCanvas, Player player) { } } Depois de criar sua classe, adicione ele ao mapa: event.getMap().addRenderer(new CustomMapRenderer()); Com o renderizador customizado de mapa é possível fazer tais modificações: Mudar a cor dos pixeis mapCanvas.setPixel(70, 67, (byte) 16); Nesse método eu estou mudando o pixel do X-70 e Y-67 para a cor vermelha (o byte 16) Escrever texto mapCanvas.drawText(10,10,MinecraftFont.Font,player.getName()); Nesse método eu estou escrevendo um texto no X-10 e Y-10, com a fonte padrão do minecraft, eu estou escrevendo o nome do jogador. Desenhar uma imagem mapCanvas.drawImage(0,0,image); Eu estarei desenhando uma imagem nas coordenadas X-0 e Y-0 para ela ficar centralizada, porém imagens com tamanhos maiores que o limite do mapa(128 pixeiss de altura e largura) irão ser cortadas, logo é recomendado você redimensionar a imagem primeiro. Exemplo: Eu irei colocar a foto desse cachorro no mapa Código do Listener: public class MapListener implements Listener { private Plugin plugin; public MapListener(Plugin plugin) { this.plugin = plugin; Bukkit.getPluginManager().registerEvents(this, plugin); } @EventHandler public void onMap(MapInitializeEvent event) { event.getMap().removeRenderer(event.getMap().getRenderers().get(0)); event.getMap().addRenderer(new CustomMapRenderer(plugin)); event.getMap().setScale(MapView.Scale.FARTHEST); } } Código do renderizador: public class CustomMapRenderer extends MapRenderer { private Plugin plugin; public CustomMapRenderer(Plugin plugin) { this.plugin = plugin; } @Override public void render(MapView mapView, MapCanvas mapCanvas, Player player) { //Primeiro irei pegar o arquivo da imagem File imageFile = new File(plugin.getDataFolder(), "cachorro.jpg"); try { BufferedImage oldImage = ImageIO.read(imageFile); BufferedImage bufferedImage = new BufferedImage(128,128, BufferedImage.TYPE_INT_RGB); Graphics2D graphics = bufferedImage.createGraphics(); //Isso apenas serve para redimensionar tal imagem graphics.drawImage(oldImage, 0,0,Math.min(128,oldImage.getWidth()),Math.min(128,oldImage.getHeight()),null); graphics.dispose(); //E pronto agora irei desenhar ela no mapa mapCanvas.drawImage(0,0,bufferedImage); } catch (IOException e) { e.printStackTrace(); } } } Resultado: Espero que este tutorial seja útil para você, qualquer dúvida ou sugestão de como melhorar ele, pode mandar