diff --git a/foofledrive.iml b/foofledrive.iml
deleted file mode 100644
index 2304e1f..0000000
--- a/foofledrive.iml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
- SPIGOT
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/main/java/ga/ganma/ender/Listener/GetEvent.java b/src/main/java/ga/ganma/ender/Listener/GetEvent.java
index 0fbe8e7..4cd4fe5 100644
--- a/src/main/java/ga/ganma/ender/Listener/GetEvent.java
+++ b/src/main/java/ga/ganma/ender/Listener/GetEvent.java
@@ -3,9 +3,8 @@
import ga.ganma.ender.Endercloud;
import ga.ganma.ender.Filerelation;
import ga.ganma.ender.inventoryRelation.InventoryAPI;
-import ga.ganma.ender.plan;
+import ga.ganma.ender.Plan;
import ga.ganma.ender.playerdata.Playerdata;
-import jdk.internal.ref.Cleaner;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
@@ -14,7 +13,6 @@
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.plugin.Plugin;
-import java.io.File;
import java.util.Calendar;
import java.util.HashMap;
@@ -30,7 +28,7 @@ public GetEvent(Plugin pl) {
public void getplayerloginEvent(PlayerJoinEvent e) {
Player p = e.getPlayer();
if (Filerelation.namecheck(p)) {
- if (Filerelation.readFile(p).getPlan() == plan.FREE) {
+ if (Filerelation.readFile(p).getPlan() == Plan.FREE) {
p.sendMessage("[foofle drive]あなたは現在" + Filerelation.readFile(p).getPlan() + "プランに加入しています。");
return;
}
@@ -46,7 +44,7 @@ public void getplayerloginEvent(PlayerJoinEvent e) {
Endercloud.econ.depositPlayer(p, -amout[1]);
p.sendMessage("[foofle drive]LIGHTプランの料金を支払いました。");
} else {
- InventoryAPI.planchange(p, plan.FREE);
+ InventoryAPI.planchange(p, Plan.FREE);
p.sendMessage("[foofle drive]お金が足りないため自動的にfreeプランへ移行しました。");
p.sendMessage("[foofle drive]その際、2段目以降にあるアイテムを全消去しました。");
}
@@ -56,7 +54,7 @@ public void getplayerloginEvent(PlayerJoinEvent e) {
Endercloud.econ.depositPlayer(p, -amout[2]);
p.sendMessage("[foofle drive]MIDDLEプランの料金を支払いました。");
} else {
- InventoryAPI.planchange(p, plan.FREE);
+ InventoryAPI.planchange(p, Plan.FREE);
p.sendMessage("[foofle drive]お金が足りないため自動的にfreeプランへ移行しました。");
p.sendMessage("[foofle drive]その際、2段目以降にあるアイテムを全消去しました。");
}
@@ -66,7 +64,7 @@ public void getplayerloginEvent(PlayerJoinEvent e) {
Endercloud.econ.depositPlayer(p, -amout[3]);
p.sendMessage("[foofle drive]LARGEプランの料金を支払いました。");
} else {
- InventoryAPI.planchange(p, plan.FREE);
+ InventoryAPI.planchange(p, Plan.FREE);
p.sendMessage("[foofle drive]お金が足りないため自動的にfreeプランへ移行しました。");
p.sendMessage("[foofle drive]その際、2段目以降にあるアイテムを全消去しました。");
}
@@ -89,7 +87,7 @@ public void getplayerloginEvent(PlayerJoinEvent e) {
}
}
else {
- Playerdata pd = new Playerdata(p, Bukkit.getServer().createInventory(null, 9, "foofle Drive"), plan.FREE);
+ Playerdata pd = new Playerdata(p, Bukkit.getServer().createInventory(null, 9, "foofle Drive"), Plan.FREE);
Filerelation.createFile(pd);
p.sendMessage("[foofle drive]あなたは自動的に" + Filerelation.readFile(p).getPlan() + "プランに加入しました。");
}
diff --git a/src/main/java/ga/ganma/ender/Plan.java b/src/main/java/ga/ganma/ender/Plan.java
new file mode 100644
index 0000000..9e1bb57
--- /dev/null
+++ b/src/main/java/ga/ganma/ender/Plan.java
@@ -0,0 +1,55 @@
+package ga.ganma.ender;
+
+import java.io.Serializable;
+
+public enum Plan implements Serializable {
+ FREE,LIGHT,MIDDLE,LARGE;
+
+ /**
+ * プラン名として有効な文字列か判定する
+ * @param arg プラン名(かもしれない)文字列
+ * @return 大文字小文字を意識せず、プラン名として有効な場合true。それ以外の場合false
+ */
+ public static boolean isPlanName(String arg){
+ if(arg == null || arg.isEmpty()){
+ return false;
+ }
+ for(Plan p: Plan.values()){
+ if(arg.equalsIgnoreCase(p.name())){
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
+ * 引数に対応するPlanを返す
+ * @param arg 取得したいPlan名
+ * @return 有効なPlan名の場合、対応するPlan。対応しない場合はnull
+ */
+ public static Plan getPlan(String arg){
+ if(isPlanName(arg)){
+ for(Plan p : Plan.values()){
+ if(p.name().equalsIgnoreCase(arg)){
+ return p;
+ }
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Plan名の一覧を取得する
+ * @return カンマ区切りで列挙したPlan名の一覧
+ */
+ public static String getPlanNameList(){
+ StringBuilder sb = new StringBuilder();
+ for(Plan p : Plan.values()){
+ if(sb.length() != 0){
+ sb.append(',');
+ }
+ sb.append(p.name());
+ }
+ return sb.toString();
+ }
+}
diff --git a/src/main/java/ga/ganma/ender/command/CommandMain.java b/src/main/java/ga/ganma/ender/command/CommandMain.java
index 3eff878..108a11e 100644
--- a/src/main/java/ga/ganma/ender/command/CommandMain.java
+++ b/src/main/java/ga/ganma/ender/command/CommandMain.java
@@ -1,15 +1,17 @@
package ga.ganma.ender.command;
import ga.ganma.ender.Filerelation;
-import ga.ganma.ender.plan;
+import ga.ganma.ender.Plan;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
+import org.bukkit.command.TabCompleter;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
+import java.util.ArrayList;
import java.util.Calendar;
-import java.util.TimeZone;
+import java.util.List;
import java.util.logging.Level;
public class CommandMain implements CommandExecutor {
@@ -21,38 +23,41 @@ public CommandMain(Plugin pl) {
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
- if (sender instanceof Player) {
- Player p = (Player) sender;
- if (label.equalsIgnoreCase("ec")) {
- if (args.length != 0) {
- if (args[0].equalsIgnoreCase("open")) {
- new Subopen(this.pl, (Player) sender);
- } else if (args[0].equalsIgnoreCase("plan")) {
- if (args.length > 1) {
- if (args[1].equalsIgnoreCase("LIGHT")) {
- new Subplan(this.pl, p, plan.LIGHT);
- Filerelation.readFile(p).setFinish(Calendar.getInstance());
- } else if (args[1].equalsIgnoreCase("FREE")) {
- new Subplan(this.pl, p, plan.FREE);
- }else if (args[1].equalsIgnoreCase("MIDDLE")) {
- new Subplan(this.pl, p, plan.MIDDLE);
- }else if (args[1].equalsIgnoreCase("LARGE")) {
- new Subplan(this.pl, p, plan.LARGE);
- }
- } else {
- p.sendMessage("[foofle drive]プラン名を入力してください。");
- p.sendMessage("[foofle drive]FREE,LIGHT,MIDDLE,LARGE");
- }
- }
- }
- else {
- p.sendMessage("[free drive] /ec open でfoofle driveを開くことができます。");
- p.sendMessage("[free drive] /ec plan で好きなプランに加入することができます。");
- }
- }
- }
- else {
+ if(!(sender instanceof Player)){
pl.getLogger().log(Level.FINE, "このコマンドはコンソールからではなくプレイヤーが入力するものです。");
+ return false;
+ }
+ if(!label.equalsIgnoreCase("ec")){
+ //not ec command
+ return false;
+ }
+
+ Player p = (Player) sender;
+ if(args.length == 0){
+ p.sendMessage("[foofle drive] /ec open でfoofle driveを開くことができます。");
+ p.sendMessage("[foofle drive] /ec plan で好きなプランに加入することができます。");
+ return false;
+ }
+
+ if (args[0].equalsIgnoreCase("open")) {
+ new Subopen(this.pl, (Player) sender);
+ } else if (args[0].equalsIgnoreCase("plan")) {
+ if(args.length == 1){ //入力不足
+ p.sendMessage("[foofle drive]プラン名を入力してください。");
+ p.sendMessage("[foofle drive]" + Plan.getPlanNameList());
+ return false;
+ }
+
+ Plan inputPlan = Plan.getPlan(args[1]);
+ if(inputPlan == null){ //入力値無効
+ p.sendMessage("[foofle drive]「"+ args[1] +"」は無効なプラン名です。");
+ p.sendMessage("[foofle drive] 有効なプラン名を入力してください。" + Plan.getPlanNameList());
+ }
+
+ new Subplan(this.pl, p, inputPlan);
+ if(inputPlan == Plan.LIGHT){
+ Filerelation.readFile(p).setFinish(Calendar.getInstance());
+ }
}
return false;
}
diff --git a/src/main/java/ga/ganma/ender/command/Subplan.java b/src/main/java/ga/ganma/ender/command/Subplan.java
index 26388ce..0fe51bf 100644
--- a/src/main/java/ga/ganma/ender/command/Subplan.java
+++ b/src/main/java/ga/ganma/ender/command/Subplan.java
@@ -1,6 +1,7 @@
package ga.ganma.ender.command;
import ga.ganma.ender.Filerelation;
+import ga.ganma.ender.Plan;
import ga.ganma.ender.inventoryRelation.InventoryAPI;
import ga.ganma.ender.playerdata.Playerdata;
import org.bukkit.entity.Player;
@@ -11,7 +12,7 @@
public class Subplan {
Plugin pl;
Player p;
- public Subplan(Plugin pl, Player player, ga.ganma.ender.plan plan){
+ public Subplan(Plugin pl, Player player, Plan plan){
this.pl = pl;
p = player;
InventoryAPI.planchange(player,plan);
diff --git a/src/main/java/ga/ganma/ender/inventoryRelation/InventoryAPI.java b/src/main/java/ga/ganma/ender/inventoryRelation/InventoryAPI.java
index 2589f21..5e7df39 100644
--- a/src/main/java/ga/ganma/ender/inventoryRelation/InventoryAPI.java
+++ b/src/main/java/ga/ganma/ender/inventoryRelation/InventoryAPI.java
@@ -1,7 +1,7 @@
package ga.ganma.ender.inventoryRelation;
import ga.ganma.ender.Filerelation;
-import ga.ganma.ender.plan;
+import ga.ganma.ender.Plan;
import ga.ganma.ender.playerdata.Playerdata;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
@@ -17,7 +17,7 @@ public static Inventory Inventorysizechange(Inventory oldInv, int setsize){
return inv;
}
- public static void planchange(Player player, plan plan){
+ public static void planchange(Player player, Plan plan){
Inventory inv = null;
ItemStack[] is = null;
switch (plan){
diff --git a/src/main/java/ga/ganma/ender/plan.java b/src/main/java/ga/ganma/ender/plan.java
deleted file mode 100644
index 07b6c51..0000000
--- a/src/main/java/ga/ganma/ender/plan.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package ga.ganma.ender;
-
-import java.io.Serializable;
-
-public enum plan implements Serializable {
- FREE,LIGHT,MIDDLE,LARGE
-}
diff --git a/src/main/java/ga/ganma/ender/playerdata/Playerdata.java b/src/main/java/ga/ganma/ender/playerdata/Playerdata.java
index 7990d4e..cb55641 100644
--- a/src/main/java/ga/ganma/ender/playerdata/Playerdata.java
+++ b/src/main/java/ga/ganma/ender/playerdata/Playerdata.java
@@ -1,7 +1,7 @@
package ga.ganma.ender.playerdata;
import ga.ganma.ender.inventoryRelation.InventoryEncoder;
-import ga.ganma.ender.plan;
+import ga.ganma.ender.Plan;
import org.bukkit.entity.Player;
import org.bukkit.inventory.Inventory;
@@ -11,17 +11,17 @@
public class Playerdata implements Serializable {
private UUID mcid;
- private plan plan;
+ private Plan plan;
private String inventorySt;
private Calendar finish;
- public Playerdata(Player pl, Inventory inv, plan plan) {
+ public Playerdata(Player pl, Inventory inv, Plan plan) {
this.mcid = pl.getUniqueId();
this.plan = plan;
this.inventorySt = InventoryEncoder.inventoryToString(inv);
}
- public ga.ganma.ender.plan getPlan() {
+ public Plan getPlan() {
return plan;
}
diff --git a/src/main/java/ga/ganma/foofledrive/Foofledrive.java b/src/main/java/ga/ganma/foofledrive/Foofledrive.java
index f58ee9e..f8ca8f0 100644
--- a/src/main/java/ga/ganma/foofledrive/Foofledrive.java
+++ b/src/main/java/ga/ganma/foofledrive/Foofledrive.java
@@ -2,14 +2,20 @@
import ga.ganma.foofledrive.Listener.GUIEvent;
import ga.ganma.foofledrive.Listener.GetEvent;
-import ga.ganma.foofledrive.bukkitRunnable.Runnable;
import ga.ganma.foofledrive.command.CommandMain;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.Bukkit;
+import org.bukkit.GameMode;
+import org.bukkit.OfflinePlayer;
+import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.RegisteredServiceProvider;
import org.bukkit.plugin.java.JavaPlugin;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.UUID;
import java.util.logging.Logger;
public final class Foofledrive extends JavaPlugin {
@@ -19,6 +25,16 @@ public final class Foofledrive extends JavaPlugin {
public static int[] configamout = new int[4];
public static String unit;
public static Plugin ender;
+ /** flの使用を拒否するワールド名List */
+ public static List denyWorld;
+ /** denyWorldの制限を非OPプレイヤーに限定するか否か */
+ public static boolean denyWorldOnlyNonOP;
+ /** flの使用を拒否するゲームモードリスト */
+ public static List denyGameMode;
+ /** denyGameModeの制限を非OPプレイヤーに限定するか否か */
+ public static boolean denyGameModeOnlyNonOP;
+
+
public Foofledrive fl;
@Override
@@ -29,18 +45,49 @@ public void onEnable() {
new GUIEvent(this);
this.getCommand("fl").setExecutor(new CommandMain(this));
this.getCommand("foofledrive").setExecutor(new CommandMain(this));
+ this.getCommand("fl").setTabCompleter(new CommandMain(this));
+ this.getCommand("foofledrive").setTabCompleter(new CommandMain(this));
saveDefaultConfig();
configamout[0] = this.getConfig().getInt("amout.FREE");
configamout[1] = this.getConfig().getInt("amout.LIGHT");
configamout[2] = this.getConfig().getInt("amout.MIDDLE");
configamout[3] = this.getConfig().getInt("amout.LARGE");
unit = this.getConfig().getString("unit");
+ denyWorld = this.getConfig().getStringList("deny.world");
+ List denyGameModeConfig = this.getConfig().getStringList("deny.gamemode");
+ denyGameMode = new ArrayList<>();
+ for(String gm : denyGameModeConfig){ //noConfig will make list NULL
+ try {
+ denyGameMode.add(GameMode.getByValue(Integer.parseInt(gm)));
+ }catch(IllegalArgumentException e){
+ this.getLogger().warning("flConfigERROR:deny.gamemode value [" + gm +"] not a GameMode int value");
+ throw e;
+ }
+ }
+ denyGameModeOnlyNonOP = this.getConfig().getBoolean("deny.gamemodeWithoutOP", true);
+ denyWorldOnlyNonOP = this.getConfig().getBoolean("deny.worldWithoutOP", true);
+
if(!this.setupEconomy()){
Bukkit.getPluginManager().disablePlugin(this);
Bukkit.getLogger().warning("[foofle drive]Vaultが存在しません!");
return;
}
- new Runnable(this).runTaskTimer(this,0,20);
+
+ String FS = File.separator;
+ File folder = new File(getDataFolder() + FS + "playerdata");
+ if (folder.exists()) {
+ File[] list = folder.listFiles();
+ if (list != null) {
+ for (File f : list) {
+ String name = f.getName();
+ name = name.substring(0, name.lastIndexOf('.'));
+ UUID id = UUID.fromString(name);
+ OfflinePlayer pl = Bukkit.getOfflinePlayer(id);
+ ga.ganma.foofledrive.economy.Economy.paymoney(pl);
+ }
+
+ }
+ }
}
@Override
diff --git a/src/main/java/ga/ganma/foofledrive/Listener/GUIEvent.java b/src/main/java/ga/ganma/foofledrive/Listener/GUIEvent.java
index ba74f82..963f23d 100644
--- a/src/main/java/ga/ganma/foofledrive/Listener/GUIEvent.java
+++ b/src/main/java/ga/ganma/foofledrive/Listener/GUIEvent.java
@@ -3,7 +3,7 @@
import ga.ganma.foofledrive.Filerelation;
import ga.ganma.foofledrive.command.CommandMain;
import ga.ganma.foofledrive.inventoryRelation.InventoryAPI;
-import ga.ganma.foofledrive.plan;
+import ga.ganma.foofledrive.Plan;
import ga.ganma.foofledrive.playerdata.Playerdata;
import org.bukkit.Bukkit;
import org.bukkit.Material;
@@ -22,7 +22,7 @@
public class GUIEvent implements Listener {
- private static HashMap ProvisionalPlan = new HashMap<>();
+ private static HashMap ProvisionalPlan = new HashMap<>();
public GUIEvent(Plugin pl) {
Bukkit.getPluginManager().registerEvents(this, pl);
@@ -46,19 +46,19 @@ public void getInventoryclickEvent(InventoryClickEvent e) {
if (e.getSlot() == 10) {
e.setCancelled(true);
pl.openInventory(yesornoInv());
- ProvisionalPlan.put(pl, plan.FREE);
+ ProvisionalPlan.put(pl, Plan.FREE);
} else if (e.getSlot() == 12) {
e.setCancelled(true);
pl.openInventory(yesornoInv());
- ProvisionalPlan.put(pl, plan.LIGHT);
+ ProvisionalPlan.put(pl, Plan.LIGHT);
} else if (e.getSlot() == 14) {
e.setCancelled(true);
pl.openInventory(yesornoInv());
- ProvisionalPlan.put(pl, plan.MIDDLE);
+ ProvisionalPlan.put(pl, Plan.MIDDLE);
} else if (e.getSlot() == 16) {
e.setCancelled(true);
pl.openInventory(yesornoInv());
- ProvisionalPlan.put(pl, plan.LARGE);
+ ProvisionalPlan.put(pl, Plan.LARGE);
} else if (clickedItem.getType() == Material.LIGHT_GRAY_STAINED_GLASS_PANE) {
e.setCancelled(true);
}
@@ -68,48 +68,48 @@ public void getInventoryclickEvent(InventoryClickEvent e) {
Playerdata pd;
switch (ProvisionalPlan.get(pl)) {
case FREE:
- InventoryAPI.planchange(pl, plan.FREE);
+ InventoryAPI.planchange(pl, Plan.FREE);
pd = Filerelation.readFile(pl);
if (pd.getFinish() == null) {
pd.setFinish(Calendar.getInstance());
Filerelation.createFile(pd);
}
- pl.sendMessage("[foofle drive]プランを" + plan.FREE + "プランに変更しました。");
+ pl.sendMessage("[foofle drive]プランを" + Plan.FREE + "プランに変更しました。");
break;
case LIGHT:
- boolean is = InventoryAPI.planchange(pl, plan.LIGHT);
+ boolean is = InventoryAPI.planchange(pl, Plan.LIGHT);
pd = Filerelation.readFile(pl);
if (pd.getFinish() == null) {
pd.setFinish(Calendar.getInstance());
Filerelation.createFile(pd);
}
if (is) {
- pl.sendMessage("[foofle drive]プランを" + plan.LIGHT + "プランに変更しました。");
+ pl.sendMessage("[foofle drive]プランを" + Plan.LIGHT + "プランに変更しました。");
}
break;
case MIDDLE:
- boolean is1 = InventoryAPI.planchange(pl, plan.MIDDLE);
+ boolean is1 = InventoryAPI.planchange(pl, Plan.MIDDLE);
pd = Filerelation.readFile(pl);
if (pd.getFinish() == null) {
pd.setFinish(Calendar.getInstance());
Filerelation.createFile(pd);
}
if (is1) {
- pl.sendMessage("[foofle drive]プランを" + plan.MIDDLE + "プランに変更しました。");
+ pl.sendMessage("[foofle drive]プランを" + Plan.MIDDLE + "プランに変更しました。");
}
break;
case LARGE:
- boolean is2 = InventoryAPI.planchange(pl, plan.LARGE);
+ boolean is2 = InventoryAPI.planchange(pl, Plan.LARGE);
pd = Filerelation.readFile(pl);
if (pd.getFinish() == null) {
pd.setFinish(Calendar.getInstance());
Filerelation.createFile(pd);
}
if (is2) {
- pl.sendMessage("[foofle drive]プランを" + plan.LARGE + "プランに変更しました。");
+ pl.sendMessage("[foofle drive]プランを" + Plan.LARGE + "プランに変更しました。");
}
break;
}
diff --git a/src/main/java/ga/ganma/foofledrive/Listener/GetEvent.java b/src/main/java/ga/ganma/foofledrive/Listener/GetEvent.java
index 48d1bee..1663055 100644
--- a/src/main/java/ga/ganma/foofledrive/Listener/GetEvent.java
+++ b/src/main/java/ga/ganma/foofledrive/Listener/GetEvent.java
@@ -2,7 +2,7 @@
import ga.ganma.foofledrive.Foofledrive;
import ga.ganma.foofledrive.Filerelation;
-import ga.ganma.foofledrive.plan;
+import ga.ganma.foofledrive.Plan;
import ga.ganma.foofledrive.playerdata.Playerdata;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
@@ -31,7 +31,7 @@ public GetEvent(Plugin pl) {
public void getplayerloginEvent(PlayerJoinEvent e) {
p = e.getPlayer();
if (Filerelation.namecheck(p)) {
- if (Filerelation.readFile(p).getPlan() == plan.FREE) {
+ if (Filerelation.readFile(p).getPlan() == Plan.FREE) {
p.sendMessage("[foofle drive]あなたは現在" + Filerelation.readFile(p).getPlan() + "プランに加入しています。");
return;
}
@@ -57,7 +57,7 @@ public void run() {
}
}
else {
- Playerdata pd = new Playerdata(p, Bukkit.getServer().createInventory(null, 9, "foofle Drive"), plan.FREE);
+ Playerdata pd = new Playerdata(p, Bukkit.getServer().createInventory(null, 9, "foofle Drive"), Plan.FREE);
Filerelation.createFile(pd);
p.sendMessage("[foofle drive]あなたは自動的に" + Filerelation.readFile(p).getPlan() + "プランに加入しました。");
}
diff --git a/src/main/java/ga/ganma/foofledrive/Plan.java b/src/main/java/ga/ganma/foofledrive/Plan.java
new file mode 100644
index 0000000..1f1194f
--- /dev/null
+++ b/src/main/java/ga/ganma/foofledrive/Plan.java
@@ -0,0 +1,55 @@
+package ga.ganma.foofledrive;
+
+import java.io.Serializable;
+
+public enum Plan implements Serializable {
+ FREE,LIGHT,MIDDLE,LARGE;
+
+ /**
+ * プラン名として有効な文字列か判定する
+ * @param arg プラン名(かもしれない)文字列
+ * @return 大文字小文字を意識せず、プラン名として有効な場合true。それ以外の場合false
+ */
+ public static boolean isPlanName(String arg){
+ if(arg == null || arg.isEmpty()){
+ return false;
+ }
+ for(Plan p: Plan.values()){
+ if(arg.equalsIgnoreCase(p.name())){
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
+ * 引数に対応するPlanを返す
+ * @param arg 取得したいPlan名
+ * @return 有効なPlan名の場合、対応するPlan。対応しない場合はnull
+ */
+ public static Plan getPlan(String arg){
+ if(isPlanName(arg)){
+ for(Plan p : Plan.values()){
+ if(p.name().equalsIgnoreCase(arg)){
+ return p;
+ }
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Plan名の一覧を取得する
+ * @return カンマ区切りで列挙したPlan名の一覧
+ */
+ public static String getPlanNameList(){
+ StringBuilder sb = new StringBuilder();
+ for(Plan p : Plan.values()){
+ if(sb.length() != 0){
+ sb.append(',');
+ }
+ sb.append(p.name());
+ }
+ return sb.toString();
+ }
+}
diff --git a/src/main/java/ga/ganma/foofledrive/bukkitRunnable/Runnable.java b/src/main/java/ga/ganma/foofledrive/bukkitRunnable/Runnable.java
deleted file mode 100644
index 67254df..0000000
--- a/src/main/java/ga/ganma/foofledrive/bukkitRunnable/Runnable.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package ga.ganma.foofledrive.bukkitRunnable;
-
-import ga.ganma.foofledrive.economy.Economy;
-import org.bukkit.Bukkit;
-import org.bukkit.OfflinePlayer;
-import org.bukkit.plugin.Plugin;
-import org.bukkit.scheduler.BukkitRunnable;
-
-import java.io.File;
-import java.util.UUID;
-
-public class Runnable extends BukkitRunnable {
- private Plugin plugin;
-
- public Runnable(Plugin pl) {
- plugin = pl;
- }
-
- @Override
- public void run() {
- String FS = File.separator;
- File folder = new File(plugin.getDataFolder() + FS + "playerdata");
- if (folder.exists()) {
- File[] list = folder.listFiles();
- if (list != null) {
- for (File f : list) {
- String name = f.getName();
- name = name.substring(0, name.lastIndexOf('.'));
- UUID id = UUID.fromString(name);
- OfflinePlayer pl = Bukkit.getOfflinePlayer(id);
- Economy.paymoney(pl);
- }
-
- }
- }
- }
-}
diff --git a/src/main/java/ga/ganma/foofledrive/command/CommandMain.java b/src/main/java/ga/ganma/foofledrive/command/CommandMain.java
index 40d09fa..63ef013 100644
--- a/src/main/java/ga/ganma/foofledrive/command/CommandMain.java
+++ b/src/main/java/ga/ganma/foofledrive/command/CommandMain.java
@@ -1,139 +1,259 @@
-package ga.ganma.foofledrive.command;
-
-import ga.ganma.foofledrive.Filerelation;
-import ga.ganma.foofledrive.Foofledrive;
-import ga.ganma.foofledrive.economy.Economy;
-import ga.ganma.foofledrive.plan;
-import org.bukkit.Bukkit;
-import org.bukkit.Material;
-import org.bukkit.command.Command;
-import org.bukkit.command.CommandExecutor;
-import org.bukkit.command.CommandSender;
-import org.bukkit.entity.Player;
-import org.bukkit.inventory.Inventory;
-import org.bukkit.inventory.ItemStack;
-import org.bukkit.inventory.meta.ItemMeta;
-import org.bukkit.plugin.Plugin;
-
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.HashMap;
-import java.util.List;
-import java.util.logging.Level;
-
-public class CommandMain implements CommandExecutor {
- public static HashMap isopenInventory = new HashMap<>();
- private Plugin pl;
-
- public CommandMain(Plugin pl) {
- this.pl = pl;
- }
-
- @Override
- public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
- if (sender instanceof Player) {
- Player p = (Player) sender;
- if (label.equalsIgnoreCase("fl") || label.equalsIgnoreCase("foofledrive")) {
- if (args.length != 0) {
- if (args[0].equalsIgnoreCase("open")) {
- new Subopen(this.pl, (Player) sender);
- } else if (args[0].equalsIgnoreCase("plan")) {
- if (args.length > 1) {
- if (args[1].equalsIgnoreCase("LIGHT")) {
- new Subplan(this.pl, p, plan.LIGHT);
- Filerelation.readFile(p).setFinish(Calendar.getInstance());
- } else if (args[1].equalsIgnoreCase("FREE")) {
- new Subplan(this.pl, p, plan.FREE);
- }else if (args[1].equalsIgnoreCase("MIDDLE")) {
- new Subplan(this.pl, p, plan.MIDDLE);
- }else if (args[1].equalsIgnoreCase("LARGE")) {
- new Subplan(this.pl, p, plan.LARGE);
- }
- } else {
- Inventory inv = Bukkit.createInventory(null,27,"プラン選択画面");
- ItemStack is = new ItemStack(Material.LIGHT_GRAY_STAINED_GLASS_PANE,1);
- ItemMeta im0 = is.getItemMeta();
- im0.setDisplayName(" ");
- ItemStack free = new ItemStack(Material.PAPER,1);
- ItemMeta im1 = free.getItemMeta();
- im1.setDisplayName("FREEプラン");
- List freeprice = new ArrayList<>();
- freeprice.add(Economy.getplanmoney(plan.FREE) + Foofledrive.unit);
- im1.setLore(freeprice);
- ItemStack light = new ItemStack(Material.IRON_INGOT,1);
- ItemMeta im2 = light.getItemMeta();
- im2.setDisplayName("LIGHTプラン");
- List lightprice = new ArrayList<>();
- lightprice.add(Economy.getplanmoney(plan.LIGHT) + Foofledrive.unit);
- im2.setLore(lightprice);
- ItemStack middle = new ItemStack(Material.GOLD_INGOT,1);
- ItemMeta im3 = middle.getItemMeta();
- im3.setDisplayName("MIDDLEプラン");
- List middleprice = new ArrayList<>();
- middleprice.add(Economy.getplanmoney(plan.MIDDLE) + Foofledrive.unit);
- im3.setLore(middleprice);
- ItemStack large = new ItemStack(Material.DIAMOND,1);
- ItemMeta im4 = middle.getItemMeta();
- im4.setDisplayName("LARGEプラン");
- List largeprice = new ArrayList<>();
- largeprice.add(Economy.getplanmoney(plan.LARGE) + Foofledrive.unit);
- im4.setLore(largeprice);
-
- is.setItemMeta(im0);
- free.setItemMeta(im1);
- light.setItemMeta(im2);
- middle.setItemMeta(im3);
- large.setItemMeta(im4);
-
- for(int a = 0;a <= 26;a++) {
- if(a == 10){
- inv.setItem(a,free);
- }
- else if (a == 12){
- inv.setItem(a,light);
- }
- else if(a == 14){
- inv.setItem(a,middle);
- }
- else if(a == 16){
- inv.setItem(a,large);
- }
- else {
- inv.setItem(a,is);
- }
- }
- isopenInventory.put(p,true);
- p.openInventory(inv);
- }
- }
- else if(args[0].equalsIgnoreCase("reload")) {
- if (p.isOp()) {
- pl.reloadConfig();
- Foofledrive.configamout[0] = pl.getConfig().getInt("amout.FREE");
- Foofledrive.configamout[1] = pl.getConfig().getInt("amout.LIGHT");
- Foofledrive.configamout[2] = pl.getConfig().getInt("amout.MIDDLE");
- Foofledrive.configamout[3] = pl.getConfig().getInt("amout.LARGE");
- Foofledrive.unit = pl.getConfig().getString("unit");
- p.sendMessage("[foofle drive]コンフィグをリロードしました。");
- }
- else {
- p.sendMessage("[foofle drive]このコマンドは管理者専用です。");
- }
- }
- else if(args[0].equalsIgnoreCase("help")){
- p.sendMessage("[free drive] /fl open でfoofle driveを開くことができます。");
- p.sendMessage("[free drive] /fl plan で好きなプランに加入することができます。");
- }
- }
- else {
- p.sendMessage("[free drive] /fl open でfoofle driveを開くことができます。");
- p.sendMessage("[free drive] /fl plan で好きなプランに加入することができます。");
- }
- }
- }
- else {
- pl.getLogger().log(Level.INFO, "このコマンドはコンソールからではなくプレイヤーが入力するものです。");
- }
- return false;
- }
-}
+package ga.ganma.foofledrive.command;
+
+import ga.ganma.foofledrive.Filerelation;
+import ga.ganma.foofledrive.Foofledrive;
+import ga.ganma.foofledrive.economy.Economy;
+import ga.ganma.foofledrive.Plan;
+import org.bukkit.Bukkit;
+import org.bukkit.GameMode;
+import org.bukkit.Material;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandExecutor;
+import org.bukkit.command.CommandSender;
+import org.bukkit.command.TabCompleter;
+import org.bukkit.entity.Player;
+import org.bukkit.inventory.Inventory;
+import org.bukkit.inventory.ItemStack;
+import org.bukkit.inventory.meta.ItemMeta;
+import org.bukkit.plugin.Plugin;
+
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.HashMap;
+import java.util.List;
+import java.util.logging.Level;
+
+public class CommandMain implements CommandExecutor, TabCompleter {
+ public static HashMap isopenInventory = new HashMap<>();
+ private Plugin pl;
+
+ public CommandMain(Plugin pl) {
+ this.pl = pl;
+ }
+
+ private void sendFoofleDriveMessage(Player p, String msg){
+ p.sendMessage("[foofle drive]" + msg);
+ }
+
+ /**
+ * Configで制限されたステータスでないことを確認する
+ * @param p
+ * @return コマンドの使用が許可されている場合true
+ */
+ private boolean isAllowedToUseFL(Player p){
+ //ワールド制限チェック
+ if(Foofledrive.denyWorldOnlyNonOP && p.isOp()){
+ //true ゲームモード制限チェックへ進む
+ } else {
+ String currentWorldName = p.getWorld().getName();
+ if(Foofledrive.denyWorld != null && !Foofledrive.denyWorld.isEmpty()){
+ if(Foofledrive.denyWorld.contains(currentWorldName)){
+ sendFoofleDriveMessage(p,"このワールドでは許可されていません。");
+ return false;
+ }
+ }
+ }
+
+ //ゲームモード制限チェック
+ if(Foofledrive.denyGameModeOnlyNonOP && p.isOp()){
+ return true;
+ }
+ GameMode currentGameMode = p.getGameMode();
+ if(Foofledrive.denyGameMode != null && !Foofledrive.denyGameMode.isEmpty()){
+ if(Foofledrive.denyGameMode.contains(currentGameMode)){
+ sendFoofleDriveMessage(p, "このゲームモードでは許可されていません。");
+ return false;
+ }
+ }
+ return true;
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ if(!(sender instanceof Player)){
+ pl.getLogger().log(Level.INFO, "このコマンドはコンソールからではなくプレイヤーが入力するものです。");
+ return false;
+ }
+ if(!(label.equalsIgnoreCase("fl") || label.equalsIgnoreCase("foofledrive"))){
+ //対象外コマンド
+ return false;
+ }
+
+ Player p = (Player) sender;
+ if(args.length == 0){
+ sendFoofleDriveMessage(p, " /fl open でfoofle driveを開くことができます。");
+ sendFoofleDriveMessage(p, " /fl plan で好きなプランに加入することができます。");
+ return false;
+ }
+
+ if (args[0].equalsIgnoreCase("open")) {
+ if(isAllowedToUseFL(p)) { //制限チェック
+ new Subopen(this.pl, (Player) sender);
+ }
+ return false;
+ }
+ if (args[0].equalsIgnoreCase("plan")) {
+ if(args.length == 1){
+ //プラン選択GUI表示
+ showPlanSelect(p);
+ } else {
+ Plan plan = Plan.getPlan(args[1]);
+ if(plan == null){
+ sendFoofleDriveMessage(p, " 「"+ args[1] +"」は無効なプラン名です。");
+ sendFoofleDriveMessage(p, "有効なプラン名を入力してください。" + Plan.getPlanNameList());
+ return false;
+ }
+
+ new Subplan(this.pl, p, plan);
+ if(plan == Plan.LIGHT){
+ Filerelation.readFile(p).setFinish(Calendar.getInstance());
+ }
+ }
+ return false;
+ }
+ if(args[0].equalsIgnoreCase("reload")) {
+ if (p.isOp()) {
+ pl.reloadConfig();
+ Foofledrive.configamout[0] = pl.getConfig().getInt("amout.FREE");
+ Foofledrive.configamout[1] = pl.getConfig().getInt("amout.LIGHT");
+ Foofledrive.configamout[2] = pl.getConfig().getInt("amout.MIDDLE");
+ Foofledrive.configamout[3] = pl.getConfig().getInt("amout.LARGE");
+ Foofledrive.unit = pl.getConfig().getString("unit");
+ sendFoofleDriveMessage(p, "コンフィグをリロードしました。");
+ }
+ else {
+ sendFoofleDriveMessage(p, "このコマンドは管理者専用です。");
+ }
+ return false;
+ }
+ if(args[0].equalsIgnoreCase("help")){
+ sendFoofleDriveMessage(p, "/fl open でfoofle driveを開くことができます。");
+ sendFoofleDriveMessage(p, "/fl plan で好きなプランに加入することができます。");
+ return false;
+ }
+
+ return false;
+ }
+
+ private void showPlanSelect(Player p){
+ Inventory inv = Bukkit.createInventory(null,27,"プラン選択画面");
+
+ ItemStack is = new ItemStack(Material.LIGHT_GRAY_STAINED_GLASS_PANE,1);
+ ItemMeta im0 = is.getItemMeta();
+ im0.setDisplayName(" ");
+ is.setItemMeta(im0);
+
+ ItemStack free = new ItemStack(Material.PAPER,1);
+ ItemMeta im1 = free.getItemMeta();
+ im1.setDisplayName("FREEプラン");
+ List freePrice = new ArrayList<>();
+ freePrice.add(Economy.getPlanPrice(Plan.FREE) + Foofledrive.unit);
+ im1.setLore(freePrice);
+ free.setItemMeta(im1);
+
+ ItemStack light = new ItemStack(Material.IRON_INGOT,1);
+ ItemMeta im2 = light.getItemMeta();
+ im2.setDisplayName("LIGHTプラン");
+ List lightPrice = new ArrayList<>();
+ lightPrice.add(Economy.getPlanPrice(Plan.LIGHT) + Foofledrive.unit);
+ im2.setLore(lightPrice);
+ light.setItemMeta(im2);
+
+ ItemStack middle = new ItemStack(Material.GOLD_INGOT,1);
+ ItemMeta im3 = middle.getItemMeta();
+ im3.setDisplayName("MIDDLEプラン");
+ List middlePrice = new ArrayList<>();
+ middlePrice.add(Economy.getPlanPrice(Plan.MIDDLE) + Foofledrive.unit);
+ im3.setLore(middlePrice);
+ middle.setItemMeta(im3);
+
+ ItemStack large = new ItemStack(Material.DIAMOND,1);
+ ItemMeta im4 = middle.getItemMeta();
+ im4.setDisplayName("LARGEプラン");
+ List largePrice = new ArrayList<>();
+ largePrice.add(Economy.getPlanPrice(Plan.LARGE) + Foofledrive.unit);
+ im4.setLore(largePrice);
+ large.setItemMeta(im4);
+
+ for(int a = 0;a <= 26;a++) {
+ if(a == 10){
+ inv.setItem(a,free);
+ continue;
+ }
+ if (a == 12){
+ inv.setItem(a,light);
+ continue;
+ }
+ if(a == 14){
+ inv.setItem(a,middle);
+ continue;
+ }
+ if(a == 16){
+ inv.setItem(a,large);
+ continue;
+ }
+ inv.setItem(a,is);
+ }
+ isopenInventory.put(p,true);
+ p.openInventory(inv);
+ }
+
+ /**
+ * Tab補完支援
+ * @param sender コマンド入力者
+ * @param command コマンド(fl または foofledrive のはず)
+ * @param alias 使用された別名(fl のはず)
+ * @param args コマンドの引数部分
プレイヤー入力値「/fl plan something」の
plan, something が配列の[0][1]にそれぞれ順に格納される
+ * @auther graycat27(MCID:gray27)
+ * @return 補完候補のList。nullの場合あり
+ */
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
+ if (!(alias.equalsIgnoreCase("fl") || alias.equalsIgnoreCase("foofledrive"))) {
+ return null;
+ }
+ List firstCommandList = new ArrayList(); //fl xxx
+ firstCommandList.add("open");
+ firstCommandList.add("plan");
+ firstCommandList.add("reload");
+ firstCommandList.add("help");
+
+ if(args.length == 0 || args[0].equals("")){
+ //全候補提供
+ return firstCommandList;
+ }
+
+ if(args.length == 1){
+ //「/fl xx」状態
+ List resultList = new ArrayList();
+ for(String maybe : firstCommandList){
+ if(maybe.toLowerCase().startsWith(args[0].toLowerCase())){
+ resultList.add(maybe);
+ }
+ }
+ return resultList;
+ }
+
+ if(args.length == 2){
+ if(args[0].equals(firstCommandList.get(0)) || //open
+ args[0].equals(firstCommandList.get(2)) || //reload
+ args[0].equals(firstCommandList.get(3))){ //help
+ //追加引数なし
+ return new ArrayList();
+ }
+ if(args[0].equals(firstCommandList.get(1))){
+ //「/fl plan xx」状態
+ List resultList = new ArrayList();
+ for (Plan pln : Plan.values()) { //planはenum
+ if(args[1].equals("") ||
+ pln.toString().toLowerCase().startsWith(args[1].toLowerCase())){
+ //xx部分未入力or入力内容に合致する候補
+ resultList.add(pln.toString());
+ }
+ }
+ return resultList;
+ }
+ }
+ return new ArrayList(); //for safe
+ }
+}
diff --git a/src/main/java/ga/ganma/foofledrive/command/Subplan.java b/src/main/java/ga/ganma/foofledrive/command/Subplan.java
index b4dc827..5e3b7ad 100644
--- a/src/main/java/ga/ganma/foofledrive/command/Subplan.java
+++ b/src/main/java/ga/ganma/foofledrive/command/Subplan.java
@@ -2,7 +2,7 @@
import ga.ganma.foofledrive.Filerelation;
import ga.ganma.foofledrive.inventoryRelation.InventoryAPI;
-import ga.ganma.foofledrive.plan;
+import ga.ganma.foofledrive.Plan;
import ga.ganma.foofledrive.playerdata.Playerdata;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
@@ -12,7 +12,7 @@
public class Subplan {
Plugin pl;
Player p;
- public Subplan(Plugin pl, Player player, plan plan){
+ public Subplan(Plugin pl, Player player, Plan plan){
this.pl = pl;
p = player;
boolean issuccess;
diff --git a/src/main/java/ga/ganma/foofledrive/economy/Economy.java b/src/main/java/ga/ganma/foofledrive/economy/Economy.java
index ac15e4a..2c1e207 100644
--- a/src/main/java/ga/ganma/foofledrive/economy/Economy.java
+++ b/src/main/java/ga/ganma/foofledrive/economy/Economy.java
@@ -3,7 +3,7 @@
import ga.ganma.foofledrive.Foofledrive;
import ga.ganma.foofledrive.Filerelation;
import ga.ganma.foofledrive.inventoryRelation.InventoryAPI;
-import ga.ganma.foofledrive.plan;
+import ga.ganma.foofledrive.Plan;
import ga.ganma.foofledrive.playerdata.Playerdata;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
@@ -21,8 +21,8 @@ public static void paymoney(Player p) {
if (pd.getFinish().before(Calendar.getInstance())) {
switch (pd.getPlan()) {
case LIGHT:
- if (bal >= getplanmoney(plan.LIGHT)) {
- Foofledrive.econ.withdrawPlayer(p, getplanmoney(plan.LIGHT));
+ if (bal >= getPlanPrice(Plan.LIGHT)) {
+ Foofledrive.econ.withdrawPlayer(p, getPlanPrice(Plan.LIGHT));
Bukkit.getLogger().log(Level.INFO, "[foofle drive]" + p.getName() + "のLIGHTプランの料金を支払いました。");
if (p.isOnline()) {
p.sendMessage("[foofle drive]料金の支払いをしました。");
@@ -30,7 +30,7 @@ public static void paymoney(Player p) {
pd.setFinish(Calendar.getInstance());
Filerelation.createFile(pd);
} else {
- InventoryAPI.planchange(p, plan.FREE);
+ InventoryAPI.planchange(p, Plan.FREE);
Bukkit.getLogger().log(Level.INFO, "[foofle drive]" + p.getName() + "のお金が足りないため、自動的にfreeプランへ移行しました。");
Bukkit.getLogger().log(Level.INFO, "[foofle drive]その際、2段目以降にあるアイテムを全消去しました。");
if (p.isOnline()) {
@@ -40,8 +40,8 @@ public static void paymoney(Player p) {
}
break;
case MIDDLE:
- if (bal >= getplanmoney(plan.MIDDLE)) {
- Foofledrive.econ.withdrawPlayer(p, getplanmoney(plan.MIDDLE));
+ if (bal >= getPlanPrice(Plan.MIDDLE)) {
+ Foofledrive.econ.withdrawPlayer(p, getPlanPrice(Plan.MIDDLE));
Bukkit.getLogger().log(Level.INFO, "[foofle drive]" + p.getName() + "のMIDDLEプランの料金を支払いました。");
if (p.isOnline()) {
p.sendMessage("[foofle drive]料金の支払いをしました。");
@@ -49,7 +49,7 @@ public static void paymoney(Player p) {
pd.setFinish(Calendar.getInstance());
Filerelation.createFile(pd);
} else {
- InventoryAPI.planchange(p, plan.FREE);
+ InventoryAPI.planchange(p, Plan.FREE);
Bukkit.getLogger().log(Level.INFO, "[foofle drive]" + p.getName() + "のお金が足りないため、自動的にfreeプランへ移行しました。");
Bukkit.getLogger().log(Level.INFO, "[foofle drive]その際、2段目以降にあるアイテムを全消去しました。");
if (p.isOnline()) {
@@ -59,8 +59,8 @@ public static void paymoney(Player p) {
}
break;
case LARGE:
- if (bal >= getplanmoney(plan.LARGE)) {
- Foofledrive.econ.withdrawPlayer(p, getplanmoney(plan.LARGE));
+ if (bal >= getPlanPrice(Plan.LARGE)) {
+ Foofledrive.econ.withdrawPlayer(p, getPlanPrice(Plan.LARGE));
Bukkit.getLogger().log(Level.INFO, "[foofle drive]" + p.getName() + "のLARGEプランの料金を支払いました。");
if (p.isOnline()) {
p.sendMessage("[foofle drive]料金の支払いをしました。");
@@ -68,7 +68,7 @@ public static void paymoney(Player p) {
pd.setFinish(Calendar.getInstance());
Filerelation.createFile(pd);
} else {
- InventoryAPI.planchange(p, plan.FREE);
+ InventoryAPI.planchange(p, Plan.FREE);
Bukkit.getLogger().log(Level.INFO, "[foofle drive]" + p.getName() + "のお金が足りないため、自動的にfreeプランへ移行しました。");
Bukkit.getLogger().log(Level.INFO, "[foofle drive]その際、2段目以降にあるアイテムを全消去しました。");
if (p.isOnline()) {
@@ -87,7 +87,7 @@ public static void paymoney(OfflinePlayer p) {
Playerdata pd = Filerelation.readFile(p);
if (p != null){
double bal = Foofledrive.econ.getBalance(p);
- if (pd.getFinish() != null) {
+ if (pd != null && pd.getFinish() != null) {
if (pd.getFinish().before(Calendar.getInstance())) {
int[] amout = Foofledrive.configamout;
switch (pd.getPlan()) {
@@ -102,7 +102,7 @@ public static void paymoney(OfflinePlayer p) {
pd.setFinish(Calendar.getInstance());
Filerelation.createFile(pd);
} else {
- InventoryAPI.planchange(p, plan.FREE);
+ InventoryAPI.planchange(p, Plan.FREE);
Bukkit.getLogger().log(Level.INFO, "[foofle drive]" + p.getName() + "のお金が足りないため、自動的にfreeプランへ移行しました。");
Bukkit.getLogger().log(Level.INFO, "[foofle drive]その際、2段目以降にあるアイテムを全消去しました。");
if (p.isOnline()) {
@@ -123,7 +123,7 @@ public static void paymoney(OfflinePlayer p) {
pd.setFinish(Calendar.getInstance());
Filerelation.createFile(pd);
} else {
- InventoryAPI.planchange(p, plan.FREE);
+ InventoryAPI.planchange(p, Plan.FREE);
Bukkit.getLogger().log(Level.INFO, "[foofle drive]" + p.getName() + "のお金が足りないため、自動的にfreeプランへ移行しました。");
Bukkit.getLogger().log(Level.INFO, "[foofle drive]その際、2段目以降にあるアイテムを全消去しました。");
if (p.isOnline()) {
@@ -144,7 +144,7 @@ public static void paymoney(OfflinePlayer p) {
pd.setFinish(Calendar.getInstance());
Filerelation.createFile(pd);
} else {
- InventoryAPI.planchange(p, plan.FREE);
+ InventoryAPI.planchange(p, Plan.FREE);
Bukkit.getLogger().log(Level.INFO, "[foofle drive]" + p.getName() + "のお金が足りないため、自動的にfreeプランへ移行しました。");
Bukkit.getLogger().log(Level.INFO, "[foofle drive]その際、2段目以降にあるアイテムを全消去しました。");
if (p.isOnline()) {
@@ -160,7 +160,7 @@ public static void paymoney(OfflinePlayer p) {
}
}
- public static int getplanmoney(plan plan){
+ public static int getPlanPrice(Plan plan){
switch (plan){
case FREE:
return Foofledrive.configamout[0];
diff --git a/src/main/java/ga/ganma/foofledrive/inventoryRelation/InventoryAPI.java b/src/main/java/ga/ganma/foofledrive/inventoryRelation/InventoryAPI.java
index a30a484..141380e 100644
--- a/src/main/java/ga/ganma/foofledrive/inventoryRelation/InventoryAPI.java
+++ b/src/main/java/ga/ganma/foofledrive/inventoryRelation/InventoryAPI.java
@@ -3,7 +3,7 @@
import ga.ganma.foofledrive.Filerelation;
import ga.ganma.foofledrive.Foofledrive;
import ga.ganma.foofledrive.economy.Economy;
-import ga.ganma.foofledrive.plan;
+import ga.ganma.foofledrive.Plan;
import ga.ganma.foofledrive.playerdata.Playerdata;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
@@ -23,7 +23,7 @@ public static Inventory Inventorysizechange(Inventory oldInv, int setsize){
return inv;
}
- public static boolean planchange(Player player, plan plan){
+ public static boolean planchange(Player player, Plan plan){
Inventory inv = null;
ItemStack[] is = null;
switch (plan){
@@ -82,11 +82,11 @@ public static boolean planchange(Player player, plan plan){
is = Filerelation.readFile(player).getInv().getStorageContents();
break;
}
- if(Foofledrive.econ.getBalance(player) >= Economy.getplanmoney(plan)) {
+ if(Foofledrive.econ.getBalance(player) >= Economy.getPlanPrice(plan)) {
inv.setStorageContents(is);
Playerdata pd = new Playerdata(player, inv, plan);
pd.setFinish(Calendar.getInstance());
- Foofledrive.econ.withdrawPlayer(player, Economy.getplanmoney(plan));
+ Foofledrive.econ.withdrawPlayer(player, Economy.getPlanPrice(plan));
player.sendMessage("[foofle drive]このプランの一週間の利用料金を払いました。");
Filerelation.createFile(pd);
return true;
@@ -97,7 +97,7 @@ public static boolean planchange(Player player, plan plan){
return false;
}
- public static void planchange(OfflinePlayer player, plan plan){
+ public static void planchange(OfflinePlayer player, Plan plan){
Inventory inv = null;
ItemStack[] is = null;
switch (plan){
@@ -157,7 +157,7 @@ public static void planchange(OfflinePlayer player, plan plan){
break;
}
inv.setStorageContents(is);
- Foofledrive.econ.withdrawPlayer(player,Economy.getplanmoney(Filerelation.readFile(player).getPlan()));
+ Foofledrive.econ.withdrawPlayer(player,Economy.getPlanPrice(Filerelation.readFile(player).getPlan()));
Playerdata pd = new Playerdata(player,inv,plan);
pd.setFinish(Calendar.getInstance());
Filerelation.createFile(pd);
diff --git a/src/main/java/ga/ganma/foofledrive/plan.java b/src/main/java/ga/ganma/foofledrive/plan.java
deleted file mode 100644
index cae0bf5..0000000
--- a/src/main/java/ga/ganma/foofledrive/plan.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package ga.ganma.foofledrive;
-
-import java.io.Serializable;
-
-public enum plan implements Serializable {
- FREE,LIGHT,MIDDLE,LARGE
-}
diff --git a/src/main/java/ga/ganma/foofledrive/playerdata/Playerdata.java b/src/main/java/ga/ganma/foofledrive/playerdata/Playerdata.java
index 08d61cf..d27bbbc 100644
--- a/src/main/java/ga/ganma/foofledrive/playerdata/Playerdata.java
+++ b/src/main/java/ga/ganma/foofledrive/playerdata/Playerdata.java
@@ -1,7 +1,7 @@
package ga.ganma.foofledrive.playerdata;
import ga.ganma.foofledrive.inventoryRelation.InventoryEncoder;
-import ga.ganma.foofledrive.plan;
+import ga.ganma.foofledrive.Plan;
import org.bukkit.OfflinePlayer;
import org.bukkit.entity.Player;
import org.bukkit.inventory.Inventory;
@@ -12,23 +12,23 @@
public class Playerdata implements Serializable {
private UUID mcid;
- private plan plan;
+ private Plan plan;
private String inventorySt;
private Calendar finish;
- public Playerdata(Player pl, Inventory inv, plan plan) {
+ public Playerdata(Player pl, Inventory inv, Plan plan) {
this.mcid = pl.getUniqueId();
this.plan = plan;
this.inventorySt = InventoryEncoder.inventoryToString(inv);
}
- public Playerdata(OfflinePlayer pl, Inventory inv, plan plan) {
+ public Playerdata(OfflinePlayer pl, Inventory inv, Plan plan) {
this.mcid = pl.getUniqueId();
this.plan = plan;
this.inventorySt = InventoryEncoder.inventoryToString(inv);
}
- public ga.ganma.foofledrive.plan getPlan() {
+ public Plan getPlan() {
return plan;
}
diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml
index 7188af4..11803b3 100644
--- a/src/main/resources/config.yml
+++ b/src/main/resources/config.yml
@@ -8,4 +8,19 @@ amout:
#LARGEプランは54スタック入るゾ つまりラージチェストだゾ
LARGE: 500
#unitのところにお金の単位を入れてください。(Vaultがお金の単位をこっちにAPIとしてよこしてくれないんだよクソが)
-unit: "FP"
\ No newline at end of file
+unit: "FP"
+
+#openコマンドの使用を拒否する条件
+deny:
+ #ゲームモード制限をOP以外にのみ制限する場合true(OPにも制限を掛ける場合false)
+ gamemodeWithoutOP: true
+ #ゲームモード:0=サバイバル, 1=クリエ, 2=アドベンチャー, 3=スペクテイター
+ gamemode:
+ - 1
+ - 3
+
+ #ワールド制限をOP以外にのみ制限する場合true(OPにも制限を掛ける場合false)
+ worldWithoutOP: true
+ #ワールド名の列挙
+ world:
+ - world_nether
\ No newline at end of file
diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml
index 8d4c57d..3764276 100644
--- a/src/main/resources/plugin.yml
+++ b/src/main/resources/plugin.yml
@@ -2,6 +2,8 @@ name: foofledrive
version: ${project.version}
main: ga.ganma.foofledrive.Foofledrive
api-version: 1.13
+depend:
+ - Vault
commands:
fl:
description: ender cloud main command.
diff --git a/target/classes/ga/ganma/ender/Ender.class b/target/classes/ga/ganma/ender/Ender.class
deleted file mode 100644
index 124a88f..0000000
Binary files a/target/classes/ga/ganma/ender/Ender.class and /dev/null differ
diff --git a/target/classes/ga/ganma/ender/Endercloud.class b/target/classes/ga/ganma/ender/Endercloud.class
index 4209dc8..50916a0 100644
Binary files a/target/classes/ga/ganma/ender/Endercloud.class and b/target/classes/ga/ganma/ender/Endercloud.class differ
diff --git a/target/classes/ga/ganma/ender/Filerelation.class b/target/classes/ga/ganma/ender/Filerelation.class
index 2854b58..685ec62 100644
Binary files a/target/classes/ga/ganma/ender/Filerelation.class and b/target/classes/ga/ganma/ender/Filerelation.class differ
diff --git a/target/classes/ga/ganma/ender/InventorytoString.class b/target/classes/ga/ganma/ender/InventorytoString.class
deleted file mode 100644
index 72359a1..0000000
Binary files a/target/classes/ga/ganma/ender/InventorytoString.class and /dev/null differ
diff --git a/target/classes/ga/ganma/ender/Listener/GetEvent$1.class b/target/classes/ga/ganma/ender/Listener/GetEvent$1.class
index 7a8df94..7d04560 100644
Binary files a/target/classes/ga/ganma/ender/Listener/GetEvent$1.class and b/target/classes/ga/ganma/ender/Listener/GetEvent$1.class differ
diff --git a/target/classes/ga/ganma/ender/Listener/GetEvent.class b/target/classes/ga/ganma/ender/Listener/GetEvent.class
index b3a8546..b178b9b 100644
Binary files a/target/classes/ga/ganma/ender/Listener/GetEvent.class and b/target/classes/ga/ganma/ender/Listener/GetEvent.class differ
diff --git a/target/classes/ga/ganma/ender/command/CommandMain.class b/target/classes/ga/ganma/ender/command/CommandMain.class
index 23d3229..49ba560 100644
Binary files a/target/classes/ga/ganma/ender/command/CommandMain.class and b/target/classes/ga/ganma/ender/command/CommandMain.class differ
diff --git a/target/classes/ga/ganma/ender/inventoryRelation/InventoryAPI$1.class b/target/classes/ga/ganma/ender/inventoryRelation/InventoryAPI$1.class
index 24e17d6..e6e0cc4 100644
Binary files a/target/classes/ga/ganma/ender/inventoryRelation/InventoryAPI$1.class and b/target/classes/ga/ganma/ender/inventoryRelation/InventoryAPI$1.class differ
diff --git a/target/classes/ga/ganma/ender/inventoryRelation/InventoryAPI.class b/target/classes/ga/ganma/ender/inventoryRelation/InventoryAPI.class
index 80e1cae..1627b74 100644
Binary files a/target/classes/ga/ganma/ender/inventoryRelation/InventoryAPI.class and b/target/classes/ga/ganma/ender/inventoryRelation/InventoryAPI.class differ
diff --git a/target/classes/ga/ganma/ender/inventoryRelation/InventoryEncoder.class b/target/classes/ga/ganma/ender/inventoryRelation/InventoryEncoder.class
index 320b248..df68236 100644
Binary files a/target/classes/ga/ganma/ender/inventoryRelation/InventoryEncoder.class and b/target/classes/ga/ganma/ender/inventoryRelation/InventoryEncoder.class differ
diff --git a/target/classes/ga/ganma/foofledrive/Filerelation.class b/target/classes/ga/ganma/foofledrive/Filerelation.class
index 2886bc0..5e0a10e 100644
Binary files a/target/classes/ga/ganma/foofledrive/Filerelation.class and b/target/classes/ga/ganma/foofledrive/Filerelation.class differ
diff --git a/target/classes/ga/ganma/foofledrive/Foofledrive.class b/target/classes/ga/ganma/foofledrive/Foofledrive.class
index fb34d68..dde1269 100644
Binary files a/target/classes/ga/ganma/foofledrive/Foofledrive.class and b/target/classes/ga/ganma/foofledrive/Foofledrive.class differ
diff --git a/target/classes/ga/ganma/foofledrive/Listener/GUIEvent$1.class b/target/classes/ga/ganma/foofledrive/Listener/GUIEvent$1.class
index c04fbf3..1df9f89 100644
Binary files a/target/classes/ga/ganma/foofledrive/Listener/GUIEvent$1.class and b/target/classes/ga/ganma/foofledrive/Listener/GUIEvent$1.class differ
diff --git a/target/classes/ga/ganma/foofledrive/Listener/GUIEvent.class b/target/classes/ga/ganma/foofledrive/Listener/GUIEvent.class
index 66e7f46..42bc3fe 100644
Binary files a/target/classes/ga/ganma/foofledrive/Listener/GUIEvent.class and b/target/classes/ga/ganma/foofledrive/Listener/GUIEvent.class differ
diff --git a/target/classes/ga/ganma/foofledrive/Listener/GetEvent.class b/target/classes/ga/ganma/foofledrive/Listener/GetEvent.class
index a533507..aa7fff5 100644
Binary files a/target/classes/ga/ganma/foofledrive/Listener/GetEvent.class and b/target/classes/ga/ganma/foofledrive/Listener/GetEvent.class differ
diff --git a/target/classes/ga/ganma/foofledrive/bukkitRunnable/Runnable.class b/target/classes/ga/ganma/foofledrive/bukkitRunnable/Runnable.class
deleted file mode 100644
index bdb13db..0000000
Binary files a/target/classes/ga/ganma/foofledrive/bukkitRunnable/Runnable.class and /dev/null differ
diff --git a/target/classes/ga/ganma/foofledrive/command/CommandMain.class b/target/classes/ga/ganma/foofledrive/command/CommandMain.class
index 8a11cdf..5f4d00d 100644
Binary files a/target/classes/ga/ganma/foofledrive/command/CommandMain.class and b/target/classes/ga/ganma/foofledrive/command/CommandMain.class differ
diff --git a/target/classes/ga/ganma/foofledrive/command/Subplan.class b/target/classes/ga/ganma/foofledrive/command/Subplan.class
index 0bd3029..58f664b 100644
Binary files a/target/classes/ga/ganma/foofledrive/command/Subplan.class and b/target/classes/ga/ganma/foofledrive/command/Subplan.class differ
diff --git a/target/classes/ga/ganma/foofledrive/economy/Economy$1.class b/target/classes/ga/ganma/foofledrive/economy/Economy$1.class
index 2be0470..8ffd4fa 100644
Binary files a/target/classes/ga/ganma/foofledrive/economy/Economy$1.class and b/target/classes/ga/ganma/foofledrive/economy/Economy$1.class differ
diff --git a/target/classes/ga/ganma/foofledrive/economy/Economy.class b/target/classes/ga/ganma/foofledrive/economy/Economy.class
index bb47666..9b6926a 100644
Binary files a/target/classes/ga/ganma/foofledrive/economy/Economy.class and b/target/classes/ga/ganma/foofledrive/economy/Economy.class differ
diff --git a/target/classes/ga/ganma/foofledrive/inventoryRelation/InventoryAPI$1.class b/target/classes/ga/ganma/foofledrive/inventoryRelation/InventoryAPI$1.class
index f851db4..0fe5faf 100644
Binary files a/target/classes/ga/ganma/foofledrive/inventoryRelation/InventoryAPI$1.class and b/target/classes/ga/ganma/foofledrive/inventoryRelation/InventoryAPI$1.class differ
diff --git a/target/classes/ga/ganma/foofledrive/inventoryRelation/InventoryAPI.class b/target/classes/ga/ganma/foofledrive/inventoryRelation/InventoryAPI.class
index 75ec84f..74f14c5 100644
Binary files a/target/classes/ga/ganma/foofledrive/inventoryRelation/InventoryAPI.class and b/target/classes/ga/ganma/foofledrive/inventoryRelation/InventoryAPI.class differ
diff --git a/target/classes/ga/ganma/foofledrive/inventoryRelation/InventoryEncoder.class b/target/classes/ga/ganma/foofledrive/inventoryRelation/InventoryEncoder.class
index 4470db9..3e01c96 100644
Binary files a/target/classes/ga/ganma/foofledrive/inventoryRelation/InventoryEncoder.class and b/target/classes/ga/ganma/foofledrive/inventoryRelation/InventoryEncoder.class differ
diff --git a/target/ender-0.0.1.jar b/target/ender-0.0.1.jar
deleted file mode 100644
index 9fb0038..0000000
Binary files a/target/ender-0.0.1.jar and /dev/null differ
diff --git a/target/endercloud-0.0.1.jar b/target/endercloud-0.0.1.jar
deleted file mode 100644
index 132ca82..0000000
Binary files a/target/endercloud-0.0.1.jar and /dev/null differ
diff --git "a/target/endercloud-0.7.2\316\262.jar" "b/target/endercloud-0.7.2\316\262.jar"
deleted file mode 100644
index ba02ceb..0000000
Binary files "a/target/endercloud-0.7.2\316\262.jar" and /dev/null differ
diff --git "a/target/foofledrive-0.7.3\316\262.jar" "b/target/foofledrive-0.7.3\316\262.jar"
deleted file mode 100644
index d57f2a7..0000000
Binary files "a/target/foofledrive-0.7.3\316\262.jar" and /dev/null differ
diff --git "a/target/foofledrive-0.7.9\316\262.jar" "b/target/foofledrive-0.7.9\316\262.jar"
index 874b986..ab69510 100644
Binary files "a/target/foofledrive-0.7.9\316\262.jar" and "b/target/foofledrive-0.7.9\316\262.jar" differ
diff --git a/target/maven-archiver/pom.properties b/target/maven-archiver/pom.properties
index ea93cfa..4573899 100644
--- a/target/maven-archiver/pom.properties
+++ b/target/maven-archiver/pom.properties
@@ -1,5 +1,5 @@
#Generated by Maven
-#Sat Oct 05 22:36:13 JST 2019
+#Sun Mar 29 09:20:09 JST 2020
+version=0.7.9\u03B2
groupId=ga.ganma
artifactId=foofledrive
-version=0.7.9\u03B2
diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
index bae6fb4..ba62418 100644
--- a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
+++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
@@ -1,17 +1,29 @@
-ga\ganma\foofledrive\playerdata\Playerdata.class
+ga\ganma\ender\Listener\GetEvent$1.class
+ga\ganma\ender\command\CommandMain.class
ga\ganma\foofledrive\economy\Economy$1.class
ga\ganma\foofledrive\Listener\GetEvent$1.class
ga\ganma\foofledrive\Filerelation.class
ga\ganma\foofledrive\command\CommandMain.class
ga\ganma\foofledrive\command\Subopen.class
+ga\ganma\ender\inventoryRelation\InventoryEncoder.class
+ga\ganma\ender\command\Subopen.class
+ga\ganma\ender\Listener\GUIEvent.class
+ga\ganma\ender\inventoryRelation\InventoryAPI.class
+ga\ganma\ender\Listener\GetEvent.class
+ga\ganma\foofledrive\Listener\GUIEvent.class
+ga\ganma\foofledrive\command\Subplan.class
+ga\ganma\ender\playerdata\Playerdata.class
+ga\ganma\foofledrive\Listener\GetEvent.class
+ga\ganma\ender\plan.class
+ga\ganma\foofledrive\playerdata\Playerdata.class
+ga\ganma\ender\Endercloud.class
ga\ganma\foofledrive\inventoryRelation\InventoryEncoder.class
ga\ganma\foofledrive\Foofledrive.class
+ga\ganma\ender\command\Subplan.class
ga\ganma\foofledrive\inventoryRelation\InventoryAPI$1.class
+ga\ganma\ender\inventoryRelation\InventoryAPI$1.class
ga\ganma\foofledrive\economy\Economy.class
-ga\ganma\foofledrive\Listener\GUIEvent.class
ga\ganma\foofledrive\inventoryRelation\InventoryAPI.class
ga\ganma\foofledrive\Listener\GUIEvent$1.class
-ga\ganma\foofledrive\bukkitRunnable\Runnable.class
-ga\ganma\foofledrive\command\Subplan.class
-ga\ganma\foofledrive\Listener\GetEvent.class
+ga\ganma\ender\Filerelation.class
ga\ganma\foofledrive\plan.class
diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
index a295b75..c9b2e6d 100644
--- a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
+++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
@@ -1,13 +1,23 @@
-C:\Users\kaito\IdeaProjects\foofledrive\src\main\java\ga\ganma\foofledrive\economy\Economy.java
-C:\Users\kaito\IdeaProjects\foofledrive\src\main\java\ga\ganma\foofledrive\Foofledrive.java
-C:\Users\kaito\IdeaProjects\foofledrive\src\main\java\ga\ganma\foofledrive\inventoryRelation\InventoryEncoder.java
-C:\Users\kaito\IdeaProjects\foofledrive\src\main\java\ga\ganma\foofledrive\Filerelation.java
-C:\Users\kaito\IdeaProjects\foofledrive\src\main\java\ga\ganma\foofledrive\Listener\GetEvent.java
-C:\Users\kaito\IdeaProjects\foofledrive\src\main\java\ga\ganma\foofledrive\command\Subplan.java
-C:\Users\kaito\IdeaProjects\foofledrive\src\main\java\ga\ganma\foofledrive\command\CommandMain.java
-C:\Users\kaito\IdeaProjects\foofledrive\src\main\java\ga\ganma\foofledrive\bukkitRunnable\Runnable.java
-C:\Users\kaito\IdeaProjects\foofledrive\src\main\java\ga\ganma\foofledrive\command\Subopen.java
-C:\Users\kaito\IdeaProjects\foofledrive\src\main\java\ga\ganma\foofledrive\plan.java
-C:\Users\kaito\IdeaProjects\foofledrive\src\main\java\ga\ganma\foofledrive\playerdata\Playerdata.java
-C:\Users\kaito\IdeaProjects\foofledrive\src\main\java\ga\ganma\foofledrive\inventoryRelation\InventoryAPI.java
-C:\Users\kaito\IdeaProjects\foofledrive\src\main\java\ga\ganma\foofledrive\Listener\GUIEvent.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\foofledrive\Listener\GetEvent.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\ender\plan.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\foofledrive\command\Subopen.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\foofledrive\Listener\GUIEvent.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\foofledrive\inventoryRelation\InventoryAPI.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\foofledrive\plan.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\foofledrive\Foofledrive.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\ender\Filerelation.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\ender\inventoryRelation\InventoryAPI.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\ender\playerdata\Playerdata.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\foofledrive\playerdata\Playerdata.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\foofledrive\command\Subplan.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\foofledrive\command\CommandMain.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\ender\Endercloud.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\foofledrive\Filerelation.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\ender\command\CommandMain.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\ender\inventoryRelation\InventoryEncoder.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\ender\command\Subplan.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\ender\Listener\GetEvent.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\foofledrive\economy\Economy.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\foofledrive\inventoryRelation\InventoryEncoder.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\ender\Listener\GUIEvent.java
+D:\Users\terer\Documents\GitHub\foofledrive\src\main\java\ga\ganma\ender\command\Subopen.java
diff --git a/target/original-ender-0.0.1.jar b/target/original-ender-0.0.1.jar
deleted file mode 100644
index 84619b4..0000000
Binary files a/target/original-ender-0.0.1.jar and /dev/null differ
diff --git a/target/original-endercloud-0.0.1.jar b/target/original-endercloud-0.0.1.jar
deleted file mode 100644
index 6d33f25..0000000
Binary files a/target/original-endercloud-0.0.1.jar and /dev/null differ
diff --git "a/target/original-endercloud-0.7.2\316\262.jar" "b/target/original-endercloud-0.7.2\316\262.jar"
deleted file mode 100644
index 194ef1b..0000000
Binary files "a/target/original-endercloud-0.7.2\316\262.jar" and /dev/null differ
diff --git "a/target/original-foofledrive-0.7.3\316\262.jar" "b/target/original-foofledrive-0.7.3\316\262.jar"
deleted file mode 100644
index 834cfb1..0000000
Binary files "a/target/original-foofledrive-0.7.3\316\262.jar" and /dev/null differ
diff --git "a/target/original-foofledrive-0.7.9\316\262.jar" "b/target/original-foofledrive-0.7.9\316\262.jar"
index 26869f3..842a0ed 100644
Binary files "a/target/original-foofledrive-0.7.9\316\262.jar" and "b/target/original-foofledrive-0.7.9\316\262.jar" differ