yippie it works wowiee
(This shit sucks.)
This commit is contained in:
jayalicious 2023-03-10 00:01:59 +01:00
parent 9c3aa34ec6
commit 8a40bbaf18
5 changed files with 35 additions and 16 deletions

View file

@ -25,9 +25,8 @@ public class FemalePlayerBTA implements ModInitializer {
File settingsFile = FabricLoader.getInstance().getConfigDir().resolve(FEM_SETTINGS_FILE).toFile();
if (!settingsFile.exists()) {
LOGGER.warn("BTA FemPlayer - Settings file doesn't exist, creating one now");
GenderSettings.writeSettings();
}
GenderSettings.readSettings();
}
}

View file

@ -3,7 +3,6 @@ package sh.hl2.btafemaleplayer;
import net.fabricmc.loader.api.FabricLoader;
import java.io.*;
import java.util.Scanner;
public class GenderSettings {
private static String playerGender = "m";
@ -24,30 +23,27 @@ public class GenderSettings {
}
public static void writeSettings() {
FemalePlayerBTA.LOGGER.warn("BTA FemPlayer - Writing settings file");
try {
BufferedWriter writer = new BufferedWriter(new FileWriter(file));
writer.write(playerGender);
writer.close();
} catch (IllegalAccessException e) {
} catch (Exception e) {
FemalePlayerBTA.LOGGER.error("BTA FemPlayer - Failed to write settings file!");
e.printStackTrace();
}
}
public static void readSettings() {
FemalePlayerBTA.LOGGER.warn("BTA FemPlayer - Reading settings file");
try {
Scanner reader = new Scanner(file);
String data = "m";
while (reader.hasNextLine()) {
data = reader.nextLine();
FemalePlayerBTA.LOGGER.warn("BTA FemPlayer [DEBUG] - Read gender as " + data);
}
reader.close();
setGender(data);
} catch (FileNotFoundException e) {
BufferedReader reader = new BufferedReader(new FileReader(file));
String value = reader.readLine();
setGender(value);
} catch (Exception e) {
FemalePlayerBTA.LOGGER.error("BTA FemPlayer - Failed to read settings file!");
e.printStackTrace();
}
setGender("m");
}
}

View file

@ -41,6 +41,9 @@ extends Command {
public void sendCommandSyntax(CommandHandler handler, CommandSender sender) {
if (sender instanceof PlayerCommandSender) {
sender.sendMessage("/gender <[male/m] | [female/f]>");
String genTemp = GenderSettings.getGender().equalsIgnoreCase("m") ? "Male" : "Female";
sender.sendMessage("Current gender: " + genTemp);
}
}
}

View file

@ -0,0 +1,20 @@
package sh.hl2.btafemaleplayer.mixin;
import net.minecraft.src.GameSettings;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import sh.hl2.btafemaleplayer.GenderSettings;
@Mixin(value = GameSettings.class, remap = false)
public class GameSettingsMixin {
@Inject(method = "loadOptions", at = @At("TAIL"))
public void loadOptions(CallbackInfo ci) {
GenderSettings.readSettings();
}
@Inject(method = "saveOptions", at = @At("TAIL"))
public void saveOptions(CallbackInfo ci) {
GenderSettings.writeSettings();
}
}

View file

@ -7,7 +7,8 @@
],
"client": [
"EntityLivingMixin",
"CommandsMixin"
"CommandsMixin",
"GameSettingsMixin"
],
"injectors": {
"defaultRequire": 1