aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common
diff options
context:
space:
mode:
authorConnor-Colenso <52056774+Connor-Colenso@users.noreply.github.com>2022-08-12 19:33:19 +0100
committerGitHub <noreply@github.com>2022-08-12 20:33:19 +0200
commitd815f1f0e7b267c1c7ef97fdf2c790b6c9f6a378 (patch)
treed042d89edf9a381b506d9ec4799fb940eabc203a /src/main/java/gregtech/common
parent12e9cf136d16435a6168402831c1a42dca75c3e1 (diff)
downloadGT5-Unofficial-d815f1f0e7b267c1c7ef97fdf2c790b6c9f6a378.tar.gz
GT5-Unofficial-d815f1f0e7b267c1c7ef97fdf2c790b6c9f6a378.tar.bz2
GT5-Unofficial-d815f1f0e7b267c1c7ef97fdf2c790b6c9f6a378.zip
More wireless fixes/updates (#1206)
* Fix possible out-of-bounds error. * Bye bye OpV * Bye bye OpV * Some textures while I'm here * Test * Maybe * New command * Fix forge minecraft shenanigans interfering with saving data. * Localisation of achievements * Add save intervals for energy map. * Refactor as to not use dumb bloat * New interface for wireless hatches * Remove prefix * Big refactor and code cleanup. Also fixes bug with energy not getting added sometimes * Fix typo causing ore dict issues * New interface * Clean up commands a little * Add some colouring and clean up a little. * Update desc * Add more catches for command misuse and colours * Jenkins Co-authored-by: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com>
Diffstat (limited to 'src/main/java/gregtech/common')
-rw-r--r--src/main/java/gregtech/common/GT_Proxy.java4
-rw-r--r--src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java14
-rw-r--r--src/main/java/gregtech/common/misc/GT_Command.java130
3 files changed, 106 insertions, 42 deletions
diff --git a/src/main/java/gregtech/common/GT_Proxy.java b/src/main/java/gregtech/common/GT_Proxy.java
index bc5b5f3fb1..af70a836d9 100644
--- a/src/main/java/gregtech/common/GT_Proxy.java
+++ b/src/main/java/gregtech/common/GT_Proxy.java
@@ -909,8 +909,8 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG
public void onServerStopping() {
File tSaveDirectory = getSaveDirectory();
GregTech_API.sWirelessRedstone.clear();
- IGlobalWirelessEnergy.super.SaveGlobalEnergyInfo(mUniverse.getWorldInfo().getWorldName());
- IGlobalWirelessEnergy.super.ClearMaps();
+ saveGlobalEnergyInfo(mUniverse.getWorldInfo().getWorldName());
+ clearMaps();
if (tSaveDirectory != null) {
try {
for (int i = 1; i < GregTech_API.METATILEENTITIES.length; i++) {
diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java
index d60bef3ff0..1e3402618a 100644
--- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java
+++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java
@@ -279,27 +279,27 @@ public class GT_MetaGenerated_Item_03
OreDictionary.registerOre("UHV", ItemList.Circuit_ExoticProcessor.get(1));
ItemList.Circuit_ExoticAssembly.set(addItem(tLastID = 167, "Exotic Assembly", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Bio), SubTag.NO_UNIFICATION));
OreDictionary.registerOre("UEV", ItemList.Circuit_ExoticAssembly.get(1));
- ItemList.Circuit_ExoticComputer.set(addItem(tLastID = 168, "Exotic Computer", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Exotic), SubTag.NO_UNIFICATION));
+ ItemList.Circuit_ExoticComputer.set(addItem(tLastID = 168, "Exotic Computer", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Optical), SubTag.NO_UNIFICATION));
OreDictionary.registerOre("UIV", ItemList.Circuit_ExoticComputer.get(1));
ItemList.Circuit_ExoticMainframe.set(addItem(tLastID = 169, "Exotic Mainframe", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Exotic), SubTag.NO_UNIFICATION));
OreDictionary.registerOre("UMV", ItemList.Circuit_ExoticMainframe.get(1));
// Cosmic circuits
- ItemList.Circuit_CosmicProcessor.set(addItem(tLastID = 170, "Cosmic Processor", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Cosmic), SubTag.NO_UNIFICATION));
+ ItemList.Circuit_CosmicProcessor.set(addItem(tLastID = 170, "Cosmic Processor", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Bio), SubTag.NO_UNIFICATION));
OreDictionary.registerOre("UEV", ItemList.Circuit_CosmicProcessor.get(1));
- ItemList.Circuit_CosmicAssembly.set(addItem(tLastID = 171, "Cosmic Assembly", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Cosmic), SubTag.NO_UNIFICATION));
+ ItemList.Circuit_CosmicAssembly.set(addItem(tLastID = 171, "Cosmic Assembly", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Optical), SubTag.NO_UNIFICATION));
OreDictionary.registerOre("UIV", ItemList.Circuit_CosmicAssembly.get(1));
- ItemList.Circuit_CosmicComputer.set(addItem(tLastID = 172, "Cosmic Computer", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Cosmic), SubTag.NO_UNIFICATION));
+ ItemList.Circuit_CosmicComputer.set(addItem(tLastID = 172, "Cosmic Computer", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Exotic), SubTag.NO_UNIFICATION));
OreDictionary.registerOre("UMV", ItemList.Circuit_CosmicComputer.get(1));
ItemList.Circuit_CosmicMainframe.set(addItem(tLastID = 173, "Cosmic Mainframe", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Cosmic), SubTag.NO_UNIFICATION));
OreDictionary.registerOre("UXV", ItemList.Circuit_CosmicMainframe.get(1));
// Transcendent circuits
- ItemList.Circuit_TranscendentProcessor.set(addItem(tLastID = 174, "Temporally Transcendent Processor", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Transcendent), SubTag.NO_UNIFICATION));
+ ItemList.Circuit_TranscendentProcessor.set(addItem(tLastID = 174, "Temporally Transcendent Processor", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Optical), SubTag.NO_UNIFICATION));
OreDictionary.registerOre("UIV", ItemList.Circuit_TranscendentProcessor.get(1));
- ItemList.Circuit_TranscendentAssembly.set(addItem(tLastID = 175, "Temporally Transcendent Assembly", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Transcendent), SubTag.NO_UNIFICATION));
+ ItemList.Circuit_TranscendentAssembly.set(addItem(tLastID = 175, "Temporally Transcendent Assembly", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Exotic), SubTag.NO_UNIFICATION));
OreDictionary.registerOre("UMV", ItemList.Circuit_TranscendentAssembly.get(1));
- ItemList.Circuit_TranscendentComputer.set(addItem(tLastID = 176, "Temporally Transcendent Computer", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Transcendent), SubTag.NO_UNIFICATION));
+ ItemList.Circuit_TranscendentComputer.set(addItem(tLastID = 176, "Temporally Transcendent Computer", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Cosmic), SubTag.NO_UNIFICATION));
OreDictionary.registerOre("UXV", ItemList.Circuit_TranscendentComputer.get(1));
ItemList.Circuit_TranscendentMainframe.set(addItem(tLastID = 177, "Temporally Transcendent Mainframe", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Transcendent), SubTag.NO_UNIFICATION));
OreDictionary.registerOre("MAX", ItemList.Circuit_TranscendentMainframe.get(1));
diff --git a/src/main/java/gregtech/common/misc/GT_Command.java b/src/main/java/gregtech/common/misc/GT_Command.java
index c478d219c7..29fd7a0226 100644
--- a/src/main/java/gregtech/common/misc/GT_Command.java
+++ b/src/main/java/gregtech/common/misc/GT_Command.java
@@ -52,11 +52,14 @@ public final class GT_Command extends CommandBase implements IGlobalWirelessEner
));
sender.addChatMessage(new ChatComponentText(EnumChatFormatting.GOLD + " --- Global wireless EU controls ---"));
sender.addChatMessage(new ChatComponentText("Allows you to set the amount of EU in a users wireless network."));
- sender.addChatMessage(new ChatComponentText("Usage: global_energy_set [Name] [EU]"));
+ sender.addChatMessage(new ChatComponentText("Usage:" + EnumChatFormatting.RED + " global_energy_set " + EnumChatFormatting.BLUE + "[Name] " + EnumChatFormatting.LIGHT_PURPLE + "[EU]"));
sender.addChatMessage(new ChatComponentText("Allows you to add EU to a users wireless network. Also accepts negative numbers."));
- sender.addChatMessage(new ChatComponentText("Usage: global_energy_add [Name] [EU]"));
+ sender.addChatMessage(new ChatComponentText("Usage:" + EnumChatFormatting.RED + " global_energy_add " + EnumChatFormatting.BLUE + "[Name] " + EnumChatFormatting.LIGHT_PURPLE + "[EU]"));
sender.addChatMessage(new ChatComponentText("Allows you to join two users together into one network. Can be undone by writing the users name twice."));
- sender.addChatMessage(new ChatComponentText("Usage: global_energy_join [User joining] [User to join]"));
+ sender.addChatMessage(new ChatComponentText("Usage:" + EnumChatFormatting.RED + " global_energy_join " + EnumChatFormatting.BLUE + "[User joining] [User to join]"));
+ sender.addChatMessage(new ChatComponentText("Shows the amount of EU in a users energy network."));
+ sender.addChatMessage(new ChatComponentText("Usage:" + EnumChatFormatting.RED + " global_energy_display " + EnumChatFormatting.BLUE + "[Name]"));
+
}
@Override
@@ -83,10 +86,6 @@ public final class GT_Command extends CommandBase implements IGlobalWirelessEner
printHelp(sender);
return;
}
-
- String username;
- String uuid;
-
switch (strings[0]) {
case "toggle":
if (strings.length < 2) {
@@ -127,73 +126,138 @@ public final class GT_Command extends CommandBase implements IGlobalWirelessEner
amount
);
break;
- case "global_energy_add":
-
- username = strings[1];
- uuid = IGlobalWirelessEnergy.super.GetUUIDFromUsername(username);
+ case "global_energy_add": {
+ String username = strings[1];
+ String formatted_username = EnumChatFormatting.BLUE + username + EnumChatFormatting.RESET;
+ String uuid = getUUIDFromUsername(username);
String EU_String = strings[2];
// Usage is /gt global_energy_add username EU
if (uuid.equals("")) {
- sender.addChatMessage(new ChatComponentText("User " + username + " has no global energy network."));
+ sender.addChatMessage(new ChatComponentText("User " + formatted_username + " has no global energy network."));
break;
}
+ String EU_string_formatted = EnumChatFormatting.RED + GT_Utility.formatNumbers(new BigInteger(EU_String)) + EnumChatFormatting.RESET;
+
if (addEUToGlobalEnergyMap(uuid, new BigInteger(EU_String)))
- sender.addChatMessage(new ChatComponentText("Successfully added " + EU_String + "EU to the global energy network of " + username + "."));
+ sender.addChatMessage(new ChatComponentText("Successfully added "
+ + EU_string_formatted + "EU to the global energy network of " + formatted_username + "."));
else
- sender.addChatMessage(new ChatComponentText("Failed to add " + EU_String + "EU to the global energy map of " + username +
- ". Insufficient energy in network. " + username + "currently has " + IGlobalWirelessEnergy.super.GetUserEU(uuid).toString() + " in their network."));
+ sender.addChatMessage(new ChatComponentText(
+ "Failed to add " + EU_string_formatted + "EU to the global energy map of " +
+ formatted_username + ". Insufficient energy in network. "));
+
+ sender.addChatMessage(new ChatComponentText(formatted_username + " currently has " + EnumChatFormatting.RED +
+ GT_Utility.formatNumbers(new BigInteger(getUserEU(uuid).toString())) + EnumChatFormatting.RESET +
+ "EU in their network."));
break;
- case "global_energy_set":
+ }
+ case "global_energy_set": {
// Usage is /gt global_energy_set username EU
- username = strings[1];
- uuid = IGlobalWirelessEnergy.super.GetUUIDFromUsername(username);
+ String username = strings[1];
+ String formatted_username = EnumChatFormatting.BLUE + username + EnumChatFormatting.RESET;
+ String uuid = getUUIDFromUsername(username);
+
+ if (uuid.equals("")) {
+ sender.addChatMessage(new ChatComponentText(
+ "User " + formatted_username + " has no global energy network."));
+ break;
+ }
String EU_String_0 = strings[2];
- IGlobalWirelessEnergy.super.SetUserEU(uuid, new BigInteger(EU_String_0));
- break;
+ if ((new BigInteger(EU_String_0).compareTo(BigInteger.ZERO)) < 0) {
+ sender.addChatMessage(new ChatComponentText("Cannot set a users energy network to a negative value."));
+ break;
+ }
+
+ setUserEU(uuid, new BigInteger(EU_String_0));
- case "global_energy_join":
+ sender.addChatMessage(new ChatComponentText(
+ "Successfully set " + formatted_username + "'s global energy network to " + EnumChatFormatting.RED +
+ GT_Utility.formatNumbers(new BigInteger(EU_String_0)) + EnumChatFormatting.RESET + "EU.")
+ );
+
+ break;
+ }
+ case "global_energy_join": {
// Usage is /gt global_energy_join username_of_you username_to_join
String username_0 = strings[1];
String username_1 = strings[2];
- String uuid_0 = IGlobalWirelessEnergy.super.GetUUIDFromUsername(username_0);
- String uuid_1 = IGlobalWirelessEnergy.super.GetUUIDFromUsername(username_1);
+ String formatted_username_0 = EnumChatFormatting.BLUE + username_0 + EnumChatFormatting.RESET;
+ String formatted_username_1 = EnumChatFormatting.BLUE + username_1 + EnumChatFormatting.RESET;
- if (uuid_0.equals("")) {
- sender.addChatMessage(new ChatComponentText("User " + username_0 + " has no global energy network."));
+ String uuid_0 = getUUIDFromUsername(username_0);
+ String uuid_1 = getUUIDFromUsername(username_1);
+
+ if (uuid_1.equals("") && uuid_0.equals("")) {
+ if (username_0.equals(username_1)) {
+ sender.addChatMessage(new ChatComponentText(
+ "User " + formatted_username_0 + " has no global energy network."));
+ } else {
+ sender.addChatMessage(new ChatComponentText(
+ "User " + formatted_username_0 + " and " + formatted_username_1 +
+ " have no global energy networks."));
+ }
break;
}
if (uuid_0.equals("")) {
- sender.addChatMessage(new ChatComponentText("User " + username_1 + " has no global energy network."));
+ sender.addChatMessage(new ChatComponentText(
+ "User " + formatted_username_0 + " has no global energy network."));
break;
}
- IGlobalWirelessEnergy.super.JoinUserNetwork(uuid_0, uuid_1);
+ if (uuid_1.equals("")) {
+ sender.addChatMessage(new ChatComponentText(
+ "User " + formatted_username_1 + " has no global energy network."));
+ break;
+ }
- sender.addChatMessage(new ChatComponentText("Success! " + username_0 + " has joined " + username_1 + "."));
- sender.addChatMessage(new ChatComponentText("To undo this simply join your own network again with /gt global_energy_join " + username_0 + " " + username_0 + "."));
+ if (uuid_0.equals(uuid_1)) {
+ joinUserNetwork(uuid_0, uuid_1);
+ sender.addChatMessage(new ChatComponentText("User " + formatted_username_0 +
+ " has rejoined their own global energy network."));
+ break;
+ }
+
+ joinUserNetwork(uuid_0, uuid_1);
+
+ sender.addChatMessage(new ChatComponentText("Success! " + formatted_username_0 + " has joined " + formatted_username_1 + "."));
+ sender.addChatMessage(new ChatComponentText("To undo this simply join your own network again with /gt global_energy_join " + formatted_username_0 + " " + formatted_username_0 + "."));
break;
- case "global_energy_display":
+ }
+ case "global_energy_display": {
+
+ // Usage is /gt global_energy_display username.
+
+ String username = strings[1];
+ String formatted_username = EnumChatFormatting.BLUE + username + EnumChatFormatting.RESET;
+ String uuid = getUUIDFromUsername(username);
- // Usage is /gt global_energy_display username
+ if (uuid.equals("")) {
+ sender.addChatMessage(new ChatComponentText(
+ "User " + formatted_username + " has no global energy network."));
+ break;
+ }
- String username_3 = strings[1];
- sender.addChatMessage(new ChatComponentText("User " + username_3 + " has " + EnumChatFormatting.RED + GT_Utility.formatNumbers(IGlobalWirelessEnergy.super.GetUserEU(IGlobalWirelessEnergy.super.GetUUIDFromUsername(username_3))) + EnumChatFormatting.RESET + "EU in their network."));
+ sender.addChatMessage(new ChatComponentText(
+ "User " + formatted_username + " has "
+ + EnumChatFormatting.RED + GT_Utility.formatNumbers(getUserEU(uuid)) + EnumChatFormatting.RESET
+ + "EU in their network."));
break;
+ }
default:
sender.addChatMessage(new ChatComponentText( EnumChatFormatting.RED + "Invalid command/syntax detected."));
printHelp(sender);