Skip to content

Commit aeddd69

Browse files
committed
add testmod, fix issue
1 parent 49e8f3d commit aeddd69

File tree

18 files changed

+271
-57
lines changed

18 files changed

+271
-57
lines changed
Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,21 @@
11
package org.thinkingstudio.initialization.fabric;
22

33
import com.iafenvoy.integration.entrypoint.EntryPointManager;
4-
import net.fabricmc.api.ModInitializer;
54
import org.thinkingstudio.initialization.EntrypointContexts;
5+
import org.thinkingstudio.initialization.api.ClientModInitializer;
6+
import org.thinkingstudio.initialization.api.DedicatedServerModInitializer;
7+
import org.thinkingstudio.initialization.api.ModInitializer;
68

7-
public final class InitializationFabric implements ModInitializer {
8-
@Override
9+
public class InitializationFabric {
910
public void onInitialize() {
10-
EntryPointManager.getEntryPoints(EntrypointContexts.MAIN_INITIALIZER_KEY, org.thinkingstudio.initialization.api.ModInitializer.class);
11+
EntryPointManager.getEntryPoints(EntrypointContexts.MAIN_INITIALIZER_KEY, ModInitializer.class).forEach(ModInitializer::onInitialize);
12+
}
13+
14+
public void onInitializeClient() {
15+
EntryPointManager.getEntryPoints(EntrypointContexts.CLIENT_INITIALIZER_KEY, ClientModInitializer.class).forEach(ClientModInitializer::onInitializeClient);
16+
}
17+
18+
public void onInitializeServer() {
19+
EntryPointManager.getEntryPoints(EntrypointContexts.SERVER_INITIALIZER_KEY, DedicatedServerModInitializer.class).forEach(DedicatedServerModInitializer::onInitializeServer);
1120
}
1221
}

fabric/src/main/java/org/thinkingstudio/initialization/fabric/client/InitializationFabricClient.java

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

fabric/src/main/java/org/thinkingstudio/initialization/fabric/server/InitializationFabricServer.java

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

fabric/src/main/resources/fabric.mod.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@
1515
"environment": "*",
1616
"entrypoints": {
1717
"main": [
18-
"org.thinkingstudio.initialization.fabric.InitializationFabric"
18+
"org.thinkingstudio.initialization.fabric.InitializationFabric::onInitialize"
1919
],
2020
"client": [
21-
"org.thinkingstudio.initialization.fabric.client.InitializationFabricClient"
21+
"org.thinkingstudio.initialization.fabric.InitializationFabric::onInitializeClient"
2222
],
2323
"server": [
24-
"org.thinkingstudio.initialization.fabric.server.InitializationFabricServer"
24+
"org.thinkingstudio.initialization.fabric.InitializationFabric::onInitializeServer"
2525
]
2626
},
2727
"depends": {
Lines changed: 11 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,8 @@
11
package org.thinkingstudio.initialization.neoforge;
22

33
import com.iafenvoy.integration.entrypoint.EntryPointManager;
4-
import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent;
5-
import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
6-
import net.neoforged.fml.event.lifecycle.FMLDedicatedServerSetupEvent;
4+
import net.neoforged.bus.api.IEventBus;
75
import net.neoforged.fml.loading.FMLLoader;
8-
import net.neoforged.neoforge.common.NeoForge;
96
import org.thinkingstudio.initialization.Initialization;
107
import net.neoforged.fml.common.Mod;
118
import org.thinkingstudio.initialization.api.ClientModInitializer;
@@ -15,25 +12,18 @@
1512

1613
@Mod(Initialization.MOD_ID)
1714
public final class InitializationNeoForge {
18-
public InitializationNeoForge() {
19-
NeoForge.EVENT_BUS.addListener(FMLCommonSetupEvent.class, event -> {
20-
event.enqueueWork(() -> {
21-
EntryPointManager.getEntryPoints(EntrypointContexts.MAIN_INITIALIZER_KEY, ModInitializer.class);
22-
});
23-
});
24-
15+
public InitializationNeoForge(IEventBus modEventBus) {
16+
// modEventBus.addListener(FMLCommonSetupEvent.class, event -> {
17+
// event.enqueueWork(() -> {
18+
// EntryPointManager.getEntryPoints(EntrypointContexts.MAIN_INITIALIZER_KEY, ModInitializer.class);
19+
// });
20+
// });
2521
if (FMLLoader.getDist().isClient()) {
26-
NeoForge.EVENT_BUS.addListener(FMLClientSetupEvent.class, event -> {
27-
event.enqueueWork(() -> {
28-
EntryPointManager.getEntryPoints(EntrypointContexts.CLIENT_INITIALIZER_KEY, ClientModInitializer.class);
29-
});
30-
});
22+
EntryPointManager.getEntryPoints(EntrypointContexts.MAIN_INITIALIZER_KEY, ModInitializer.class).forEach(ModInitializer::onInitialize);
23+
EntryPointManager.getEntryPoints(EntrypointContexts.CLIENT_INITIALIZER_KEY, ClientModInitializer.class).forEach(ClientModInitializer::onInitializeClient);
3124
} else if (FMLLoader.getDist().isDedicatedServer()) {
32-
NeoForge.EVENT_BUS.addListener(FMLDedicatedServerSetupEvent.class, event -> {
33-
event.enqueueWork(() -> {
34-
EntryPointManager.getEntryPoints(EntrypointContexts.SERVER_INITIALIZER_KEY, DedicatedServerModInitializer.class);
35-
});
36-
});
25+
EntryPointManager.getEntryPoints(EntrypointContexts.MAIN_INITIALIZER_KEY, ModInitializer.class).forEach(ModInitializer::onInitialize);
26+
EntryPointManager.getEntryPoints(EntrypointContexts.SERVER_INITIALIZER_KEY, DedicatedServerModInitializer.class).forEach(DedicatedServerModInitializer::onInitializeServer);
3727
}
3828
}
3929
}

neoforge/src/main/resources/META-INF/neoforge.mods.toml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,6 @@ side = "BOTH"
2323
[[dependencies.initialization]]
2424
modId = "minecraft"
2525
type = "required"
26-
versionRange = "[1.21.1,)"
26+
versionRange = "[1.21,)"
2727
ordering = "NONE"
2828
side = "BOTH"
29-
30-
31-
[[mixins]]
32-
config = "initialization.mixins.json"

settings.gradle

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,6 @@ rootProject.name = 'initialization'
1212
include 'common'
1313
include 'fabric'
1414
include 'neoforge'
15+
16+
include 'testmod-neoforge'
17+
include 'testmod-fabric'

testmod-fabric/build.gradle

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
plugins {
2+
id 'com.github.johnrengelman.shadow'
3+
}
4+
5+
architectury {
6+
platformSetupLoomIde()
7+
fabric()
8+
}
9+
10+
configurations {
11+
common {
12+
canBeResolved = true
13+
canBeConsumed = false
14+
}
15+
compileClasspath.extendsFrom common
16+
runtimeClasspath.extendsFrom common
17+
developmentFabric.extendsFrom common
18+
19+
// Files in this configuration will be bundled into your mod using the Shadow plugin.
20+
// Don't use the `shadow` configuration from the plugin itself as it's meant for excluding files.
21+
shadowBundle {
22+
canBeResolved = true
23+
canBeConsumed = false
24+
}
25+
}
26+
27+
dependencies {
28+
modImplementation "net.fabricmc:fabric-loader:$rootProject.fabric_loader_version"
29+
30+
modImplementation("com.iafenvoy.integration:integration-fabric:0.2")
31+
32+
implementation project(path: ":fabric", configuration: "namedElements")
33+
common(project(path: ':common', configuration: 'namedElements')) { transitive false }
34+
shadowBundle project(path: ':common', configuration: 'transformProductionFabric')
35+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package org.thinkingstudio.initialization.test.fabric;
2+
3+
import org.slf4j.Logger;
4+
import org.slf4j.LoggerFactory;
5+
import org.slf4j.Marker;
6+
import org.slf4j.MarkerFactory;
7+
import org.thinkingstudio.initialization.api.ModInitializer;
8+
9+
public class TestModFabric implements ModInitializer {
10+
public static final Logger LOGGER = LoggerFactory.getLogger("TestModFabric");
11+
private static final Marker MARKER = MarkerFactory.getMarker("Main");
12+
13+
@Override
14+
public void onInitialize() {
15+
LOGGER.error(MARKER, "ModInitializer is working!");
16+
}
17+
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package org.thinkingstudio.initialization.test.fabric.client;
2+
3+
import org.slf4j.Marker;
4+
import org.slf4j.MarkerFactory;
5+
import org.thinkingstudio.initialization.api.ClientModInitializer;
6+
import org.thinkingstudio.initialization.test.fabric.TestModFabric;
7+
8+
public class TestModFabricClient implements ClientModInitializer {
9+
private static final Marker MARKER = MarkerFactory.getMarker("Client");
10+
11+
@Override
12+
public void onInitializeClient() {
13+
TestModFabric.LOGGER.error(MARKER, "Client ModInitializer is working!");
14+
}
15+
}

0 commit comments

Comments
 (0)