Skip to content

Commit

Permalink
Added Commands, updated readme.
Browse files Browse the repository at this point in the history
More documentation required
  • Loading branch information
ShakeforProtein committed Apr 17, 2019
1 parent c8bd373 commit 97865f5
Show file tree
Hide file tree
Showing 20 changed files with 402 additions and 175 deletions.
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<groupId>me.ShakeforProtein</groupId>
<artifactId>TreeboTeleport</artifactId>
<version>0.0.12</version>
<version>0.0.14</version>
<packaging>jar</packaging>

<name>TreeboTeleport</name>
Expand Down
39 changes: 39 additions & 0 deletions src/main/java/me/shakeforprotein/treeboteleport/Commands/Back.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
package me.shakeforprotein.treeboteleport.Commands;

import me.shakeforprotein.treeboteleport.TreeboTeleport;
import org.bukkit.Location;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Player;

import java.io.File;

public class Back implements CommandExecutor {

private TreeboTeleport pl;

public Back(TreeboTeleport main) {
this.pl = main;
}

@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
Player p = (Player) sender;
String pUUID = "player_" + p.getUniqueId();

File lastLocFile = new File(pl.getDataFolder(), "lastLocation.yml");
FileConfiguration lastLocConf = YamlConfiguration.loadConfiguration(lastLocFile);

if(lastLocConf.isSet(pUUID + ".location")){
p.sendMessage(pl.badge + "Sending you to your previous location");
p.teleport((Location) lastLocConf.get(pUUID + ".location"));
}
else{
p.sendMessage(pl.err + "Could not find previous location");
}
return true;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
import me.shakeforprotein.treeboteleport.Methods.Guis.OpenHomesMenu;
import me.shakeforprotein.treeboteleport.TreeboTeleport;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.OfflinePlayer;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
Expand All @@ -29,14 +27,15 @@ public Homes(TreeboTeleport main) {

@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
boolean found = false;
Player p = (Player) sender;
String tempUUID = "0";
String tempName = "";
File homesYml = new File(pl.getDataFolder() + File.separator + "homes", File.separator + p.getUniqueId() + ".yml");
if (args.length == 1 && !(args[0].equalsIgnoreCase("setDefault")) && sender.hasPermission("tbteleport.staff.homes.others")) {
boolean found = false;
for (OfflinePlayer offlinePlayer : Bukkit.getOfflinePlayers()) {
if (offlinePlayer.getName().equalsIgnoreCase(args[0])) {
found = true;
tempName = offlinePlayer.getName();
tempUUID = offlinePlayer.getUniqueId().toString();
File testFile = new File(pl.getDataFolder() + File.separator + "homes", File.separator + offlinePlayer.getUniqueId() + ".yml");
Expand Down Expand Up @@ -73,7 +72,7 @@ public boolean onCommand(CommandSender sender, Command cmd, String label, String
if (args.length == 0) {
openHomesMenu.openHomesMenu(p);
} else if (args.length == 2 && args[0].equalsIgnoreCase("setDefault")) {
boolean found = false;
found = false;
for (String home : homes.getConfigurationSection("homes").getKeys(false)) {
if (args[1].equalsIgnoreCase(home)) {
found = true;
Expand All @@ -90,9 +89,17 @@ public boolean onCommand(CommandSender sender, Command cmd, String label, String
if (!found) {
sender.sendMessage(pl.err + "Could not find home with that name");
}
} else if (args.length == 1 && sender.hasPermission("tbteleport.homes.others")) {
} else if (args.length == 1 && sender.hasPermission("tbteleport.staff.homes.others")) {
openHomesMenu.openOthersHomes(p, tempUUID, tempName);
}
else if (!found && args.length == 1 && !args[0].equalsIgnoreCase("setdefault")){
if(sender.hasPermission("tbteleport.staff.homes.others")){
sender.sendMessage(pl.err + "Invalid usage. Try /homes setDefault <home>");
}
else{
sender.sendMessage(pl.err + "Invalid usage. Try /homes setDefault <home>");
}
}
return true;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -14,31 +14,37 @@ public class MayITp implements CommandExecutor {

private TreeboTeleport pl;

public MayITp(TreeboTeleport main){
public MayITp(TreeboTeleport main) {
this.pl = main;
}

@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
if (args.length == 1) {
boolean foundPlayer = false;
for (Player p : Bukkit.getOnlinePlayers()) {
if (p.getName().equalsIgnoreCase(args[0])) {
foundPlayer = true;
if (args.length == 1) {
boolean foundPlayer = false;
for (Player p : Bukkit.getOnlinePlayers()) {
if (p.getName().equalsIgnoreCase(args[0])) {
foundPlayer = true;
if (pl.getConfig().get("tptoggle." + p.getName()) == null || pl.getConfig().getInt("tptoggle." + p.getName()) == 0) {
sender.sendMessage(pl.badge + "Request to teleport to " + p.getName() + "'s location has been sent.");
p.sendMessage(pl.badge + "Player " + ChatColor.GOLD + sender.getName() + ChatColor.RESET + " would like to teleport " + ChatColor.GOLD + "TO YOU");
String command = "tellraw " + p.getName() + " [\"\",{\"text\":\"Please type \"},{\"text\":\"/tpok\",\"color\":\"green\"},{\"text\":\" or click \"},{\"text\":\"[HERE]\",\"color\":\"gold\",\"clickEvent\":{\"action\":\"run_command\",\"value\":\"/tpok\"}},{\"text\":\" in the next \"},{\"text\":\"30 Seconds\",\"color\":\"green\"},{\"text\":\" to Accept\"}]";
Bukkit.dispatchCommand(Bukkit.getConsoleSender(), command);
pl.getConfig().set("tpRequest." + p.getName() + ".type", "toPlayer");
pl.getConfig().set("tpRequest." + p.getName() + ".requestTime", System.currentTimeMillis());
pl.getConfig().set("tpRequest." + p.getName() + ".requester", sender.getName());
}
else{
sender.sendMessage(pl.err + p.getName() + " has disabled incoming teleport requests");
}
}
if (!foundPlayer) {
sender.sendMessage(pl.err + "Player " + ChatColor.GOLD + args[0] + ChatColor.RESET + " is not online on this server. Please check spelling");
}
} else {
sender.sendMessage(pl.err + "Incorrect usage. This command requires a single player argument");
}
if (!foundPlayer) {
sender.sendMessage(pl.err + "Player " + ChatColor.GOLD + args[0] + ChatColor.RESET + " is not online on this server. Please check spelling");
}
} else {
sender.sendMessage(pl.err + "Incorrect usage. This command requires a single player argument");
}
return true;
}
}
52 changes: 26 additions & 26 deletions src/main/java/me/shakeforprotein/treeboteleport/Commands/Tp.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,12 @@
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Player;

import java.io.File;

public class Tp implements CommandExecutor {

private TreeboTeleport pl;
Expand All @@ -18,8 +22,10 @@ public Tp(TreeboTeleport main) {

@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
File homesYml = new File(pl.getDataFolder(),"lastLocation.yml");
FileConfiguration homes = YamlConfiguration.loadConfiguration(homesYml);
if (args.length == 3 && (pl.isInteger(args[0]) && pl.isInteger(args[1]) && pl.isInteger(args[2]))) {
if (args[0].split(",").length == 3) {

String a1 = args[0];
String a2 = args[1];
String a3 = args[2];
Expand All @@ -28,7 +34,7 @@ public boolean onCommand(CommandSender sender, Command cmd, String label, String
int i3 = Integer.parseInt(a3);
Location tpLoc = ((Player) sender).getWorld().getBlockAt(i1, i2, i3).getLocation().add(0, 1, 0);
((Player) sender).teleport(tpLoc);
}

} else if (args.length == 4 && (pl.isInteger(args[1]) && pl.isInteger(args[2]) && pl.isInteger(args[3]))) {
if (Bukkit.getWorld(args[0]) != null) {
String a1 = args[1];
Expand All @@ -42,44 +48,39 @@ public boolean onCommand(CommandSender sender, Command cmd, String label, String
} else {
sender.sendMessage(pl.err + "No world found with name '" + args[0] + "'");
}
}
else if (args.length == 2){
} else if (args.length == 2) {
Player p1 = (Player) sender;
Player p2 = (Player) sender;
boolean found1 = false;
boolean found2 = false;

for(Player bukkitPlayer : Bukkit.getOnlinePlayers()){
if(bukkitPlayer.getName().equalsIgnoreCase(args[0])){
for (Player bukkitPlayer : Bukkit.getOnlinePlayers()) {
if (bukkitPlayer.getName().equalsIgnoreCase(args[0])) {
found1 = true;
p1 = bukkitPlayer;
}
if(bukkitPlayer.getName().equalsIgnoreCase(args[1])){
if (bukkitPlayer.getName().equalsIgnoreCase(args[1])) {
found2 = true;
p2 = bukkitPlayer;
}

if(found1){
if(found2){
sender.sendMessage(pl.badge + "Sending " + p1.getName() + " to " + p2.getName());
p1.sendMessage(pl.badge + "Summoned to " + p2.getName() + " by " + sender.getName());
p2.sendMessage(pl.badge + p1.getName() + " has been summoned to your location by " + sender.getName());
}
else{
sender.sendMessage(pl.err + "Player '" + args[1] + "' not found on this server.");
}
}
else{
sender.sendMessage(pl.err + "Player '" + args[0] + "' not found on this server.");
}
if (found1) {
if (found2) {
sender.sendMessage(pl.badge + "Sending " + p1.getName() + " to " + p2.getName());
p1.sendMessage(pl.badge + "Summoned to " + p2.getName() + " by " + sender.getName());
p2.sendMessage(pl.badge + p1.getName() + " has been summoned to your location by " + sender.getName());
p1.teleport(p2);
} else {
sender.sendMessage(pl.err + "Player '" + args[1] + "' not found on this server.");
}
} else {
sender.sendMessage(pl.err + "Player '" + args[0] + "' not found on this server.");
}

}
else if (args.length == 1){
} else if (args.length == 1) {
Player target = (Player) sender;
boolean found = false;

for(Player bukkitPlayer : Bukkit.getOnlinePlayers()) {
for (Player bukkitPlayer : Bukkit.getOnlinePlayers()) {
if (bukkitPlayer.getName().equalsIgnoreCase(args[0])) {
found = true;
target = bukkitPlayer;
Expand All @@ -88,8 +89,7 @@ else if (args.length == 1){
if (found) {
sender.sendMessage(pl.badge + "Sending you to " + target.getName());
((Player) sender).teleport(target.getLocation());
}
else{
} else {
sender.sendMessage(pl.err + "Could not find player '" + args[0] + "' on this server");
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,18 @@ public class Tp2MePls implements CommandExecutor {

private TreeboTeleport pl;

public Tp2MePls(TreeboTeleport main){
public Tp2MePls(TreeboTeleport main) {
this.pl = main;
}

@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
if (args.length == 1) {
boolean foundPlayer = false;
for (Player p : Bukkit.getOnlinePlayers()) {
if (p.getName().equalsIgnoreCase(args[0])) {
foundPlayer = true;
if (args.length == 1) {
boolean foundPlayer = false;
for (Player p : Bukkit.getOnlinePlayers()) {
if (p.getName().equalsIgnoreCase(args[0])) {
foundPlayer = true;
if (pl.getConfig().get("tptoggle." + p.getName()) == null || pl.getConfig().getInt("tptoggle." + p.getName()) == 0) {
sender.sendMessage(pl.badge + "Request to teleport " + p.getName() + " to your location sent.");
p.sendMessage("Player " + ChatColor.GOLD + sender.getName() + ChatColor.RESET + " would like you to teleport " + ChatColor.GOLD + "TO THEM");
//p.sendMessage("Please type " + ChatColor.GREEN + "/tpok " + ChatColor.RESET + "in the next " + ChatColor.GREEN + " 30 Seconds" + ChatColor.RESET + " to Accept" );
Expand All @@ -34,15 +35,17 @@ public boolean onCommand(CommandSender sender, Command cmd, String label, String
pl.getConfig().set("tpRequest." + p.getName() + ".type", "toSender");
pl.getConfig().set("tpRequest." + p.getName() + ".requestTime", System.currentTimeMillis());
pl.getConfig().set("tpRequest." + p.getName() + ".requester", sender.getName());
} else {
sender.sendMessage(pl.err + p.getName() + " has disabled incomming teleport requests");
}
}
if(!foundPlayer) {
sender.sendMessage(pl.err + "Player " + ChatColor.GOLD + args[0] + ChatColor.RESET + " is not online on this server. Please check spelling");
}
} else {
sender.sendMessage(pl.err + "This command requires a single player argument");
}

if (!foundPlayer) {
sender.sendMessage(pl.err + "Player " + ChatColor.GOLD + args[0] + ChatColor.RESET + " is not online on this server. Please check spelling");
}
} else {
sender.sendMessage(pl.err + "This command requires a single player argument");
}
return true;
}
}
36 changes: 36 additions & 0 deletions src/main/java/me/shakeforprotein/treeboteleport/Commands/TpNo.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
package me.shakeforprotein.treeboteleport.Commands;

import me.shakeforprotein.treeboteleport.TreeboTeleport;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;


public class TpNo implements CommandExecutor {

private TreeboTeleport pl;

public TpNo(TreeboTeleport main){
this.pl = main;
}

@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
Player p = (Player) sender;
pl.getConfig().set("tpRequest." + p.getName() + ".type", "toSender");
pl.getConfig().set("tpRequest." + p.getName() + ".requestTime", 0);
pl.getConfig().set("tpRequest." + p.getName() + ".requester", sender.getName());
sender.sendMessage("Teleport request has been denied.");
for(OfflinePlayer offPlayer : Bukkit.getOfflinePlayers()){
if(offPlayer.getName().equalsIgnoreCase(pl.getConfig().getString("tpRequest." + p.getName() + ".requester"))){
if(offPlayer instanceof Player){
((Player) offPlayer).sendMessage(pl.badge + p.getName() + "has denied your teleport request.");
}
}
}
return true;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,10 @@ public boolean onCommand(CommandSender sender, Command cmd, String label, String
if (targetPlayer != null) {
if (type.equalsIgnoreCase("toPlayer")) {
targetPlayer.teleport((Player) sender);
pl.getConfig().set("tpRequest." + sender.getName() + ".requestTime", 0);
} else if (type.equalsIgnoreCase("toSender")) {
((Player) sender).teleport(targetPlayer);
pl.getConfig().set("tpRequest." + sender.getName() + ".requestTime", 0);
} else {
sender.sendMessage(pl.err + "Invalid teleport Type");
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package me.shakeforprotein.treeboteleport.Commands;

import me.shakeforprotein.treeboteleport.TreeboTeleport;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;

public class TpToggle implements CommandExecutor{

private TreeboTeleport pl;

public TpToggle(TreeboTeleport main) {
this.pl = main;
}

@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
if(pl.getConfig().get("tptoggle." + pl.getName()) == null){
pl.getConfig().set("tptoggle." + pl.getName(), 1);
sender.sendMessage(pl.badge + "Teleport requests have been toggled OFF");
}
else if(pl.getConfig().getInt("tptoggle." + sender.getName()) == 1){
pl.getConfig().set("tptoggle." + sender.getName(), 0);
sender.sendMessage(pl.badge + "Teleport requests have been toggled ON");
}
else if(pl.getConfig().getInt("tptoggle." + sender.getName()) == 0){
pl.getConfig().set("tptoggle." + sender.getName(), 1);
sender.sendMessage(pl.badge + "Teleport requests have been toggled OFF");
}
return true;

}
}
Loading

0 comments on commit 97865f5

Please sign in to comment.