Skip to content

Commit

Permalink
Experience Holder Blocks/BE/Container/Screen/etc
Browse files Browse the repository at this point in the history
  • Loading branch information
Direwolf20-MC committed Sep 12, 2024
1 parent d1b5430 commit 8ca3661
Show file tree
Hide file tree
Showing 31 changed files with 1,301 additions and 14 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// 1.21.1 2024-09-10T19:56:11.5948361 JustDireThings Tags
// 1.21.1 2024-09-12T11:15:53.8960728 JustDireThings Tags
3f1af1854f73f0ca55ec9d76439efe025d53baaf data/c/tags/block/budding_blocks.json
f9398184c0216b0a1898a13ab326b459417ec790 data/c/tags/block/buds.json
691444261459e5b538067e8cd03db2fbe1b3371d data/c/tags/block/clusters.json
Expand All @@ -13,5 +13,5 @@ fd8f34ea7c3f46b4031a8323009cfaffab88474e data/justdirethings/tags/block/phase_de
b73bf681aa4023a1ac69623485bbec13846a282a data/justdirethings/tags/block/swapper_deny.json
35133e95f1c8fdd7a1c21afcc231fc0bffefb9a8 data/justdirethings/tags/block/tick_speed_deny.json
704d4386b02b3ad86131bd6cf1e36461baa4169f data/minecraft/tags/block/bamboo_plantable_on.json
0562efff705455227cd6342808df3c8f082d9cbc data/minecraft/tags/block/mineable/pickaxe.json
206c5b35dd25f55c68f989b006c5c5acce7822af data/minecraft/tags/block/mineable/pickaxe.json
8882a0a52d428036a957d24fb046777a8795e588 data/minecraft/tags/block/mineable/shovel.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// 1.21.1 2024-09-07T12:06:42.2583603 Loot Tables
// 1.21.1 2024-09-12T11:15:53.9060812 Loot Tables
16a0ab61513717ab1cb8c1df9718722a643d9728 data/justdirethings/loot_table/blocks/blazegold_block.json
b2953e2dcd4960e7f275bb42e4ad626219213fe1 data/justdirethings/loot_table/blocks/blockbreakert1.json
bb65fdba3c1b14526a629aacb462661b5853008b data/justdirethings/loot_table/blocks/blockbreakert2.json
Expand All @@ -18,6 +18,7 @@ d6bade76be1cda5393e15c24c1fbe30e95f88d76 data/justdirethings/loot_table/blocks/d
33bae530c3d366588774b7fd2be61e8eae4d2f59 data/justdirethings/loot_table/blocks/eclipsealloy_block.json
86da68130cd736a04252f0ce688aaaa22a824f70 data/justdirethings/loot_table/blocks/eclipsegateblock.json
ae552784cf952a0f440297360735d3a06f2219ad data/justdirethings/loot_table/blocks/energytransmitter.json
bbec1ad75f93301b82c08e7ce57318522028e967 data/justdirethings/loot_table/blocks/experienceholder.json
1374ed53b2d6c1462b64a99f3ca1b290388d36c5 data/justdirethings/loot_table/blocks/ferricore_block.json
3716bc4ec75b66e189c71ea06c09dc08fd0132f5 data/justdirethings/loot_table/blocks/fluidcollectort1.json
6878247c1338944b23fd82861b5e098763334d6d data/justdirethings/loot_table/blocks/fluidcollectort2.json
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// 1.21.1 2024-09-07T12:06:42.2473509 Item Models: justdirethings
// 1.21.1 2024-09-12T11:15:53.8975739 Item Models: justdirethings
c197a1b2a5ae31fcfabfe6cab9ab95a9dc0e1af6 assets/justdirethings/models/item/blazegold_axe.json
dddf215922d40d92c2d8bce4229f2e2af8b3c7ba assets/justdirethings/models/item/blazegold_axe_active.json
6396fb6e503760080534bc26337236d4d09a4cb8 assets/justdirethings/models/item/blazegold_block.json
Expand Down Expand Up @@ -209,6 +209,7 @@ d3f356b071deedc9372ec13aa79b224a46327716 assets/justdirethings/models/item/eclip
2f3ef44480cc3c82ab7af95cfee7d174dcfd1d30 assets/justdirethings/models/item/eclipsealloy_sword_active.json
f60564d23035abd9c1d690f4622ea258afa92db1 assets/justdirethings/models/item/eclipsegate_wand.json
acf1922ba0cd70df4e7ccf30684508a47ac1a14b assets/justdirethings/models/item/energytransmitter.json
c6e8a590cc9e752378ffd172eadd9fcf6f6bb1ed assets/justdirethings/models/item/experienceholder.json
eb052d000da5f8d7999360f7bbfe773aa23ce70d assets/justdirethings/models/item/ferricore_axe.json
62a8f615d9bd8a95b2e7e21b8f6658454008fb54 assets/justdirethings/models/item/ferricore_axe_active.json
6c85011e764ec697b9be64a2f7fc12ddacf56f74 assets/justdirethings/models/item/ferricore_block.json
Expand Down
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
// 1.21.1 2024-09-08T10:48:40.1210526 Languages: en_us for mod: justdirethings
d5878f400337646026ccd4b5a26fd0191197b510 assets/justdirethings/lang/en_us.json
// 1.21.1 2024-09-12T11:15:53.905581 Languages: en_us for mod: justdirethings
80317086157715c924dcacf357e72efab49d8580 assets/justdirethings/lang/en_us.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// 1.21.1 2024-09-07T12:06:42.2598615 Recipes
// 1.21.1 2024-09-12T11:15:53.9075825 Recipes
39cd44c838de7f56aeac73aec8b3bfb64ad7fec2 data/justdirethings/advancement/recipes/building_blocks/blazegold_ingot_9x9.json
2f2a0f948f272df9713010dbcb75beb81c328b01 data/justdirethings/advancement/recipes/building_blocks/celestigem_9x9.json
94b1a5fa365caea5ec90b525346091c5babe3068 data/justdirethings/advancement/recipes/building_blocks/coal_t1_9x9.json
Expand Down Expand Up @@ -244,8 +244,10 @@ e8627cdd4f0fb2a6c839f4f9634298a090d5311e data/justdirethings/advancement/recipes
e7739ae5a223a405cd2d8a63f1fffe9aae24ee77 data/justdirethings/advancement/recipes/misc/eclipsealloy_sword-templateupgrade.json
6f8cbc17d75d54ec3630af834f37a475d9aeb23a data/justdirethings/advancement/recipes/misc/eclipsealloy_sword.json
c4027f6d2dfede7c4b83887d84307ecb3fd3d194 data/justdirethings/advancement/recipes/misc/eclipsegate_wand.json
99d92b1bc189067bd87bd462a3d9dcdc80b97214 data/justdirethings/advancement/recipes/misc/energytransmitter.json
6f7bbe549ead5d8d6e55a047489e60fd15ed6ed9 data/justdirethings/advancement/recipes/misc/energytransmitter.json
1c708ed2037839bce715e7bbb2b4735f10332ebf data/justdirethings/advancement/recipes/misc/energytransmitter_nbtclear.json
95ed0743947a37f994102e9fa297703842817dd9 data/justdirethings/advancement/recipes/misc/experienceholder.json
e4c5cc919880147cb39143d2756b4cd3987a1809 data/justdirethings/advancement/recipes/misc/experienceholder_nbtclear.json
7e588d8128a4c11f6f2dc30c548188f5d05e476b data/justdirethings/advancement/recipes/misc/ferricore_axe-leafbreaker.json
cb728c7c3e212df2c679818a0c43ead0f775862e data/justdirethings/advancement/recipes/misc/ferricore_axe-treefeller.json
53378d92dc5e2456f22bef4f2e68f88ab35ed25c data/justdirethings/advancement/recipes/misc/ferricore_axe.json
Expand Down Expand Up @@ -626,6 +628,8 @@ da733be1557a9be15498275f8c6178ed326ac6a9 data/justdirethings/recipe/eclipsealloy
2f2859d569c0b8c60550dfb94a5bda2cd7c44aab data/justdirethings/recipe/eclipsegate_wand.json
b05351e6bb42bb9d25dd71b1c866ed8faa5676b9 data/justdirethings/recipe/energytransmitter.json
96973172b8a0d257d8b381579a452986ba57d599 data/justdirethings/recipe/energytransmitter_nbtclear.json
27ac72b113eb35d4b4e95866a54e70a0844bfa13 data/justdirethings/recipe/experienceholder.json
d7a84f58bdf776d2037d2a688104493093707109 data/justdirethings/recipe/experienceholder_nbtclear.json
04206220684c529ae065b7eac581f3b8f88c18e9 data/justdirethings/recipe/ferricore_axe-leafbreaker.json
89fda77982a9d37bbdb23d336a8c93e94a540496 data/justdirethings/recipe/ferricore_axe-treefeller.json
86d392a3bb7b5daf9cf25a03c114aab9a04ba849 data/justdirethings/recipe/ferricore_axe.json
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
"block.justdirethings.eclipsealloy_block": "Eclipse Alloy Block",
"block.justdirethings.eclipsegateblock": "Eclipse Gate",
"block.justdirethings.energytransmitter": "Energy Transmitter",
"block.justdirethings.experienceholder": "Experience Holder",
"block.justdirethings.ferricore_block": "Ferricore Block",
"block.justdirethings.fluidcollectort1": "Simple Fluid Collector",
"block.justdirethings.fluidcollectort2": "Advanced Fluid Collector",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"parent": "justdirethings:block/experienceholder"
}
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
{
"parent": "minecraft:recipes/root",
"criteria": {
"has_ferricore_ingot": {
"has_blazegold_ingot": {
"conditions": {
"items": [
{
"items": "justdirethings:ferricore_ingot"
"items": "justdirethings:blazegold_ingot"
}
]
},
Expand All @@ -21,7 +21,7 @@
"requirements": [
[
"has_the_recipe",
"has_ferricore_ingot"
"has_blazegold_ingot"
]
],
"rewards": {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{
"parent": "minecraft:recipes/root",
"criteria": {
"has_blazegold_ingot": {
"conditions": {
"items": [
{
"items": "justdirethings:blazegold_ingot"
}
]
},
"trigger": "minecraft:inventory_changed"
},
"has_the_recipe": {
"conditions": {
"recipe": "justdirethings:experienceholder"
},
"trigger": "minecraft:recipe_unlocked"
}
},
"requirements": [
[
"has_the_recipe",
"has_blazegold_ingot"
]
],
"rewards": {
"recipes": [
"justdirethings:experienceholder"
]
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{
"parent": "minecraft:recipes/root",
"criteria": {
"has_experienceholder": {
"conditions": {
"items": [
{
"items": "justdirethings:experienceholder"
}
]
},
"trigger": "minecraft:inventory_changed"
},
"has_the_recipe": {
"conditions": {
"recipe": "justdirethings:experienceholder_nbtclear"
},
"trigger": "minecraft:recipe_unlocked"
}
},
"requirements": [
[
"has_the_recipe",
"has_experienceholder"
]
],
"rewards": {
"recipes": [
"justdirethings:experienceholder_nbtclear"
]
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"type": "minecraft:block",
"pools": [
{
"bonus_rolls": 0.0,
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
],
"entries": [
{
"type": "minecraft:item",
"name": "justdirethings:experienceholder"
}
],
"rolls": 1.0
}
],
"random_sequence": "justdirethings:blocks/experienceholder"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{
"type": "minecraft:crafting_shaped",
"category": "misc",
"group": "justdirethings",
"key": {
"d": {
"item": "minecraft:emerald"
},
"e": {
"item": "minecraft:ender_pearl"
},
"f": {
"item": "justdirethings:blazegold_ingot"
},
"h": {
"item": "minecraft:book"
}
},
"pattern": [
" d ",
"heh",
"fff"
],
"result": {
"count": 1,
"id": "justdirethings:experienceholder"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"type": "minecraft:crafting_shapeless",
"category": "misc",
"group": "justdirethings",
"ingredients": [
{
"item": "justdirethings:experienceholder"
}
],
"result": {
"count": 1,
"id": "justdirethings:experienceholder"
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@
"justdirethings:time_crystal_cluster",
"justdirethings:time_crystal_block",
"justdirethings:paradoxmachine",
"justdirethings:inventory_holder"
"justdirethings:inventory_holder",
"justdirethings:experienceholder"
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
package com.direwolf20.justdirethings.client.blockentityrenders;

import com.direwolf20.justdirethings.client.blockentityrenders.baseber.AreaAffectingBER;
import com.direwolf20.justdirethings.common.blockentities.ExperienceHolderBE;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.math.Axis;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.LightTexture;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider;
import net.minecraft.client.renderer.entity.ItemRenderer;
import net.minecraft.core.Direction;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Items;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.state.properties.BlockStateProperties;

public class ExperienceHolderBER extends AreaAffectingBER {
public static final ItemStack itemStack = new ItemStack(Items.EXPERIENCE_BOTTLE);

public ExperienceHolderBER(BlockEntityRendererProvider.Context context) {

}

@Override
public void render(BlockEntity blockentity, float partialTicks, PoseStack matrixStackIn, MultiBufferSource bufferIn, int combinedLightsIn, int combinedOverlayIn) {
super.render(blockentity, partialTicks, matrixStackIn, bufferIn, combinedLightsIn, combinedOverlayIn);
if (blockentity instanceof ExperienceHolderBE experienceHolderBE)
this.renderItemStack(experienceHolderBE, matrixStackIn, bufferIn, combinedOverlayIn);
}

private void renderItemStack(ExperienceHolderBE blockEntity, PoseStack poseStack, MultiBufferSource bufferIn, int combinedOverlayIn) {
ItemRenderer itemRenderer = Minecraft.getInstance().getItemRenderer();
Direction direction = blockEntity.getBlockState().getValue(BlockStateProperties.FACING).getOpposite();
long millis = System.currentTimeMillis();

poseStack.pushPose();
poseStack.translate(0.5f + (direction.getStepX() * 0.3f), 0.5f + (direction.getStepY() * 0.3f), 0.5f + (direction.getStepZ() * 0.3f));
poseStack.mulPose(Axis.XP.rotationDegrees(direction.getStepZ() * -90));
poseStack.mulPose(Axis.ZP.rotationDegrees(direction.getStepX() * 90));
poseStack.mulPose(Axis.XP.rotationDegrees(direction.getStepY() == 1 ? 0 : 180));
float angle = ((millis / 15) % 360);
poseStack.mulPose(Axis.YP.rotationDegrees(angle));
poseStack.scale(.15f, .15f, .15f);
itemRenderer.renderStatic(itemStack, ItemDisplayContext.FIXED, LightTexture.FULL_BRIGHT, combinedOverlayIn, poseStack, bufferIn, Minecraft.getInstance().level, 0);
poseStack.popPose();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package com.direwolf20.justdirethings.client.screens;

import com.direwolf20.justdirethings.client.screens.basescreens.BaseMachineScreen;
import com.direwolf20.justdirethings.common.containers.ExperienceHolderContainer;
import net.minecraft.network.chat.Component;
import net.minecraft.world.entity.player.Inventory;

public class ExperienceHolderScreen extends BaseMachineScreen<ExperienceHolderContainer> {
public ExperienceHolderScreen(ExperienceHolderContainer container, Inventory inv, Component name) {
super(container, inv, name);
}

@Override
public void init() {
super.init();
}
}
Loading

0 comments on commit 8ca3661

Please sign in to comment.