Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/main'
Browse files Browse the repository at this point in the history
  • Loading branch information
Thepigcat76 committed Sep 10, 2024
2 parents 89e65d7 + f166a5d commit 88bc716
Show file tree
Hide file tree
Showing 27 changed files with 1,169 additions and 140 deletions.
3 changes: 3 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,9 @@ tasks.withType(ProcessResources).configureEach {
filesMatching(['META-INF/neoforge.mods.toml']) {
expand replaceProperties
}

duplicatesStrategy = DuplicatesStrategy.EXCLUDE

}

publishing {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// 1.21.1 2024-09-09T23:00:30.152337473 Item Models: modjam
// 1.21.1 2024-09-10T17:19:46.7624416 Item Models: modjam
51765874ad3111adf69684269ad9a422bfbaac4a assets/modjam/models/item/aquarine_steel_block.json
e674d6859446f65b4ee805ed6e9f47d6cde82515 assets/modjam/models/item/aquarine_steel_ingot.json
098a336dd0b210f2b650174de2346a665b921edd assets/modjam/models/item/aquarine_steel_wrench.json
Expand All @@ -13,8 +13,9 @@ a6585e714ae7922fe5d8319e566b7acc247e2cd1 assets/modjam/models/item/crowbar.json
2da9933c199f962b0af10b748a5bdea42b815a14 assets/modjam/models/item/drowned_lungs.json
945ba48b672ffdee7c76e0939012a2b60ce471a6 assets/modjam/models/item/eas_bucket.json
5b6b9e8621c065cb4167e4b6dfdfaecb0fd7186d assets/modjam/models/item/eas_vial.json
c78201ce0b7023d1bd6173df7f9263b243caaeb6 assets/modjam/models/item/etching_acid_bucket.json
054c0dfda629903fcf6880f0db40241af562a1a8 assets/modjam/models/item/gear.json
f0f9891cd57b3a66f7440a71b925348bb8ea745b assets/modjam/models/item/glass_vial.json
dab337d602d93b0a4930b69e652b1155300c6502 assets/modjam/models/item/prism_monocle.json
0466424a99d558f8beb3c9944a82a36cabf4a2aa assets/modjam/models/item/prismarine_laser_relay.json
dab337d602d93b0a4930b69e652b1155300c6502 assets/modjam/models/item/prism_monocle.json
3a80dac2ed65f9c211115988d17e81af34d02e3d assets/modjam/models/item/rusty_gear.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// 1.21.1 2024-09-09T19:42:22.399781792 Block States: modjam
// 1.21.1 2024-09-10T20:28:21.2955623 Block States: modjam
af3ef9c17c60ced537516e8aa1215fcb76e3683e assets/modjam/blockstates/aquarine_steel_block.json
865a45a4d022b56bc54dc32dae4b666af2df7d6f assets/modjam/blockstates/aquatic_catalyst.json
6e42254717fc67a953282f50517eb06c02193129 assets/modjam/blockstates/chiseled_dark_prismarine.json
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// 1.21.1 2024-09-10T20:26:46.030593 Global Loot Modifiers : modjam
e7f11a46f5a3672b7ccab65e075c363596d0bf4b data/modjam/loot_modifiers/elder_guardian_modifier.json
197ecc005cf8fcaa86f4fedcff635b94804f9aa2 data/modjam/loot_modifiers/guardian_modifier.json
4c83e5f61706ea5181128230627d9cfff7e3c15b data/modjam/loot_modifiers/ocean_ruins_modifier.json
c011af8fc50a517e0473e9113f9a2672c854d882 data/modjam/loot_modifiers/shipwreck_modifier.json
655a48f63f1b41627dd1fc25c31ad537eb8da0ca data/modjam/loot_modifiers/suspicious_ruins_sand_modifier.json
15f14af3dcb92ee9a8901ef211bd4feb415420bf data/neoforge/loot_modifiers/global_loot_modifiers.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "modjam:item/etching_acid_bucket"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"type": "modjam:add_item",
"conditions": [
{
"condition": "neoforge:loot_table_id",
"loot_table_id": "minecraft:entities/elder_guardian"
},
{
"chance": 1.0,
"condition": "minecraft:random_chance"
}
],
"item": {
"components": {
"minecraft:container_loot": {
"loot_table": "modjam:chests/crate"
}
},
"count": 1,
"id": "modjam:crate"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"type": "neoforge:add_table",
"conditions": [
{
"condition": "neoforge:loot_table_id",
"loot_table_id": "minecraft:entities/guardian"
},
{
"chance": 0.2,
"condition": "minecraft:random_chance"
}
],
"table": "modjam:entities/guardian"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{
"type": "modjam:add_item",
"conditions": [
{
"condition": "minecraft:any_of",
"terms": [
{
"condition": "neoforge:loot_table_id",
"loot_table_id": "minecraft:chests/underwater_ruin_big"
},
{
"condition": "neoforge:loot_table_id",
"loot_table_id": "minecraft:chests/underwater_ruin_small"
}
]
},
{
"chance": 0.33,
"condition": "minecraft:random_chance"
}
],
"item": {
"components": {
"minecraft:container_loot": {
"loot_table": "modjam:chests/crate"
}
},
"count": 1,
"id": "modjam:crate"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"type": "modjam:add_item",
"conditions": [
{
"condition": "neoforge:loot_table_id",
"loot_table_id": "minecraft:chests/shipwreck_treasure"
},
{
"chance": 0.33,
"condition": "minecraft:random_chance"
}
],
"item": {
"components": {
"minecraft:container_loot": {
"loot_table": "modjam:chests/crate"
}
},
"count": 1,
"id": "modjam:crate"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"type": "modjam:add_item",
"conditions": [
{
"condition": "neoforge:loot_table_id",
"loot_table_id": "minecraft:archaeology/ocean_ruin_warm"
},
{
"chance": 0.05,
"condition": "minecraft:random_chance"
}
],
"item": {
"components": {
"minecraft:container_loot": {
"loot_table": "modjam:chests/crate"
}
},
"count": 1,
"id": "modjam:crate"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"entries": [
"modjam:ocean_ruins_modifier",
"modjam:guardian_modifier",
"modjam:elder_guardian_modifier",
"modjam:suspicious_ruins_sand_modifier",
"modjam:shipwreck_modifier"
],
"replace": false
}
1 change: 1 addition & 0 deletions src/main/java/com/portingdeadmods/modjam/ModJam.java
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ public ModJam(IEventBus modEventBus, ModContainer modContainer) {
MJMultiblocks.MULTIBLOCKS.register(modEventBus);
MJAugments.AUGMENTS.register(modEventBus);
MJMenuTypes.MENUS.register(modEventBus);
MJLootModifier.LOOT_MODIFIERS.register(modEventBus);

modEventBus.addListener(PrismMonocleItem::registerCapabilities);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public class ItemTransformationRecipeCategory implements IRecipeCategory<ItemTra

public ItemTransformationRecipeCategory(IGuiHelper helper) {
this.background = helper.createBlankDrawable(80, 16);
this.icon = helper.createDrawableIngredient(VanillaTypes.ITEM_STACK, new ItemStack(MJBlocks.AQUATIC_CATALYST.get()));
this.icon = helper.createDrawableIngredient(VanillaTypes.ITEM_STACK, new ItemStack(MJBlocks.PRISMARINE_RELAY.get()));
}

@Override
Expand Down Expand Up @@ -65,4 +65,5 @@ public void setRecipe(IRecipeLayoutBuilder builder, ItemTransformationRecipe rec
builder.addSlot(RecipeIngredientRole.OUTPUT, 64, 0).addItemStack(recipe.getResultItem(null));
}


}
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,26 @@

import com.portingdeadmods.modjam.ModJam;
import com.portingdeadmods.modjam.content.recipes.ItemTransformationRecipe;
import com.portingdeadmods.modjam.registries.MJBlocks;
import mezz.jei.api.IModPlugin;
import mezz.jei.api.JeiPlugin;
import mezz.jei.api.registration.IRecipeCatalystRegistration;
import mezz.jei.api.registration.IRecipeCategoryRegistration;
import mezz.jei.api.registration.IRecipeRegistration;
import net.minecraft.client.Minecraft;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.crafting.RecipeHolder;
import net.minecraft.world.item.crafting.RecipeManager;
import org.jetbrains.annotations.NotNull;

import java.util.List;

@JeiPlugin
public class MJJeiPlugin implements IModPlugin {

@Override
public ResourceLocation getPluginUid() {
public @NotNull ResourceLocation getPluginUid() {
return ResourceLocation.fromNamespaceAndPath(ModJam.MODID,"jei_plugin");
}

Expand All @@ -35,4 +39,10 @@ public void registerRecipes(IRecipeRegistration registration) {
.stream().map(RecipeHolder::value).toList();
registration.addRecipes(ItemTransformationRecipeCategory.RECIPE_TYPE, transformationRecipes);
}

@Override
public void registerRecipeCatalysts(IRecipeCatalystRegistration registration) {
registration.addRecipeCatalyst(new ItemStack(MJBlocks.AQUATIC_CATALYST.get()),
ItemTransformationRecipeCategory.RECIPE_TYPE);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ protected MapCodec<? extends BaseEntityBlock> codec() {
if (stack.isEmpty()) return ItemInteractionResult.PASS_TO_DEFAULT_BLOCK_INTERACTION;
if (!stack.is(MJItems.CROWBAR)) return ItemInteractionResult.PASS_TO_DEFAULT_BLOCK_INTERACTION;
if (player.getCooldowns().isOnCooldown(stack.getItem())) return ItemInteractionResult.FAIL;
if (Math.random() > 0.1){
if (Math.random() > 0.2){
be.playSound(state,SoundEvents.ANVIL_HIT);
player.getCooldowns().addCooldown(stack.getItem(),10);
return ItemInteractionResult.FAIL;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
package com.portingdeadmods.modjam.content.items;

import com.portingdeadmods.modjam.registries.MJItems;
import net.minecraft.ChatFormatting;
import net.minecraft.core.Holder;
import net.minecraft.network.chat.Component;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.entity.EquipmentSlot;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ArmorItem;
import net.minecraft.world.item.ArmorMaterial;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.TooltipFlag;
import net.minecraft.world.level.Level;

import java.util.List;

public class DivingSuitArmorItem extends ArmorItem {

public DivingSuitArmorItem(Holder<ArmorMaterial> material, Type type, Properties properties) {
super(material, type, properties);
}

@Override
public int getMaxStackSize(ItemStack stack) {
return 1;
}

@Override
public void inventoryTick(ItemStack stack, Level level, Entity entity, int slotId, boolean isSelected) {
if(entity instanceof Player player) {
if(player.getItemBySlot(EquipmentSlot.HEAD).is(MJItems.DIVING_HELMET) && player.getItemBySlot(EquipmentSlot.CHEST).is(MJItems.DIVING_CHESTPLATE) && player.getItemBySlot(EquipmentSlot.LEGS).is(MJItems.DIVING_LEGGINGS) && player.getItemBySlot(EquipmentSlot.FEET).is(MJItems.DIVING_BOOTS)) {
if(player.isUnderWater()) {
player.setAirSupply(player.getMaxAirSupply());
}
}
}
}

@Override
public void appendHoverText(ItemStack stack, TooltipContext context, List<Component> tooltipComponents, TooltipFlag tooltipFlag) {
if(stack.is(MJItems.DIVING_HELMET.get())) {
tooltipComponents.add(Component.literal("Allows you to see better underwater.").withStyle(ChatFormatting.GRAY));
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ public void facingBlock(Block block) {
.modelForState().modelFile(model).rotationX(90).rotationY(270).addModel();
}


private void crateBlock(CrateBlock crateBlock) {
VariantBlockStateBuilder builder = getVariantBuilder(crateBlock);
builder.partialState().with(CrateBlock.RUSTY, false).with(BlockStateProperties.OPEN, false)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,5 +35,6 @@ public static void onGatherData(GatherDataEvent event) {
BlockTagProvider blockTagProvider = new BlockTagProvider(output, lookupProvider, existingFileHelper);
generator.addProvider(event.includeClient(), blockTagProvider);
generator.addProvider(event.includeClient(), new ItemTagProvider(output, lookupProvider, blockTagProvider.contentsGetter()));
generator.addProvider(event.includeServer(),new LootModifierProvider(output,lookupProvider));
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
package com.portingdeadmods.modjam.datagen;

import com.portingdeadmods.modjam.ModJam;
import com.portingdeadmods.modjam.loot.AddItemModifier;
import com.portingdeadmods.modjam.registries.MJBlocks;
import com.portingdeadmods.modjam.registries.MJLootTables;
import net.minecraft.core.HolderLookup;
import net.minecraft.core.component.DataComponents;
import net.minecraft.data.PackOutput;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.component.SeededContainerLoot;
import net.minecraft.world.level.storage.loot.predicates.LootItemCondition;
import net.minecraft.world.level.storage.loot.predicates.LootItemRandomChanceCondition;
import net.neoforged.neoforge.common.data.GlobalLootModifierProvider;
import net.neoforged.neoforge.common.loot.AddTableLootModifier;
import net.neoforged.neoforge.common.loot.LootTableIdCondition;

import java.util.Random;
import java.util.concurrent.CompletableFuture;

public class LootModifierProvider extends GlobalLootModifierProvider {
public LootModifierProvider(PackOutput output, CompletableFuture<HolderLookup.Provider> registries) {
super(output, registries, ModJam.MODID);
}

@Override
protected void start() {
ItemStack crate = MJBlocks.CRATE.toStack();
crate.set(DataComponents.CONTAINER_LOOT,new SeededContainerLoot(MJLootTables.CRATE,0));
add("elder_guardian_modifier",
new AddItemModifier(new LootItemCondition[]{
LootTableIdCondition.builder(ResourceLocation.parse("entities/elder_guardian")).build(),
LootItemRandomChanceCondition.randomChance(1.0f).build()}
,crate));
add("guardian_modifier",
new AddTableLootModifier(new LootItemCondition[]{
LootTableIdCondition.builder(ResourceLocation.parse("entities/guardian")).build(),
LootItemRandomChanceCondition.randomChance(0.20f).build()}
,MJLootTables.GUARDIAN));
add("shipwreck_modifier",
new AddItemModifier(new LootItemCondition[]{
LootTableIdCondition.builder(ResourceLocation.parse("chests/shipwreck_treasure")).build(),
LootItemRandomChanceCondition.randomChance(0.33f).build()}
,crate));
add("ocean_ruins_modifier",
new AddItemModifier(new LootItemCondition[]{
LootTableIdCondition.builder(ResourceLocation.parse("chests/underwater_ruin_big")).or(LootTableIdCondition.builder(ResourceLocation.parse("chests/underwater_ruin_small"))).build(),
LootItemRandomChanceCondition.randomChance(0.33f).build()}
,crate));
add("suspicious_ruins_sand_modifier",
new AddItemModifier(new LootItemCondition[]{
LootTableIdCondition.builder(ResourceLocation.parse("archaeology/ocean_ruin_warm")).build(),
LootItemRandomChanceCondition.randomChance(0.05f).build()}
,crate));

}
}
Loading

0 comments on commit 88bc716

Please sign in to comment.