Ir para conteúdo

[TUTORIAL] Scoreboard sem Piscar.


JakeFrostMC

Posts Recomendados

Bem, eu estava jogando com um amigo meu em um servidor de minegames
muito famoso aqui no brasil.

Ai nós ficavamos observando, e falando: "Scoreboard da Pexte pra Pisca '-' tnc".

Ai como nós dois somos coders, nós decidimos 'tentar' criar um código

de scoreboard sem piscar. ai pedi a permissão dele para postar aqui no fórum.

Espero que vocês gostem!

 

package me.frost.boardscore;

import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerMoveEvent;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.scoreboard.DisplaySlot;
import org.bukkit.scoreboard.Objective;
import org.bukkit.scoreboard.scoreboard;
import org.bukkit.scoreboard.ScoreboardManager;

public class Main extends JavaPlugin implements Listener {
    
    
@Override
    public void onEnable() {
        getServer().getPluginManager().registerEvents(this, this);
    }
    

    @EventHandler

    public void onJoin(PlayerJoinEvent e) {

        Player p = e.getPlayer();

        

        Bukkit.getScheduler().scheduleSyncRepeatingTask(this, new Runnable() {

            public void run() {
                setScoreboard(p);
            }
        }, 0, 1);

    }

    public static void setScoreboard(Player p) {
        if(p.getScoreboard().getObjective(DisplaySlot.SIDEBAR) == null) {
            Scoreboard board = Bukkit.getScoreboardManager().getNewScoreboard();
            Objective obj = board.registerNewObjective("nao", "pisca");
            obj.setDisplayName("Tutorial Scoreboard");
            obj.setDisplaySlot(DisplaySlot.SIDEBAR);
            obj.getScore(" ").setScore(4);
            obj.getScore("Kills: ").setScore(3);
            obj.getScore("Deaths: ").setScore(2);
            obj.getScore("Ping: ").setScore(1);
            
            board
.registerNewTeam("k").addPlayer(Bukkit.getOfflinePlayer("Kills: "));
            board.registerNewTeam("d").addPlayer(Bukkit.getOfflinePlayer("Deaths: "));
            board.registerNewTeam("p").addPlayer(Bukkit.getOfflinePlayer("Ping: "));
            
            p
.setScoreboard(board);
            
        
}

        p.getScoreboard().getTeam("k").setSuffix(Stats.getKills(p));
        p.getScoreboard().getTeam("d").setSuffix(Stats.getDeaths(p));
        p.getScoreboard().getTeam("p").setSuffix(Stats.getPing(p));
        
    
}
}

Link para o comentário
Compartilhar em outros sites

você não fez um tutorial você deu o código pronto com fontes desconfortáveis de ver

Vou tentar explicar o código agora... pq eu n tinha ele mais, ai fui fazer dnv

ai pra botar essas cores no codigo deu moh trabalho ;-;

A Scoreboard que eu criei é basica, a unica função dela é não piscar. essa sua é mais avançada.

O Meu objetivo em sí foi fazer não piscar, apenas isso. porque se eu botar algo mais avançado, talvez ninguém entenda.

Link para o comentário
Compartilhar em outros sites

Participe da Conversa

Você pode postar agora e se cadastrar mais tarde. Se você tiver uma conta, a class='ipsType_brandedLink' href='https://gamersboard.com.br/login/' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-title='Sign In Now'>acesse agora para postar com sua conta.
Observação: sua postagem exigirá aprovação do moderador antes de ficar visível.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.

Processando...
×
×
  • Criar Novo...