From 857d8eaf4aaa268bbb14e3a22122ad4f3a1a9b18 Mon Sep 17 00:00:00 2001 From: Aria Date: Sat, 22 Apr 2023 06:31:28 -0700 Subject: [PATCH] Ensure the system account is available, and has sufficient funds! --- gradle.properties | 2 +- .../zontreck/libzontreck/currency/Bank.java | 26 ++++++++++++++++++- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/gradle.properties b/gradle.properties index fe9a323..434074e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,7 +5,7 @@ org.gradle.daemon=false mc_version=1.19.4 forge_version=45.0.46 -myversion=1.0.7.0422230450 +myversion=1.0.7.0422230620 # parchment_version=2023.03.12 # luckperms_api_version=5.4 diff --git a/src/main/java/dev/zontreck/libzontreck/currency/Bank.java b/src/main/java/dev/zontreck/libzontreck/currency/Bank.java index da77f82..87f79e6 100644 --- a/src/main/java/dev/zontreck/libzontreck/currency/Bank.java +++ b/src/main/java/dev/zontreck/libzontreck/currency/Bank.java @@ -31,16 +31,40 @@ import java.util.List; import java.util.UUID; import java.util.stream.Collectors; +/** + * SERVER-SIDE ONLY + */ public class Bank { public static final Path BANK_DATA; + public static Account SYSTEM; + + public static final UUID SYSTEM_ACCOUNT_ID; static { + SYSTEM_ACCOUNT_ID = new UUID(0x9fc8, 0x829fcc); BANK_DATA = LibZontreck.BASE_CONFIG.resolve("bank.nbt"); } private Bank(){ - load(); + if(ServerUtilities.isServer()) + load(); + else { + if(BANK_DATA.toFile().exists()) + BANK_DATA.toFile().delete(); + + return; + } + + SYSTEM = getAccount(SYSTEM_ACCOUNT_ID); + if(SYSTEM == null) + { + makeAccount(SYSTEM_ACCOUNT_ID); + SYSTEM=getAccount(SYSTEM_ACCOUNT_ID); + + SYSTEM.balance = 0xFFFFFF; + instance.commit(); + } } /**