init load
This commit is contained in:
12
common/build.gradle.kts
Normal file
12
common/build.gradle.kts
Normal file
@@ -0,0 +1,12 @@
|
||||
architectury {
|
||||
common("forge")
|
||||
}
|
||||
|
||||
loom {
|
||||
accessWidenerPath.set(file("src/main/resources/quaedam.accesswidener"))
|
||||
}
|
||||
|
||||
dependencies {
|
||||
modImplementation("net.fabricmc:fabric-loader:${rootProject.property("fabric_loader_version")}")
|
||||
modApi("dev.architectury:architectury:${rootProject.property("architectury_version")}")
|
||||
}
|
15
common/src/main/java/quaedam/mixin/MixinTitleScreen.java
Normal file
15
common/src/main/java/quaedam/mixin/MixinTitleScreen.java
Normal file
@@ -0,0 +1,15 @@
|
||||
package quaedam.mixin;
|
||||
|
||||
import net.minecraft.client.gui.screens.TitleScreen;
|
||||
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;
|
||||
|
||||
@Mixin(TitleScreen.class)
|
||||
public class MixinTitleScreen {
|
||||
@Inject(at = @At("HEAD"), method = "init()V")
|
||||
private void init(CallbackInfo info) {
|
||||
System.out.println("Hello from example architectury common mixin!");
|
||||
}
|
||||
}
|
38
common/src/main/kotlin/quaedam/Quaedam.kt
Normal file
38
common/src/main/kotlin/quaedam/Quaedam.kt
Normal file
@@ -0,0 +1,38 @@
|
||||
package quaedam
|
||||
|
||||
import dev.architectury.registry.CreativeTabRegistry
|
||||
import dev.architectury.registry.registries.DeferredRegister
|
||||
import dev.architectury.registry.registries.RegistrySupplier
|
||||
import quaedam.QuaedamExpectPlatform.getConfigDirectory
|
||||
import net.minecraft.core.registries.Registries
|
||||
import net.minecraft.network.chat.Component
|
||||
import net.minecraft.world.item.CreativeModeTab
|
||||
import net.minecraft.world.item.Item
|
||||
import net.minecraft.world.item.ItemStack
|
||||
|
||||
object Quaedam {
|
||||
const val MOD_ID = "quaedam"
|
||||
|
||||
private val createModeTabs = DeferredRegister.create(MOD_ID, Registries.CREATIVE_MODE_TAB)
|
||||
val exampleTab: RegistrySupplier<CreativeModeTab> = createModeTabs.register("example_tab") {
|
||||
CreativeTabRegistry.create(Component.translatable("category.quaedam")) {
|
||||
ItemStack(exampleItem.get())
|
||||
}
|
||||
}
|
||||
|
||||
private val items = DeferredRegister.create(MOD_ID, Registries.ITEM)
|
||||
val exampleItem: RegistrySupplier<Item> = items.register(
|
||||
"example_item"
|
||||
) {
|
||||
Item(
|
||||
Item.Properties().`arch$tab`(exampleTab) // DON'T CALL GET ON exampleTab HERE
|
||||
)
|
||||
}
|
||||
|
||||
fun init() {
|
||||
createModeTabs.register()
|
||||
items.register()
|
||||
|
||||
println("CONFIG DIR: ${getConfigDirectory().toAbsolutePath().normalize()}")
|
||||
}
|
||||
}
|
13
common/src/main/kotlin/quaedam/QuaedamExpectPlatform.kt
Normal file
13
common/src/main/kotlin/quaedam/QuaedamExpectPlatform.kt
Normal file
@@ -0,0 +1,13 @@
|
||||
package quaedam
|
||||
|
||||
import dev.architectury.injectables.annotations.ExpectPlatform
|
||||
import java.nio.file.Path
|
||||
|
||||
object QuaedamExpectPlatform {
|
||||
@JvmStatic // Make sure its Jvm Static
|
||||
@ExpectPlatform
|
||||
fun getConfigDirectory(): Path {
|
||||
// Just throw an error, the content should get replaced at runtime.
|
||||
throw AssertionError()
|
||||
}
|
||||
}
|
3
common/src/main/resources/architectury.common.json
Normal file
3
common/src/main/resources/architectury.common.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"accessWidener": "quaedam.accesswidener"
|
||||
}
|
3
common/src/main/resources/assets/quaedam/lang/en_us.json
Normal file
3
common/src/main/resources/assets/quaedam/lang/en_us.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"item.quaedam.example_item": "Example Item"
|
||||
}
|
13
common/src/main/resources/quaedam-common.mixins.json
Normal file
13
common/src/main/resources/quaedam-common.mixins.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"required": true,
|
||||
"package": "quaedam.mixin",
|
||||
"compatibilityLevel": "JAVA_17",
|
||||
"client": [
|
||||
"MixinTitleScreen"
|
||||
],
|
||||
"mixins": [
|
||||
],
|
||||
"injectors": {
|
||||
"defaultRequire": 1
|
||||
}
|
||||
}
|
1
common/src/main/resources/quaedam.accesswidener
Normal file
1
common/src/main/resources/quaedam.accesswidener
Normal file
@@ -0,0 +1 @@
|
||||
accessWidener v2 named
|
Reference in New Issue
Block a user