Project Milestone:
RS-Scripting Template ready.
This commit is contained in:
1 parent
1d7ae38388
commit
bdc31fad29
12 files changed
+12
-536
No files matched your search
@@ -71,19 +71,6 @@ public class RSAuger
|
||||
|
||||
);
|
||||
|
||||
/* Radius */
|
||||
RSRadiusListener radiusListener =
|
||||
new RSRadiusListener(
|
||||
conversionListener
|
||||
);
|
||||
|
||||
getServer()
|
||||
.getPluginManager()
|
||||
.registerEvents(
|
||||
radiusListener,
|
||||
this
|
||||
);
|
||||
|
||||
/* Admin */
|
||||
RSAdminListener adminListener =
|
||||
new RSAdminListener(
|
||||
|
||||
@@ -102,7 +102,6 @@ public class DatabaseManager {
|
||||
owner_uuid TEXT,
|
||||
owner_name TEXT,
|
||||
machine_type TEXT,
|
||||
radius INTEGER DEFAULT 5,
|
||||
paused INTEGER DEFAULT 0,
|
||||
state TEXT DEFAULT 'ACTIVE',
|
||||
filter_mode TEXT DEFAULT 'ALLOW_ALL',
|
||||
|
||||
@@ -91,28 +91,6 @@ public class RSMainMenu {
|
||||
)
|
||||
);
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| RADIUS
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
menu.setItem(
|
||||
11,
|
||||
RSMenuUtils.createMenuItem(
|
||||
|
||||
Material.COMPASS,
|
||||
|
||||
"§bRadius",
|
||||
|
||||
List.of(
|
||||
"§7Current Radius: §f"
|
||||
+ MachineManager.getRadius(block)
|
||||
)
|
||||
|
||||
)
|
||||
);
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| FILTER
|
||||
|
||||
@@ -1,158 +0,0 @@
|
||||
package com.rsscripting.rsauger.gui;
|
||||
|
||||
import com.rsscripting.rsauger.managers.MachineManager;
|
||||
import com.rsscripting.rsauger.utils.RSMenuUtils;
|
||||
import net.kyori.adventure.text.Component;
|
||||
import net.kyori.adventure.text.format.NamedTextColor;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.Inventory;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class RSRadiusMenu {
|
||||
|
||||
|
||||
public static void open(
|
||||
Player player,
|
||||
Block block
|
||||
) {
|
||||
|
||||
Inventory menu =
|
||||
Bukkit.createInventory(
|
||||
new RSMenuHolder(
|
||||
"RADIUS"
|
||||
),
|
||||
18,
|
||||
Component.text(
|
||||
"Radius: "
|
||||
+ MachineManager.getRadius(
|
||||
block
|
||||
)
|
||||
).color(NamedTextColor.BLUE)
|
||||
);
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| FILLER
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
ItemStack filler =
|
||||
RSMenuUtils.createFillerPane();
|
||||
|
||||
for (int i = 0; i < menu.getSize(); i++) {
|
||||
|
||||
menu.setItem(i, filler);
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| BACK
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
menu.setItem(
|
||||
4,
|
||||
RSMenuUtils.createMenuItem(
|
||||
|
||||
Material.OAK_DOOR,
|
||||
|
||||
"§eBack"
|
||||
|
||||
)
|
||||
);
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| CURRENT RADIUS
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
menu.setItem(
|
||||
13,
|
||||
RSMenuUtils.createMenuItem(
|
||||
|
||||
Material.COMPASS,
|
||||
|
||||
"§bCurrent Radius",
|
||||
|
||||
List.of(
|
||||
"§7Radius: §f"
|
||||
+ MachineManager.getRadius(
|
||||
block
|
||||
)
|
||||
)
|
||||
|
||||
)
|
||||
);
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| NEGATIVE BUTTONS
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
menu.setItem(
|
||||
10,
|
||||
RSMenuUtils.createMenuItem(
|
||||
Material.RED_WOOL,
|
||||
"§c-10"
|
||||
)
|
||||
);
|
||||
|
||||
menu.setItem(
|
||||
11,
|
||||
RSMenuUtils.createMenuItem(
|
||||
Material.RED_WOOL,
|
||||
"§c-5"
|
||||
)
|
||||
);
|
||||
|
||||
menu.setItem(
|
||||
12,
|
||||
RSMenuUtils.createMenuItem(
|
||||
Material.RED_WOOL,
|
||||
"§c-1"
|
||||
)
|
||||
);
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| POSITIVE BUTTONS
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
menu.setItem(
|
||||
14,
|
||||
RSMenuUtils.createMenuItem(
|
||||
Material.GREEN_WOOL,
|
||||
"§a+1"
|
||||
)
|
||||
);
|
||||
|
||||
menu.setItem(
|
||||
15,
|
||||
RSMenuUtils.createMenuItem(
|
||||
Material.GREEN_WOOL,
|
||||
"§a+5"
|
||||
)
|
||||
);
|
||||
|
||||
menu.setItem(
|
||||
16,
|
||||
RSMenuUtils.createMenuItem(
|
||||
Material.GREEN_WOOL,
|
||||
"§a+10"
|
||||
)
|
||||
);
|
||||
|
||||
player.openInventory(menu);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -82,43 +82,11 @@ public class RSMenuListener
|
||||
false
|
||||
);
|
||||
|
||||
MachineManager.setRadius(
|
||||
block,
|
||||
|
||||
(int) ConfigManager.get().getDouble(
|
||||
"default-radius"
|
||||
)
|
||||
);
|
||||
|
||||
MachineManager.setFilterMode(
|
||||
block,
|
||||
RSKeys.FILTER_ALLOW_ALL
|
||||
);
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| ENTITY DISPLAY NAME
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Intentionally disabled.
|
||||
|
|
||||
| Some future entity-based plugins (villager systems, escorts,
|
||||
| traders, guards, etc.) may want visible custom names.
|
||||
|
|
||||
*/
|
||||
|
||||
/*
|
||||
entity.customName(
|
||||
net.kyori.adventure.text.Component.text(
|
||||
RSConstants.ENTITY_DISPLAY_NAME
|
||||
)
|
||||
);
|
||||
|
||||
entity.setCustomNameVisible(true);
|
||||
*/
|
||||
|
||||
|
||||
|
||||
RSMessageUtils.success(
|
||||
player,
|
||||
"Converted Successfully."
|
||||
@@ -211,27 +179,10 @@ public class RSMenuListener
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| RADIUS MENU
|
||||
| FILTER
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
if (event.getRawSlot() == 11) {
|
||||
|
||||
RSRadiusMenu.open(
|
||||
player,
|
||||
block
|
||||
);
|
||||
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| FILTER
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
if (event.getRawSlot() == 15) {
|
||||
|
||||
RSFilterMenu.open(
|
||||
|
||||
@@ -1,156 +0,0 @@
|
||||
package com.rsscripting.rsauger.listeners;
|
||||
|
||||
import com.rsscripting.rsauger.config.ConfigManager;
|
||||
import com.rsscripting.rsauger.gui.RSMainMenu;
|
||||
import com.rsscripting.rsauger.gui.RSMenuHolder;
|
||||
import com.rsscripting.rsauger.gui.RSRadiusMenu;
|
||||
import com.rsscripting.rsauger.managers.MachineManager;
|
||||
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.inventory.InventoryClickEvent;
|
||||
|
||||
public class RSRadiusListener
|
||||
implements Listener {
|
||||
|
||||
private final RSConvertListener
|
||||
conversionListener;
|
||||
|
||||
public RSRadiusListener(
|
||||
RSConvertListener conversionListener
|
||||
) {
|
||||
|
||||
this.conversionListener =
|
||||
conversionListener;
|
||||
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onInventoryClick(
|
||||
InventoryClickEvent event
|
||||
) {
|
||||
|
||||
if (!(event.getWhoClicked()
|
||||
instanceof Player player)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!(event.getInventory()
|
||||
.getHolder()
|
||||
instanceof RSMenuHolder holder)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!holder.getMenuId()
|
||||
.equals(
|
||||
"RADIUS"
|
||||
)) {
|
||||
return;
|
||||
}
|
||||
|
||||
event.setCancelled(true);
|
||||
|
||||
if (event.getCurrentItem() == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
Block block =
|
||||
conversionListener.getSelectedBlock(player);
|
||||
|
||||
if (block == null) {
|
||||
|
||||
player.closeInventory();
|
||||
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| BACK
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
if (event.getRawSlot() == 4) {
|
||||
|
||||
RSMainMenu.open(
|
||||
player,
|
||||
block
|
||||
);
|
||||
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
int radius =
|
||||
MachineManager.getRadius(
|
||||
block
|
||||
);
|
||||
|
||||
int change;
|
||||
|
||||
switch (event.getRawSlot()) {
|
||||
|
||||
case 10:
|
||||
change = -10;
|
||||
break;
|
||||
|
||||
case 11:
|
||||
change = -5;
|
||||
break;
|
||||
|
||||
case 12:
|
||||
change = -1;
|
||||
break;
|
||||
|
||||
case 14:
|
||||
change = 1;
|
||||
break;
|
||||
|
||||
case 15:
|
||||
change = 5;
|
||||
break;
|
||||
|
||||
case 16:
|
||||
change = 10;
|
||||
break;
|
||||
|
||||
default:
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
radius += change;
|
||||
|
||||
if (radius < 1) {
|
||||
radius = 1;
|
||||
}
|
||||
|
||||
int maxRadius =
|
||||
(int) ConfigManager.get()
|
||||
.getDouble(
|
||||
"max-radius"
|
||||
);
|
||||
if (maxRadius > 0
|
||||
&& radius > maxRadius) {
|
||||
|
||||
radius = maxRadius;
|
||||
|
||||
}
|
||||
|
||||
MachineManager.setRadius(
|
||||
block,
|
||||
radius
|
||||
);
|
||||
|
||||
RSRadiusMenu.open(
|
||||
player,
|
||||
block
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -383,134 +383,6 @@ public class MachineManager {
|
||||
|
||||
}
|
||||
|
||||
public static void setRadius(
|
||||
Block block,
|
||||
int radius
|
||||
) {
|
||||
|
||||
try (
|
||||
|
||||
Connection connection =
|
||||
DatabaseManager.getConnection();
|
||||
|
||||
PreparedStatement statement =
|
||||
connection.prepareStatement(
|
||||
"""
|
||||
UPDATE machines
|
||||
SET radius = ?
|
||||
WHERE world = ?
|
||||
AND x = ?
|
||||
AND y = ?
|
||||
AND z = ?
|
||||
"""
|
||||
)
|
||||
|
||||
) {
|
||||
|
||||
statement.setInt(
|
||||
1,
|
||||
radius
|
||||
);
|
||||
|
||||
statement.setString(
|
||||
2,
|
||||
block.getWorld().getName()
|
||||
);
|
||||
|
||||
statement.setInt(
|
||||
3,
|
||||
block.getX()
|
||||
);
|
||||
|
||||
statement.setInt(
|
||||
4,
|
||||
block.getY()
|
||||
);
|
||||
|
||||
statement.setInt(
|
||||
5,
|
||||
block.getZ()
|
||||
);
|
||||
|
||||
statement.executeUpdate();
|
||||
|
||||
}
|
||||
|
||||
catch (Exception e) {
|
||||
|
||||
e.printStackTrace();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static int getRadius(
|
||||
Block block
|
||||
) {
|
||||
|
||||
try (
|
||||
|
||||
Connection connection =
|
||||
DatabaseManager.getConnection();
|
||||
|
||||
PreparedStatement statement =
|
||||
connection.prepareStatement(
|
||||
"""
|
||||
SELECT radius
|
||||
FROM machines
|
||||
WHERE world = ?
|
||||
AND x = ?
|
||||
AND y = ?
|
||||
AND z = ?
|
||||
LIMIT 1
|
||||
"""
|
||||
)
|
||||
|
||||
) {
|
||||
|
||||
statement.setString(
|
||||
1,
|
||||
block.getWorld().getName()
|
||||
);
|
||||
|
||||
statement.setInt(
|
||||
2,
|
||||
block.getX()
|
||||
);
|
||||
|
||||
statement.setInt(
|
||||
3,
|
||||
block.getY()
|
||||
);
|
||||
|
||||
statement.setInt(
|
||||
4,
|
||||
block.getZ()
|
||||
);
|
||||
|
||||
ResultSet result =
|
||||
statement.executeQuery();
|
||||
|
||||
if (result.next()) {
|
||||
|
||||
return result.getInt(
|
||||
"radius"
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
catch (Exception e) {
|
||||
|
||||
e.printStackTrace();
|
||||
|
||||
}
|
||||
|
||||
return 5;
|
||||
|
||||
}
|
||||
|
||||
public static void setPaused(
|
||||
Block block,
|
||||
boolean paused
|
||||
|
||||
@@ -26,10 +26,10 @@ public class RSConstants {
|
||||
*/
|
||||
|
||||
public static final String GITHUB_USER =
|
||||
"YourGitHubUsername";
|
||||
"RS-Scripting";
|
||||
|
||||
public static final String GITHUB_REPOSITORY =
|
||||
"RS-ItemMagnet";
|
||||
"RS-Auger";
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
@@ -60,7 +60,7 @@ public class RSConstants {
|
||||
|
||||
public static final Material
|
||||
REQUIRED_TARGET_BLOCK =
|
||||
Material.LODESTONE;
|
||||
Material.LIGHTNING_ROD;
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
||||
@@ -19,7 +19,7 @@ public class RSMessageUtils {
|
||||
|
||||
.append(
|
||||
Component.text(
|
||||
"RS-Plugin"
|
||||
"RS-Auger"
|
||||
).color(
|
||||
NamedTextColor.RED
|
||||
)
|
||||
|
||||
Reference in new issue
Block a user