Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package net.vivererp;
- import java.util.logging.Logger;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.bukkit.scoreboard.Scoreboard;
- import org.bukkit.scoreboard.Team;
- public class Main extends JavaPlugin implements Listener {
- private Scoreboard score;
- private Team HiddenTags;
- private Team ShownTags;
- public void onEnable() {
- if(getServer().getScoreboardManager().getMainScoreboard() == null){
- score = getServer().getScoreboardManager().getNewScoreboard();
- }else{
- score = getServer().getScoreboardManager().getMainScoreboard();
- }
- boolean ErroredTheFuckOut = false;
- try{
- Team HT = score.registerNewTeam("HiddenTags");
- Team ST = score.registerNewTeam("ShownTags");
- HiddenTags = HT;
- ShownTags = ST;
- }catch(IllegalArgumentException e){
- e.printStackTrace();
- ErroredTheFuckOut = true;
- }
- if(!ErroredTheFuckOut){
- this.HiddenTags.setOption(Team.Option.NAME_TAG_VISIBILITY, Team.OptionStatus.NEVER);
- this.HiddenTags.setOption(Team.Option.COLLISION_RULE, Team.OptionStatus.NEVER);
- this.ShownTags.setOption(Team.Option.NAME_TAG_VISIBILITY, Team.OptionStatus.ALWAYS);
- this.ShownTags.setOption(Team.Option.COLLISION_RULE, Team.OptionStatus.NEVER);
- }
- getCommand("nametag").setExecutor(this);
- getServer().getPluginManager().registerEvents(this, this);
- }
- @EventHandler
- public void onPlayerJoin(PlayerJoinEvent e) {
- Logger.getLogger("Player joined!: "+e.getPlayer().getName());
- boolean Contained = false;
- for (Team team : score.getTeams()) {
- if (team.hasEntry(e.getPlayer().getName())) {
- Logger.getLogger(e.getPlayer().getName()+" has been found in "+team.getName());
- Contained = true;
- }
- }
- if (!Contained) {
- score.getTeam("HiddenTags").addEntry(e.getPlayer().getName());
- }
- }
- public boolean onCommand(CommandSender sender, Command command, String commandLabel, String[] args){
- if(commandLabel.equalsIgnoreCase("nametag")){
- if(!(sender instanceof Player)){
- Logger.getLogger("Cant use from console.");
- return true;
- }else{
- Player p = Bukkit.getServer().getPlayer(sender.getName());
- if(args.length == 0){
- sender.sendMessage(ChatColor.GOLD+"Usage: /nametag hide|show");
- return true;
- }else if(args.length == 1){
- if(args[0].equalsIgnoreCase("hide")){
- if(this.score.getTeam("HiddenTags").hasEntry(p.getName())){
- //if(this.HiddenTags.hasEntry(sender.getName())){
- sender.sendMessage(ChatColor.GOLD+"Tag already hidden!");
- return true;
- }else{
- score.getEntryTeam(p.getName()).removeEntry(p.getName());
- score.getTeam("HiddenTags").addEntry(p.getName());
- sender.sendMessage(ChatColor.GOLD+"Tag Hidden!");
- return true;
- }
- }
- if(args[0].equalsIgnoreCase("show")){
- if(score.getTeam("ShownTags").hasEntry(p.getName())){
- sender.sendMessage(ChatColor.GOLD+"Tag already shown!");
- return true;
- }else{
- score.getEntryTeam(p.getName()).removeEntry(p.getName());
- score.getTeam("ShownTags").addEntry(p.getName());
- sender.sendMessage(ChatColor.GOLD+"Tag Shown!");
- return true;
- }
- }
- }else if(args.length >= 2){
- if(p.hasPermission("tagsystem.others")){
- if(Bukkit.getServer().getPlayer(args[1])!=null){
- if(args[0].equalsIgnoreCase("hide")){
- if(score.getTeam("HiddenTags").hasEntry(args[1])){
- sender.sendMessage(ChatColor.GOLD+"Tag already hidden for"+p.getName()+" !");
- return true;
- }else{
- score.getEntryTeam(p.getName()).removeEntry(args[1]);
- score.getTeam("HiddenTags").addEntry(args[1]);
- sender.sendMessage(ChatColor.GOLD+"Tag Hidden for"+p.getName()+" !");
- return true;
- }
- }else if(args[0].equalsIgnoreCase("show")){
- if(score.getTeam("ShownTags").hasEntry(args[1])){
- sender.sendMessage(ChatColor.GOLD+"Tag already shownfor"+p.getName()+" !");
- return true;
- }else{
- score.getEntryTeam(p.getName()).removeEntry(args[1]);
- score.getTeam("ShownTags").addEntry(args[1]);
- sender.sendMessage(ChatColor.GOLD+"Tag Shown for"+p.getName()+" !");
- return true;
- }
- }
- }else{
- sender.sendMessage(ChatColor.RED+"Player not online.");
- }
- }else{
- if(args[0].equalsIgnoreCase("hide")){
- if(score.getTeam("HiddenTags").hasEntry(p.getName())){
- sender.sendMessage(ChatColor.GOLD+"Tag already hidden!");
- return true;
- }else{
- score.getEntryTeam(p.getName()).removeEntry(p.getName());
- score.getTeam("HiddenTags").addEntry(p.getName());
- sender.sendMessage(ChatColor.GOLD+"Tag Hidden!");
- return true;
- }
- }
- if(args[0].equalsIgnoreCase("show")){
- if(score.getTeam("ShownTags").hasEntry(p.getName())){
- sender.sendMessage(ChatColor.GOLD+"Tag already shown!");
- }else{
- score.getEntryTeam(p.getName()).removeEntry(p.getName());
- score.getTeam("ShownTags").addEntry(p.getName());
- sender.sendMessage(ChatColor.GOLD+"Tag Shown!");
- return true;
- }
- }
- }
- }
- }
- }
- return false;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement