item Options tweaks for server commands.
This commit is contained in:
BigPappa committed 2026-08-15 21:10:04 -05:00
1 parent 293be5887a
commit d412a96776
5 files changed
+295 -38

No files matched your search

@@ -76,6 +76,13 @@ public class MoveToCategoryMenu {
for (WarehouseCategory category : categories) {
if (
category.id() == 1000
|| category.id() == 1001
) {
continue;
}
if (category.displayName().equalsIgnoreCase(
"Uncategorized"
)) {
@@ -83,7 +90,6 @@ public class MoveToCategoryMenu {
uncategorized = category;
}
else {
displayCategories.add(
@@ -87,6 +87,16 @@ public class ItemsMenuListener
}
if (
(
session.getItemsCategoryId() == 1000
|| session.getItemsCategoryId() == 1001
)
&& event.getClick() != ClickType.SHIFT_RIGHT
) {
return;
}
if (event.getCurrentItem() == null) {
return;
@@ -52,6 +52,11 @@ public class ItemOptionsMenu {
&&
warehouseItem.subcategoryId() != null;
boolean isRulesOrCommands =
isRulesOrCommands(
warehouseItem
);
menu.setItem(
4,
RSMenuUtils.createMenuItem(
@@ -60,7 +65,43 @@ public class ItemOptionsMenu {
)
);
if (isSubCategory) {
if (isRulesOrCommands) {
String sectionName =
warehouseItem.categoryId() == 1001
? "Server Command"
: "Rules";
menu.setItem(
10,
RSMenuUtils.createMenuItemWithLore(
Material.CRAFTER,
"§4Not Available",
List.of(
"§7Not available for",
"§7" + sectionName + " items."
)
)
);
menu.setItem(
25,
RSMenuUtils.createMenuItem(
Material.NAME_TAG,
"§eEdit Display Name"
)
);
menu.setItem(
28,
RSMenuUtils.createMenuItem(
Material.WRITABLE_BOOK,
"§eEdit Lore"
)
);
}
else if (isSubCategory) {
menu.setItem(
10,
@@ -92,8 +133,8 @@ public class ItemOptionsMenu {
)
);
} else {
}
else {
menu.setItem(
10,
@@ -103,7 +144,6 @@ public class ItemOptionsMenu {
)
);
menu.setItem(
25,
RSMenuUtils.createMenuItemWithLore(
@@ -160,23 +200,96 @@ public class ItemOptionsMenu {
)
);
menu.setItem(
14,
RSMenuUtils.createMenuItem(
Material.PISTON,
"§eMove to Category"
)
);
if (isRulesOrCommands) {
menu.setItem(
16,
RSMenuUtils.createMenuItem(
Material.STICKY_PISTON,
"§eMove to SubCategory"
)
);
String sectionName =
warehouseItem.categoryId() == 1001
? "Server Command"
: "Rules";
if (canDelete) {
menu.setItem(
14,
RSMenuUtils.createMenuItemWithLore(
Material.PISTON,
"§4Not Available",
List.of(
"§7Not available for",
"§7" + sectionName + " items."
)
)
);
}
else {
menu.setItem(
14,
RSMenuUtils.createMenuItem(
Material.PISTON,
"§eMove to Category"
)
);
}
if (isRulesOrCommands) {
String sectionName =
warehouseItem.categoryId() == 1001
? "Server Command"
: "Rules";
menu.setItem(
16,
RSMenuUtils.createMenuItemWithLore(
Material.STICKY_PISTON,
"§4Not Available",
List.of(
"§7Not available for",
"§7" + sectionName + " items."
)
)
);
}
else {
menu.setItem(
16,
RSMenuUtils.createMenuItem(
Material.STICKY_PISTON,
"§eMove to SubCategory"
)
);
}
if (isRulesOrCommands) {
String deleteName =
warehouseItem.categoryId() == 1001
? "Delete Server Command"
: "Delete Rule";
menu.setItem(
19,
RSMenuUtils.createMenuItemWithLore(
Material.BARRIER,
"§4" + deleteName,
List.of(
"§4CAUTION!! CAUTION!! CAUTION!!",
"§7Deletes this " +
(
warehouseItem.categoryId() == 1001
? "Server Command."
: "Rule."
)
)
)
);
}
else if (canDelete) {
menu.setItem(
19,
@@ -226,23 +339,69 @@ public class ItemOptionsMenu {
}
menu.setItem(
21,
RSMenuUtils.createMenuItem(
Material.OAK_SIGN,
"§eCopy to Category"
)
);
if (isRulesOrCommands) {
String sectionName =
warehouseItem.categoryId() == 1001
? "Server Command"
: "Rules";
menu.setItem(
21,
RSMenuUtils.createMenuItemWithLore(
Material.OAK_SIGN,
"§4Not Available",
List.of(
"§7Not available for",
"§7" + sectionName + " items."
)
)
);
menu.setItem(
23,
RSMenuUtils.createMenuItem(
Material.OAK_HANGING_SIGN,
"§eCopy to SubCategory"
)
);
}
else {
menu.setItem(
21,
RSMenuUtils.createMenuItem(
Material.OAK_SIGN,
"§eCopy to Category"
)
);
}
if (isRulesOrCommands) {
String sectionName =
warehouseItem.categoryId() == 1001
? "Server Command"
: "Rules";
menu.setItem(
23,
RSMenuUtils.createMenuItemWithLore(
Material.OAK_HANGING_SIGN,
"§4Not Available",
List.of(
"§7Not available for",
"§7" + sectionName + " items."
)
)
);
}
else {
menu.setItem(
23,
RSMenuUtils.createMenuItem(
Material.OAK_HANGING_SIGN,
"§eCopy to SubCategory"
)
);
}
player.openInventory(
menu
@@ -250,4 +409,16 @@ public class ItemOptionsMenu {
}
private static boolean isRulesOrCommands(
WarehouseItem warehouseItem
) {
return warehouseItem != null
&& (
warehouseItem.categoryId() == 1000
|| warehouseItem.categoryId() == 1001
);
}
}
@@ -89,6 +89,12 @@ public class ItemOptionsMenuListener
holder.getItemId()
);
if (isRulesOrCommands(warehouseItem)) {
return;
}
if (
warehouseItem != null
&&
@@ -114,15 +120,39 @@ public class ItemOptionsMenuListener
if (event.getSlot() == 14) {
WarehouseItem warehouseItem =
ItemDAO.getItemById(
holder.getItemId()
);
if (isRulesOrCommands(warehouseItem)) {
return;
}
MoveToCategoryMenu.open(
player,
holder.getItemId()
);
return;
}
if (event.getSlot() == 16) {
WarehouseItem warehouseItem =
ItemDAO.getItemById(
holder.getItemId()
);
if (isRulesOrCommands(warehouseItem)) {
return;
}
MoveToSubCategoryMenu.open(
player,
holder.getItemId(),
@@ -219,15 +249,40 @@ public class ItemOptionsMenuListener
if (event.getSlot() == 21) {
WarehouseItem warehouseItem =
ItemDAO.getItemById(
holder.getItemId()
);
if (isRulesOrCommands(warehouseItem)) {
return;
}
CopyToCategoryMenu.open(
player,
holder.getItemId(),
0
);
return;
}
if (event.getSlot() == 23) {
WarehouseItem warehouseItem =
ItemDAO.getItemById(
holder.getItemId()
);
if (isRulesOrCommands(warehouseItem)) {
return;
}
CopyToSubCategoryMenu.open(
player,
holder.getItemId(),
@@ -318,4 +373,16 @@ public class ItemOptionsMenuListener
}
private boolean isRulesOrCommands(
WarehouseItem warehouseItem
) {
return warehouseItem != null
&& (
warehouseItem.categoryId() == 1000
|| warehouseItem.categoryId() == 1001
);
}
}
@@ -1,6 +1,7 @@
package com.rsscripting.rswarehouse.servercommands;
import com.rsscripting.rswarehouse.dao.admin.CreateServerCommandDAO;
import com.rsscripting.rswarehouse.item.ItemsMenu;
import com.rsscripting.rswarehouse.menuholder.RSMenuHolder;
import com.rsscripting.rswarehouse.session.admin.ServerCommandCreationSession;
import com.rsscripting.rswarehouse.session.admin.ServerCommandCreationSessionManager;
@@ -119,10 +120,12 @@ public class ServerCommandMaterialPickerMenuListener
"§aServer Command created successfully."
);
// CategoryLoreMenu.open(
// player
// );
ItemsMenu.open(
player,
1001,
"Server Commands",
0
);
}