first commit
11
src/main/java/net/yyc12345/teyvatcraft/TeyvatCraft.java
Normal file
@ -0,0 +1,11 @@
|
||||
package net.yyc12345.teyvatcraft;
|
||||
|
||||
import net.fabricmc.api.ModInitializer;
|
||||
import net.yyc12345.teyvatcraft.items.ItemsManager;
|
||||
|
||||
public class TeyvatCraft implements ModInitializer {
|
||||
@Override
|
||||
public void onInitialize() {
|
||||
ItemsManager.RegisterAll();
|
||||
}
|
||||
}
|
@ -0,0 +1,71 @@
|
||||
package net.yyc12345.teyvatcraft.items;
|
||||
|
||||
import net.minecraft.util.registry.Registry;
|
||||
import net.fabricmc.fabric.api.item.v1.FabricItemSettings;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.item.ItemGroup;
|
||||
import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.util.Rarity;
|
||||
import net.yyc12345.teyvatcraft.items.gnosis.*;
|
||||
|
||||
public class ItemsManager {
|
||||
public static final ItemGroup ITEM_GROUP = FabricItemGroupBuilder.build(
|
||||
new Identifier("teyvatcraft", "general"),
|
||||
() -> new ItemStack(Blocks.COBBLESTONE));
|
||||
|
||||
// ==================== gnosis
|
||||
public static final GnosisDendro GNOSIS_DENDRO = new GnosisDendro(
|
||||
new FabricItemSettings()
|
||||
.group(ITEM_GROUP)
|
||||
.maxCount(1)
|
||||
.rarity(Rarity.EPIC)
|
||||
);
|
||||
public static final GnosisHydro GNOSIS_HYDRO = new GnosisHydro(
|
||||
new FabricItemSettings()
|
||||
.group(ITEM_GROUP)
|
||||
.maxCount(1)
|
||||
.rarity(Rarity.EPIC)
|
||||
);
|
||||
public static final GnosisPyro GNOSIS_PYRO = new GnosisPyro(
|
||||
new FabricItemSettings()
|
||||
.group(ITEM_GROUP)
|
||||
.maxCount(1)
|
||||
.rarity(Rarity.EPIC)
|
||||
);
|
||||
public static final GnosisGeo GNOSIS_GEO = new GnosisGeo(
|
||||
new FabricItemSettings()
|
||||
.group(ITEM_GROUP)
|
||||
.maxCount(1)
|
||||
.rarity(Rarity.EPIC)
|
||||
);
|
||||
public static final GnosisElectro GNOSIS_ELECTRO = new GnosisElectro(
|
||||
new FabricItemSettings()
|
||||
.group(ITEM_GROUP)
|
||||
.maxCount(1)
|
||||
.rarity(Rarity.EPIC)
|
||||
);
|
||||
public static final GnosisAnemo GNOSIS_ANEMO = new GnosisAnemo(
|
||||
new FabricItemSettings()
|
||||
.group(ITEM_GROUP)
|
||||
.maxCount(1)
|
||||
.rarity(Rarity.EPIC)
|
||||
);
|
||||
public static final GnosisCryo GNOSIS_CRYO = new GnosisCryo(
|
||||
new FabricItemSettings()
|
||||
.group(ITEM_GROUP)
|
||||
.maxCount(1)
|
||||
.rarity(Rarity.EPIC)
|
||||
);
|
||||
|
||||
public static void RegisterAll() {
|
||||
Registry.register(Registry.ITEM, new Identifier("teyvatcraft", "gnosis_dendro"), GNOSIS_DENDRO);
|
||||
Registry.register(Registry.ITEM, new Identifier("teyvatcraft", "gnosis_hydro"), GNOSIS_HYDRO);
|
||||
Registry.register(Registry.ITEM, new Identifier("teyvatcraft", "gnosis_pyro"), GNOSIS_PYRO);
|
||||
Registry.register(Registry.ITEM, new Identifier("teyvatcraft", "gnosis_geo"), GNOSIS_GEO);
|
||||
Registry.register(Registry.ITEM, new Identifier("teyvatcraft", "gnosis_electro"), GNOSIS_ELECTRO);
|
||||
Registry.register(Registry.ITEM, new Identifier("teyvatcraft", "gnosis_anemo"), GNOSIS_ANEMO);
|
||||
Registry.register(Registry.ITEM, new Identifier("teyvatcraft", "gnosis_cryo"), GNOSIS_CRYO);
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
|
||||
package net.yyc12345.teyvatcraft.items.gnosis;
|
||||
|
||||
import net.yyc12345.teyvatcraft.items.gnosis.GnosisPrototype;
|
||||
import net.minecraft.item.Item.Settings;
|
||||
|
||||
public class GnosisAnemo extends GnosisPrototype {
|
||||
public GnosisAnemo(Settings settings) {
|
||||
super(settings);
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
|
||||
package net.yyc12345.teyvatcraft.items.gnosis;
|
||||
|
||||
import net.yyc12345.teyvatcraft.items.gnosis.GnosisPrototype;
|
||||
import net.minecraft.item.Item.Settings;
|
||||
|
||||
public class GnosisCryo extends GnosisPrototype {
|
||||
public GnosisCryo(Settings settings) {
|
||||
super(settings);
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
|
||||
package net.yyc12345.teyvatcraft.items.gnosis;
|
||||
|
||||
import net.yyc12345.teyvatcraft.items.gnosis.GnosisPrototype;
|
||||
import net.minecraft.item.Item.Settings;
|
||||
|
||||
public class GnosisDendro extends GnosisPrototype {
|
||||
public GnosisDendro(Settings settings) {
|
||||
super(settings);
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
|
||||
package net.yyc12345.teyvatcraft.items.gnosis;
|
||||
|
||||
import net.yyc12345.teyvatcraft.items.gnosis.GnosisPrototype;
|
||||
import net.minecraft.item.Item.Settings;
|
||||
|
||||
public class GnosisElectro extends GnosisPrototype {
|
||||
public GnosisElectro(Settings settings) {
|
||||
super(settings);
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
|
||||
package net.yyc12345.teyvatcraft.items.gnosis;
|
||||
|
||||
import net.yyc12345.teyvatcraft.items.gnosis.GnosisPrototype;
|
||||
import net.minecraft.item.Item.Settings;
|
||||
|
||||
public class GnosisGeo extends GnosisPrototype {
|
||||
public GnosisGeo(Settings settings) {
|
||||
super(settings);
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
|
||||
package net.yyc12345.teyvatcraft.items.gnosis;
|
||||
|
||||
import net.yyc12345.teyvatcraft.items.gnosis.GnosisPrototype;
|
||||
import net.minecraft.item.Item.Settings;
|
||||
|
||||
public class GnosisHydro extends GnosisPrototype {
|
||||
public GnosisHydro(Settings settings) {
|
||||
super(settings);
|
||||
}
|
||||
}
|
@ -0,0 +1,10 @@
|
||||
package net.yyc12345.teyvatcraft.items.gnosis;
|
||||
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.Item.Settings;
|
||||
|
||||
public class GnosisPrototype extends Item {
|
||||
public GnosisPrototype(Settings settings) {
|
||||
super(settings);
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
|
||||
package net.yyc12345.teyvatcraft.items.gnosis;
|
||||
|
||||
import net.yyc12345.teyvatcraft.items.gnosis.GnosisPrototype;
|
||||
import net.minecraft.item.Item.Settings;
|
||||
|
||||
public class GnosisPyro extends GnosisPrototype {
|
||||
public GnosisPyro(Settings settings) {
|
||||
super(settings);
|
||||
}
|
||||
}
|
@ -0,0 +1,10 @@
|
||||
package net.yyc12345.teyvatcraft.items.vision;
|
||||
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.Item.Settings;
|
||||
|
||||
public class VisionPrototype extends Item {
|
||||
public VisionPrototype(Settings settings) {
|
||||
super(settings);
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
package net.yyc12345.teyvatcraft.mixin;
|
||||
|
||||
import net.minecraft.client.gui.screen.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 TeyvatCraftMixin {
|
||||
@Inject(at = @At("HEAD"), method = "init()V")
|
||||
private void init(CallbackInfo info) {
|
||||
System.out.println("This line is printed by an example mod mixin!");
|
||||
}
|
||||
}
|
BIN
src/main/resources/assets/teyvatcraft/icon.png
Normal file
After Width: | Height: | Size: 453 B |
10
src/main/resources/assets/teyvatcraft/lang/en_us.json
Normal file
@ -0,0 +1,10 @@
|
||||
{
|
||||
"itemGroup.teyvatcraft.general": "Genshin Impact",
|
||||
"item.teyvatcraft.gnosis_dendro": "Dendro Gnosis",
|
||||
"item.teyvatcraft.gnosis_hydro": "Hydro Gnosis",
|
||||
"item.teyvatcraft.gnosis_pyro": "Pyro Gnosis",
|
||||
"item.teyvatcraft.gnosis_geo": "Geo Gnosis",
|
||||
"item.teyvatcraft.gnosis_electro": "Electro Gnosis",
|
||||
"item.teyvatcraft.gnosis_anemo": "Anemo Gnosis",
|
||||
"item.teyvatcraft.gnosis_cryo": "Cryo Gnosis"
|
||||
}
|
10
src/main/resources/assets/teyvatcraft/lang/zh_cn.json
Normal file
@ -0,0 +1,10 @@
|
||||
{
|
||||
"itemGroup.teyvatcraft.general": "原神",
|
||||
"item.teyvatcraft.gnosis_dendro": "神之心 - 草",
|
||||
"item.teyvatcraft.gnosis_hydro": "神之心 - 水",
|
||||
"item.teyvatcraft.gnosis_pyro": "神之心 - 火",
|
||||
"item.teyvatcraft.gnosis_geo": "神之心 - 岩",
|
||||
"item.teyvatcraft.gnosis_electro": "神之心 - 雷",
|
||||
"item.teyvatcraft.gnosis_anemo": "神之心 - 风",
|
||||
"item.teyvatcraft.gnosis_cryo": "神之心 - 冰"
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/handheld",
|
||||
"textures": {
|
||||
"layer0": "teyvatcraft:item/gnosis_anemo"
|
||||
}
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/handheld",
|
||||
"textures": {
|
||||
"layer0": "teyvatcraft:item/gnosis_cryo"
|
||||
}
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/handheld",
|
||||
"textures": {
|
||||
"layer0": "teyvatcraft:item/gnosis_dendro"
|
||||
}
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/handheld",
|
||||
"textures": {
|
||||
"layer0": "teyvatcraft:item/gnosis_electro"
|
||||
}
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/handheld",
|
||||
"textures": {
|
||||
"layer0": "teyvatcraft:item/gnosis_geo"
|
||||
}
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/handheld",
|
||||
"textures": {
|
||||
"layer0": "teyvatcraft:item/gnosis_hydro"
|
||||
}
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/handheld",
|
||||
"textures": {
|
||||
"layer0": "teyvatcraft:item/gnosis_pyro"
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 6.3 KiB |
After Width: | Height: | Size: 6.4 KiB |
After Width: | Height: | Size: 5.7 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 5.5 KiB |
After Width: | Height: | Size: 5.2 KiB |
After Width: | Height: | Size: 5.7 KiB |
37
src/main/resources/fabric.mod.json
Normal file
@ -0,0 +1,37 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"id": "teyvatcraft",
|
||||
"version": "${version}",
|
||||
|
||||
"name": "TeyvatCraft",
|
||||
"description": "This is an mod allowing you play Genshin Impact in Minecraft.",
|
||||
"authors": [
|
||||
"yyc12345"
|
||||
],
|
||||
"contact": {
|
||||
"homepage": "https://fabricmc.net/",
|
||||
"sources": "https://code.blumia.cn/yyc12345/TeyvatCraft"
|
||||
},
|
||||
|
||||
"license": "MIT",
|
||||
"icon": "assets/teyvatcraft/icon.png",
|
||||
|
||||
"environment": "*",
|
||||
"entrypoints": {
|
||||
"main": [
|
||||
"net.yyc12345.teyvatcraft.TeyvatCraft"
|
||||
]
|
||||
},
|
||||
"mixins": [
|
||||
"teyvatcraft.mixins.json"
|
||||
],
|
||||
|
||||
"depends": {
|
||||
"fabricloader": ">=0.7.4",
|
||||
"fabric": "*",
|
||||
"minecraft": "1.16.x"
|
||||
},
|
||||
"suggests": {
|
||||
"another-mod": "*"
|
||||
}
|
||||
}
|
14
src/main/resources/teyvatcraft.mixins.json
Normal file
@ -0,0 +1,14 @@
|
||||
{
|
||||
"required": true,
|
||||
"minVersion": "0.8",
|
||||
"package": "net.yyc12345.teyvatcraft.mixin",
|
||||
"compatibilityLevel": "JAVA_8",
|
||||
"mixins": [
|
||||
],
|
||||
"client": [
|
||||
"TeyvatCraftMixin"
|
||||
],
|
||||
"injectors": {
|
||||
"defaultRequire": 1
|
||||
}
|
||||
}
|