diff options
Diffstat (limited to 'src/main/java/net/uomc/mineshaft/Pickaxes.java')
| -rw-r--r-- | src/main/java/net/uomc/mineshaft/Pickaxes.java | 276 |
1 files changed, 0 insertions, 276 deletions
diff --git a/src/main/java/net/uomc/mineshaft/Pickaxes.java b/src/main/java/net/uomc/mineshaft/Pickaxes.java deleted file mode 100644 index 39fa030..0000000 --- a/src/main/java/net/uomc/mineshaft/Pickaxes.java +++ /dev/null @@ -1,276 +0,0 @@ -package net.uomc.mineshaft; - -import java.io.File; -import java.sql.SQLException; -import java.util.Collections; -import java.util.List; -import java.util.stream.Collectors; - -import org.json.JSONObject; - -import com.mouldycheerio.dbot.util.DatabaseUtils; -import com.mouldycheerio.dbot.util.PeelingUtils; - -import net.dv8tion.jda.api.entities.Guild; -import net.dv8tion.jda.api.entities.Member; - -public class Pickaxes { - - public static final int MAX_PICKAXE_LEVEL = 5; - - private static final String LEVEL_TABLE = "levels"; - private static final String FORTUNE_TABLE = "ench_fortune"; - private static final String EFFICIENCY_TABLE = "ench_efficiency"; - private static final String DIMENSION_TABLE = "dimension"; - - private static final String FARM_LEVEL_TABLE = "farms"; - - private String pickaxesDb; - - public Pickaxes(Mineshaft mineshaft) { - pickaxesDb = (new File(mineshaft.getDatadir(), "pickaxes.db")).getPath(); - initDB(); - } - - private void initDB() { - try { - DatabaseUtils.createSimpleKVtable(pickaxesDb, FORTUNE_TABLE); - } catch (SQLException e) { - } - try { - DatabaseUtils.createSimpleKVtable(pickaxesDb, DIMENSION_TABLE); - } catch (SQLException e) { - } - try { - DatabaseUtils.createSimpleKVtable(pickaxesDb, EFFICIENCY_TABLE); - } catch (SQLException e) { - } - try { - DatabaseUtils.createSimpleKVtable(pickaxesDb, LEVEL_TABLE); - } catch (SQLException e) { - } - try { - DatabaseUtils.createSimpleKVtable(pickaxesDb, FARM_LEVEL_TABLE); - } catch (SQLException e) { - } - } - - public void setFarmLevel(Member member, long value) { - try { - DatabaseUtils.putInKVtable(pickaxesDb, FARM_LEVEL_TABLE, member.getId() + ":" + member.getGuild().getId(), value); - } catch (SQLException e) { - e.printStackTrace(); - } - } - public long getFarmLevel(String member, String guild) { - try { - return DatabaseUtils.getInKVtable(pickaxesDb, FARM_LEVEL_TABLE, member + ":" + guild); - } catch (SQLException e) { - e.printStackTrace(); - } - return 0l; - } - - public long getFarmLevel(Member member) { - return getFarmLevel(member.getId(), member.getGuild().getId()); - } - - public void setLevel(Member member, long value) { - try { - DatabaseUtils.putInKVtable(pickaxesDb, LEVEL_TABLE, member.getId() + ":" + member.getGuild().getId(), value); - } catch (SQLException e) { - e.printStackTrace(); - } - } - - public long getLevel(String member, String guild) { - try { - return DatabaseUtils.getInKVtable(pickaxesDb, LEVEL_TABLE, member + ":" + guild); - } catch (SQLException e) { - e.printStackTrace(); - } - return 0l; - } - - public long getLevel(Member member) { - return getLevel(member.getId(), member.getGuild().getId()); - } - public List<String> getMembersGuilds() { - try { - return DatabaseUtils.listKeys(pickaxesDb, LEVEL_TABLE); - } catch (SQLException e) { - e.printStackTrace(); - } - return Collections.emptyList(); - } - - public List<String> getMembers(Guild guild) { - return getMembersGuilds().stream().filter(m -> guild.getId().equals(m.split(":")[1])).map(m -> m.split(":")[0]).collect(Collectors.toList()); - } - - private void setEfficiency(Member member, long value) { - try { - DatabaseUtils.putInKVtable(pickaxesDb, EFFICIENCY_TABLE, member.getId() + ":" + member.getGuild().getId(), value); - } catch (SQLException e) { - e.printStackTrace(); - } - } - - public long getEfficiency(String member, String guild) { - try { - return DatabaseUtils.getInKVtable(pickaxesDb, EFFICIENCY_TABLE, member + ":" + guild); - } catch (SQLException e) { - e.printStackTrace(); - } - return 0l; - } - - public long getEfficiency(Member member) { - return getEfficiency(member.getId(), member.getGuild().getId()); - } - - private void setFortune(Member member, long value) { - try { - DatabaseUtils.putInKVtable(pickaxesDb, FORTUNE_TABLE, member.getId() + ":" + member.getGuild().getId(), value); - } catch (SQLException e) { - e.printStackTrace(); - } - } - - public long getFortune(String member, String guild) { - try { - return DatabaseUtils.getInKVtable(pickaxesDb, FORTUNE_TABLE, member + ":" + guild); - } catch (SQLException e) { - e.printStackTrace(); - } - return 0l; - } - - public long getFortune(Member member) { - return getFortune(member.getId(), member.getGuild().getId()); - } - - public void setNether(Member member, boolean nether) { - try { - DatabaseUtils.putInKVtable(pickaxesDb, DIMENSION_TABLE, member.getId() + ":" + member.getGuild().getId(), nether ? 1: 0); - } catch (SQLException e) { - e.printStackTrace(); - } - } - - public boolean isNether(Member member) { - try { - return DatabaseUtils.getInKVtable(pickaxesDb, DIMENSION_TABLE, member.getId() + ":" + member.getGuild().getId()) == 1; - } catch (SQLException e) { - e.printStackTrace(); - } - return false; - } - - public boolean isEnchanted(Member member) { - long fortune = getFortune(member); - return fortune > 0; - } - - public String getPickaxeName(Member member) { - long level = getLevel(member); - return pickaxeLevelToName(level); - } - - public String getNextPickaxeName(Member member) { - long level = getLevel(member) + 1; - if (level == getMaPickaxeLevel()) - level = getMaPickaxeLevel(); - return pickaxeLevelToName(level); - } - - public static String pickaxeLevelToName(long level) { - switch ((int) level) { - case 0: - return "Stone"; - case 1: - return "Copper"; - case 2: - return "Iron"; - case 3: - return "Gold"; - case 4: - return "Diamond"; - default: - return "Netherite"; - } - } - - public String getPickaxeImage(Member member) { - long level = getLevel(member); - switch ((int) level) { - case 0: - return isEnchanted(member) ? - "https://minecraft.wiki/images/Enchanted_Stone_Pickaxe.gif" - : "https://minecraft.wiki/images/Stone_Pickaxe_JE2_BE2.png"; - case 1: - return isEnchanted(member) ? - "https://minecraft.wiki/images/Enchanted_Copper_Pickaxe.webp" - : "https://minecraft.wiki/images/Copper_Pickaxe_JE1_BE1.png"; - case 2: - return isEnchanted(member) ? - "https://minecraft.wiki/images/Enchanted_Iron_Pickaxe.gif" - : "https://minecraft.wiki/images/Iron_Pickaxe_JE3_BE2.png"; - case 3: - return isEnchanted(member) ? - "https://minecraft.wiki/images/Enchanted_Golden_Pickaxe.gif" - : "https://minecraft.wiki/images/Golden_Pickaxe_JE4_BE3.png"; - case 4: - return isEnchanted(member) ? - "https://minecraft.wiki/images/Enchanted_Diamond_Pickaxe.gif" - : "https://minecraft.wiki/images/Diamond_Pickaxe_JE3_BE3.png"; - default: - return isEnchanted(member) ? - "https://minecraft.wiki/images/Netherite_Pickaxe_JE3.png" - : "https://minecraft.wiki/images/Enchanted_Netherite_Pickaxe.gif"; - } - } - - public int getMaPickaxeLevel() { - return MAX_PICKAXE_LEVEL; - } - - public int getPickaxeLevel(Member member) { - return (int) getLevel(member); - } - - public int getPickaxeFortune(Member member) { - return (int) getFortune(member); - } - - public int getPickaxeEfficiency(Member member) { - return (int) getEfficiency(member); - } - - public int incrementFortune(Member member) { - setFortune(member, getFortune(member) + 1); - return (int) getFortune(member); - } - - public int incrementEfficiency(Member member) { - setEfficiency(member, getEfficiency(member) + 1); - return (int) getEfficiency(member); - } - - public static String getRomanNumber(int number) { - return String.join("", Collections.nCopies(number, "I")) - .replace("IIIII", "V") - .replace("IIII", "IV") - .replace("VV", "X") - .replace("VIV", "IX") - .replace("XXXXX", "L") - .replace("XXXX", "XL") - .replace("LL", "C") - .replace("LXL", "XC") - .replace("CCCCC", "D") - .replace("CCCC", "CD") - .replace("DD", "M") - .replace("DCD", "CM"); - } - -} |
