NullValkyrie

Minecraft 1.19 multipurpose plugin for spigot servers with a lot of features where most modern servers have.
git clone https://codeberg.org/night0721/NullValkyrie
Log | Files | Refs | README | LICENSE

commit 1638c84b88dc98d5a0a2bad7cef2c88c8c95c030
parent 9d948d5448678d831abaa83557a4d0fbc0ead27e
Author: night0721 <[email protected]>
Date:   Sat,  9 Jul 2022 14:40:15 +0100

making snowball and grenade fly faster lol

Diffstat:
Mpom.xml | 2+-
Msrc/main/java/com/night/nullvalkyrie/Main.java | 45+++++++++++++++++++++++++++++++++------------
Dsrc/main/java/com/night/nullvalkyrie/NameTag/NameTagManager.java | 47-----------------------------------------------
Asrc/main/java/com/night/nullvalkyrie/RankSys/NameTagManager.java | 47+++++++++++++++++++++++++++++++++++++++++++++++
Asrc/main/java/com/night/nullvalkyrie/RankSys/SideBarManager.java | 61+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Dsrc/main/java/com/night/nullvalkyrie/SideBar/SideBarManager.java | 61-------------------------------------------------------------
Asrc/main/java/com/night/nullvalkyrie/commands/SpawnCommand.java | 35+++++++++++++++++++++++++++++++++++
7 files changed, 177 insertions(+), 121 deletions(-)

diff --git a/pom.xml b/pom.xml @@ -68,7 +68,7 @@ <dependencies> <dependency> <groupId>org.spigotmc</groupId> - <artifactId>spigot-api</artifactId> + <artifactId>spigot</artifactId> <version>1.18.1-R0.1-SNAPSHOT</version> <scope>provided</scope> </dependency> diff --git a/src/main/java/com/night/nullvalkyrie/Main.java b/src/main/java/com/night/nullvalkyrie/Main.java @@ -1,26 +1,31 @@ package com.night.nullvalkyrie; import com.night.nullvalkyrie.Chests.MenuListener; -import com.night.nullvalkyrie.NameTag.NameTagManager; +import com.night.nullvalkyrie.RankSys.NameTagManager; import com.night.nullvalkyrie.RankSys.ScoreboardListener; import com.night.nullvalkyrie.RankSys.RankManager; -import com.night.nullvalkyrie.SideBar.SideBarManager; +import com.night.nullvalkyrie.RankSys.SideBarManager; import com.night.nullvalkyrie.commands.*; import net.md_5.bungee.api.ChatMessageType; import net.md_5.bungee.api.chat.TextComponent; import org.bukkit.*; +import org.bukkit.block.Block; +import org.bukkit.block.data.BlockData; import org.bukkit.boss.BarColor; import org.bukkit.boss.BarStyle; import org.bukkit.boss.BossBar; import org.bukkit.enchantments.Enchantment; import org.bukkit.entity.*; +import org.bukkit.event.Event; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.block.Action; +import org.bukkit.event.block.BlockBreakEvent; +import org.bukkit.event.block.BlockPlaceEvent; import org.bukkit.event.entity.CreatureSpawnEvent; import org.bukkit.event.entity.EntityDamageByEntityEvent; import org.bukkit.event.entity.ProjectileHitEvent; -import org.bukkit.event.player.PlayerEggThrowEvent; +import org.bukkit.event.entity.ProjectileLaunchEvent; import org.bukkit.event.player.PlayerInteractEvent; import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.server.ServerListPingEvent; @@ -28,8 +33,11 @@ import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ShapedRecipe; import org.bukkit.inventory.meta.ItemMeta; import org.bukkit.plugin.java.JavaPlugin; +import org.bukkit.util.Vector; import java.io.File; +import java.util.HashMap; +import java.util.UUID; public final class Main extends JavaPlugin implements Listener { private BossBar bossbar; @@ -45,7 +53,7 @@ public final class Main extends JavaPlugin implements Listener { @Override public void onEnable() { new VanishCommand();new TestCommand();new WeaponCommand();new AnvilCommand();new ArmorCommand();new MenuCommand();new RankCommand(this); - new MessageCommand();new HologramCommand();new CraftCommand();new EnchantingCommand(); + new MessageCommand();new HologramCommand();new CraftCommand();new EnchantingCommand();new SpawnCommand(); bossbar = Bukkit.createBossBar( ChatColor.GOLD + "Kuudra", BarColor.RED, @@ -73,19 +81,32 @@ public final class Main extends JavaPlugin implements Listener { wither_sword_recipe.setIngredient('B', Material.STICK); Bukkit.addRecipe(wither_sword_recipe); } + @EventHandler + public void Projectile(ProjectileLaunchEvent e) { + Player player = (Player) e.getEntity().getShooter(); + if(player.getInventory().getItemInMainHand().getItemMeta() != null) { + String name = player.getInventory().getItemInMainHand().getItemMeta().getDisplayName(); + if (name.equalsIgnoreCase(net.md_5.bungee.api.ChatColor.of("#ff23ff") + "Frag Grenade")) { + Egg s = (Egg) e.getEntity(); + s.setVelocity(player.getLocation().getDirection().multiply(10)); + } + } + + + } @EventHandler public void onPlayerInteract(PlayerInteractEvent e) { Player player = e.getPlayer(); if(e.hasItem()) { - if(e.getAction().equals(Action.RIGHT_CLICK_AIR) || e.getAction().equals(Action.RIGHT_CLICK_BLOCK)) { - if (player.getInventory().getItemInMainHand()!= null && player.getInventory().getItemInMainHand().getType().equals(Material.DIAMOND_HOE)) { - player.launchProjectile(Snowball.class, player.getLocation().getDirection()); - + if(player.getInventory().getItemInMainHand().getItemMeta() != null) { + String name = player.getInventory().getItemInMainHand().getItemMeta().getDisplayName(); + if (name.equalsIgnoreCase(net.md_5.bungee.api.ChatColor.of("#ff23ff") + "SnowGun")) { + Snowball s = player.launchProjectile(Snowball.class, player.getLocation().getDirection()); + s.setVelocity(player.getLocation().getDirection().multiply(10)); } } } - } @EventHandler @@ -115,7 +136,7 @@ public final class Main extends JavaPlugin implements Listener { public void onPing(ServerListPingEvent e) { e.setMaxPlayers(8964); String s = centerText("Apache\n", 45); - String s2 = centerText("Support 1.18 & 1.8.9",15); + String s2 = centerText("Support 1.18 & 1.8.9",25); e.setMotd(ChatColor.AQUA.toString() + ChatColor.BOLD + s + ChatColor.GOLD + ChatColor.BOLD + s2); try { e.setServerIcon(Bukkit.loadServerIcon(new File("nuke.png"))); @@ -131,7 +152,7 @@ public final class Main extends JavaPlugin implements Listener { if (!(ent instanceof Player)) { Snowball sb = (Snowball) e.getDamager(); Player pl = (Player) sb.getShooter(); - if(pl.getInventory().getItemInMainHand().getItemMeta() == null) { + if(pl.getInventory().getItemInMainHand().getItemMeta() != null) { String name = pl.getInventory().getItemInMainHand().getItemMeta().getDisplayName(); if (name.equalsIgnoreCase(net.md_5.bungee.api.ChatColor.of("#ff23ff") + "SnowGun")) { e.setDamage(10000); @@ -149,7 +170,7 @@ public final class Main extends JavaPlugin implements Listener { public void onProjectileHit(ProjectileHitEvent e) { if(e.getEntity().getShooter() instanceof Player) { Player shooter = (Player) e.getEntity().getShooter(); - if(shooter.getInventory().getItemInMainHand().getItemMeta() == null) { + if(shooter.getInventory().getItemInMainHand().getItemMeta() != null) { String name = shooter.getInventory().getItemInMainHand().getItemMeta().getDisplayName(); if(name.equalsIgnoreCase(net.md_5.bungee.api.ChatColor.of("#ff23ff") + "Frag Grenade")) { if(e.getHitBlock() == null) { diff --git a/src/main/java/com/night/nullvalkyrie/NameTag/NameTagManager.java b/src/main/java/com/night/nullvalkyrie/NameTag/NameTagManager.java @@ -1,47 +0,0 @@ -package com.night.nullvalkyrie.NameTag; - -import com.night.nullvalkyrie.Main; -import com.night.nullvalkyrie.RankSys.Rank; -import org.bukkit.Bukkit; -import org.bukkit.entity.Player; -import org.bukkit.scoreboard.DisplaySlot; -import org.bukkit.scoreboard.Objective; -import org.bukkit.scoreboard.Scoreboard; -import org.bukkit.scoreboard.Team; - -public class NameTagManager { - private Main main; - - public NameTagManager(Main main) { - this.main = main; - } - @SuppressWarnings("deprecation") - public void setNametags(Player player) { - Scoreboard newScoreboard = Bukkit.getScoreboardManager().getNewScoreboard(); - Objective obj = newScoreboard.registerNewObjective("TabList", "dummy"); - obj.setDisplaySlot(DisplaySlot.PLAYER_LIST); - player.setScoreboard(newScoreboard); - for (Rank rank : Rank.values()) { - Team team = player.getScoreboard().registerNewTeam(rank.name()); - team.setPrefix(rank.getDisplay() + " "); - } - for (Player target : Bukkit.getOnlinePlayers()) { - if (player.getUniqueId() != target.getUniqueId()) { - Rank rank = main.getRankManager().getRank(target.getUniqueId()); - player.getScoreboard().getTeam(rank.name()).addEntry(target.getName()); - } - } - } - public void newTag(Player player) { - Rank rank = main.getRankManager().getRank(player.getUniqueId()); - for(Player target : Bukkit.getOnlinePlayers()) { - target.getScoreboard().getTeam(rank.name()).addEntry(player.getName()); - } - } - public void removeTag(Player player) { - Rank rank = main.getRankManager().getRank(player.getUniqueId()); - for(Player target : Bukkit.getOnlinePlayers()) { - target.getScoreboard().getEntryTeam(player.getName()).removeEntry(player.getName()); - } - } -} diff --git a/src/main/java/com/night/nullvalkyrie/RankSys/NameTagManager.java b/src/main/java/com/night/nullvalkyrie/RankSys/NameTagManager.java @@ -0,0 +1,47 @@ +package com.night.nullvalkyrie.RankSys; + +import com.night.nullvalkyrie.Main; +import com.night.nullvalkyrie.RankSys.Rank; +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.scoreboard.DisplaySlot; +import org.bukkit.scoreboard.Objective; +import org.bukkit.scoreboard.Scoreboard; +import org.bukkit.scoreboard.Team; + +public class NameTagManager { + private Main main; + + public NameTagManager(Main main) { + this.main = main; + } + @SuppressWarnings("deprecation") + public void setNametags(Player player) { + Scoreboard newScoreboard = Bukkit.getScoreboardManager().getNewScoreboard(); + Objective obj = newScoreboard.registerNewObjective("TabList", "dummy"); + obj.setDisplaySlot(DisplaySlot.PLAYER_LIST); + player.setScoreboard(newScoreboard); + for (Rank rank : Rank.values()) { + Team team = player.getScoreboard().registerNewTeam(rank.name()); + team.setPrefix(rank.getDisplay() + " "); + } + for (Player target : Bukkit.getOnlinePlayers()) { + if (player.getUniqueId() != target.getUniqueId()) { + Rank rank = main.getRankManager().getRank(target.getUniqueId()); + player.getScoreboard().getTeam(rank.name()).addEntry(target.getName()); + } + } + } + public void newTag(Player player) { + Rank rank = main.getRankManager().getRank(player.getUniqueId()); + for(Player target : Bukkit.getOnlinePlayers()) { + target.getScoreboard().getTeam(rank.name()).addEntry(player.getName()); + } + } + public void removeTag(Player player) { + Rank rank = main.getRankManager().getRank(player.getUniqueId()); + for(Player target : Bukkit.getOnlinePlayers()) { + target.getScoreboard().getEntryTeam(player.getName()).removeEntry(player.getName()); + } + } +} diff --git a/src/main/java/com/night/nullvalkyrie/RankSys/SideBarManager.java b/src/main/java/com/night/nullvalkyrie/RankSys/SideBarManager.java @@ -0,0 +1,61 @@ +package com.night.nullvalkyrie.RankSys; + +import com.night.nullvalkyrie.Main; +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.PlayerDeathEvent; +import org.bukkit.scoreboard.*; +import org.bukkit.scoreboard.Scoreboard; + +import java.util.HashMap; +import java.util.UUID; + +public class SideBarManager { + private Main main; + public SideBarManager(Main main) { + this.main = main; + } + private HashMap<UUID, Integer> deaths = new HashMap<>(); + @SuppressWarnings("deprecation") + public void setSideBar(Player player) { + Scoreboard board = player.getScoreboard(); + if(board.getObjective("Pluto") != null) { + + } + Objective obj = board.registerNewObjective("Pluto", "dummy"); + obj.setDisplaySlot(DisplaySlot.SIDEBAR); + obj.setDisplayName(ChatColor.AQUA.toString() + ChatColor.BOLD + "Pluto"); + Score name = obj.getScore(ChatColor.BLUE + "Player Name: "); + name.setScore(8); + Score name2 = obj.getScore(ChatColor.WHITE + player.getName()); + name2.setScore(7); + Score space1 = obj.getScore(" "); + space1.setScore(6); + Score players = obj.getScore(ChatColor.LIGHT_PURPLE + "Players Online:"); + players.setScore(5); + Score playercount = obj.getScore(ChatColor.YELLOW.toString() + Bukkit.getServer().getOnlinePlayers().size()); + playercount.setScore(4); + Score space2 = obj.getScore(" "); + space2.setScore(2); + Score website = obj.getScore(ChatColor.YELLOW + "cath.js.org"); + website.setScore(1); + + Team playersOnline = board.registerNewTeam("deathsTotal"); + playersOnline.addEntry(ChatColor.BOLD.toString()); + playersOnline.setPrefix(ChatColor.BLUE + "Deaths: "); + playersOnline.setSuffix(ChatColor.YELLOW + "0"); + obj.getScore(ChatColor.BOLD.toString()).setScore(3); + player.setScoreboard(board); + deaths.put(player.getUniqueId(), 0); + } + + public void changeOnDeath(Player player) { + int amount = deaths.get(player.getUniqueId()); + amount++; + deaths.put(player.getUniqueId(), amount); + player.getScoreboard().getTeam("deathsTotal").setSuffix(ChatColor.YELLOW.toString() + amount); + } +} diff --git a/src/main/java/com/night/nullvalkyrie/SideBar/SideBarManager.java b/src/main/java/com/night/nullvalkyrie/SideBar/SideBarManager.java @@ -1,61 +0,0 @@ -package com.night.nullvalkyrie.SideBar; - -import com.night.nullvalkyrie.Main; -import org.bukkit.Bukkit; -import org.bukkit.ChatColor; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.scoreboard.*; -import org.bukkit.scoreboard.Scoreboard; - -import java.util.HashMap; -import java.util.UUID; - -public class SideBarManager { - private Main main; - public SideBarManager(Main main) { - this.main = main; - } - private HashMap<UUID, Integer> deaths = new HashMap<>(); - @SuppressWarnings("deprecation") - public void setSideBar(Player player) { - Scoreboard board = player.getScoreboard(); - if(board.getObjective("Pluto") != null) { - - } - Objective obj = board.registerNewObjective("Pluto", "dummy"); - obj.setDisplaySlot(DisplaySlot.SIDEBAR); - obj.setDisplayName(ChatColor.AQUA.toString() + ChatColor.BOLD + "Pluto"); - Score name = obj.getScore(ChatColor.BLUE + "Player Name: "); - name.setScore(8); - Score name2 = obj.getScore(ChatColor.WHITE + player.getName()); - name2.setScore(7); - Score space1 = obj.getScore(" "); - space1.setScore(6); - Score players = obj.getScore(ChatColor.LIGHT_PURPLE + "Players Online:"); - players.setScore(5); - Score playercount = obj.getScore(ChatColor.YELLOW.toString() + Bukkit.getServer().getOnlinePlayers().size()); - playercount.setScore(4); - Score space2 = obj.getScore(" "); - space2.setScore(2); - Score website = obj.getScore(ChatColor.YELLOW + "cath.js.org"); - website.setScore(1); - - Team playersOnline = board.registerNewTeam("deathsTotal"); - playersOnline.addEntry(ChatColor.BOLD.toString()); - playersOnline.setPrefix(ChatColor.BLUE + "Deaths: "); - playersOnline.setSuffix(ChatColor.YELLOW + "0"); - obj.getScore(ChatColor.BOLD.toString()).setScore(3); - player.setScoreboard(board); - deaths.put(player.getUniqueId(), 0); - } - - public void changeOnDeath(Player player) { - int amount = deaths.get(player.getUniqueId()); - amount++; - deaths.put(player.getUniqueId(), amount); - player.getScoreboard().getTeam("deathsTotal").setSuffix(ChatColor.YELLOW.toString() + amount); - } -} diff --git a/src/main/java/com/night/nullvalkyrie/commands/SpawnCommand.java b/src/main/java/com/night/nullvalkyrie/commands/SpawnCommand.java @@ -0,0 +1,35 @@ +package com.night.nullvalkyrie.commands; + +import org.bukkit.Bukkit; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Entity; +import org.bukkit.entity.EntityType; +import org.bukkit.entity.Player; +import org.bukkit.entity.Zombie; + +import java.util.List; + +public class SpawnCommand extends Command { + public SpawnCommand() { + super( + "spawn", + new String[]{}, + "Spawn a custom mob", + "" + ); + } + + @Override + public void onCommand(CommandSender sender, String[] args) { + Player player = (Player) sender; + Entity ent = (Entity) Bukkit.getWorld("world").spawnEntity((player.getLocation().add(0, 2, 0)), EntityType.ZOMBIE); + ent.setCustomName("Gay"); + ent.setCustomNameVisible(true); + + } + + @Override + public List<String> onTabComplete(CommandSender sender, String[] args) { + return null; + } +}