Skip to content

Commit 70bf5e0

Browse files
committed
debuging and cleaning for release
1 parent 57d2446 commit 70bf5e0

File tree

2 files changed

+149
-25
lines changed

2 files changed

+149
-25
lines changed

src/main/java/fr/lumi/Commandes/CommandRunnerCommand.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ public List<String> onTabComplete(CommandSender sender, Command cmd, String alia
8282
if (args.length == 3) l.add("addCommand");
8383
if (args.length == 3) l.add("removeCommand");
8484
if (args.length == 3) l.add("setDailyExecutionTime");
85+
if (args.length == 3) l.add("trigger");
8586

8687
if (args.length == 4) {
8788
if (Objects.equals(args[2], "setMessage")) {
@@ -241,6 +242,17 @@ public boolean onCommand(CommandSender sender, Command command, String label, St
241242
acmd.saveInConfig(plugin.getCommandsConfig(), plugin);
242243
sender.sendMessage(plugin.getUt().replacePlaceHoldersForPlayer(plugin.getLangConfig().getString("CommandEdited"), acmd, (Player) player));
243244
}
245+
246+
if (Objects.equals(args[2], "trigger")) {
247+
248+
if (args.length == 3) {
249+
acmd.setTrigger("");
250+
} else
251+
acmd.setTime(args[3]);
252+
acmd.saveInConfig(plugin.getCommandsConfig(), plugin);
253+
sender.sendMessage(plugin.getUt().replacePlaceHoldersForPlayer(plugin.getLangConfig().getString("CommandEdited"), acmd, (Player) player));
254+
}
255+
244256
}
245257

246258

src/main/java/fr/lumi/Util/CommandEditor.java

Lines changed: 137 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -22,17 +22,24 @@
2222
public class CommandEditor implements Listener {
2323
private int LastOpened;
2424
private Inventory GUI_ChooseACMD;
25+
private Inventory GUI_Triggers;
26+
private ArrayList<Inventory> GUI_Commands;
2527
private String waitForChat;
2628
private ArrayList<Inventory> editorsListe;
2729
private final Main plugin;
30+
private int commandToModify;
2831

2932
public CommandEditor(Main plg) {
3033
plugin = plg;
34+
commandToModify = -1;
3135

3236

3337
createGUI_ChoosingACMD();
3438
reloadGUI_ChoosingACMD();
3539

40+
createTriggerMenu();
41+
reloadTriggerMenu();
42+
3643
createEditGui();
3744
reloadAllEditGUI();
3845
waitForChat = "";
@@ -100,7 +107,6 @@ public void openACMDEditor(Player p,int nb) {
100107
LastOpened = nb;
101108
}
102109

103-
104110
/*
105111
* Event handler for the inventory click event
106112
* Responsible of the click event in the inventory and the actions to be taken
@@ -133,9 +139,58 @@ public void GuiClickEvent(InventoryClickEvent e) {
133139
reloadGUI_ChoosingACMD();
134140
openchoosing(p);
135141
}
136-
}
137-
//menu edit
138-
if (editorsListe.contains(e.getClickedInventory())) {
142+
}else if ( e.getClickedInventory().equals(GUI_Triggers)){
143+
e.setCancelled(true);
144+
switch (slot){
145+
case 3:
146+
plugin.getcommandList().get(LastOpened).setTrigger("onPlayerJoin");
147+
openLast(((Player) e.getWhoClicked()).getPlayer());
148+
break;
149+
case 4:
150+
plugin.getcommandList().get(LastOpened).setTrigger("onPlayerQuit");
151+
openLast(((Player) e.getWhoClicked()).getPlayer());
152+
break;
153+
case 5:
154+
plugin.getcommandList().get(LastOpened).setTrigger("onServerEnable");
155+
openLast(((Player) e.getWhoClicked()).getPlayer());
156+
break;
157+
}
158+
plugin.getcommandList().get(LastOpened).saveInConfig(plugin.getCommandsConfig(),plugin);
159+
closeInventory(p);
160+
reloadAllEditGUI();
161+
openACMDEditor(p,LastOpened);
162+
} /*else if ( e.getClickedInventory().equals(GUI_Commands)){
163+
e.setCancelled(true);
164+
165+
if( slot < 53){
166+
if (e.isRightClick()){
167+
autocommand acmd = plugin.getcommandList().get(LastOpened);
168+
acmd.removeCommand(slot);
169+
acmd.saveInConfig(plugin.getCommandsConfig(),plugin);
170+
closeInventory(p);
171+
openACMDEditor(p,LastOpened);
172+
}else if (e.isLeftClick()){
173+
waitForChat = "command";
174+
commandToModify = slot;
175+
176+
closeInventory(p);
177+
}
178+
179+
}
180+
181+
switch (slot){
182+
case 53:
183+
waitForChat = "command";
184+
commandToModify = -1;
185+
p.sendMessage(plugin.getUt().replacePlaceHoldersForPlayerPlgVar("&4Type the command in the chat (type exit to exit) :"));
186+
closeInventory(p);
187+
break;
188+
}
189+
plugin.getcommandList().get(LastOpened).saveInConfig(plugin.getCommandsConfig(),plugin);
190+
closeInventory(p);
191+
openACMDEditor(p,LastOpened);
192+
} */else if (editorsListe.contains(e.getClickedInventory())) {
193+
//menu edit
139194
e.setCancelled(true);
140195

141196
autocommand acmd = plugin.getcommandList().get(editorsListe.indexOf(e.getClickedInventory()));
@@ -218,10 +273,11 @@ public void GuiClickEvent(InventoryClickEvent e) {
218273
closeInventory(p);
219274
break;
220275
case 10:
221-
waitForChat = "trigger";
222276

223-
p.sendMessage(plugin.getUt().replacePlaceHoldersForPlayerPlgVar("&4Type the trigger in the chat (possible values:onPlayerJoin, onPlayerQuit, onServerEnable)(type exit to exit) :"));
277+
//p.sendMessage(plugin.getUt().replacePlaceHoldersForPlayerPlgVar("&4Type the trigger in the chat (possible values: onPlayerJoin, onPlayerQuit, onServerEnable)(type exit to exit) :"));
278+
224279
closeInventory(p);
280+
p.openInventory(GUI_Triggers);
225281
break;
226282

227283
}
@@ -246,14 +302,18 @@ public void onChat(AsyncPlayerChatEvent e) {
246302
reloadAllEditGUI();
247303
reloadGUI_ChoosingACMD();
248304

249-
250-
plugin.getServer().getScheduler().callSyncMethod(plugin, () -> {
251-
openACMDEditor(e.getPlayer(), LastOpened);
252-
return null;
253-
});
305+
openLast(e.getPlayer());
254306
}
255307
}
256308

309+
310+
private void openLast(Player p ){
311+
plugin.getServer().getScheduler().callSyncMethod(plugin, () -> {
312+
openACMDEditor(p, LastOpened);
313+
return null;
314+
});
315+
}
316+
257317
@EventHandler
258318
public void onInventoryClose(InventoryCloseEvent e) {
259319
if (e.getInventory() == null) return;
@@ -343,10 +403,6 @@ public void updateACMDWithValue(String val, Player p) {
343403
acmd.setName(val);
344404
p.sendMessage(plugin.getUt().replacePlaceHoldersForPlayerPlgVar("&aName modified with succes"));
345405
clearLock(p);
346-
case "trigger":
347-
acmd.setTrigger(val);
348-
p.sendMessage(plugin.getUt().replacePlaceHoldersForPlayerPlgVar("&aTrigger modified with succes"));
349-
clearLock(p);
350406

351407

352408
}
@@ -361,6 +417,61 @@ public void createGUI_ChoosingACMD() {
361417
GUI_ChooseACMD = Bukkit.createInventory(null, 54, "§2§l§oACMD editor");
362418
fillMainMenu();
363419
}
420+
421+
public void createTriggerMenu() {
422+
GUI_Triggers = Bukkit.createInventory(null, 9, "§2§l§oSelect a new trigger");
423+
fillTriggerMenu();
424+
}
425+
426+
public void reloadTriggerMenu(){
427+
GUI_Triggers.clear();
428+
fillTriggerMenu();
429+
}
430+
431+
/*public void createCommandMenu(autocommand acmd) {
432+
GUI_Commands = Bukkit.createInventory(null, 54, "§2§l§oSelect a new command");
433+
fillCommandMenu(acmd);
434+
}*/
435+
436+
/*public void reloadCommandMenu(autocommand acmd){
437+
GUI_Commands.clear();
438+
fillCommandMenu(acmd);
439+
}*/
440+
441+
/*public void fillCommandMenu(autocommand acmd){
442+
for (int i = 0; i < 54; i++) {
443+
new UIItem.ItemBuilder(Material.GRAY_STAINED_GLASS_PANE, "§8").setItem(GUI_Commands, i);
444+
}
445+
446+
for (int i = 0; i < acmd.getCommands().size(); i++) {
447+
ArrayList<String> lore = new ArrayList<String>();
448+
lore.add("§c§lleft Click to delete the command");
449+
lore.add("§c§lright Click to modify the command");
450+
new UIItem.ItemBuilder(Material.COMMAND_BLOCK, "§6§l" + acmd.getCommands().get(i)).setItem(GUI_Commands, i);
451+
}
452+
453+
new UIItem.ItemBuilder(Material.COMMAND_BLOCK, "§6§lAdd a minecraft command")
454+
.lore("§dAdd a new command to the list")
455+
.setItem(GUI_Commands, 53);
456+
}*/
457+
458+
459+
public void fillTriggerMenu(){
460+
for (int i = 0; i < 8; i++) {
461+
new UIItem.ItemBuilder(Material.GRAY_STAINED_GLASS_PANE, "§8").setItem(GUI_Triggers, i);
462+
}
463+
new UIItem.ItemBuilder(Material.GREEN_CONCRETE, "§6§lOnPlayerJoin")
464+
.lore("§dTriggers when a player joins the server")
465+
.setItem(GUI_Triggers, 3);
466+
new UIItem.ItemBuilder(Material.GREEN_CONCRETE, "§6§lOnPlayerQuit")
467+
.lore("§dTriggers when a player leaves the server")
468+
.setItem(GUI_Triggers, 4);
469+
new UIItem.ItemBuilder(Material.GREEN_CONCRETE, "§6§lOnServerEnable")
470+
.lore("§dTriggers when the server is enabled")
471+
.setItem(GUI_Triggers, 5);
472+
}
473+
474+
364475
public void fillMainMenu(){
365476
for (int i = 0; i < 54; i++) {
366477
new UIItem.ItemBuilder(Material.GRAY_STAINED_GLASS_PANE, "§8").setItem(GUI_ChooseACMD, i);
@@ -396,13 +507,13 @@ public Inventory fillGUI_EditACMD(autocommand acmd, Inventory gui) {
396507
lore = new ArrayList<String>();
397508
lore.add(acmd.isActive() ? "§aEnabled" : "§cDisabled");
398509

399-
new UIItem.ItemBuilder(Material.LEVER, eActive").lore(lore).setItem(gui, 1);
510+
new UIItem.ItemBuilder(Material.LEVER, eActivate the autoCommand").lore(lore).setItem(gui, 1);
400511

401512
// Running
402513
lore = new ArrayList<String>();
403514
lore.add(acmd.isRunning() ? "§aRunning" : "§cStopped");
404515

405-
new UIItem.ItemBuilder(Material.STONE_BUTTON, "§eRun").lore(lore).setItem(gui, 2);
516+
new UIItem.ItemBuilder(Material.STONE_BUTTON, "§eRun the autoCommand").lore(lore).setItem(gui, 2);
406517

407518
// Period
408519
lore = new ArrayList<String>();
@@ -417,15 +528,15 @@ public Inventory fillGUI_EditACMD(autocommand acmd, Inventory gui) {
417528
lore.add("§a" + acmd.getCycleInSec());
418529
}
419530

420-
new UIItem.ItemBuilder(Material.CLOCK, ePeriod").lore(lore).setItem(gui, 3);
531+
new UIItem.ItemBuilder(Material.CLOCK, eChange the Period").lore(lore).setItem(gui, 3);
421532

422533
// Delay
423-
new UIItem.ItemBuilder(Material.CLOCK, eDelay")
534+
new UIItem.ItemBuilder(Material.CLOCK, eChange the Delay")
424535
.lore("§a" + acmd.getDelay() + " tick").
425536
setItem(gui, 4);
426537

427538
// Daily execution
428-
new UIItem.ItemBuilder(Material.SUNFLOWER, eDaily execution").lore("§a" + acmd.getTime()).setItem(gui, 5);
539+
new UIItem.ItemBuilder(Material.SUNFLOWER, eChange the Daily execution hour").lore("§a" + acmd.getTime()).setItem(gui, 5);
429540

430541

431542
// Commands
@@ -444,20 +555,20 @@ public Inventory fillGUI_EditACMD(autocommand acmd, Inventory gui) {
444555

445556
lore.add("§a to remove a command with its CommandID §7)");
446557

447-
new UIItem.ItemBuilder(Material.COMMAND_BLOCK, eCommands").lore(lore).setItem(gui, 6);
558+
new UIItem.ItemBuilder(Material.COMMAND_BLOCK, eAdd a minecraft command").lore(lore).setItem(gui, 6);
448559

449560

450561
// RepeatTime
451-
new UIItem.ItemBuilder(Material.COMPARATOR, eRepeat Task").lore("§a" + acmd.getRepetition()).setItem(gui, 7);
562+
new UIItem.ItemBuilder(Material.COMPARATOR, eModify number of Repetition").lore("§a" + acmd.getRepetition()).setItem(gui, 7);
452563

453564
// Message
454-
new UIItem.ItemBuilder(Material.WRITABLE_BOOK, eMessage").lore("§a" + acmd.getmessage()).setItem(gui, 8);
565+
new UIItem.ItemBuilder(Material.WRITABLE_BOOK, eModify the message").lore("§a" + acmd.getmessage()).setItem(gui, 8);
455566

456567

457568
// Name
458-
new UIItem.ItemBuilder(Material.ITEM_FRAME, eName").lore("§a" + acmd.getName()).setItem(gui, 9);
569+
new UIItem.ItemBuilder(Material.ITEM_FRAME, eModify Name").lore("§a" + acmd.getName()).setItem(gui, 9);
459570

460-
new UIItem.ItemBuilder(Material.BELL, eTrigger").lore("§a" + acmd.getTrigger()).setItem(gui, 10);
571+
new UIItem.ItemBuilder(Material.BELL, eSelect a new trigger").lore("§a" + acmd.getTrigger()).setItem(gui, 10);
461572

462573
// Delete button
463574
new UIItem.ItemBuilder(Material.RED_CONCRETE, "§4§lX §4DELETE THIS ACMD")
@@ -476,6 +587,7 @@ public Inventory fillGUI_EditACMD(autocommand acmd, Inventory gui) {
476587
}
477588
}
478589

590+
//reloadCommandMenu(acmd);
479591

480592
return gui;
481593
}

0 commit comments

Comments
 (0)