summaryrefslogtreecommitdiff
path: root/src/main/java/luckyblock/Main.java
blob: e6c525e8d064799b9707b8451671f809b4af3fa7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
package luckyblock;

import com.mojang.logging.LogUtils;
import luckyblock.action.LuckyActionManager;
import luckyblock.block.LuckyBlock;
import luckyblock.configurations.Configuration;
import luckyblock.configurations.Settings;
import luckyblock.listener.LuckyBlockListener;
import net.minecraft.world.item.BlockItem;
import net.minecraft.world.item.Item;
import net.minecraft.world.level.block.Block;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.eventbus.api.IEventBus;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
import net.minecraftforge.fml.loading.FMLPaths;
import net.minecraftforge.registries.DeferredRegister;
import net.minecraftforge.registries.ForgeRegistries;
import net.minecraftforge.registries.RegistryObject;
import org.slf4j.Logger;

import java.util.List;

@Mod(Main.MODID)
public class Main {
    public static final String MODID = "lucky_block";
    public static Settings settings;

    private static final DeferredRegister<Block> BLOCKS = DeferredRegister.create(ForgeRegistries.BLOCKS, MODID);
    private static final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, MODID);

    public static final RegistryObject<Block> LUCKY_BLOCK = BLOCKS.register("lucky_block", LuckyBlock::new);
    public static final RegistryObject<Item> LUCKY_BLOCK_ITEM = ITEMS.register("lucky_block", () -> {
        return new BlockItem(LUCKY_BLOCK.get(), new Item.Properties());
    });

    private static final Logger LOGGER = LogUtils.getLogger();

    public Main(FMLJavaModLoadingContext context) {
        // === Register
        IEventBus eventBus = FMLJavaModLoadingContext.get().getModEventBus();
        BLOCKS.register(eventBus);
        ITEMS.register(eventBus);

        // === Configurations
        String path = FMLPaths.CONFIGDIR.get().resolve("settings.json").toString();
        Configuration config = new Configuration(path, new Settings());
        settings = config.load();

        // === Event BUS
        MinecraftForge.EVENT_BUS.register(LuckyActionManager.class);
        MinecraftForge.EVENT_BUS.register(new LuckyBlockListener());

    }

    public static Logger getLOGGER() {
        return LOGGER;
    }
}