Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package nl.thedutchmc.givepet.commands;
- import java.util.UUID;
- public class transferpet implements CommandExecutor {
- UUID senderUUID;
- String Target;
- String MobType;
- Player playerTarget;
- String senderID;
- public void tellConsole(String message){
- Bukkit.getConsoleSender().sendMessage("[GivePet][DEBUG] " + message);
- }
- @Override
- public boolean onCommand(CommandSender sender, Command cmd, String s, String[] args) {
- //check if sender is a player
- if(!(sender instanceof Player)) {
- sender.sendMessage(ChatColor.RED + "This command is only for players!");
- return true;
- }
- /*if(sender instanceof Player) {
- senderUUID = ((Player) sender).getUniqueId();
- return true;
- }*/
- senderUUID = ((Player) sender).getUniqueId();
- Player p = (Player) sender;
- String senderName = sender.toString().toLowerCase();
- if(args.length == 2) {
- Target = args[0];
- MobType = args[1];
- } else {
- p.sendMessage(ChatColor.RED + "Missing arguments!");
- tellConsole("Missing Argument");
- return true;
- }
- if(args.length == 0) {
- p.sendMessage(ChatColor.RED + "Invalid arguments!");
- tellConsole("Invalid argument");
- return true;
- } else if(args.length >= 3) {
- p.sendMessage(ChatColor.RED + "Too many arguments!");
- tellConsole("Too many arguments");
- return true;
- }
- //get uuid for Target & sender
- playerTarget = Bukkit.getServer().getPlayer(Target);
- String uuid = playerTarget.getUniqueId().toString();
- senderID = senderUUID.toString();
- if(Target.equals(playerTarget)) {
- p.sendMessage(ChatColor.RED + "Can't transfer pet to yourself!");
- }
- //Change entitydata and sent confirmation to play
- if(MobType.equalsIgnoreCase("wolf")) {
- Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "execute as " + senderName + " " + "execute if entity @e[type=wolf,nbt={OwnerUUID:"+senderID+"},sort=nearest] run data merge entity @e[type=minecraft:wolf,sort=nearest,nbt={OwnerUUID:"+ senderID +",limit=1] {OwnerUUID:" + uuid + "}");
- //Bukkit.dispatchCommand(sender, "execute if entity @e[type=wolf,nbt={OwnerUUID:" + uuid + "}] run data merge entity @e[type=minecraft:wolf,sort=nearest,nbt={CollarColor:0b},limit=1] {OwnerUUID:" + uuid + "}");
- tellConsole("Wolf Transfered to " + Target);
- tellConsole("UUID: " + uuid);
- tellConsole("SenderUUID " + senderID);
- tellConsole("Command run: execute if entity @e[type=wolf,nbt={OwnerUUID:"+senderID+"},sort=nearest] run data merge entity @e[type=minecraft:wolf,sort=nearest,nbt={CollarColor:0b},limit=1] {OwnerUUID:" + uuid + "}");
- p.sendMessage(ChatColor.GREEN + "Pet Transfered to " + Target + " with UUID: " + uuid + "!");
- } //else if(MobType.equalsIgnoreCase("cat")) {
- /*todo*///Bukkit.dispatchCommand(sender, "data merge entity @e[type=minecraft:wolf,sort=nearest,nbt={CollarColor:0b},limit=1] {OwnerUUID:" + uuid + "}");
- // tellConsole("[DEBUG] Cat Transfered to " + Target);
- // p.sendMessage(ChatColor.GREEN + "Cat Transfered to " + Target + " with UUID: " + uuid + "!");
- /*}*/ else if(MobType.equalsIgnoreCase("parrot")) {
- Bukkit.dispatchCommand(sender, "execute if entity @e[type=parrot,sort=nearest,limit=1,nbt={OwnerUUID:" + senderID + "}] run data merge entity @e[type=parrot,sort=nearest,limit=1,nbt={OwnerUUID:"+senderID+"}] {OwnerUUID:" + uuid + "}");
- tellConsole("[DEBUG] Parrot Transfered to " + Target);
- tellConsole("UUID: " + uuid);
- tellConsole("SenderUUID " + senderID);
- tellConsole("Command run: execute if entity @e[type=parrot,sort=nearest,limit=1,nbt={OwnerUUID:" + senderID + "}] run data merge entity @e[type=parrot,sort=nearest,limit=1,nbt={OwnerUUID:"+senderID+"}] {OwnerUUID:" + uuid + "}");
- p.sendMessage(ChatColor.GREEN + "Parrot Transfered to " + Target + " with UUID: " + uuid + "!");
- } else {
- p.sendMessage(ChatColor.RED + "Invalid mob type! Can only be wolf, cat or parrot!");
- }
- return false;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement