Skip to content

Commit 8bca84f

Browse files
committed
Backport The Rebirth Update: Part 2 to Minecraft 1.21.1
This is pending the readdition of the "Unbind Conflicting Key" feature
1 parent 0c92924 commit 8bca84f

34 files changed

+203
-375
lines changed

build-logic/src/main/kotlin/mod_conventions_common.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,10 @@ repositories {
4040
}
4141
exclusiveContent {
4242
forRepository {
43-
maven("https://maven.caffeinemc.net/releases")
43+
maven("https://maven.parchmentmc.org")
4444
}
4545
filter {
46-
includeGroup("net.caffeinemc")
46+
includeGroup("org.parchmentmc.data")
4747
}
4848
}
4949
mavenCentral()

gradle/libs.versions.toml

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,40 @@
11
[versions]
2-
minecraft = "1.21.11"
3-
minecraft_unobfuscated = "1.21.11_unobfuscated"
2+
minecraft = "1.21.1"
3+
parchment = "2024.11.17"
44

55
fabric_loom = "1.15.1"
66
fabric_loader = "0.18.4"
77
moddevgradle = "2.0.139"
8-
neoforge = "21.11.36-beta"
8+
neoforge = "21.1.218"
99

10-
fabric_api = "0.141.1+1.21.11"
10+
fabric_api = "0.116.7+1.21.1"
1111
wrench_wrapper = "0.8.1"
1212

13-
modmenu = "17.0.0-beta.2"
14-
sodium = "0.8.2+mc1.21.11"
13+
modmenu = "11.0.3"
14+
trinkets = "3.10.0"
15+
cca = "6.1.3"
1516

1617
[libraries]
1718
minecraft = { module = "com.mojang:minecraft", version.ref = "minecraft" }
18-
minecraft_unobfuscated = { module = "com.mojang:minecraft", version.ref = "minecraft_unobfuscated" }
1919
fabric_loader = { module = "net.fabricmc:fabric-loader", version.ref = "fabric_loader" }
20+
parchment = { module = "org.parchmentmc.data:parchment-1.21.1", version.ref = "parchment" }
2021

2122
fabric_api = { module = "net.fabricmc.fabric-api:fabric-api", version.ref = "fabric_api" }
2223
wrench_wrapper_api_fabric = { module = "page.langeweile.wrench_wrapper:api_fabric", version.ref = "wrench_wrapper" }
2324
wrench_wrapper_api_neoforge = { module = "page.langeweile.wrench_wrapper:api_neoforge", version.ref = "wrench_wrapper" }
2425
wrench_wrapper_impl = { module = "page.langeweile.wrench_wrapper:impl", version.ref = "wrench_wrapper" }
2526

2627
modmenu = { module = "com.terraformersmc:modmenu", version.ref = "modmenu" }
27-
sodium_fabric = { module = "net.caffeinemc:sodium-fabric-api", version.ref = "sodium" }
28-
sodium_neoforge = { module = "net.caffeinemc:sodium-neoforge-api", version.ref = "sodium" }
28+
trinkets = { module = "dev.emi:trinkets", version.ref = "trinkets" }
29+
cca_base = { module = "org.ladysnake.cardinal-components-api:cardinal-components-base", version.ref = "cca" }
30+
cca_entity = { module = "org.ladysnake.cardinal-components-api:cardinal-components-entity", version.ref = "cca" }
2931

3032
# If you have multiple similar dependencies, you can declare a dependency bundle and reference it on the build script with "libs.bundles.example".
3133
[bundles]
3234
wrench_wrapper_fabric = ["wrench_wrapper_api_fabric", "wrench_wrapper_impl"]
3335
wrench_wrapper_neoforge = ["wrench_wrapper_api_neoforge", "wrench_wrapper_impl"]
36+
trinkets = ["trinkets", "cca_base", "cca_entity"]
3437

3538
[plugins]
36-
fabric_loom = { id = "net.fabricmc.fabric-loom", version.ref = "fabric_loom" }
3739
fabric_loom-remap = { id = "net.fabricmc.fabric-loom-remap", version.ref = "fabric_loom" }
3840
moddevgradle = { id = "net.neoforged.moddev", version.ref = "moddevgradle" }

mod_common/build.gradle.kts

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,20 @@
11
plugins {
22
id("mod_conventions_common")
3-
alias(libs.plugins.fabric.loom)
3+
alias(libs.plugins.fabric.loom.remap)
44
}
55

66
base.archivesName = "ok_zoomer-common"
77

88
// All the dependencies are declared at gradle/libs.version.toml and referenced with "libs.<id>"
99
// See https://docs.gradle.org/current/userguide/platforms.html for information on how version catalogs work.
1010
dependencies {
11-
minecraft(libs.minecraft.unobfuscated)
12-
compileOnly(libs.fabric.loader)
13-
compileOnly(libs.wrench.wrapper.api.fabric)
11+
minecraft(libs.minecraft)
12+
mappings(loom.layered {
13+
this.officialMojangMappings()
14+
this.parchment(libs.parchment)
15+
})
16+
modCompileOnly(libs.fabric.loader)
17+
modCompileOnly(libs.wrench.wrapper.api.fabric)
1418
}
1519

1620
loom {

mod_common/src/main/java/page/langeweile/ok_zoomer/config/OkZoomerConfig.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -212,10 +212,6 @@ public static final class TweaksConfig extends Section {
212212
@Comment("a")
213213
public final TrackedValue<Boolean> numericSliders = this.value(true);
214214

215-
@WidgetSize(Size.HALF)
216-
@Comment("Adds a button to open Ok Zoomer settings next to the zoom key bind.")
217-
public final TrackedValue<Boolean> showSettingsOnKey = this.value(true);
218-
219215
@WidgetSize(Size.HALF)
220216
@Comment("Displays debug information for exponential zoom scrolling. Currently it may help with configuring the zoom scrolling.")
221217
public final TrackedValue<Boolean> debugScrolling = this.value(false);

mod_common/src/main/java/page/langeweile/ok_zoomer/config/OkZoomerConfigManager.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package page.langeweile.ok_zoomer.config;
22

33
import it.unimi.dsi.fastutil.floats.FloatUnaryOperator;
4-
import net.minecraft.resources.Identifier;
4+
import net.minecraft.resources.ResourceLocation;
55
import net.minecraft.util.Mth;
66
import page.langeweile.ok_zoomer.utils.ModUtils;
77
import page.langeweile.ok_zoomer.zoom.Zoom;
@@ -45,7 +45,7 @@ public static void configureZoomInstance() {
4545
// TODO - Restore the "Use Spyglass Texture" option as a "Use Custom Texture" option
4646
// You won't do it without a nice placeholder texture though (that isn't Michael lmfao)
4747
var overlayTextureId = CONFIG.appearance.zoomOverlay.value() == ConfigEnums.ZoomOverlays.SPYGLASS
48-
? Identifier.withDefaultNamespace("textures/misc/spyglass_scope.png")
48+
? ResourceLocation.withDefaultNamespace("textures/misc/spyglass_scope.png")
4949
: ModUtils.id("textures/misc/zoom_overlay.png");
5050

5151
Zoom.setZoomOverlay(

mod_common/src/main/java/page/langeweile/ok_zoomer/config/screen/ConfigTextUtils.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package page.langeweile.ok_zoomer.config.screen;
22

33
import net.minecraft.network.chat.Component;
4-
import net.minecraft.resources.Identifier;
4+
import net.minecraft.resources.ResourceLocation;
55
import org.quiltmc.config.api.Config;
66
import org.quiltmc.config.api.annotations.SerializedNameConvention;
77
import org.quiltmc.config.api.metadata.NamingScheme;
@@ -19,7 +19,7 @@ public ConfigTextUtils(Config config) {
1919
this.scheme = this.config.metadata(SerializedNameConvention.TYPE);
2020
}
2121

22-
public static Component getConfigTitle(Identifier configId) {
22+
public static Component getConfigTitle(ResourceLocation configId) {
2323
return Component.translatable("config." + configId.getNamespace() + ".title");
2424
}
2525

mod_common/src/main/java/page/langeweile/ok_zoomer/config/screen/OkZoomerConfigScreen.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import net.minecraft.client.gui.screens.Screen;
99
import net.minecraft.network.chat.CommonComponents;
1010
import net.minecraft.network.chat.Component;
11-
import net.minecraft.resources.Identifier;
11+
import net.minecraft.resources.ResourceLocation;
1212
import net.minecraft.util.CommonColors;
1313
import org.quiltmc.config.api.Configs;
1414
import org.quiltmc.config.api.Constraint;
@@ -28,7 +28,7 @@
2828

2929
// TODO - You may have dropped your silly data-driven config screen idea, but you still want to streamline the config screen. Do Config v2!
3030
public class OkZoomerConfigScreen extends Screen {
31-
private final Identifier configId;
31+
private final ResourceLocation configId;
3232
private final Screen parent;
3333
private ConfigTextUtils configTextUtils;
3434
private final HeaderAndFooterLayout layout = new HeaderAndFooterLayout(this);
@@ -53,12 +53,12 @@ protected void init() {
5353
this.selectionList = new OkZoomerSelectionList(this.minecraft, this.width, this.height - 64, 32, this);
5454

5555
this.selectionList.addCategory(Component.translatable("config.ok_zoomer.presets"));
56-
var presetButton = CycleButton.builder(
57-
value -> Component.translatable(String.format("config.ok_zoomer.presets.preset.%s", value.toString().toLowerCase(Locale.ROOT))),
58-
ConfigEnums.ZoomPresets.CAMERA
56+
var presetButton = CycleButton.<ConfigEnums.ZoomPresets>builder(
57+
value -> Component.translatable(String.format("config.ok_zoomer.presets.preset.%s", value.toString().toLowerCase(Locale.ROOT)))
5958
)
6059
.withValues(ConfigEnums.ZoomPresets.values())
6160
.withTooltip(value -> Tooltip.create(Component.translatable(String.format("config.ok_zoomer.presets.preset.%s.tooltip", value.toString().toLowerCase(Locale.ROOT)))))
61+
.withInitialValue(ConfigEnums.ZoomPresets.CAMERA)
6262
.create(0, 0, 150, 20,
6363
Component.translatable("config.ok_zoomer.presets.preset"));
6464
var resetButton = Button.builder(
@@ -192,12 +192,12 @@ protected void init() {
192192
this.addOptionToList(button, size);
193193
}
194194
} else if (trackedValue.value() instanceof ConfigEnums.ConfigEnum configEnum) {
195-
var button = CycleButton.builder(
196-
value -> this.configTextUtils.getEnumOptionText(trackedValue, value),
197-
(ConfigEnums.ConfigEnum) this.newValues.get(trackie)
195+
var button = CycleButton.<ConfigEnums.ConfigEnum>builder(
196+
value -> this.configTextUtils.getEnumOptionText(trackedValue, value)
198197
)
199198
.withValues((ConfigEnums.ConfigEnum[]) ((Enum<?>) configEnum).getDeclaringClass().getEnumConstants())
200199
.withTooltip(value -> Tooltip.create(this.configTextUtils.getEnumOptionTextTooltip(trackedValue, value)))
200+
.withInitialValue((ConfigEnums.ConfigEnum) this.newValues.get(trackie))
201201
.create(
202202
0, 0, 150, 20,
203203
this.configTextUtils.getOptionText(trackedValue),
@@ -264,7 +264,7 @@ public void removed() {
264264
}
265265

266266
private void refresh() {
267-
var scrollAmount = this.selectionList.scrollAmount();
267+
var scrollAmount = this.selectionList.getScrollAmount();
268268
this.rebuildWidgets();
269269
this.selectionList.setScrollAmount(scrollAmount);
270270
}

mod_common/src/main/java/page/langeweile/ok_zoomer/config/screen/components/OkZoomerFloatSlider.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,10 @@ public OkZoomerFloatSlider(TrackedValue<Float> trackedValue, Component optionTex
4343

4444
@Override
4545
protected void updateMessage() {
46-
this.message = CommonComponents.optionNameValue(
46+
this.setMessage(CommonComponents.optionNameValue(
4747
optionText,
4848
Component.literal(String.valueOf(this.internalValue))
49-
);
49+
));
5050
}
5151

5252
@Override

mod_common/src/main/java/page/langeweile/ok_zoomer/config/screen/components/OkZoomerIntegerSlider.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,10 @@ public OkZoomerIntegerSlider(TrackedValue<Integer> trackedValue, Component optio
4343

4444
@Override
4545
protected void updateMessage() {
46-
this.message = CommonComponents.optionNameValue(
46+
this.setMessage(CommonComponents.optionNameValue(
4747
optionText,
4848
Component.literal(String.valueOf(this.internalValue))
49-
);
49+
));
5050
}
5151

5252
@Override

mod_common/src/main/java/page/langeweile/ok_zoomer/config/screen/components/OkZoomerSelectionList.java

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,7 @@ public int getRowWidth() {
2727
}
2828

2929
public void addCategory(Component component) {
30-
int baseline = 9;
31-
int padding = this.children().isEmpty() ? 0 : baseline * 2;
32-
this.addEntry(new CategoryEntry(component, this.screen, padding), padding + baseline + 4);
30+
this.addEntry(new CategoryEntry(component, this.screen));
3331
}
3432

3533
public void addButton(AbstractWidget button) {
@@ -48,19 +46,17 @@ public abstract static class Entry extends ContainerObjectSelectionList.Entry<En
4846
}
4947
}
5048

51-
static class CategoryEntry extends Entry {
52-
private final int paddingTop;
49+
class CategoryEntry extends Entry {
5350
private final StringWidget widget;
5451

55-
private CategoryEntry(Component title, Screen screen, int paddingTop) {
52+
private CategoryEntry(Component title, Screen screen) {
5653
super(screen);
57-
this.widget = new StringWidget(title, screen.getFont());
58-
this.paddingTop = paddingTop;
54+
this.widget = new StringWidget(title, OkZoomerSelectionList.this.minecraft.font);
5955
}
6056

6157
@Override
62-
public void renderContent(GuiGraphics graphics, int mouseX, int mouseY, boolean isHovering, float partialTick) {
63-
this.widget.setPosition(this.screen.width / 2 - 155, this.getContentY() + this.paddingTop);
58+
public void render(GuiGraphics graphics, int index, int top, int left, int width, int height, int mouseX, int mouseY, boolean hovering, float partialTick) {
59+
this.widget.setPosition(this.screen.width / 2 - 155, top + 14);
6460
this.widget.render(graphics, mouseX, mouseY, partialTick);
6561
}
6662

@@ -96,9 +92,9 @@ public ButtonEntry(AbstractWidget leftButton, AbstractWidget rightButton, Screen
9692
}
9793

9894
@Override
99-
public void renderContent(GuiGraphics graphics, int mouseX, int mouseY, boolean isHovering, float partialTick) {
95+
public void render(GuiGraphics graphics, int index, int top, int left, int width, int height, int mouseX, int mouseY, boolean hovering, float partialTick) {
10096
int x = this.screen.width / 2 - 155;
101-
int y = this.getContentY();
97+
int y = top;
10298

10399
this.leftButton.setPosition(x, y + 2);
104100
this.leftButton.render(graphics, mouseX, mouseY, partialTick);
@@ -109,11 +105,6 @@ public void renderContent(GuiGraphics graphics, int mouseX, int mouseY, boolean
109105
}
110106
}
111107

112-
@Override
113-
public int getHeight() {
114-
return (rightButton != null ? Math.max(leftButton.getHeight(), rightButton.getHeight()) : leftButton.getHeight()) + 4;
115-
}
116-
117108
@Override
118109
public @NotNull List<? extends GuiEventListener> children() {
119110
return this.buttons;

0 commit comments

Comments
 (0)