Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 4 additions & 1 deletion middle-earth/gradle.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
# Done to increase the memory available to gradle.
org.gradle.jvmargs=-Xmx2G
org.gradle.jvmargs=-Xmx8192m -XX:+HeapDumpOnOutOfMemoryError
org.gradle.parallel=true
org.gradle.daemon=true
org.gradle.caching=true
org.gradle.configuration-cache=true

minecraft_version=1.21.8
yarn_mappings=1.21.8+build.1
Expand Down
Original file line number Diff line number Diff line change
@@ -1,20 +1,19 @@
package net.sevenstars.middleearth;

import net.fabricmc.api.ModInitializer;
import net.minecraft.util.Identifier;
import net.sevenstars.api.utils.ModLogger;
import net.sevenstars.middleearth.block.registration.*;
import net.sevenstars.middleearth.commands.ModCommands;
import net.sevenstars.middleearth.config.ModClientConfigs;
import net.sevenstars.middleearth.config.ModServerConfigs;
import net.sevenstars.middleearth.entity.EntitiesME;
import net.sevenstars.middleearth.entity.ModEntityAttributes;
import net.sevenstars.middleearth.entity.ModTrackedDataHandlerRegistry;
import net.sevenstars.middleearth.enchantments.EnchantmentEffectsME;
import net.sevenstars.middleearth.entity.ModEntities;
import net.sevenstars.middleearth.entity.ai.brain.ActivitiesME;
import net.sevenstars.middleearth.entity.ai.brain.MemoryModulesME;
import net.sevenstars.middleearth.entity.ai.brain.SensorsME;
import net.sevenstars.middleearth.entity.beasts.great_horn.GreatHornVariants;
import net.sevenstars.middleearth.entity.spider.SpiderVariants;
import net.sevenstars.middleearth.event.ModEvents;
import net.sevenstars.middleearth.gui.ModScreenHandlers;
import net.sevenstars.middleearth.item.*;
Expand All @@ -25,10 +24,11 @@
import net.sevenstars.middleearth.particles.ModParticleTypes;
import net.sevenstars.middleearth.recipe.ModRecipeSerializer;
import net.sevenstars.middleearth.recipe.ModRecipes;
import net.sevenstars.middleearth.registries.DynamicRegistriesME;
import net.sevenstars.middleearth.registries.RegistriesME;
import net.sevenstars.middleearth.resources.*;
import net.sevenstars.middleearth.sound.ModSounds;
import net.sevenstars.middleearth.statusEffects.ModStatusEffects;
import net.sevenstars.api.utils.IdentifierUtil;
import net.sevenstars.middleearth.utils.LootModifiers;
import net.sevenstars.middleearth.utils.resources.FileUtils;
import net.sevenstars.middleearth.world.biomes.MEBiomeKeys;
Expand Down Expand Up @@ -102,12 +102,9 @@ public void onInitialize() {

ModTrackedDataHandlerRegistry.register();

CharacterMaterialsME.register();
CharacterPatternsME.register();
StructureManagerDatasME.register();
BiomeEventsME.register();

ModEntities.registerModEntities();

EntitiesME.registerModEntities();
ModEntitySpawning.addSpawns();

// Entity AI
Expand All @@ -128,13 +125,7 @@ public void onInitialize() {
LootModifiers.modifyLootTables();

// Dynamic Data
SpiderVariants.register();
GreatHornVariants.register();
NpcTextureDatasME.register();
RacesME.register();
NpcME.register();
FactionsME.register();

DynamicRegistriesME.register();
RegistriesME.registerRegistryAliases();

try {
Expand All @@ -143,4 +134,19 @@ public void onInitialize() {
throw new RuntimeException(e);
}
}

public static Identifier fetchId(String stringId){
return IdentifierUtil.getIdentifierFromString(stringId);
}

public static Identifier of(String path){
return IdentifierUtil.build(MOD_ID, path);
}

public static Identifier of(String... names){
return IdentifierUtil.buildAggregate(MOD_ID, names);
}
public static String createAggregate(char splitter, String... names){
return IdentifierUtil.createAggregateValue(splitter, names);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
import net.minecraft.block.Block;
import net.minecraft.client.gui.screen.ingame.HandledScreens;
import net.minecraft.client.render.BlockRenderLayer;
import net.minecraft.client.render.block.BlockModelRenderer;
import net.minecraft.client.render.block.entity.BlockEntityRendererFactories;
import net.minecraft.client.render.entity.FlyingItemEntityRenderer;
import net.minecraft.client.render.entity.model.EntityModelLayer;
Expand Down Expand Up @@ -39,8 +38,8 @@
import net.sevenstars.middleearth.client.renderer.handheld.KiteShieldModelRenderer;
import net.sevenstars.middleearth.client.renderer.handheld.RoundShieldModelRenderer;
import net.sevenstars.middleearth.datageneration.content.models.*;
import net.sevenstars.middleearth.datageneration.content.tags.Crops;
import net.sevenstars.middleearth.entity.ModEntities;
import net.sevenstars.middleearth.datageneration.content.tags.BlockTagCollectionsME;
import net.sevenstars.middleearth.entity.EntitiesME;
import net.sevenstars.middleearth.entity.barrel.BarrelEntityRenderer;
import net.sevenstars.middleearth.entity.barrow_wights.BarrowWightEntityRenderer;
import net.sevenstars.middleearth.entity.beasts.broadhoof.BroadhoofGoatRenderer;
Expand Down Expand Up @@ -101,38 +100,39 @@ public void onInitializeClient() {
KeyInputHandler.register();

ModEntityModels.getModels();
EntityRendererRegistry.register(ModEntities.BARROW_WIGHT, BarrowWightEntityRenderer::new);
EntityRendererRegistry.register(EntitiesME.BARROW_WIGHT, BarrowWightEntityRenderer::new);
// Entities

EntityRendererRegistry.register(ModEntities.SNOW_TROLL, SnowTrollRenderer::new);
EntityRendererRegistry.register(ModEntities.CAVE_TROLL, CaveTrollRenderer::new);
EntityRendererRegistry.register(ModEntities.STONE_TROLL, StoneTrollRenderer::new);
EntityRendererRegistry.register(ModEntities.PETRIFIED_TROLL, PetrifiedTrollRenderer::new);
EntityRendererRegistry.register(EntitiesME.SNOW_TROLL, SnowTrollRenderer::new);
EntityRendererRegistry.register(EntitiesME.CAVE_TROLL, CaveTrollRenderer::new);
EntityRendererRegistry.register(EntitiesME.STONE_TROLL, StoneTrollRenderer::new);
EntityRendererRegistry.register(EntitiesME.PETRIFIED_TROLL, PetrifiedTrollRenderer::new);

EntityRendererRegistry.register(ModEntities.BROADHOOF_GOAT, BroadhoofGoatRenderer::new);
EntityRendererRegistry.register(ModEntities.GREAT_HORN, GreatHornRenderer::new);
EntityRendererRegistry.register(ModEntities.WARG, WargRenderer::new);
EntityRendererRegistry.register(EntitiesME.BROADHOOF_GOAT, BroadhoofGoatRenderer::new);
EntityRendererRegistry.register(EntitiesME.GREAT_HORN, GreatHornRenderer::new);
EntityRendererRegistry.register(EntitiesME.WARG, WargRenderer::new);

EntityRendererRegistry.register(ModEntities.REINFORCED_BARREL, BarrelEntityRenderer::new);
EntityRendererRegistry.register(EntitiesME.REINFORCED_BARREL, BarrelEntityRenderer::new);

EntityRendererRegistry.register(ModEntities.SHELOBITE_LARVA, ShelobiteLarvaRenderer::new);
EntityRendererRegistry.register(ModEntities.SHELOBITE_SCUTTLER, ShelobiteScuttlerRenderer::new);
EntityRendererRegistry.register(ModEntities.SPAWN_OF_SHELOB, SpawnOfShelobRenderer::new);
//EntityRendererRegistry.register(ModEntities.BALROG, BalrogRenderer::new);
EntityRendererRegistry.register(EntitiesME.SHELOBITE_LARVA, ShelobiteLarvaRenderer::new);
EntityRendererRegistry.register(EntitiesME.SHELOBITE_SCUTTLER, ShelobiteScuttlerRenderer::new);
EntityRendererRegistry.register(EntitiesME.SPAWN_OF_SHELOB, SpawnOfShelobRenderer::new);
//EntityRendererRegistry.register(EntitiesME.BALROG, BalrogRenderer::new);

EntityRendererRegistry.register(ModEntities.FIRE_OF_ORTHANC, FireOfOrthancEntityRenderer::new);
EntityRendererRegistry.register(ModEntities.PEBBLE, FlyingItemEntityRenderer::new);
EntityRendererRegistry.register(ModEntities.PINECONE, FlyingItemEntityRenderer::new);
EntityRendererRegistry.register(ModEntities.LIT_PINECONE, FlyingItemEntityRenderer::new);
EntityRendererRegistry.register(ModEntities.SPEAR, SpearEntityRenderer::new);
EntityRendererRegistry.register(ModEntities.BOULDER, BoulderEntityRenderer::new);
EntityRendererRegistry.register(ModEntities.SMOKE_RING_PROJECTILE, SmokeRingProjectileRenderer::new);
EntityRendererRegistry.register(ModEntities.WEB, FlyingItemEntityRenderer::new);

EntityRendererRegistry.register(ModEntities.NPC, NpcEntityRenderer::new);
EntityRendererRegistry.register(EntitiesME.FIRE_OF_ORTHANC, FireOfOrthancEntityRenderer::new);
EntityRendererRegistry.register(EntitiesME.PEBBLE, FlyingItemEntityRenderer::new);
EntityRendererRegistry.register(EntitiesME.PINECONE, FlyingItemEntityRenderer::new);
EntityRendererRegistry.register(EntitiesME.LIT_PINECONE, FlyingItemEntityRenderer::new);
EntityRendererRegistry.register(EntitiesME.SPEAR, SpearEntityRenderer::new);
EntityRendererRegistry.register(EntitiesME.BOULDER, BoulderEntityRenderer::new);
EntityRendererRegistry.register(EntitiesME.SMOKE_RING_PROJECTILE, SmokeRingProjectileRenderer::new);
EntityRendererRegistry.register(EntitiesME.WEB, FlyingItemEntityRenderer::new);

EntityRendererRegistry.register(EntitiesME.NPC, NpcEntityRenderer::new);

EntityRendererRegistry.register(ModEntities.SEAT_ENTITY, SeatRenderer::new);

EntityRendererRegistry.register(EntitiesME.SEAT_ENTITY, SeatRenderer::new);

HandledScreens.register(ModScreenHandlers.FORGE_ALLOYING_SCREEN_HANDLER, ForgeAlloyingScreen::new);
HandledScreens.register(ModScreenHandlers.FORGE_HEATING_SCREEN_HANDLER, ForgeHeatingScreen::new);
Expand Down Expand Up @@ -390,7 +390,7 @@ private void initializeRenderLayerMap() {
BlockRenderLayerMap.putBlock(ModDecorativeBlocks.RUINED_DWARVEN_DOOR, BlockRenderLayer.CUTOUT);
BlockRenderLayerMap.putBlock(ModDecorativeBlocks.LIGHT_BLUE_HOBBIT_DOOR, BlockRenderLayer.CUTOUT);

for (Block block : Crops.crops){
for (Block block : BlockTagCollectionsME.CROPS){
BlockRenderLayerMap.putBlock(block, BlockRenderLayer.CUTOUT);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@
import net.sevenstars.middleearth.block.utils.BlockSetRegistration;
import net.sevenstars.middleearth.block.utils.setBuilders.GenericBlockSetBuilder;
import net.sevenstars.middleearth.block.utils.setBuilders.OxidizableBlockSetBuilder;
import net.sevenstars.middleearth.datageneration.content.tags.WoodenSlabs;
import net.sevenstars.middleearth.item.utils.ItemGroupsME;

import java.util.ArrayList;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,13 @@
import net.sevenstars.middleearth.block.special.reinforcedChest.ReinforcedChestBlockEntity;
import net.sevenstars.middleearth.block.special.shapingAnvil.TreatedAnvilBlockEntity;
import net.sevenstars.middleearth.block.special.structureManager.StructureManagerBlockEntity;
import net.sevenstars.middleearth.block.special.structureManager.nest.StructureNestBlock;
import net.sevenstars.middleearth.block.special.structureManager.nest.StructureNestBlockEntity;
import net.sevenstars.middleearth.block.special.wood_pile.WoodPileBlockEntity;
import net.minecraft.block.entity.BlockEntityType;
import net.minecraft.registry.Registries;
import net.minecraft.registry.Registry;
import net.minecraft.util.Identifier;
import net.sevenstars.middleearth.registries.RegistryAliases;
import net.sevenstars.middleearth.registries.RegistryAliasesME;

public class ModBlockEntities {
public static BlockEntityType<ForgeBlockEntity> FORGE = register("forge", ForgeBlockEntity::new,
Expand Down Expand Up @@ -66,7 +65,7 @@ private static <T extends BlockEntity> BlockEntityType<T> register(String name,
FabricBlockEntityTypeBuilder.Factory<? extends T> entityFactory,
Block... blocks) {
Identifier id = Identifier.of(MiddleEarth.MOD_ID, name);
RegistryAliases.aliases.add(new RegistryAliases.Alias(Registries.BLOCK_ENTITY_TYPE, name));
RegistryAliasesME.aliases.add(new RegistryAliasesME.Alias(Registries.BLOCK_ENTITY_TYPE, name));

return Registry.register(Registries.BLOCK_ENTITY_TYPE, id, FabricBlockEntityTypeBuilder.<T>create(entityFactory, blocks).build());
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
import net.minecraft.sound.BlockSoundGroup;
import net.minecraft.util.ColorCode;
import net.minecraft.util.Identifier;
import net.sevenstars.middleearth.registries.RegistryAliases;
import net.sevenstars.middleearth.registries.RegistryAliasesME;

import java.util.List;
import java.util.function.Function;
Expand Down Expand Up @@ -743,7 +743,7 @@ public static Block registerBlock(String name, Function<AbstractBlock.Settings,
}
group.add(block.asItem().getDefaultStack());
TranslationEntries.blockEntries.add(block);
RegistryAliases.aliases.add(new RegistryAliases.Alias(Registries.BLOCK, name));
RegistryAliasesME.aliases.add(new RegistryAliasesME.Alias(Registries.BLOCK, name));
return Registry.register(Registries.BLOCK, keyOfBlock(name), block);
}

Expand All @@ -763,7 +763,7 @@ static void registerBlockItem(String name, Block block) {
var item = Registry.register(Registries.ITEM, Identifier.of(MiddleEarth.MOD_ID, name),
new BlockItem(block, new Item.Settings().registryKey(keyOfItem(name))));
Item.BLOCK_ITEMS.put(block, item);
RegistryAliases.aliases.add(new RegistryAliases.Alias(Registries.ITEM, name));
RegistryAliasesME.aliases.add(new RegistryAliasesME.Alias(Registries.ITEM, name));
}

public static RegistryKey<Block> keyOfBlock(String id) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
import net.minecraft.sound.BlockSoundGroup;
import net.minecraft.state.property.Properties;
import net.minecraft.util.DyeColor;
import net.sevenstars.middleearth.registries.RegistryAliases;
import net.sevenstars.middleearth.registries.RegistryAliasesME;

import java.util.function.Function;
import java.util.function.ToIntFunction;
Expand Down Expand Up @@ -660,7 +660,7 @@ public class ModDecorativeBlocks {

public static Block registerBlock(String name, Function<AbstractBlock.Settings, Block> factory, AbstractBlock.Settings settings) {
Block block = (Block)factory.apply(settings.registryKey(ModBlocks.keyOfBlock(name)));
RegistryAliases.aliases.add(new RegistryAliases.Alias(Registries.BLOCK, name));
RegistryAliasesME.aliases.add(new RegistryAliasesME.Alias(Registries.BLOCK, name));
return Registry.register(Registries.BLOCK, ModBlocks.keyOfBlock(name), block);
}

Expand All @@ -669,7 +669,7 @@ public static Block registerBlockWithItem(String name, Function<AbstractBlock.Se
ModBlocks.registerBlockItem(name, block);
ItemGroupsME.DECORATIVES_BLOCKS_CONTENT.add(block.asItem().getDefaultStack());
TranslationEntries.blockEntries.add(block);
RegistryAliases.aliases.add(new RegistryAliases.Alias(Registries.BLOCK, name));
RegistryAliasesME.aliases.add(new RegistryAliasesME.Alias(Registries.BLOCK, name));
return Registry.register(Registries.BLOCK, ModBlocks.keyOfBlock(name), block);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,8 @@
import net.sevenstars.middleearth.block.special.shelobiteeggs.ShelobiteLarvaEggHangingBlock;
import net.sevenstars.middleearth.datageneration.content.TranslationEntries;
import net.sevenstars.middleearth.datageneration.content.models.TintableCrossModel;
import net.sevenstars.middleearth.datageneration.content.tags.Saplings;
import net.sevenstars.middleearth.item.utils.ItemGroupsME;
import net.sevenstars.middleearth.registries.RegistryAliases;
import net.sevenstars.middleearth.registries.RegistryAliasesME;
import net.sevenstars.middleearth.world.features.tree.ModTreeConfiguredFeatures;
import net.sevenstars.middleearth.world.features.tree.MushroomTreeConfiguredFeatures;
import net.minecraft.block.*;
Expand Down Expand Up @@ -595,10 +594,14 @@ public static Block registerSimpleSapling(String name, RegistryKey<ConfiguredFea
Block resultBlock = Registry.register(Registries.BLOCK, ModBlocks.keyOfBlock(name), saplingBlock);
registerBlockItem(name, resultBlock);
TintableCrossModel.notTintedBlocks.add(resultBlock);
Saplings.saplings.add(resultBlock);

// Saplings.saplings.add(resultBlock);
// --> BlockTagCollectionsME.SAPLINGS.add(resultBlock);
// Blocks should not be tagged during registering, temp solution - add SIMPLE! saplings manually to SAPLINGS
// TODO: @Yelfra | Remove comment later

TranslationEntries.blockEntries.add(resultBlock);
RegistryAliases.aliases.add(new RegistryAliases.Alias(Registries.BLOCK, name));
RegistryAliasesME.aliases.add(new RegistryAliasesME.Alias(Registries.BLOCK, name));

return resultBlock;
}
Expand All @@ -618,7 +621,7 @@ public static Block registerVariantSapling(String name, List<RegistryKey<Configu

registerBlockItem(name, resultBlock);
TintableCrossModel.notTintedBlocks.add(resultBlock);
RegistryAliases.aliases.add(new RegistryAliases.Alias(Registries.BLOCK, name));
RegistryAliasesME.aliases.add(new RegistryAliasesME.Alias(Registries.BLOCK, name));

return resultBlock;
}
Expand All @@ -630,7 +633,7 @@ public static Block registerBlock(String name, Function<AbstractBlock.Settings,
TranslationEntries.blockEntries.add(block);
}

RegistryAliases.aliases.add(new RegistryAliases.Alias(Registries.BLOCK, name));
RegistryAliasesME.aliases.add(new RegistryAliasesME.Alias(Registries.BLOCK, name));

return Registry.register(Registries.BLOCK, ModBlocks.keyOfBlock(name), block);
}
Expand All @@ -641,7 +644,7 @@ static void registerBlockItem(String name, Block block) {
Item.BLOCK_ITEMS.put(block, item);

ItemGroupsME.NATURE_BLOCKS_CONTENTS.add(item.getDefaultStack());
RegistryAliases.aliases.add(new RegistryAliases.Alias(Registries.ITEM, name));
RegistryAliasesME.aliases.add(new RegistryAliasesME.Alias(Registries.ITEM, name));
}

public static void registerModBlocks() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
import net.minecraft.world.WorldView;
import net.minecraft.world.tick.ScheduledTickView;
import net.sevenstars.middleearth.MiddleEarth;
import net.sevenstars.middleearth.entity.ModEntities;
import net.sevenstars.middleearth.entity.EntitiesME;
import net.sevenstars.middleearth.entity.seat.SeatEntity;
import org.jetbrains.annotations.Nullable;
import org.joml.Quaternionf;
Expand All @@ -46,7 +46,7 @@ protected ActionResult onUse(BlockState state, World world, BlockPos pos, Player
eulerAngles = quaternion.getEulerAnglesXYZ(eulerAngles);
float yaw = (float) Math.atan2(eulerAngles.x, eulerAngles.z);

SeatEntity seat = new SeatEntity(ModEntities.SEAT_ENTITY, world);
SeatEntity seat = new SeatEntity(EntitiesME.SEAT_ENTITY, world);
seat.setPos(pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5);
seat.refreshPositionAndAngles(pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, yaw, 0);
seat.setNoGravity(true);
Expand Down
Loading