Set return type from double to float

This commit is contained in:
Roman Zhuravlev 2023-09-18 16:16:14 +05:00
parent 709202574a
commit ee9a6db15a
11 changed files with 77 additions and 19 deletions

View file

@ -28,8 +28,8 @@
<artifactId>sqlite-jdbc</artifactId> <artifactId>sqlite-jdbc</artifactId>
</exclusion> </exclusion>
<exclusion> <exclusion>
<groupId>mysql</groupId> <groupId>com.mysql</groupId>
<artifactId>mysql-connector-java</artifactId> <artifactId>mysql-connector-j</artifactId>
</exclusion> </exclusion>
</exclusions> </exclusions>
</dependency> </dependency>

View file

@ -2,11 +2,15 @@ package org.zhdev.varioutil.bukkit.gui;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.event.inventory.InventoryCloseEvent;
import org.bukkit.event.inventory.InventoryOpenEvent;
import org.bukkit.inventory.Inventory; import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import java.util.Objects;
import java.util.function.Consumer;
public class Gui { public class Gui {
final GuiHolder holder = new GuiHolder(this); final GuiHolder holder = new GuiHolder(this);
@ -16,6 +20,9 @@ public class Gui {
private String title; private String title;
private GuiType type = GuiType.SIZE_27; private GuiType type = GuiType.SIZE_27;
private Consumer<InventoryOpenEvent> openEvent = inventoryCloseEvent -> {};
private Consumer<InventoryCloseEvent> closeEvent = inventoryCloseEvent -> {};
public String getTitle() { public String getTitle() {
return title; return title;
} }
@ -32,6 +39,22 @@ public class Gui {
this.type = type; this.type = type;
} }
public Consumer<InventoryOpenEvent> getOpenEvent() {
return openEvent;
}
public void setOpenEvent(Consumer<InventoryOpenEvent> openEvent) {
this.openEvent = Objects.requireNonNull(openEvent, "openEvent");
}
public Consumer<InventoryCloseEvent> getCloseEvent() {
return closeEvent;
}
public void setCloseEvent(Consumer<InventoryCloseEvent> closeEvent) {
this.closeEvent = Objects.requireNonNull(closeEvent, "closeEvent");
}
public GuiIcon getIcon(int slot) { public GuiIcon getIcon(int slot) {
return iconMap.get(slot); return iconMap.get(slot);
} }

View file

@ -106,7 +106,7 @@ public class GuiIcon {
if (meta != null) { if (meta != null) {
meta.setDisplayName(displayName); meta.setDisplayName(displayName);
meta.setLore(lore); meta.setLore(lore);
meta.addItemFlags(flags); if (flags != null) meta.addItemFlags(flags);
if (texture != null && meta instanceof SkullMeta) { if (texture != null && meta instanceof SkullMeta) {
BukkitUtils.setSkullTexture(((SkullMeta) meta), texture); BukkitUtils.setSkullTexture(((SkullMeta) meta), texture);
} }

View file

@ -5,8 +5,12 @@ import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener; import org.bukkit.event.Listener;
import org.bukkit.event.inventory.InventoryClickEvent; import org.bukkit.event.inventory.InventoryClickEvent;
import org.bukkit.event.inventory.InventoryCloseEvent;
import org.bukkit.event.inventory.InventoryDragEvent;
import org.bukkit.event.inventory.InventoryOpenEvent;
import org.bukkit.event.server.PluginDisableEvent; import org.bukkit.event.server.PluginDisableEvent;
import org.bukkit.inventory.Inventory; import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.InventoryHolder;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
public class GuiListener implements Listener { public class GuiListener implements Listener {
@ -17,7 +21,14 @@ public class GuiListener implements Listener {
} }
@EventHandler @EventHandler
public void onClick(InventoryClickEvent event) { private void onDrag(InventoryDragEvent event) {
if (event.getInventory().getHolder() instanceof GuiHolder) {
event.setCancelled(true);
}
}
@EventHandler
private void onClick(InventoryClickEvent event) {
if (!(event.getWhoClicked() instanceof Player)) { if (!(event.getWhoClicked() instanceof Player)) {
return; return;
} }
@ -48,7 +59,23 @@ public class GuiListener implements Listener {
} }
@EventHandler @EventHandler
public void onPluginDisable(PluginDisableEvent event) { private void onOpen(InventoryOpenEvent event) {
InventoryHolder holder = event.getInventory().getHolder();
if (holder instanceof GuiHolder) {
((GuiHolder) holder).gui.getOpenEvent().accept(event);
}
}
@EventHandler
private void onClose(InventoryCloseEvent event) {
InventoryHolder holder = event.getInventory().getHolder();
if (holder instanceof GuiHolder) {
((GuiHolder) holder).gui.getCloseEvent().accept(event);
}
}
@EventHandler
private void onPluginDisable(PluginDisableEvent event) {
if (event.getPlugin() == plugin) { if (event.getPlugin() == plugin) {
for (Player player : Bukkit.getOnlinePlayers()) { for (Player player : Bukkit.getOnlinePlayers()) {
Inventory inventory = player.getOpenInventory().getTopInventory(); Inventory inventory = player.getOpenInventory().getTopInventory();

View file

@ -62,7 +62,7 @@ public class BukkitUtils {
BukkitReflectionUtils.setProfile(meta, profile); BukkitReflectionUtils.setProfile(meta, profile);
} }
public static String stacksToString(ItemStack[] contents) { public static String stacksToString(ItemStack... contents) {
try (ByteArrayOutputStream str = new ByteArrayOutputStream(); try (ByteArrayOutputStream str = new ByteArrayOutputStream();
BukkitObjectOutputStream data = new BukkitObjectOutputStream(str)) { BukkitObjectOutputStream data = new BukkitObjectOutputStream(str)) {
data.writeInt(contents.length); data.writeInt(contents.length);

View file

@ -29,8 +29,8 @@
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<dependency> <dependency>
<groupId>mysql</groupId> <groupId>com.mysql</groupId>
<artifactId>mysql-connector-java</artifactId> <artifactId>mysql-connector-j</artifactId>
<version>8.0.33</version> <version>8.0.33</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>

View file

@ -28,7 +28,6 @@ public class SqlUtils {
public static Connection createH2Connection(String path, String username, String password) throws SqlException { public static Connection createH2Connection(String path, String username, String password) throws SqlException {
try { try {
DriverManager.registerDriver(new org.h2.Driver());
Connection connection; Connection connection;
if (username != null) { if (username != null) {
connection = DriverManager.getConnection("jdbc:h2:./" + path + ";mode=MySQL;AUTO_SERVER=TRUE", username, password); connection = DriverManager.getConnection("jdbc:h2:./" + path + ";mode=MySQL;AUTO_SERVER=TRUE", username, password);
@ -57,10 +56,7 @@ public class SqlUtils {
} }
} }
try { try {
Class.forName("org.sqlite.JDBC");
return DriverManager.getConnection("jdbc:sqlite:" + path); return DriverManager.getConnection("jdbc:sqlite:" + path);
} catch (ClassNotFoundException e) {
throw new SqlException("No suitable driver");
} catch (SQLException e) { } catch (SQLException e) {
throw new SqlException(e); throw new SqlException(e);
} }
@ -144,5 +140,6 @@ public class SqlUtils {
static { static {
initializeH2(); initializeH2();
initializeMySql(); initializeMySql();
initializeSqlite();
} }
} }

View file

@ -10,8 +10,11 @@ import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.nio.file.Files; import java.nio.file.Files;
import java.nio.file.Path; import java.nio.file.Path;
import java.util.logging.Logger;
public interface PreparedPlugin { public interface PreparedPlugin {
Logger getLogger();
Config getDefaultConfig(); Config getDefaultConfig();
Language getLanguage(); Language getLanguage();

View file

@ -7,6 +7,7 @@ import org.zhdev.varioutil.sql.*;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.List;
import java.util.function.Function; import java.util.function.Function;
public class ConfigUtils { public class ConfigUtils {
@ -15,9 +16,12 @@ public class ConfigUtils {
ConfigSection section = config.getSection(i); ConfigSection section = config.getSection(i);
if (section == null) continue; if (section == null) continue;
for (String j : section) { for (String j : section) {
String phrase = section.getString(j); String phrase;
if (phrase == null) { List<?> list = section.getList(j);
phrase = String.join("\n", CollectionUtils.mapToString(section.getList(j, Collections.emptyList()), ArrayList::new)); if (list == null) {
phrase = section.getString(j);
} else {
phrase = String.join("\n", CollectionUtils.mapToString(list, ArrayList::new));
} }
language.addPhrase(i, j, function.apply(phrase)); language.addPhrase(i, j, function.apply(phrase));
} }

View file

@ -24,7 +24,11 @@ public abstract class VelocityPlugin {
return dataFolder; return dataFolder;
} }
public Logger getLogger() { public java.util.logging.Logger getLogger() {
return java.util.logging.Logger.getLogger(logger.getName());
}
public Logger getSLF4JLogger() {
return logger; return logger;
} }
} }

View file

@ -22,9 +22,6 @@ public abstract class VelocityPreparedPlugin extends VelocityPlugin implements P
protected VelocityPreparedPlugin(ProxyServer server, Logger logger, Path dataFolder) { protected VelocityPreparedPlugin(ProxyServer server, Logger logger, Path dataFolder) {
super(server, logger, dataFolder); super(server, logger, dataFolder);
loadConfig(defaultConfig);
loadPhrases();
establishSqlConnection();
} }
protected SqlAdapter createSqlAdapter() { protected SqlAdapter createSqlAdapter() {
@ -68,6 +65,9 @@ public abstract class VelocityPreparedPlugin extends VelocityPlugin implements P
@Subscribe @Subscribe
private void onProxyInitialization(ProxyInitializeEvent event) { private void onProxyInitialization(ProxyInitializeEvent event) {
loadConfig(defaultConfig);
loadPhrases();
establishSqlConnection();
onEnabling(); onEnabling();
} }