mirror of
https://github.com/Crazy-Crew/CrazyAuctions.git
synced 2025-03-02 04:01:57 +01:00
fix the lore bug
remove reliance on cluster for one method update run files add workflows fix output task update plugin download for runserver migrate old items in data.yml on startup fix/improve how items are stored/displayed bump version
This commit is contained in:
parent
4b20f61b21
commit
22250d5328
54
.github/workflows/release.yml
vendored
Normal file
54
.github/workflows/release.yml
vendored
Normal file
@ -0,0 +1,54 @@
|
||||
name: Publish Release
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
logLevel:
|
||||
description: 'Log Level'
|
||||
required: false
|
||||
default: 'warning'
|
||||
|
||||
jobs:
|
||||
publish:
|
||||
runs-on: ubuntu-latest
|
||||
if: "contains(github.event.commits[0].message, '[build]')"
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Validate Gradle Wrapper
|
||||
uses: gradle/actions/wrapper-validation@v3
|
||||
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v4
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
java-version: 17
|
||||
check-latest: true
|
||||
|
||||
- name: Gradle Properties Import.
|
||||
id: properties
|
||||
shell: bash
|
||||
run: cat gradle.properties >> $GITHUB_ENV
|
||||
|
||||
- name: Make gradlew executable
|
||||
run: chmod +x ./gradlew
|
||||
|
||||
- name: Assemble
|
||||
run:
|
||||
./gradlew assemble --stacktrace
|
||||
|
||||
- name: Publish
|
||||
env:
|
||||
HANGAR_KEY: ${{ secrets.HANGAR_KEY }}
|
||||
MODRINTH_TOKEN: ${{ secrets.MODRINTH_TOKEN }}
|
||||
COMMIT_MESSAGE: ${{ join(github.event.commits.*.message, '<br>* ') }}
|
||||
run: ./gradlew modrinth publishAllPublicationsToHangar --stacktrace
|
||||
|
||||
- name: Maven Publish
|
||||
env:
|
||||
gradle_username: ${{ secrets.GRADLE_USERNAME }}
|
||||
gradle_password: ${{ secrets.GRADLE_PASSWORD }}
|
||||
run: ./gradlew publish --stacktrace
|
@ -1,40 +1,3 @@
|
||||
import org.gradle.kotlin.dsl.support.uppercaseFirstChar
|
||||
|
||||
plugins {
|
||||
`root-plugin`
|
||||
}
|
||||
|
||||
tasks {
|
||||
assemble {
|
||||
val jarsDir = File("$rootDir/jars")
|
||||
|
||||
doFirst {
|
||||
delete(jarsDir)
|
||||
|
||||
jarsDir.mkdirs()
|
||||
}
|
||||
|
||||
subprojects.filter { it.name == "paper" || it.name == "fabric" }.forEach { project ->
|
||||
dependsOn(":${project.name}:build")
|
||||
|
||||
doLast {
|
||||
runCatching {
|
||||
val file = File("$jarsDir/${project.name.uppercaseFirstChar().lowercase()}")
|
||||
|
||||
file.mkdirs()
|
||||
|
||||
copy {
|
||||
from(project.layout.buildDirectory.file("libs/${rootProject.name}-${project.version}.jar"))
|
||||
into(file)
|
||||
}
|
||||
}.onSuccess {
|
||||
// Delete to save space on jenkins.
|
||||
delete(project.layout.buildDirectory.get())
|
||||
delete(rootProject.layout.buildDirectory.get())
|
||||
}.onFailure {
|
||||
println("Failed to copy file out of build folder into jars directory: Likely does not exist.")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -10,7 +10,7 @@ issues = https://github.com/Crazy-Crew/CrazyAuctions/issues
|
||||
|
||||
group = com.badbones69.crazyauctions
|
||||
description = Auction off items in style.
|
||||
version = 1.4
|
||||
version = 1.4.1
|
||||
apiVersion = 1.20
|
||||
|
||||
mcVersion = 1.20.4
|
||||
|
@ -28,6 +28,13 @@ dependencies {
|
||||
tasks {
|
||||
assemble {
|
||||
dependsOn(reobfJar)
|
||||
|
||||
doLast {
|
||||
copy {
|
||||
from(reobfJar.get())
|
||||
into(rootProject.projectDir.resolve("jars"))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
runServer {
|
||||
@ -40,7 +47,7 @@ tasks {
|
||||
|
||||
url("https://ci.lucko.me/job/TinyVault/lastSuccessfulBuild/artifact/build/libs/Vault.jar")
|
||||
|
||||
url("https://download.luckperms.net/1532/bukkit/loader/LuckPerms-Bukkit-5.4.119.jar")
|
||||
url("https://download.luckperms.net/1544/bukkit/loader/LuckPerms-Bukkit-5.4.131.jar")
|
||||
}
|
||||
|
||||
minecraftVersion("1.20.4")
|
||||
|
Binary file not shown.
@ -122,6 +122,7 @@ unsupported-settings:
|
||||
allow-headless-pistons: false
|
||||
allow-permanent-block-break-exploits: false
|
||||
allow-piston-duplication: false
|
||||
allow-tripwire-disarming-exploits: false
|
||||
allow-unsafe-end-portal-teleportation: false
|
||||
compression-format: ZLIB
|
||||
perform-username-validation: true
|
||||
|
@ -236,6 +236,7 @@ environment:
|
||||
min: 20
|
||||
enabled: true
|
||||
generate-flat-bedrock: false
|
||||
locate-structures-outside-world-border: false
|
||||
max-block-ticks: 65536
|
||||
max-fluid-ticks: 65536
|
||||
nether-ceiling-void-damage-height: disabled
|
||||
|
@ -13,8 +13,12 @@ import com.badbones69.crazyauctions.currency.VaultSupport;
|
||||
import org.bukkit.command.CommandExecutor;
|
||||
import org.bukkit.command.PluginCommand;
|
||||
import org.bukkit.command.TabCompleter;
|
||||
import org.bukkit.configuration.file.FileConfiguration;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.Base64;
|
||||
import java.util.Timer;
|
||||
import java.util.TimerTask;
|
||||
|
||||
@ -50,6 +54,33 @@ public class CrazyAuctions extends JavaPlugin {
|
||||
this.crazyManager = new CrazyManager();
|
||||
|
||||
this.fileManager.setup();
|
||||
|
||||
FileConfiguration configuration = FileManager.Files.DATA.getFile();
|
||||
|
||||
if (configuration.contains("OutOfTime/Cancelled")) {
|
||||
for (String key : configuration.getConfigurationSection("OutOfTime/Cancelled").getKeys(false)) {
|
||||
final ItemStack itemStack = configuration.getItemStack("OutOfTime/Cancelled." + key + ".Item");
|
||||
|
||||
if (itemStack != null) {
|
||||
configuration.set("OutOfTime/Cancelled." + key + ".Item", Base64.getEncoder().encodeToString(itemStack.serializeAsBytes()));
|
||||
|
||||
FileManager.Files.DATA.saveFile();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (configuration.contains("Items")) {
|
||||
for (String key : configuration.getConfigurationSection("Items").getKeys(false)) {
|
||||
final ItemStack itemStack = configuration.getItemStack("Items." + key + ".Item");
|
||||
|
||||
if (itemStack != null) {
|
||||
configuration.set("Items." + key + ".Item", Base64.getEncoder().encodeToString(itemStack.serializeAsBytes()));
|
||||
|
||||
FileManager.Files.DATA.saveFile();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
this.crazyManager.load();
|
||||
|
||||
getServer().getPluginManager().registerEvents(new GuiListener(), this);
|
||||
|
@ -5,7 +5,6 @@ import com.badbones69.crazyauctions.Methods;
|
||||
import com.badbones69.crazyauctions.api.support.PluginSupport;
|
||||
import com.badbones69.crazyauctions.api.support.SkullCreator;
|
||||
import com.mojang.brigadier.exceptions.CommandSyntaxException;
|
||||
import com.ryderbelserion.cluster.utils.DyeUtils;
|
||||
import io.th0rgal.oraxen.api.OraxenItems;
|
||||
import me.clip.placeholderapi.PlaceholderAPI;
|
||||
import net.minecraft.nbt.TagParser;
|
||||
@ -36,6 +35,8 @@ import org.bukkit.potion.PotionEffect;
|
||||
import org.bukkit.potion.PotionEffectType;
|
||||
import org.bukkit.potion.PotionType;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
@ -48,7 +49,7 @@ import java.util.stream.Collectors;
|
||||
public class ItemBuilder {
|
||||
|
||||
@NotNull
|
||||
private final CrazyAuctions plugin = CrazyAuctions.get();
|
||||
private static final CrazyAuctions plugin = CrazyAuctions.get();
|
||||
|
||||
// Items
|
||||
private Material material = Material.STONE;
|
||||
@ -583,10 +584,10 @@ public class ItemBuilder {
|
||||
} else {
|
||||
this.potionType = getPotionType(PotionEffectType.getByName(metaData)).getEffectType();
|
||||
|
||||
this.potionColor = DyeUtils.getColor(metaData);
|
||||
this.armorColor = DyeUtils.getColor(metaData);
|
||||
this.mapColor = DyeUtils.getColor(metaData);
|
||||
this.fireworkColor = DyeUtils.getColor(metaData);
|
||||
this.potionColor = getColor(metaData);
|
||||
this.armorColor = getColor(metaData);
|
||||
this.mapColor = getColor(metaData);
|
||||
this.fireworkColor = getColor(metaData);
|
||||
}
|
||||
} else if (type.contains("#")) {
|
||||
String[] section = type.split("#");
|
||||
@ -1183,7 +1184,7 @@ public class ItemBuilder {
|
||||
try {
|
||||
for (PatternType pattern : PatternType.values()) {
|
||||
if (option.equalsIgnoreCase(pattern.name()) || value.equalsIgnoreCase(pattern.getIdentifier())) {
|
||||
DyeColor color = DyeUtils.getDyeColor(value);
|
||||
DyeColor color = getDyeColor(value);
|
||||
if (color != null) itemBuilder.addPattern(new Pattern(color, pattern));
|
||||
break;
|
||||
}
|
||||
@ -1385,7 +1386,7 @@ public class ItemBuilder {
|
||||
for (PatternType pattern : PatternType.values()) {
|
||||
|
||||
if (split[0].equalsIgnoreCase(pattern.name()) || split[0].equalsIgnoreCase(pattern.getIdentifier())) {
|
||||
DyeColor color = DyeUtils.getDyeColor(split[1]);
|
||||
DyeColor color = getDyeColor(split[1]);
|
||||
|
||||
if (color != null) addPattern(new Pattern(color, pattern));
|
||||
|
||||
@ -1394,4 +1395,67 @@ public class ItemBuilder {
|
||||
}
|
||||
} catch (Exception ignored) {}
|
||||
}
|
||||
|
||||
public static @Nullable DyeColor getDyeColor(@NotNull final String value) {
|
||||
if (value.isEmpty()) return null;
|
||||
|
||||
Color color = getColor(value);
|
||||
|
||||
if (color == null) {
|
||||
plugin.getLogger().severe(value + " is not a valid color.");
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
return DyeColor.getByColor(color);
|
||||
}
|
||||
|
||||
private static final Map<String, Color> colors = createMap();
|
||||
|
||||
private static Map<String, Color> createMap() {
|
||||
Map<String, Color> map = new HashMap<>();
|
||||
map.put("AQUA", Color.AQUA);
|
||||
map.put("BLACK", Color.BLACK);
|
||||
map.put("BLUE", Color.BLUE);
|
||||
map.put("FUCHSIA", Color.FUCHSIA);
|
||||
map.put("GRAY", Color.GRAY);
|
||||
map.put("GREEN", Color.GREEN);
|
||||
map.put("LIME", Color.LIME);
|
||||
map.put("MAROON", Color.MAROON);
|
||||
map.put("NAVY", Color.NAVY);
|
||||
map.put("OLIVE", Color.OLIVE);
|
||||
map.put("ORANGE", Color.ORANGE);
|
||||
map.put("PURPLE", Color.PURPLE);
|
||||
map.put("RED", Color.RED);
|
||||
map.put("SILVER", Color.SILVER);
|
||||
map.put("TEAL", Color.TEAL);
|
||||
map.put("WHITE", Color.WHITE);
|
||||
map.put("YELLOW", Color.YELLOW);
|
||||
return map;
|
||||
}
|
||||
|
||||
public static Color getColor(String color) {
|
||||
if (color != null && !color.isBlank()) {
|
||||
Color mappedColor = (Color)colors.get(color.toUpperCase());
|
||||
if (mappedColor != null) {
|
||||
return mappedColor;
|
||||
} else {
|
||||
try {
|
||||
String[] rgb = color.split(",");
|
||||
if (rgb.length != 3) {
|
||||
return null;
|
||||
} else {
|
||||
int red = Integer.parseInt(rgb[0]);
|
||||
int green = Integer.parseInt(rgb[1]);
|
||||
int blue = Integer.parseInt(rgb[2]);
|
||||
return Color.fromRGB(red, green, blue);
|
||||
}
|
||||
} catch (ArrayIndexOutOfBoundsException | NumberFormatException var6) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
@ -22,6 +22,7 @@ import org.bukkit.permissions.PermissionAttachmentInfo;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.yaml.snakeyaml.error.YAMLException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Base64;
|
||||
import java.util.HashMap;
|
||||
import java.util.Random;
|
||||
import java.util.logging.Level;
|
||||
@ -131,7 +132,7 @@ public class AuctionCommand implements CommandExecutor {
|
||||
ItemStack stack = item.clone();
|
||||
stack.setAmount(amount);
|
||||
|
||||
data.set("Items." + num + ".Item", stack);
|
||||
data.set("Items." + num + ".Item", Base64.getEncoder().encodeToString(stack.serializeAsBytes()));
|
||||
}
|
||||
|
||||
Files.DATA.saveFile();
|
||||
@ -406,7 +407,7 @@ public class AuctionCommand implements CommandExecutor {
|
||||
ItemStack stack = item.clone();
|
||||
stack.setAmount(amount);
|
||||
|
||||
data.set("Items." + num + ".Item", stack);
|
||||
data.set("Items." + num + ".Item", Base64.getEncoder().encodeToString(stack.serializeAsBytes()));
|
||||
|
||||
Files.DATA.saveFile();
|
||||
|
||||
|
@ -27,6 +27,7 @@ import org.bukkit.inventory.Inventory;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Base64;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
@ -65,7 +66,10 @@ public class GuiListener implements Listener {
|
||||
if (data.contains("Items")) {
|
||||
for (String i : data.getConfigurationSection("Items").getKeys(false)) {
|
||||
List<String> lore = new ArrayList<>();
|
||||
if (data.getItemStack("Items." + i + ".Item") != null && (cat.getItems().contains(data.getItemStack("Items." + i + ".Item").getType()) || cat == Category.NONE)) {
|
||||
|
||||
ItemBuilder itemBuilder = ItemBuilder.convertItemStack(ItemStack.deserializeBytes(Base64.getDecoder().decode(data.getString("Items." + i + ".Item"))));
|
||||
|
||||
if (itemBuilder != null && data.contains("Items." + i + ".Item") && (cat.getItems().contains(itemBuilder.getItemStack().getType()) || cat == Category.NONE)) {
|
||||
if (data.getBoolean("Items." + i + ".Biddable")) {
|
||||
if (sell == ShopType.BID) {
|
||||
String seller = data.getString("Items." + i + ".Seller");
|
||||
@ -74,8 +78,6 @@ public class GuiListener implements Listener {
|
||||
lore.add(l.replace("%TopBid%", Methods.getPrice(i, false)).replace("%topbid%", Methods.getPrice(i, false)).replace("%Seller%", seller).replace("%seller%", seller).replace("%TopBidder%", topbidder).replace("%topbidder%", topbidder).replace("%Time%", Methods.convertToTime(data.getLong("Items." + i + ".Time-Till-Expire"))).replace("%time%", Methods.convertToTime(data.getLong("Items." + i + ".Time-Till-Expire"))));
|
||||
}
|
||||
|
||||
ItemBuilder itemBuilder = ItemBuilder.convertItemStack(data.getItemStack("Items." + i + ".Item"));
|
||||
|
||||
itemBuilder.setLore(lore);
|
||||
|
||||
items.add(itemBuilder.build());
|
||||
@ -88,11 +90,7 @@ public class GuiListener implements Listener {
|
||||
lore.add(l.replace("%Price%", String.format(Locale.ENGLISH, "%,d", Long.parseLong(Methods.getPrice(i, false)))).replace("%price%", String.format(Locale.ENGLISH, "%,d", Long.parseLong(Methods.getPrice(i, false)))).replace("%Seller%", data.getString("Items." + i + ".Seller")).replace("%seller%", data.getString("Items." + i + ".Seller")).replace("%Time%", Methods.convertToTime(data.getLong("Items." + i + ".Time-Till-Expire"))).replace("%time%", Methods.convertToTime(data.getLong("Items." + i + ".Time-Till-Expire"))));
|
||||
}
|
||||
|
||||
ItemBuilder itemBuilder = ItemBuilder.convertItemStack(data.getItemStack("Items." + i + ".Item"));
|
||||
|
||||
if (itemBuilder.getUpdatedLore().isEmpty()) {
|
||||
lore.forEach(itemBuilder::addLore);
|
||||
}
|
||||
itemBuilder.setLore(lore);
|
||||
|
||||
items.add(itemBuilder.build());
|
||||
|
||||
@ -256,9 +254,9 @@ public class GuiListener implements Listener {
|
||||
lore.add(l.replace("%Price%", Methods.getPrice(i, false)).replace("%price%", Methods.getPrice(i, false)).replace("%Time%", Methods.convertToTime(data.getLong("Items." + i + ".Time-Till-Expire"))).replace("%time%", Methods.convertToTime(data.getLong("Items." + i + ".Time-Till-Expire"))));
|
||||
}
|
||||
|
||||
ItemBuilder itemBuilder = ItemBuilder.convertItemStack(data.getItemStack("Items." + i + ".Item"));
|
||||
ItemBuilder itemBuilder = ItemBuilder.convertItemStack(ItemStack.deserializeBytes(Base64.getDecoder().decode(data.getString("Items." + i + ".Item"))));
|
||||
|
||||
lore.forEach(itemBuilder::addLore);
|
||||
itemBuilder.setLore(lore);
|
||||
|
||||
items.add(itemBuilder.build());
|
||||
|
||||
@ -293,9 +291,9 @@ public class GuiListener implements Listener {
|
||||
lore.add(l.replace("%Price%", Methods.getPrice(i, true)).replace("%price%", Methods.getPrice(i, true)).replace("%Time%", Methods.convertToTime(data.getLong("OutOfTime/Cancelled." + i + ".Full-Time"))).replace("%time%", Methods.convertToTime(data.getLong("OutOfTime/Cancelled." + i + ".Full-Time"))));
|
||||
}
|
||||
|
||||
ItemBuilder itemBuilder = ItemBuilder.convertItemStack(data.getItemStack("OutOfTime/Cancelled." + i + ".Item"));
|
||||
ItemBuilder itemBuilder = ItemBuilder.convertItemStack(ItemStack.deserializeBytes(Base64.getDecoder().decode(data.getString("OutOfTime/Cancelled." + i + ".Item"))));
|
||||
|
||||
lore.forEach(itemBuilder::addLore);
|
||||
itemBuilder.setLore(lore);
|
||||
|
||||
items.add(itemBuilder.build());
|
||||
|
||||
@ -393,7 +391,7 @@ public class GuiListener implements Listener {
|
||||
}
|
||||
}
|
||||
|
||||
ItemStack item = data.getItemStack("Items." + ID + ".Item");
|
||||
ItemStack item = ItemStack.deserializeBytes(Base64.getDecoder().decode(data.getString("Items." + ID + ".Item")));
|
||||
List<String> lore = new ArrayList<>();
|
||||
for (String l : config.getStringList("Settings.GUISettings.SellingItemLore")) {
|
||||
lore.add(l.replace("%Price%", Methods.getPrice(ID, false)).replace("%price%", Methods.getPrice(ID, false)).replace("%Seller%", data.getString("Items." + ID + ".Seller")).replace("%seller%", data.getString("Items." + ID + ".Seller")).replace("%Time%", Methods.convertToTime(data.getLong("Items." + l + ".Time-Till-Expire"))).replace("%time%", Methods.convertToTime(data.getLong("Items." + l + ".Time-Till-Expire"))));
|
||||
@ -401,7 +399,7 @@ public class GuiListener implements Listener {
|
||||
|
||||
ItemBuilder itemBuilder = ItemBuilder.convertItemStack(item);
|
||||
|
||||
lore.forEach(itemBuilder::addLore);
|
||||
itemBuilder.setLore(lore);
|
||||
|
||||
inv.setItem(4, itemBuilder.build());
|
||||
|
||||
@ -470,9 +468,9 @@ public class GuiListener implements Listener {
|
||||
}
|
||||
}
|
||||
|
||||
ItemBuilder itemBuilder = ItemBuilder.convertItemStack(data.getItemStack("Items." + i + ".Item"));
|
||||
ItemBuilder itemBuilder = ItemBuilder.convertItemStack(ItemStack.deserializeBytes(Base64.getDecoder().decode(data.getString("Items." + ID + ".Item"))));
|
||||
|
||||
lore.forEach(itemBuilder::addLore);
|
||||
itemBuilder.setLore(lore);
|
||||
|
||||
items.add(itemBuilder.build());
|
||||
|
||||
@ -545,7 +543,7 @@ public class GuiListener implements Listener {
|
||||
FileConfiguration data = Files.DATA.getFile();
|
||||
String seller = data.getString("Items." + ID + ".Seller");
|
||||
String topbidder = data.getString("Items." + ID + ".TopBidder");
|
||||
ItemStack item = data.getItemStack("Items." + ID + ".Item");
|
||||
ItemStack item = ItemStack.deserializeBytes(Base64.getDecoder().decode(data.getString("Items." + ID + ".Item")));
|
||||
List<String> lore = new ArrayList<>();
|
||||
|
||||
for (String l : config.getStringList("Settings.GUISettings.Bidding")) {
|
||||
@ -554,7 +552,7 @@ public class GuiListener implements Listener {
|
||||
|
||||
ItemBuilder itemBuilder = ItemBuilder.convertItemStack(item);
|
||||
|
||||
lore.forEach(itemBuilder::addLore);
|
||||
itemBuilder.setLore(lore);
|
||||
|
||||
return itemBuilder.build();
|
||||
}
|
||||
@ -661,7 +659,7 @@ public class GuiListener implements Listener {
|
||||
return;
|
||||
}
|
||||
|
||||
Bukkit.getPluginManager().callEvent(new AuctionNewBidEvent(player, data.getItemStack("Items." + ID + ".Item"), bid));
|
||||
Bukkit.getPluginManager().callEvent(new AuctionNewBidEvent(player, ItemStack.deserializeBytes(Base64.getDecoder().decode(data.getString("Items." + ID + ".Item"))), bid));
|
||||
data.set("Items." + ID + ".Price", bid);
|
||||
data.set("Items." + ID + ".TopBidder", player.getName());
|
||||
HashMap<String, String> placeholders = new HashMap<>();
|
||||
@ -810,12 +808,12 @@ public class GuiListener implements Listener {
|
||||
sellerPlayer.sendMessage(Messages.ADMIN_FORCE_CANCELLED_TO_PLAYER.getMessage());
|
||||
}
|
||||
|
||||
AuctionCancelledEvent event = new AuctionCancelledEvent((sellerPlayer != null ? sellerPlayer : Bukkit.getOfflinePlayer(seller)), data.getItemStack("Items." + i + ".Item"), Reaons.ADMIN_FORCE_CANCEL);
|
||||
AuctionCancelledEvent event = new AuctionCancelledEvent((sellerPlayer != null ? sellerPlayer : Bukkit.getOfflinePlayer(seller)), ItemStack.deserializeBytes(Base64.getDecoder().decode(data.getString("Items." + ID + ".Item"))), Reaons.ADMIN_FORCE_CANCEL);
|
||||
Bukkit.getPluginManager().callEvent(event);
|
||||
data.set("OutOfTime/Cancelled." + num + ".Seller", data.getString("Items." + i + ".Seller"));
|
||||
data.set("OutOfTime/Cancelled." + num + ".Full-Time", data.getLong("Items." + i + ".Full-Time"));
|
||||
data.set("OutOfTime/Cancelled." + num + ".StoreID", data.getInt("Items." + i + ".StoreID"));
|
||||
data.set("OutOfTime/Cancelled." + num + ".Item", data.getItemStack("Items." + i + ".Item"));
|
||||
data.set("OutOfTime/Cancelled." + num + ".Item", data.getString("Items." + ID + ".Item"));
|
||||
data.set("Items." + i, null);
|
||||
Files.DATA.saveFile();
|
||||
player.sendMessage(Messages.ADMIN_FORCE_CANCELLED.getMessage());
|
||||
@ -944,7 +942,8 @@ public class GuiListener implements Listener {
|
||||
return;
|
||||
}
|
||||
|
||||
ItemStack i = data.getItemStack("Items." + ID + ".Item");
|
||||
ItemStack i = ItemStack.deserializeBytes(Base64.getDecoder().decode(data.getString("Items." + ID + ".Item")));
|
||||
|
||||
plugin.getServer().getPluginManager().callEvent(new AuctionBuyEvent(player, i, cost));
|
||||
plugin.getSupport().removeMoney(player, cost);
|
||||
plugin.getSupport().addMoney(Methods.getOfflinePlayer(seller), cost);
|
||||
@ -1006,14 +1005,14 @@ public class GuiListener implements Listener {
|
||||
int ID = data.getInt("Items." + i + ".StoreID");
|
||||
if (id == ID) {
|
||||
player.sendMessage(Messages.CANCELLED_ITEM.getMessage());
|
||||
AuctionCancelledEvent event = new AuctionCancelledEvent(player, data.getItemStack("Items." + i + ".Item"), Reaons.PLAYER_FORCE_CANCEL);
|
||||
AuctionCancelledEvent event = new AuctionCancelledEvent(player, ItemStack.deserializeBytes(Base64.getDecoder().decode(data.getString("Items." + i + ".Item"))), Reaons.PLAYER_FORCE_CANCEL);
|
||||
Bukkit.getPluginManager().callEvent(event);
|
||||
int num = 1;
|
||||
for (; data.contains("OutOfTime/Cancelled." + num); num++) ;
|
||||
data.set("OutOfTime/Cancelled." + num + ".Seller", data.getString("Items." + i + ".Seller"));
|
||||
data.set("OutOfTime/Cancelled." + num + ".Full-Time", data.getLong("Items." + i + ".Full-Time"));
|
||||
data.set("OutOfTime/Cancelled." + num + ".StoreID", data.getInt("Items." + i + ".StoreID"));
|
||||
data.set("OutOfTime/Cancelled." + num + ".Item", data.getItemStack("Items." + i + ".Item"));
|
||||
data.set("OutOfTime/Cancelled." + num + ".Item", data.getString("Items." + i + ".Item"));
|
||||
data.set("Items." + i, null);
|
||||
Files.DATA.saveFile();
|
||||
playClick(player);
|
||||
@ -1070,7 +1069,7 @@ public class GuiListener implements Listener {
|
||||
player.sendMessage(Messages.INVENTORY_FULL.getMessage());
|
||||
break;
|
||||
} else {
|
||||
player.getInventory().addItem(data.getItemStack("OutOfTime/Cancelled." + i + ".Item"));
|
||||
player.getInventory().addItem(ItemStack.deserializeBytes(Base64.getDecoder().decode(data.getString("OutOfTime/Cancelled." + i + ".Item"))));
|
||||
data.set("OutOfTime/Cancelled." + i, null);
|
||||
}
|
||||
}
|
||||
@ -1103,8 +1102,7 @@ public class GuiListener implements Listener {
|
||||
if (id == ID) {
|
||||
if (!Methods.isInvFull(player)) {
|
||||
player.sendMessage(Messages.GOT_ITEM_BACK.getMessage());
|
||||
ItemStack IT = data.getItemStack("OutOfTime/Cancelled." + i + ".Item");
|
||||
player.getInventory().addItem(IT);
|
||||
player.getInventory().addItem(ItemStack.deserializeBytes(Base64.getDecoder().decode(data.getString("OutOfTime/Cancelled." + i + ".Item"))));
|
||||
data.set("OutOfTime/Cancelled." + i, null);
|
||||
Files.DATA.saveFile();
|
||||
playClick(player);
|
||||
|
Loading…
Reference in New Issue
Block a user