Skip to content

Commit 0d226c8

Browse files
committed
Update fabric mappings and fix class names
1 parent 7f75e48 commit 0d226c8

14 files changed

Lines changed: 64 additions & 75 deletions

build.gradle

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,10 @@ tasks.withType(JavaCompile).configureEach {
5050
it.options.release = 17
5151
}
5252

53+
loom {
54+
accessWidenerPath = file("src/main/resources/entitymodifiers.accesswidener")
55+
}
56+
5357
java {
5458
// Loom will automatically attach sourcesJar to a RemapSourcesJar task and to the "build" task
5559
// if it is present.

gradle.properties

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@ org.gradle.jvmargs=-Xmx1G
33

44
# Fabric Properties
55
# check these on https://fabricmc.net/versions.html
6-
minecraft_version=1.18
7-
yarn_mappings=1.18+build.1
8-
loader_version=0.12.8
6+
minecraft_version=1.18.2
7+
yarn_mappings=1.18.2+build.3
8+
loader_version=0.13.3
99

1010
# Mod Properties
1111
mod_version = 1.1.0
1212
maven_group = errorcraft.entitymodifiers
1313
archives_base_name = entitymodifiers
1414

1515
# Dependencies
16-
fabric_version=0.43.1+1.18
16+
fabric_version=0.51.1+1.18.2

src/main/java/errorcraft/entitymodifiers/access/resource/ServerResourceManagerExtenderAccess.java renamed to src/main/java/errorcraft/entitymodifiers/access/server/DataPackContentsExtenderAccess.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
package errorcraft.entitymodifiers.access.resource;
1+
package errorcraft.entitymodifiers.access.server;
22

33
import errorcraft.entitymodifiers.entity.modifier.EntityModifierManager;
44

5-
public interface ServerResourceManagerExtenderAccess {
5+
public interface DataPackContentsExtenderAccess {
66
EntityModifierManager getEntityModifierManager();
77
}

src/main/java/errorcraft/entitymodifiers/entity/modifier/EntityModifierTypes.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
public class EntityModifierTypes {
1111
public static final RegistryKey<Registry<EntityModifierType>> ENTITY_MODIFIER_TYPE_KEY = RegistryAccessor.createRegistryKey("entity_modifier_type");
12-
public static final Registry<EntityModifierType> ENTITY_MODIFIER_TYPE = RegistryAccessor.create(ENTITY_MODIFIER_TYPE_KEY, () -> EntityModifierTypes.SET_INVULNERABLE);
12+
public static final Registry<EntityModifierType> ENTITY_MODIFIER_TYPE = RegistryAccessor.create(ENTITY_MODIFIER_TYPE_KEY, registry -> EntityModifierTypes.SET_INVULNERABLE);
1313

1414
public static final EntityModifierType SET_INVULNERABLE = register("set_invulnerable", new SetInvulnerableEntityModifier.Serialiser());
1515
public static final EntityModifierType SET_HEALTH = register("set_health", new SetHealthEntityModifier.Serialiser());

src/main/java/errorcraft/entitymodifiers/mixin/registry/RegistryAccessor.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@
55
import org.spongepowered.asm.mixin.Mixin;
66
import org.spongepowered.asm.mixin.gen.Invoker;
77

8-
import java.util.function.Supplier;
9-
108
@Mixin(Registry.class)
119
public interface RegistryAccessor {
1210
@Invoker("createRegistryKey")
@@ -15,7 +13,7 @@ static <T> RegistryKey<Registry<T>> createRegistryKey(String registryId) {
1513
}
1614

1715
@Invoker("create")
18-
static <T> Registry<T> create(RegistryKey<? extends Registry<T>> key, Supplier<T> defaultEntry) {
16+
static <T> Registry<T> create(RegistryKey<? extends Registry<T>> key, Registry.DefaultEntryGetter<T> defaultEntryGetter) {
1917
throw new AssertionError();
2018
}
2119
}

src/main/java/errorcraft/entitymodifiers/mixin/resource/ServerResourceManagerAccessor.java

Lines changed: 0 additions & 13 deletions
This file was deleted.

src/main/java/errorcraft/entitymodifiers/mixin/resource/ServerResourceManagerExtender.java

Lines changed: 0 additions & 27 deletions
This file was deleted.
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package errorcraft.entitymodifiers.mixin.server;
2+
3+
import errorcraft.entitymodifiers.access.server.DataPackContentsExtenderAccess;
4+
import errorcraft.entitymodifiers.entity.modifier.EntityModifierManager;
5+
import net.minecraft.resource.ResourceReloader;
6+
import net.minecraft.server.DataPackContents;
7+
import net.minecraft.server.command.CommandManager.RegistrationEnvironment;
8+
import net.minecraft.util.registry.DynamicRegistryManager;
9+
import org.spongepowered.asm.mixin.Mixin;
10+
import org.spongepowered.asm.mixin.injection.At;
11+
import org.spongepowered.asm.mixin.injection.Inject;
12+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
13+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
14+
15+
import java.util.ArrayList;
16+
import java.util.Collections;
17+
import java.util.List;
18+
19+
@Mixin(DataPackContents.class)
20+
public class DataPackContentsExtender implements DataPackContentsExtenderAccess {
21+
private final EntityModifierManager entityModifierManager = new EntityModifierManager();
22+
23+
@Inject(at = @At("RETURN"), method = "getContents", cancellable = true)
24+
private void addEntityModifierManagerToContents(CallbackInfoReturnable<List<ResourceReloader>> info) {
25+
List<ResourceReloader> reloaders = new ArrayList<>(info.getReturnValue());
26+
reloaders.add(this.entityModifierManager);
27+
info.setReturnValue(Collections.unmodifiableList(reloaders));
28+
}
29+
30+
@Override
31+
public EntityModifierManager getEntityModifierManager() {
32+
return this.entityModifierManager;
33+
}
34+
}

src/main/java/errorcraft/entitymodifiers/mixin/server/MinecraftServerAccessor.java

Lines changed: 0 additions & 13 deletions
This file was deleted.
Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,20 @@
11
package errorcraft.entitymodifiers.mixin.server;
22

3+
import errorcraft.entitymodifiers.access.server.DataPackContentsExtenderAccess;
34
import errorcraft.entitymodifiers.access.server.MinecraftServerExtenderAccess;
45
import errorcraft.entitymodifiers.entity.modifier.EntityModifierManager;
5-
import errorcraft.entitymodifiers.mixin.resource.ServerResourceManagerAccessor;
66
import net.minecraft.server.MinecraftServer;
77
import org.spongepowered.asm.mixin.Mixin;
8+
import org.spongepowered.asm.mixin.Shadow;
89

910
@Mixin(MinecraftServer.class)
1011
public class MinecraftServerExtender implements MinecraftServerExtenderAccess {
12+
@Shadow
13+
private MinecraftServer.ResourceManagerHolder resourceManagerHolder;
14+
1115
@Override
1216
public EntityModifierManager getEntityModifierManager() {
13-
MinecraftServerAccessor thisAccessor = (MinecraftServerAccessor)this;
14-
ServerResourceManagerAccessor serverResourceManagerAccessor = (ServerResourceManagerAccessor)(thisAccessor.getServerResourceManager());
15-
return serverResourceManagerAccessor.getEntityModifierManager();
17+
DataPackContentsExtenderAccess dataPackContentsExtenderAccess = (DataPackContentsExtenderAccess)(this.resourceManagerHolder.dataPackContents());
18+
return dataPackContentsExtenderAccess.getEntityModifierManager();
1619
}
1720
}

0 commit comments

Comments
 (0)