Skip to content

Commit 22e26ec

Browse files
committed
Restore files removed in clean commit
1 parent 075b192 commit 22e26ec

34 files changed

Lines changed: 315 additions & 104 deletions
Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,22 @@
11
package jp.s12kuma01.celeritasextra;
22

3-
import java.util.List;
4-
import java.util.Set;
5-
3+
import net.minecraftforge.fml.common.Loader;
64
import org.objectweb.asm.tree.ClassNode;
75
import org.spongepowered.asm.mixin.extensibility.IMixinConfigPlugin;
86
import org.spongepowered.asm.mixin.extensibility.IMixinInfo;
97

8+
import java.util.List;
9+
import java.util.Set;
10+
1011
/**
11-
* Mixin configuration plugin for Celeritas Extra.
12-
* Currently uses default behavior for all mixins.
12+
* Mixin configuration plugin for Celeritas Extra
13+
* Handles conditional mixin loading based on mod compatibility
1314
*/
1415
public class CeleritasExtraMixinConfigPlugin implements IMixinConfigPlugin {
1516

1617
@Override
1718
public void onLoad(String mixinPackage) {
19+
// No initialization needed
1820
}
1921

2022
@Override
@@ -24,13 +26,14 @@ public String getRefMapperConfig() {
2426

2527
@Override
2628
public boolean shouldApplyMixin(String targetClassName, String mixinClassName) {
27-
// Currently all mixins are applied unconditionally
28-
// Can add conditional loading based on mod compatibility if needed
29+
// Add conditional mixin loading based on mod compatibility here
30+
// For example, only load certain mixins if specific mods are present
2931
return true;
3032
}
3133

3234
@Override
3335
public void acceptTargets(Set<String> myTargets, Set<String> otherTargets) {
36+
// No target filtering needed
3437
}
3538

3639
@Override
@@ -40,9 +43,11 @@ public List<String> getMixins() {
4043

4144
@Override
4245
public void preApply(String targetClassName, ClassNode targetClass, String mixinClassName, IMixinInfo mixinInfo) {
46+
// No pre-apply logic needed
4347
}
4448

4549
@Override
4650
public void postApply(String targetClassName, ClassNode targetClass, String mixinClassName, IMixinInfo mixinInfo) {
51+
// No post-apply logic needed
4752
}
4853
}

src/main/java/jp/s12kuma01/celeritasextra/CeleritasExtraMod.java

Lines changed: 10 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,20 @@
11
package jp.s12kuma01.celeritasextra;
22

3-
import jp.s12kuma01.celeritasextra.client.CeleritasExtraClientMod;
4-
import jp.s12kuma01.celeritasextra.client.gui.CeleritasExtraOptionsListener;
5-
6-
import net.minecraftforge.fml.common.FMLCommonHandler;
3+
import net.minecraftforge.common.MinecraftForge;
74
import net.minecraftforge.fml.common.Loader;
85
import net.minecraftforge.fml.common.Mod;
96
import net.minecraftforge.fml.common.event.FMLConstructionEvent;
107
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
118
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
12-
139
import org.apache.logging.log4j.LogManager;
1410
import org.apache.logging.log4j.Logger;
1511
import org.taumc.celeritas.api.OptionGUIConstructionEvent;
1612

13+
/**
14+
* Celeritas Extra - A port of Embeddium Extra to Celeritas 1.12.2
15+
*
16+
* @author Karnatour (port), FlashyReese (original)
17+
*/
1718
@Mod(modid = CeleritasExtraMod.MOD_ID, name = CeleritasExtraMod.MOD_NAME, version = CeleritasExtraMod.VERSION,
1819
clientSideOnly = true, acceptableRemoteVersions = "*")
1920
public class CeleritasExtraMod {
@@ -26,19 +27,13 @@ public class CeleritasExtraMod {
2627
@Mod.Instance
2728
public static CeleritasExtraMod INSTANCE;
2829

29-
/**
30-
* Construction phase - registers Celeritas Extra options with Celeritas GUI.
31-
* Checks for Celeritas 2.4.0+ compatibility by verifying OptionGUIConstructionEvent exists.
32-
*/
3330
@Mod.EventHandler
3431
public void construct(FMLConstructionEvent event) {
3532
if (Loader.isModLoaded("celeritas")) {
3633
try {
37-
// Verify Celeritas version is 2.4.0 or newer by checking for API class
3834
Class.forName("org.taumc.celeritas.api.OptionGUIConstructionEvent");
39-
40-
// Register our options listener to Celeritas GUI system
41-
OptionGUIConstructionEvent.BUS.addListener(CeleritasExtraOptionsListener::onCeleritasOptionsConstruct);
35+
// Register option GUI construction listener
36+
OptionGUIConstructionEvent.BUS.addListener(jp.s12kuma01.celeritasextra.client.gui.CeleritasExtraOptionsListener::onCeleritasOptionsConstruct);
4237
LOGGER.info("Successfully registered Celeritas Extra with Celeritas GUI");
4338
} catch (Throwable t) {
4439
if (t instanceof NoClassDefFoundError) {
@@ -57,14 +52,10 @@ public void preInit(FMLPreInitializationEvent event) {
5752
LOGGER.info("Celeritas Extra pre-initialization");
5853
}
5954

60-
/**
61-
* Initialization phase - initializes client-side configuration.
62-
*/
6355
@Mod.EventHandler
6456
public void init(FMLInitializationEvent event) {
65-
// Only initialize on client side (this is a client-only mod)
66-
if (FMLCommonHandler.instance().getEffectiveSide().isClient()) {
67-
CeleritasExtraClientMod.onClientInit();
57+
if (net.minecraftforge.fml.common.FMLCommonHandler.instance().getEffectiveSide().isClient()) {
58+
jp.s12kuma01.celeritasextra.client.CeleritasExtraClientMod.onClientInit();
6859
}
6960
LOGGER.info("Celeritas Extra initialized");
7061
}
Lines changed: 5 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,39 @@
11
package jp.s12kuma01.celeritasextra.client;
22

3-
import java.io.File;
4-
53
import jp.s12kuma01.celeritasextra.CeleritasExtraMod;
64
import jp.s12kuma01.celeritasextra.client.gui.CeleritasExtraGameOptions;
7-
85
import net.minecraftforge.fml.common.FMLCommonHandler;
96

7+
import java.io.File;
8+
109
/**
11-
* Client-side initialization and configuration management for Celeritas Extra.
10+
* Client-side handler for Celeritas Extra
1211
*/
1312
public class CeleritasExtraClientMod {
1413

1514
private static CeleritasExtraGameOptions CONFIG;
1615

17-
/**
18-
* Gets the mod configuration, loading it lazily if needed.
19-
*
20-
* @return The configuration instance
21-
*/
2216
public static CeleritasExtraGameOptions options() {
2317
if (CONFIG == null) {
2418
CONFIG = loadConfig();
2519
}
2620
return CONFIG;
2721
}
2822

29-
/**
30-
* Loads configuration from disk.
31-
* Creates config directory if it doesn't exist.
32-
*
33-
* @return Loaded configuration instance
34-
*/
3523
private static CeleritasExtraGameOptions loadConfig() {
3624
File configDir = new File("config");
3725
if (!configDir.exists()) {
3826
configDir.mkdirs();
3927
}
40-
4128
File configFile = new File(configDir, "celeritas-extra-options.json");
4229
return CeleritasExtraGameOptions.load(configFile);
4330
}
4431

45-
/**
46-
* Called during client initialization.
47-
* Triggers configuration loading.
48-
*/
4932
public static void onClientInit() {
5033
if (FMLCommonHandler.instance().getEffectiveSide().isClient()) {
5134
CeleritasExtraMod.LOGGER.info("Initializing Celeritas Extra client...");
52-
options(); // Load config
35+
// Load configuration
36+
options();
5337
}
5438
}
5539
}

src/main/java/jp/s12kuma01/celeritasextra/client/gui/CeleritasExtraGameOptionPages.java

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,20 @@
1515
import java.util.ArrayList;
1616
import java.util.List;
1717

18+
/**
19+
* Defines all option pages for Celeritas Extra
20+
*/
1821
public class CeleritasExtraGameOptionPages {
1922

2023
private static final CeleritasExtraOptionsStorage celeritasExtraOpts = new CeleritasExtraOptionsStorage();
2124

25+
/**
26+
* Animation settings page
27+
*/
2228
public static OptionPage animation() {
2329
List<OptionGroup> groups = new ArrayList<>();
2430

31+
// All animations toggle
2532
groups.add(OptionGroup.createBuilder()
2633
.add(OptionImpl.createBuilder(boolean.class, celeritasExtraOpts)
2734
.setName(TextComponent.literal(I18n.format("celeritasextra.option.animations.all")))
@@ -34,6 +41,7 @@ public static OptionPage animation() {
3441
)
3542
.build());
3643

44+
// Individual animation controls
3745
groups.add(OptionGroup.createBuilder()
3846
.add(OptionImpl.createBuilder(boolean.class, celeritasExtraOpts)
3947
.setName(TextComponent.literal(I18n.format("celeritasextra.option.animations.water")))
@@ -85,9 +93,13 @@ public static OptionPage animation() {
8593
return new OptionPage(CeleritasExtraOptionPages.ANIMATION, TextComponent.literal(I18n.format("celeritasextra.option.page.animations")), ImmutableList.copyOf(groups));
8694
}
8795

96+
/**
97+
* Particle settings page
98+
*/
8899
public static OptionPage particle() {
89100
List<OptionGroup> groups = new ArrayList<>();
90101

102+
// All particles toggle
91103
groups.add(OptionGroup.createBuilder()
92104
.add(OptionImpl.createBuilder(boolean.class, celeritasExtraOpts)
93105
.setName(TextComponent.literal(I18n.format("celeritasextra.option.particles.all")))
@@ -99,6 +111,7 @@ public static OptionPage particle() {
99111
)
100112
.build());
101113

114+
// Individual particle controls
102115
groups.add(OptionGroup.createBuilder()
103116
.add(OptionImpl.createBuilder(boolean.class, celeritasExtraOpts)
104117
.setName(TextComponent.literal(I18n.format("celeritasextra.option.particles.rain_splash")))
@@ -126,9 +139,15 @@ public static OptionPage particle() {
126139
)
127140
.build());
128141

142+
// NOTE: Individual particle type control is currently disabled due to mixin implementation issues
143+
// Only basic particle controls (rain splash, block break, block breaking) are available
144+
129145
return new OptionPage(CeleritasExtraOptionPages.PARTICLE, TextComponent.literal(I18n.format("celeritasextra.option.page.particles")), ImmutableList.copyOf(groups));
130146
}
131147

148+
/**
149+
* Detail settings page
150+
*/
132151
public static OptionPage details() {
133152
List<OptionGroup> groups = new ArrayList<>();
134153

@@ -182,6 +201,9 @@ public static OptionPage details() {
182201
return new OptionPage(CeleritasExtraOptionPages.DETAILS, TextComponent.literal(I18n.format("celeritasextra.option.page.details")), ImmutableList.copyOf(groups));
183202
}
184203

204+
/**
205+
* Render settings page
206+
*/
185207
public static OptionPage render() {
186208
List<OptionGroup> groups = new ArrayList<>();
187209

@@ -295,6 +317,9 @@ public static OptionPage render() {
295317
return new OptionPage(CeleritasExtraOptionPages.RENDER, TextComponent.literal(I18n.format("celeritasextra.option.page.render")), ImmutableList.copyOf(groups));
296318
}
297319

320+
/**
321+
* Extra settings page
322+
*/
298323
public static OptionPage extra() {
299324
List<OptionGroup> groups = new ArrayList<>();
300325

src/main/java/jp/s12kuma01/celeritasextra/client/gui/CeleritasExtraGameOptions.java

Lines changed: 9 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,19 @@
11
package jp.s12kuma01.celeritasextra.client.gui;
22

3+
import com.google.gson.FieldNamingPolicy;
4+
import com.google.gson.Gson;
5+
import com.google.gson.GsonBuilder;
6+
import jp.s12kuma01.celeritasextra.CeleritasExtraMod;
7+
38
import java.io.File;
49
import java.io.FileReader;
510
import java.io.FileWriter;
611
import java.io.IOException;
712
import java.lang.reflect.Modifier;
8-
import java.util.HashMap;
9-
import java.util.Map;
10-
11-
import com.google.gson.FieldNamingPolicy;
12-
import com.google.gson.Gson;
13-
import com.google.gson.GsonBuilder;
14-
15-
import jp.s12kuma01.celeritasextra.CeleritasExtraMod;
1613

1714
/**
18-
* Main configuration class for Celeritas Extra.
19-
* Stores all game options and settings, serialized to JSON.
15+
* Main configuration class for Celeritas Extra
16+
* Stores all game options and settings
2017
*/
2118
public class CeleritasExtraGameOptions {
2219

@@ -34,13 +31,6 @@ public class CeleritasExtraGameOptions {
3431

3532
private File file;
3633

37-
/**
38-
* Loads configuration from the specified file.
39-
* Falls back to defaults if file doesn't exist or parsing fails.
40-
*
41-
* @param file Configuration file path
42-
* @return Loaded configuration instance
43-
*/
4434
public static CeleritasExtraGameOptions load(File file) {
4535
CeleritasExtraGameOptions config;
4636

@@ -61,9 +51,6 @@ public static CeleritasExtraGameOptions load(File file) {
6151
return config;
6252
}
6353

64-
/**
65-
* Writes current configuration to disk.
66-
*/
6754
public void writeChanges() {
6855
File dir = this.file.getParentFile();
6956

@@ -82,7 +69,7 @@ public void writeChanges() {
8269
}
8370
}
8471

85-
/** Animation settings for textures. */
72+
// Settings classes
8673
public static class AnimationSettings {
8774
public boolean animation = true;
8875
public boolean water = true;
@@ -93,16 +80,14 @@ public static class AnimationSettings {
9380
public boolean sculkSensor = true;
9481
}
9582

96-
/** Particle rendering settings. */
9783
public static class ParticleSettings {
9884
public boolean particles = true;
9985
public boolean rainSplash = true;
10086
public boolean blockBreak = true;
10187
public boolean blockBreaking = true;
102-
public Map<String, Boolean> otherMap = new HashMap<>();
88+
public java.util.Map<String, Boolean> otherMap = new java.util.HashMap<>();
10389
}
10490

105-
/** World detail settings (sky, weather, biome colors). */
10691
public static class DetailSettings {
10792
public boolean sky = true;
10893
public boolean stars = true;
@@ -111,7 +96,6 @@ public static class DetailSettings {
11196
public boolean biomeColors = true;
11297
}
11398

114-
/** Rendering optimizations and entity rendering controls. */
11599
public static class RenderSettings {
116100
public boolean fog = true;
117101
public int fogStart = 100;
@@ -131,7 +115,6 @@ public static class RenderSettings {
131115
public boolean preventShaders = false;
132116
}
133117

134-
/** Extra features (overlays, HUD, accessibility). */
135118
public static class ExtraSettings {
136119
public boolean showFps = false;
137120
public boolean showCoords = false;

0 commit comments

Comments
 (0)