Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.Camer047;
- import java.io.FileInputStream;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.io.ObjectInputStream;
- import java.io.ObjectOutputStream;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.UUID;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.Material;
- import org.bukkit.OfflinePlayer;
- 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.inventory.Inventory;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import org.bukkit.permissions.Permission;
- import org.bukkit.plugin.java.JavaPlugin;
- public class Coins extends JavaPlugin implements Listener {
- static HashMap<UUID, Integer> map = new HashMap<>();
- public Permission give = new Permission("coins.give");
- public void writetodisk()
- {
- try
- {
- FileOutputStream fileOut =
- new FileOutputStream("plugins/coindata.txt");
- ObjectOutputStream out = new ObjectOutputStream(fileOut);
- out.writeObject(map);
- out.close();
- fileOut.close();
- System.out.printf("Serialized data is saved in data.txt");
- }catch(IOException i)
- {
- i.printStackTrace();
- }
- }
- @SuppressWarnings("unchecked")
- public void readfromdisk () {
- try
- {
- FileInputStream fileIn =
- new FileInputStream("plugins/coindata.txt");
- ObjectInputStream in = new ObjectInputStream(fileIn);
- map = (HashMap<UUID, Integer>) in.readObject();
- in.close();
- fileIn.close();
- System.out.printf("Serialized data is saved in data.txt");
- }catch(IOException i)
- {
- i.printStackTrace();
- }
- catch(ClassNotFoundException c)
- {
- System.out.println("Class not found");
- c.printStackTrace();
- }
- }
- public static void giveCoins(UUID uuid, Integer amount)
- {
- if (map.containsKey(uuid)) {
- int tempcoins = map.get(uuid);
- int finalcoins = tempcoins + amount;
- map.put(uuid, finalcoins);
- }
- }
- @EventHandler
- public void onEvent(PlayerJoinEvent e) {
- Player player = e.getPlayer();
- UUID playeruuid = player.getUniqueId();
- if (map.containsKey(playeruuid)) {
- } else {
- getLogger().info("Player " + playeruuid + " has been added to the hashmap");
- map.put(playeruuid, 0);
- }
- }
- @Override
- public void onEnable() {
- readfromdisk();
- this.getConfig().options().copyDefaults(true);
- }
- @Override
- public void onDisable() {
- writetodisk();
- }
- public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
- if (cmd.getName().equalsIgnoreCase("coins") && sender instanceof Player) {
- if (args.length == 1 && args[0].equalsIgnoreCase("help")) {
- Player player = (Player) sender;
- player.sendMessage(ChatColor.BLUE + "" + ChatColor.BOLD + "COINS");
- player.sendMessage(ChatColor.GRAY + "By: " + ChatColor.DARK_RED + "" + ChatColor.ITALIC + "Camer047");
- player.sendMessage(ChatColor.GOLD + "Commands:");
- player.sendMessage(ChatColor.YELLOW + "/coins balance " + ChatColor.GREEN + "Displays you cons balance");
- }
- if (args.length == 3 && args[0].equalsIgnoreCase("give")) {
- final Player player = (Player) sender;
- if (player.hasPermission(give)) {
- boolean playerFound = false;
- for (Player playertogive : Bukkit.getOnlinePlayers()) {
- if (playertogive.getName().equalsIgnoreCase(args[1])) {
- //Get the amount of tokens from the third argument
- int amount = Integer.parseInt(args[2]);
- giveCoins(playertogive.getUniqueId(), amount);
- player.sendMessage(ChatColor.GREEN + "Success! Sent " + amount + " coins to " + playertogive.getDisplayName() + "!");
- playerFound = true;
- playertogive.sendMessage(ChatColor.GOLD + "+" + amount + " Coins!");
- break;
- }}
- if (playerFound == false) {
- player.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "That Player was not found!");
- }
- }
- }
- if (args.length >= 1 && args[0].equalsIgnoreCase("balance")) {
- Player player = (Player) sender;
- UUID playeruuid = player.getUniqueId();
- if (map.containsKey(playeruuid)) {
- int coinbalance = map.get(playeruuid);
- player.sendMessage("You Have: " + coinbalance + " coins");
- } else {
- map.put(playeruuid, 0);
- player.sendMessage("Error 0");
- }
- }
- }
- if (args.length >= 2 && args[0].equalsIgnoreCase("debug")) {
- Player player = (Player) sender;
- for (Player playertoget : Bukkit.getOnlinePlayers()){
- if (playertoget.getName() == args[1]) {
- player.sendMessage("Begining Debugging Process...");
- if (map.containsKey(playertoget.getUniqueId())) {
- player.sendMessage("No errors were found!");
- } else {
- player.sendMessage(ChatColor.RED + "Errors were detected with this players data!");
- player.sendMessage(ChatColor.GREEN + "Attempting to fix...");
- map.put(playertoget.getUniqueId(), 0);
- player.sendMessage("" + playertoget.getDisplayName() + "'s Data has been repaired!");
- }
- }
- }
- }
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement