diff --git a/elements/BedrockLootTable.mod.json b/elements/BedrockLootTable.mod.json
deleted file mode 100644
index b4f4291..0000000
--- a/elements/BedrockLootTable.mod.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
- "_fv": 73,
- "_type": "loottable",
- "definition": {
- "type": "Block",
- "pools": [
- {
- "minrolls": 1,
- "maxrolls": 1,
- "minbonusrolls": 1,
- "maxbonusrolls": 1,
- "hasbonusrolls": false,
- "entries": [
- {
- "type": "item",
- "item": {
- "value": "Blocks.BEDROCK"
- },
- "weight": 1,
- "minCount": 1,
- "maxCount": 1,
- "minEnchantmentLevel": 0,
- "maxEnchantmentLevel": 0,
- "affectedByFortune": false,
- "explosionDecay": false,
- "silkTouchMode": 1
- }
- ]
- }
- ],
- "name": "blocks/bedrock",
- "namespace": "minecraft"
- }
-}
\ No newline at end of file
diff --git a/elements/BedrockPickaxe.mod.json b/elements/BedrockPickaxe.mod.json
new file mode 100644
index 0000000..42c8532
--- /dev/null
+++ b/elements/BedrockPickaxe.mod.json
@@ -0,0 +1,42 @@
+{
+ "_fv": 73,
+ "_type": "tool",
+ "definition": {
+ "toolType": "Pickaxe",
+ "renderType": 0,
+ "blockingRenderType": 0,
+ "texture": "bedrock_pickaxe",
+ "customModelName": "Normal",
+ "blockingModelName": "Normal blocking",
+ "name": "Bedrock Pickaxe",
+ "specialInformation": {
+ "fixedValue": []
+ },
+ "creativeTabs": [
+ {
+ "value": "TOOLS"
+ }
+ ],
+ "efficiency": 9.0,
+ "attackSpeed": 1.2,
+ "enchantability": 19,
+ "damageVsEntity": 8.0,
+ "usageCount": 0,
+ "glowCondition": {
+ "fixedValue": false
+ },
+ "repairItems": [
+ {
+ "value": "Blocks.BEDROCK"
+ }
+ ],
+ "immuneToFire": true,
+ "blockDropsTier": "NETHERITE",
+ "blocksAffected": [],
+ "stayInGridWhenCrafting": false,
+ "damageOnCrafting": false,
+ "onEntitySwing": {
+ "name": "BedrockPickaxeEntitySwingsItem"
+ }
+ }
+}
\ No newline at end of file
diff --git a/elements/BedrockPickaxeEntitySwingsItem.mod.json b/elements/BedrockPickaxeEntitySwingsItem.mod.json
new file mode 100644
index 0000000..782fa85
--- /dev/null
+++ b/elements/BedrockPickaxeEntitySwingsItem.mod.json
@@ -0,0 +1,7 @@
+{
+ "_fv": 73,
+ "_type": "procedure",
+ "definition": {
+ "procedurexml": "no_ext_triggerNONEOUTLINE4.5NONEOUTLINE4.5NONEOUTLINE4.5Blocks.BEDROCKTRUEFALSENONEOUTLINE4.5NONEOUTLINE4.5NONEOUTLINE4.5Blocks.AIRblock.stone.breakblockNONEOUTLINE4.5NONEOUTLINE4.5NONEOUTLINE4.50.80.8TRUEBlocks.BEDROCKNONEOUTLINE4.5NONEOUTLINE4.5NONEOUTLINE4.510NONEOUTLINE4.5NONEOUTLINE4.5NONEOUTLINE4.5CUSTOM:BedrockifierTRUEFALSENONEOUTLINE4.5NONEOUTLINE4.5NONEOUTLINE4.5Blocks.AIRblock.stone.breakblockNONEOUTLINE4.5NONEOUTLINE4.5NONEOUTLINE4.50.80.8TRUECUSTOM:BedrockifierNONEOUTLINE4.5NONEOUTLINE4.5NONEOUTLINE4.510"
+ }
+}
\ No newline at end of file
diff --git a/elements/BedrockPickaxeRecipe.mod.json b/elements/BedrockPickaxeRecipe.mod.json
new file mode 100644
index 0000000..bf5815c
--- /dev/null
+++ b/elements/BedrockPickaxeRecipe.mod.json
@@ -0,0 +1,28 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Smithing",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "smithingInputStack": {
+ "value": "Items.NETHERITE_PICKAXE"
+ },
+ "smithingInputAdditionStack": {
+ "value": "Blocks.BEDROCK"
+ },
+ "smithingInputTemplateStack": {
+ "value": "CUSTOM:BedrockUpgradeTemplate"
+ },
+ "smithingReturnStack": {
+ "value": "CUSTOM:BedrockPickaxe"
+ },
+ "name": "bedrock_pickaxe_recipe",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/BedrockRecipe.mod.json b/elements/BedrockRecipe.mod.json
new file mode 100644
index 0000000..531c401
--- /dev/null
+++ b/elements/BedrockRecipe.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "BUILDING",
+ "recipeShapeless": true,
+ "recipeSlots": [
+ {
+ "value": "CUSTOM:HexaCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:HexaCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:HexaCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:HexaCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:HexaCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:HexaCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:HexaCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:HexaCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:HexaCondensedNetherrack"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Blocks.BEDROCK"
+ },
+ "name": "bedrock_recipe",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/ObsidianRecipe.mod.json b/elements/BedrockRecipe2.mod.json
similarity index 86%
rename from elements/ObsidianRecipe.mod.json
rename to elements/BedrockRecipe2.mod.json
index 7e7a8f2..e6ab359 100644
--- a/elements/ObsidianRecipe.mod.json
+++ b/elements/BedrockRecipe2.mod.json
@@ -9,7 +9,7 @@
"xpReward": 0.0,
"cookingTime": 200,
"craftingBookCategory": "BUILDING",
- "recipeShapeless": false,
+ "recipeShapeless": true,
"recipeSlots": [
{
"value": ""
@@ -40,9 +40,9 @@
}
],
"recipeReturnStack": {
- "value": "Blocks.OBSIDIAN"
+ "value": "CUSTOM:HexaCondensedNetherrack"
},
- "name": "obsidian_recipe",
+ "name": "bedrock_recipe_2",
"namespace": "mod"
}
}
\ No newline at end of file
diff --git a/elements/BedrockSword.mod.json b/elements/BedrockSword.mod.json
new file mode 100644
index 0000000..e1e05c6
--- /dev/null
+++ b/elements/BedrockSword.mod.json
@@ -0,0 +1,35 @@
+{
+ "_fv": 73,
+ "_type": "tool",
+ "definition": {
+ "toolType": "Sword",
+ "renderType": 0,
+ "blockingRenderType": 0,
+ "texture": "bedrock_sword",
+ "customModelName": "Normal",
+ "blockingModelName": "Normal blocking",
+ "name": "Bedrock Sword",
+ "specialInformation": {
+ "fixedValue": []
+ },
+ "creativeTabs": [
+ {
+ "value": "TOOLS"
+ }
+ ],
+ "efficiency": 4.0,
+ "attackSpeed": 1.6,
+ "enchantability": 19,
+ "damageVsEntity": 80.0,
+ "usageCount": 0,
+ "glowCondition": {
+ "fixedValue": false
+ },
+ "repairItems": [],
+ "immuneToFire": true,
+ "blockDropsTier": "NETHERITE",
+ "blocksAffected": [],
+ "stayInGridWhenCrafting": false,
+ "damageOnCrafting": false
+ }
+}
\ No newline at end of file
diff --git a/elements/BedrockSwordRecipe.mod.json b/elements/BedrockSwordRecipe.mod.json
new file mode 100644
index 0000000..7a7cf89
--- /dev/null
+++ b/elements/BedrockSwordRecipe.mod.json
@@ -0,0 +1,28 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Smithing",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "smithingInputStack": {
+ "value": "Items.NETHERITE_SWORD"
+ },
+ "smithingInputAdditionStack": {
+ "value": "Blocks.BEDROCK"
+ },
+ "smithingInputTemplateStack": {
+ "value": "CUSTOM:BedrockUpgradeTemplate"
+ },
+ "smithingReturnStack": {
+ "value": "CUSTOM:BedrockSword"
+ },
+ "name": "bedrock_sword_recipe",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/BedrockUpgradeTemplate.mod.json b/elements/BedrockUpgradeTemplate.mod.json
new file mode 100644
index 0000000..dabee7a
--- /dev/null
+++ b/elements/BedrockUpgradeTemplate.mod.json
@@ -0,0 +1,63 @@
+{
+ "_fv": 73,
+ "_type": "item",
+ "definition": {
+ "renderType": 0,
+ "texture": "bedrock_upgrade_smithing_template",
+ "customModelName": "Normal",
+ "customProperties": {},
+ "states": [],
+ "name": "Bedrock Upgrade Template",
+ "rarity": "EPIC",
+ "creativeTabs": [
+ {
+ "value": "MATERIALS"
+ }
+ ],
+ "stackSize": 64,
+ "enchantability": 0,
+ "useDuration": 0,
+ "toolType": 1.0,
+ "damageCount": 0,
+ "recipeRemainder": {
+ "value": ""
+ },
+ "destroyAnyBlock": false,
+ "immuneToFire": true,
+ "stayInGridWhenCrafting": false,
+ "damageOnCrafting": false,
+ "enableMeleeDamage": false,
+ "damageVsEntity": 0.0,
+ "specialInformation": {
+ "fixedValue": []
+ },
+ "glowCondition": {
+ "fixedValue": false
+ },
+ "inventorySize": 9,
+ "inventoryStackSize": 64,
+ "enableRanged": false,
+ "shootConstantly": false,
+ "rangedItemChargesPower": false,
+ "projectile": {
+ "value": "CUSTOM:ShitProjectile"
+ },
+ "projectileDisableAmmoCheck": false,
+ "isFood": false,
+ "nutritionalValue": 4,
+ "saturation": 0.3,
+ "eatResultItem": {
+ "value": ""
+ },
+ "isMeat": false,
+ "isAlwaysEdible": false,
+ "animation": "none",
+ "isMusicDisc": false,
+ "musicDiscMusic": {
+ "value": ""
+ },
+ "musicDiscDescription": "",
+ "musicDiscLengthInTicks": 100,
+ "musicDiscAnalogOutput": 0
+ }
+}
\ No newline at end of file
diff --git a/elements/BedrockUpgradeTemplateRecipe.mod.json b/elements/BedrockUpgradeTemplateRecipe.mod.json
new file mode 100644
index 0000000..88142ab
--- /dev/null
+++ b/elements/BedrockUpgradeTemplateRecipe.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": true,
+ "recipeSlots": [
+ {
+ "value": ""
+ },
+ {
+ "value": "Blocks.BEDROCK"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": "Items.NETHERITE_UPGRADE"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "CUSTOM:BedrockUpgradeTemplate"
+ },
+ "name": "bedrock_upgrade_template_recipe",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/Bedrockifier.mod.json b/elements/Bedrockifier.mod.json
new file mode 100644
index 0000000..53dbe66
--- /dev/null
+++ b/elements/Bedrockifier.mod.json
@@ -0,0 +1,140 @@
+{
+ "_fv": 73,
+ "_type": "block",
+ "definition": {
+ "texture": "bedrockifier-bottom",
+ "textureTop": "bedrockifier-top",
+ "textureLeft": "bedrockifier-side",
+ "textureFront": "bedrockifier-core",
+ "textureRight": "bedrockifier-side",
+ "textureBack": "bedrockifier-side",
+ "renderType": 10,
+ "customModelName": "Normal",
+ "rotationMode": 1,
+ "enablePitch": false,
+ "emissiveRendering": false,
+ "displayFluidOverlay": false,
+ "itemTexture": "",
+ "particleTexture": "",
+ "tintType": "No tint",
+ "isItemTinted": false,
+ "hasTransparency": false,
+ "connectedSides": false,
+ "transparencyType": "SOLID",
+ "disableOffset": false,
+ "boundingBoxes": [
+ {
+ "mx": 0.0,
+ "my": 0.0,
+ "mz": 0.0,
+ "Mx": 16.0,
+ "My": 16.0,
+ "Mz": 16.0,
+ "subtract": false
+ }
+ ],
+ "customProperties": [],
+ "name": "Bedrockifier",
+ "specialInformation": {
+ "fixedValue": []
+ },
+ "hardness": -1.0,
+ "resistance": 3600000.0,
+ "hasGravity": false,
+ "isWaterloggable": false,
+ "creativeTabs": [
+ {
+ "value": "TRANSPORTATION"
+ }
+ ],
+ "destroyTool": "pickaxe",
+ "customDrop": {
+ "value": ""
+ },
+ "dropAmount": 1,
+ "useLootTableForDrops": false,
+ "requiresCorrectTool": true,
+ "enchantPowerBonus": 0.0,
+ "plantsGrowOn": false,
+ "canRedstoneConnect": false,
+ "lightOpacity": 15,
+ "material": {
+ "value": "NONE"
+ },
+ "tickRate": 0,
+ "tickRandomly": false,
+ "isReplaceable": false,
+ "canProvidePower": false,
+ "emittedRedstonePower": {
+ "fixedValue": 15.0
+ },
+ "colorOnMap": "DEFAULT",
+ "creativePickItem": {
+ "value": ""
+ },
+ "offsetType": "NONE",
+ "aiPathNodeType": "DEFAULT",
+ "flammability": 0,
+ "fireSpreadSpeed": 0,
+ "isLadder": false,
+ "slipperiness": 0.6,
+ "speedFactor": 1.0,
+ "jumpFactor": 1.0,
+ "reactionToPushing": "NORMAL",
+ "isNotColidable": false,
+ "isCustomSoundType": false,
+ "soundOnStep": {
+ "value": "STONE"
+ },
+ "breakSound": {
+ "value": ""
+ },
+ "fallSound": {
+ "value": ""
+ },
+ "hitSound": {
+ "value": ""
+ },
+ "placeSound": {
+ "value": ""
+ },
+ "stepSound": {
+ "value": ""
+ },
+ "luminance": 0,
+ "unbreakable": true,
+ "vanillaToolTier": "DIAMOND",
+ "isBonemealable": false,
+ "hasInventory": true,
+ "guiBoundTo": "BedrockifierGUI",
+ "openGUIOnRightClick": true,
+ "inventorySize": 3,
+ "inventoryStackSize": 64,
+ "inventoryDropWhenDestroyed": true,
+ "inventoryComparatorPower": true,
+ "inventoryOutSlotIDs": [
+ 2
+ ],
+ "inventoryInSlotIDs": [],
+ "hasEnergyStorage": false,
+ "energyInitial": 0,
+ "energyCapacity": 400000,
+ "energyMaxReceive": 200,
+ "energyMaxExtract": 200,
+ "isFluidTank": false,
+ "fluidCapacity": 8000,
+ "fluidRestrictions": [],
+ "generateFeature": false,
+ "restrictionBiomes": [],
+ "blocksToReplace": [
+ {
+ "value": "TAG:stone_ore_replaceables"
+ }
+ ],
+ "generationShape": "UNIFORM",
+ "frequencyPerChunks": 10,
+ "frequencyOnChunk": 16,
+ "minGenerateHeight": 0,
+ "maxGenerateHeight": 64
+ }
+}
\ No newline at end of file
diff --git a/elements/BedrockifierButtonPressLogic.mod.json b/elements/BedrockifierButtonPressLogic.mod.json
new file mode 100644
index 0000000..f9e58a4
--- /dev/null
+++ b/elements/BedrockifierButtonPressLogic.mod.json
@@ -0,0 +1,7 @@
+{
+ "_fv": 73,
+ "_type": "procedure",
+ "definition": {
+ "procedurexml": "no_ext_triggerGT00ANDEQUnbreakable0FALSE1Blocks.BEDROCKADD2102MINUS0100MINUS1111Unbreakable2TRUEblock.smithing_table.useblock0.80.8"
+ }
+}
\ No newline at end of file
diff --git a/elements/BedrockifierGUI.mod.json b/elements/BedrockifierGUI.mod.json
new file mode 100644
index 0000000..1101b59
--- /dev/null
+++ b/elements/BedrockifierGUI.mod.json
@@ -0,0 +1,123 @@
+{
+ "_fv": 73,
+ "_type": "gui",
+ "definition": {
+ "type": 1,
+ "width": 176,
+ "height": 166,
+ "inventoryOffsetX": 0,
+ "inventoryOffsetY": 0,
+ "renderBgLayer": true,
+ "doesPauseGame": false,
+ "components": [
+ {
+ "type": "inputslot",
+ "data": {
+ "inputLimit": {
+ "value": ""
+ },
+ "disablePlacement": {
+ "fixedValue": false
+ },
+ "id": 0,
+ "disablePickup": {
+ "fixedValue": false
+ },
+ "dropItemsWhenNotBound": false,
+ "x": 141,
+ "y": 71,
+ "locked": false
+ }
+ },
+ {
+ "type": "inputslot",
+ "data": {
+ "inputLimit": {
+ "value": "Blocks.BEDROCK"
+ },
+ "disablePlacement": {
+ "fixedValue": false
+ },
+ "color": {
+ "value": -16777216,
+ "falpha": 0.0
+ },
+ "id": 1,
+ "disablePickup": {
+ "fixedValue": false
+ },
+ "dropItemsWhenNotBound": false,
+ "x": 195,
+ "y": 71,
+ "locked": false
+ }
+ },
+ {
+ "type": "image",
+ "data": {
+ "image": "plus_sign.png",
+ "use1Xscale": false,
+ "x": 168,
+ "y": 71,
+ "locked": false
+ }
+ },
+ {
+ "type": "button",
+ "data": {
+ "name": "button_empty",
+ "text": "->",
+ "isUndecorated": false,
+ "onClick": {
+ "name": "BedrockifierButtonPressLogic"
+ },
+ "width": 35,
+ "height": 20,
+ "x": 222,
+ "y": 71,
+ "locked": false
+ }
+ },
+ {
+ "type": "outputslot",
+ "data": {
+ "color": {
+ "value": -16777216,
+ "falpha": 0.0
+ },
+ "id": 2,
+ "disablePickup": {
+ "fixedValue": false
+ },
+ "dropItemsWhenNotBound": false,
+ "x": 267,
+ "y": 71,
+ "locked": false
+ }
+ },
+ {
+ "type": "label",
+ "data": {
+ "name": "label_bedrockifier",
+ "text": {
+ "fixedValue": "Bedrockifier"
+ },
+ "color": {
+ "value": -12829636,
+ "falpha": 0.0
+ },
+ "x": 132,
+ "y": 44,
+ "locked": false
+ }
+ }
+ ],
+ "gridSettings": {
+ "sx": 18,
+ "sy": 18,
+ "ox": 11,
+ "oy": 15,
+ "snapOnGrid": true
+ }
+ }
+}
\ No newline at end of file
diff --git a/elements/BedrockifierRecipe.mod.json b/elements/BedrockifierRecipe.mod.json
new file mode 100644
index 0000000..826cc00
--- /dev/null
+++ b/elements/BedrockifierRecipe.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Blocks.BEDROCK"
+ },
+ {
+ "value": "Blocks.BEDROCK"
+ },
+ {
+ "value": "Blocks.BEDROCK"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:Cheese"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedCondensedNetherrack"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "CUSTOM:Bedrockifier"
+ },
+ "name": "bedrockifier_recipe",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/BlazeSpawnEgg.mod.json b/elements/BlazeSpawnEgg.mod.json
new file mode 100644
index 0000000..64806e4
--- /dev/null
+++ b/elements/BlazeSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.BLAZE_ROD"
+ },
+ {
+ "value": "Items.BLAZE_POWDER"
+ },
+ {
+ "value": "Items.BLAZE_ROD"
+ },
+ {
+ "value": "Items.BLAZE_POWDER"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.BLAZE_POWDER"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedNetherrack"
+ },
+ {
+ "value": "Items.LAVA_BUCKET"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedNetherrack"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#61"
+ },
+ "name": "blaze_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/CatSpawnEgg.mod.json b/elements/CatSpawnEgg.mod.json
new file mode 100644
index 0000000..90b0b34
--- /dev/null
+++ b/elements/CatSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.FISH#0"
+ },
+ {
+ "value": "Items.FISH#0"
+ },
+ {
+ "value": "Items.FISH#0"
+ },
+ {
+ "value": "Items.FISH#0"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.FISH#0"
+ },
+ {
+ "value": "Items.FISH#0"
+ },
+ {
+ "value": "Items.FISH#0"
+ },
+ {
+ "value": "Items.FISH#0"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.CAT_SPAWN_EGG"
+ },
+ "name": "cat_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/ChickenSpawnEgg.mod.json b/elements/ChickenSpawnEgg.mod.json
new file mode 100644
index 0000000..068dad0
--- /dev/null
+++ b/elements/ChickenSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.FEATHER"
+ },
+ {
+ "value": "Items.EGG"
+ },
+ {
+ "value": "Items.FEATHER"
+ },
+ {
+ "value": "Items.EGG"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.EGG"
+ },
+ {
+ "value": "Items.FEATHER"
+ },
+ {
+ "value": "Items.EGG"
+ },
+ {
+ "value": "Items.FEATHER"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#93"
+ },
+ "name": "chicken_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/CowSpawnEgg.mod.json b/elements/CowSpawnEgg.mod.json
new file mode 100644
index 0000000..19938fb
--- /dev/null
+++ b/elements/CowSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.BEEF"
+ },
+ {
+ "value": "Items.LEATHER"
+ },
+ {
+ "value": "Items.BEEF"
+ },
+ {
+ "value": "Items.LEATHER"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.LEATHER"
+ },
+ {
+ "value": "Items.BEEF"
+ },
+ {
+ "value": "Items.LEATHER"
+ },
+ {
+ "value": "Items.BEEF"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#92"
+ },
+ "name": "cow_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/CreeperSpawnEgg.mod.json b/elements/CreeperSpawnEgg.mod.json
new file mode 100644
index 0000000..0b1836d
--- /dev/null
+++ b/elements/CreeperSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.GUNPOWDER"
+ },
+ {
+ "value": "Items.GUNPOWDER"
+ },
+ {
+ "value": "Items.GUNPOWDER"
+ },
+ {
+ "value": "Items.GUNPOWDER"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.GUNPOWDER"
+ },
+ {
+ "value": "Items.GUNPOWDER"
+ },
+ {
+ "value": "Items.GUNPOWDER"
+ },
+ {
+ "value": "Items.GUNPOWDER"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#50"
+ },
+ "name": "creeper_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/DrownedSpawnEgg.mod.json b/elements/DrownedSpawnEgg.mod.json
new file mode 100644
index 0000000..89eacaa
--- /dev/null
+++ b/elements/DrownedSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.WATER_BUCKET"
+ },
+ {
+ "value": "Items.WATER_BUCKET"
+ },
+ {
+ "value": "Items.WATER_BUCKET"
+ },
+ {
+ "value": "Items.WATER_BUCKET"
+ },
+ {
+ "value": "Items.SPAWN_EGG#54"
+ },
+ {
+ "value": "Items.WATER_BUCKET"
+ },
+ {
+ "value": "Items.WATER_BUCKET"
+ },
+ {
+ "value": "Items.WATER_BUCKET"
+ },
+ {
+ "value": "Items.WATER_BUCKET"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.DROWNED_SPAWN_EGG"
+ },
+ "name": "drowned_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/ElderGuardianSpawnEgg.mod.json b/elements/ElderGuardianSpawnEgg.mod.json
new file mode 100644
index 0000000..c4f24ca
--- /dev/null
+++ b/elements/ElderGuardianSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.PRISMARINE_SHARD"
+ },
+ {
+ "value": "Blocks.SPONGE#1"
+ },
+ {
+ "value": "Items.PRISMARINE_SHARD"
+ },
+ {
+ "value": "Blocks.SPONGE#1"
+ },
+ {
+ "value": "Items.SPAWN_EGG#68"
+ },
+ {
+ "value": "Blocks.SPONGE#1"
+ },
+ {
+ "value": "Items.PRISMARINE_SHARD"
+ },
+ {
+ "value": "Items.TROPICAL_FISH_BUCKET"
+ },
+ {
+ "value": "Items.PRISMARINE_SHARD"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.ELDER_GUARDIAN_SPAWN_EGG"
+ },
+ "name": "elder_guardian_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/EndermanSpawnEgg.mod.json b/elements/EndermanSpawnEgg.mod.json
new file mode 100644
index 0000000..a370536
--- /dev/null
+++ b/elements/EndermanSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.ENDER_PEARL"
+ },
+ {
+ "value": "Items.ENDER_PEARL"
+ },
+ {
+ "value": "Items.ENDER_PEARL"
+ },
+ {
+ "value": "Items.ENDER_PEARL"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.ENDER_PEARL"
+ },
+ {
+ "value": "Items.ENDER_PEARL"
+ },
+ {
+ "value": "Items.ENDER_PEARL"
+ },
+ {
+ "value": "Items.ENDER_PEARL"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#58"
+ },
+ "name": "enderman_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/EvokerSpawnEgg.mod.json b/elements/EvokerSpawnEgg.mod.json
new file mode 100644
index 0000000..2ca74cf
--- /dev/null
+++ b/elements/EvokerSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.EMERALD"
+ },
+ {
+ "value": "Items.GOLD_INGOT"
+ },
+ {
+ "value": "Items.EMERALD"
+ },
+ {
+ "value": "Items.GOLD_INGOT"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.GOLD_INGOT"
+ },
+ {
+ "value": "Items.GOLD_INGOT"
+ },
+ {
+ "value": "Items.TOTEM_OF_UNDYING"
+ },
+ {
+ "value": "Items.GOLD_INGOT"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.EVOKER_SPAWN_EGG"
+ },
+ "name": "evoker_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/GhastSpawnEgg.mod.json b/elements/GhastSpawnEgg.mod.json
new file mode 100644
index 0000000..1f0f78a
--- /dev/null
+++ b/elements/GhastSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.GHAST_TEAR"
+ },
+ {
+ "value": "Items.GUNPOWDER"
+ },
+ {
+ "value": "Items.GHAST_TEAR"
+ },
+ {
+ "value": "Items.GUNPOWDER"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.GUNPOWDER"
+ },
+ {
+ "value": "Items.GHAST_TEAR"
+ },
+ {
+ "value": "Items.FIRE_CHARGE"
+ },
+ {
+ "value": "Items.GHAST_TEAR"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#56"
+ },
+ "name": "ghast_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/Ghoul.mod.json b/elements/Ghoul.mod.json
index a40ce78..6c64cef 100644
--- a/elements/Ghoul.mod.json
+++ b/elements/Ghoul.mod.json
@@ -64,7 +64,7 @@
},
"mobBehaviourType": "Mob",
"mobCreatureType": "UNDEAD",
- "attackStrength": 3,
+ "attackStrength": 6,
"attackKnockback": 0.0,
"knockbackResistance": 0.0,
"movementSpeed": 0.36,
@@ -72,7 +72,7 @@
"armorBaseValue": 0.0,
"trackingRange": 64,
"followRange": 19,
- "health": 9,
+ "health": 10,
"xpAmount": 0,
"waterMob": false,
"breatheUnderwater": {
diff --git a/elements/GlowSquidSpawnEgg.mod.json b/elements/GlowSquidSpawnEgg.mod.json
new file mode 100644
index 0000000..d2e6e61
--- /dev/null
+++ b/elements/GlowSquidSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Blocks.DEEPSLATE"
+ },
+ {
+ "value": "Items.GLOWSTONE_DUST"
+ },
+ {
+ "value": "Blocks.DEEPSLATE"
+ },
+ {
+ "value": "Items.GLOWSTONE_DUST"
+ },
+ {
+ "value": "Items.SPAWN_EGG#94"
+ },
+ {
+ "value": "Items.GLOWSTONE_DUST"
+ },
+ {
+ "value": "Blocks.DEEPSLATE"
+ },
+ {
+ "value": "Items.WATER_BUCKET"
+ },
+ {
+ "value": "Blocks.DEEPSLATE"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.GLOW_SQUID_SPAWN_EGG"
+ },
+ "name": "glow_squid_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/GuardianSpawnEgg.mod.json b/elements/GuardianSpawnEgg.mod.json
new file mode 100644
index 0000000..e2e4c8f
--- /dev/null
+++ b/elements/GuardianSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.PRISMARINE_SHARD"
+ },
+ {
+ "value": "Items.PRISMARINE_SHARD"
+ },
+ {
+ "value": "Items.PRISMARINE_SHARD"
+ },
+ {
+ "value": "Items.PRISMARINE_SHARD"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.PRISMARINE_SHARD"
+ },
+ {
+ "value": "Items.PRISMARINE_SHARD"
+ },
+ {
+ "value": "Items.COD_BUCKET"
+ },
+ {
+ "value": "Items.PRISMARINE_SHARD"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#68"
+ },
+ "name": "guardian_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/HoglinSpawnEgg.mod.json b/elements/HoglinSpawnEgg.mod.json
new file mode 100644
index 0000000..ab7b536
--- /dev/null
+++ b/elements/HoglinSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "CUSTOM:CondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:CondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedNetherrack"
+ },
+ {
+ "value": "Items.SPAWN_EGG#90"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:CondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:CondensedNetherrack"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.HOGLIN_SPAWN_EGG"
+ },
+ "name": "hoglin_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/HorseSpawnEgg.mod.json b/elements/HorseSpawnEgg.mod.json
new file mode 100644
index 0000000..193c37c
--- /dev/null
+++ b/elements/HorseSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Blocks.WHEAT"
+ },
+ {
+ "value": "Blocks.WHEAT"
+ },
+ {
+ "value": "Blocks.WHEAT"
+ },
+ {
+ "value": "Blocks.WHEAT"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Blocks.WHEAT"
+ },
+ {
+ "value": "Blocks.HAY_BLOCK"
+ },
+ {
+ "value": "Blocks.HAY_BLOCK"
+ },
+ {
+ "value": "Blocks.HAY_BLOCK"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#100"
+ },
+ "name": "horse_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/IronGolemQuestionMark.mod.json b/elements/IronGolemQuestionMark.mod.json
new file mode 100644
index 0000000..098ce27
--- /dev/null
+++ b/elements/IronGolemQuestionMark.mod.json
@@ -0,0 +1,63 @@
+{
+ "_fv": 73,
+ "_type": "item",
+ "definition": {
+ "renderType": 0,
+ "texture": "iron_golem_question_mark",
+ "customModelName": "Normal",
+ "customProperties": {},
+ "states": [],
+ "name": "Iron Golem...?",
+ "rarity": "UNCOMMON",
+ "creativeTabs": [
+ {
+ "value": "MATERIALS"
+ }
+ ],
+ "stackSize": 64,
+ "enchantability": 0,
+ "useDuration": 0,
+ "toolType": 1.0,
+ "damageCount": 0,
+ "recipeRemainder": {
+ "value": ""
+ },
+ "destroyAnyBlock": false,
+ "immuneToFire": false,
+ "stayInGridWhenCrafting": false,
+ "damageOnCrafting": false,
+ "enableMeleeDamage": false,
+ "damageVsEntity": 0.0,
+ "specialInformation": {
+ "fixedValue": []
+ },
+ "glowCondition": {
+ "fixedValue": false
+ },
+ "inventorySize": 9,
+ "inventoryStackSize": 64,
+ "enableRanged": false,
+ "shootConstantly": false,
+ "rangedItemChargesPower": false,
+ "projectile": {
+ "value": "CUSTOM:ShitProjectile"
+ },
+ "projectileDisableAmmoCheck": false,
+ "isFood": false,
+ "nutritionalValue": 4,
+ "saturation": 0.3,
+ "eatResultItem": {
+ "value": ""
+ },
+ "isMeat": false,
+ "isAlwaysEdible": false,
+ "animation": "none",
+ "isMusicDisc": false,
+ "musicDiscMusic": {
+ "value": ""
+ },
+ "musicDiscDescription": "",
+ "musicDiscLengthInTicks": 100,
+ "musicDiscAnalogOutput": 0
+ }
+}
\ No newline at end of file
diff --git a/elements/IronGolemQuestionMarkRecipe.mod.json b/elements/IronGolemQuestionMarkRecipe.mod.json
new file mode 100644
index 0000000..463b098
--- /dev/null
+++ b/elements/IronGolemQuestionMarkRecipe.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Blocks.CARVED_PUMPKIN"
+ },
+ {
+ "value": "Blocks.CARVED_PUMPKIN"
+ },
+ {
+ "value": "Blocks.CARVED_PUMPKIN"
+ },
+ {
+ "value": "Blocks.IRON_BLOCK"
+ },
+ {
+ "value": "Blocks.IRON_BLOCK"
+ },
+ {
+ "value": "Blocks.IRON_BLOCK"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": "Blocks.IRON_BLOCK"
+ },
+ {
+ "value": ""
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "CUSTOM:IronGolemQuestionMark"
+ },
+ "name": "iron_golem_question_mark_recipe",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/IronGolemSpawnEgg.mod.json b/elements/IronGolemSpawnEgg.mod.json
new file mode 100644
index 0000000..0906249
--- /dev/null
+++ b/elements/IronGolemSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": true,
+ "recipeSlots": [
+ {
+ "value": ""
+ },
+ {
+ "value": "CUSTOM:IronGolemQuestionMark"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.IRON_GOLEM_SPAWN_EGG"
+ },
+ "name": "iron_golem_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/LlamaSpawnEgg.mod.json b/elements/LlamaSpawnEgg.mod.json
new file mode 100644
index 0000000..403364b
--- /dev/null
+++ b/elements/LlamaSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.LEATHER"
+ },
+ {
+ "value": "Blocks.WHEAT"
+ },
+ {
+ "value": "Items.LEATHER"
+ },
+ {
+ "value": "Blocks.WHEAT"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Blocks.WHEAT"
+ },
+ {
+ "value": "Blocks.HAY_BLOCK"
+ },
+ {
+ "value": "Blocks.HAY_BLOCK"
+ },
+ {
+ "value": "Blocks.HAY_BLOCK"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.LLAMA_SPAWN_EGG"
+ },
+ "name": "llama_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/MagicEgg.mod.json b/elements/MagicEgg.mod.json
new file mode 100644
index 0000000..08e7495
--- /dev/null
+++ b/elements/MagicEgg.mod.json
@@ -0,0 +1,63 @@
+{
+ "_fv": 73,
+ "_type": "item",
+ "definition": {
+ "renderType": 0,
+ "texture": "magic_egg",
+ "customModelName": "Normal",
+ "customProperties": {},
+ "states": [],
+ "name": "Magic Egg",
+ "rarity": "UNCOMMON",
+ "creativeTabs": [
+ {
+ "value": "MATERIALS"
+ }
+ ],
+ "stackSize": 64,
+ "enchantability": 0,
+ "useDuration": 0,
+ "toolType": 1.0,
+ "damageCount": 0,
+ "recipeRemainder": {
+ "value": ""
+ },
+ "destroyAnyBlock": false,
+ "immuneToFire": false,
+ "stayInGridWhenCrafting": false,
+ "damageOnCrafting": false,
+ "enableMeleeDamage": false,
+ "damageVsEntity": 0.0,
+ "specialInformation": {
+ "fixedValue": []
+ },
+ "glowCondition": {
+ "fixedValue": false
+ },
+ "inventorySize": 9,
+ "inventoryStackSize": 64,
+ "enableRanged": false,
+ "shootConstantly": false,
+ "rangedItemChargesPower": false,
+ "projectile": {
+ "value": "CUSTOM:ShitProjectile"
+ },
+ "projectileDisableAmmoCheck": false,
+ "isFood": false,
+ "nutritionalValue": 4,
+ "saturation": 0.3,
+ "eatResultItem": {
+ "value": ""
+ },
+ "isMeat": false,
+ "isAlwaysEdible": false,
+ "animation": "none",
+ "isMusicDisc": false,
+ "musicDiscMusic": {
+ "value": ""
+ },
+ "musicDiscDescription": "",
+ "musicDiscLengthInTicks": 100,
+ "musicDiscAnalogOutput": 0
+ }
+}
\ No newline at end of file
diff --git a/elements/MagicEggRecipe.mod.json b/elements/MagicEggRecipe.mod.json
new file mode 100644
index 0000000..b0ca26a
--- /dev/null
+++ b/elements/MagicEggRecipe.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": ""
+ },
+ {
+ "value": "CUSTOM:MagicDust"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": "CUSTOM:MagicDust"
+ },
+ {
+ "value": "Items.EGG"
+ },
+ {
+ "value": "CUSTOM:MagicDust"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": "CUSTOM:MagicDust"
+ },
+ {
+ "value": ""
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "CUSTOM:MagicEgg"
+ },
+ "name": "magic_egg_recipe",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/MagmaCubeSpawnEgg.mod.json b/elements/MagmaCubeSpawnEgg.mod.json
new file mode 100644
index 0000000..631247e
--- /dev/null
+++ b/elements/MagmaCubeSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "CUSTOM:Bean"
+ },
+ {
+ "value": "CUSTOM:Cheese"
+ },
+ {
+ "value": "CUSTOM:Bean"
+ },
+ {
+ "value": "CUSTOM:Cheese"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "CUSTOM:Cheese"
+ },
+ {
+ "value": "CUSTOM:Bean"
+ },
+ {
+ "value": "Items.MAGMA_CREAM"
+ },
+ {
+ "value": "CUSTOM:Bean"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#62"
+ },
+ "name": "magma_cube_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/MailmanProfession.mod.json b/elements/MailmanProfession.mod.json
new file mode 100644
index 0000000..576ebe8
--- /dev/null
+++ b/elements/MailmanProfession.mod.json
@@ -0,0 +1,16 @@
+{
+ "_fv": 73,
+ "_type": "villagerprofession",
+ "definition": {
+ "displayName": "Mailman Profession",
+ "pointOfInterest": {
+ "value": "CUSTOM:Mailbox"
+ },
+ "actionSound": {
+ "value": "item.book.page_turn"
+ },
+ "hat": "None",
+ "professionTextureFile": "mailman.png",
+ "zombifiedProfessionTextureFile": "mailman.png"
+ }
+}
\ No newline at end of file
diff --git a/elements/MailmanTrades.mod.json b/elements/MailmanTrades.mod.json
new file mode 100644
index 0000000..cb34c21
--- /dev/null
+++ b/elements/MailmanTrades.mod.json
@@ -0,0 +1,33 @@
+{
+ "_fv": 73,
+ "_type": "villagertrade",
+ "definition": {
+ "tradeEntries": [
+ {
+ "villagerProfession": {
+ "value": "CUSTOM:MailmanProfession"
+ },
+ "entries": [
+ {
+ "price1": {
+ "value": "Items.EMERALD"
+ },
+ "countPrice1": 1,
+ "price2": {
+ "value": ""
+ },
+ "countPrice2": 1,
+ "offer": {
+ "value": "CUSTOM:ShippingLabel"
+ },
+ "countOffer": 12,
+ "level": 1,
+ "maxTrades": 100,
+ "xp": 5,
+ "priceMultiplier": 0.05
+ }
+ ]
+ }
+ ]
+ }
+}
\ No newline at end of file
diff --git a/elements/MooshroomSpawnEgg.mod.json b/elements/MooshroomSpawnEgg.mod.json
new file mode 100644
index 0000000..ac13c57
--- /dev/null
+++ b/elements/MooshroomSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Blocks.RED_MUSHROOM"
+ },
+ {
+ "value": "Blocks.RED_MUSHROOM"
+ },
+ {
+ "value": "Blocks.RED_MUSHROOM"
+ },
+ {
+ "value": "Blocks.RED_MUSHROOM"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Blocks.RED_MUSHROOM"
+ },
+ {
+ "value": "Blocks.MYCELIUM"
+ },
+ {
+ "value": "Items.MILK_BUCKET"
+ },
+ {
+ "value": "Blocks.MYCELIUM"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#96"
+ },
+ "name": "mooshroom_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/OcelotSpawnEgg.mod.json b/elements/OcelotSpawnEgg.mod.json
new file mode 100644
index 0000000..89d56a9
--- /dev/null
+++ b/elements/OcelotSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Blocks.VINE"
+ },
+ {
+ "value": "Blocks.VINE"
+ },
+ {
+ "value": "Blocks.VINE"
+ },
+ {
+ "value": "Blocks.SAPLING#3"
+ },
+ {
+ "value": "Items.CAT_SPAWN_EGG"
+ },
+ {
+ "value": "Blocks.SAPLING#3"
+ },
+ {
+ "value": "Blocks.DIRT"
+ },
+ {
+ "value": "Blocks.DIRT"
+ },
+ {
+ "value": "Blocks.DIRT"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#98"
+ },
+ "name": "ocelot_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/PassiveIncomeProcedure.mod.json b/elements/PassiveIncomeProcedure.mod.json
index a79fd53..7a235dd 100644
--- a/elements/PassiveIncomeProcedure.mod.json
+++ b/elements/PassiveIncomeProcedure.mod.json
@@ -2,6 +2,6 @@
"_fv": 73,
"_type": "procedure",
"definition": {
- "procedurexml": "player_ticksPassiveIncomeCounterADDPassiveIncomeCounter1EQMODPassiveIncomeCounter33400GTCUSTOM:PassiveIncomeEnchantment00CUSTOM:PassiveIncomeEnchantment0GTCUSTOM:PassiveIncomeEnchantment10CUSTOM:PassiveIncomeEnchantment1GTCUSTOM:PassiveIncomeEnchantment20CUSTOM:PassiveIncomeEnchantment2GTCUSTOM:PassiveIncomeEnchantment30CUSTOM:PassiveIncomeEnchantment3"
+ "procedurexml": "player_ticksPassiveIncomeCounterADDPassiveIncomeCounter1EQMODPassiveIncomeCounter13400GTCUSTOM:PassiveIncomeEnchantment00CUSTOM:PassiveIncomeEnchantment0GTCUSTOM:PassiveIncomeEnchantment10CUSTOM:PassiveIncomeEnchantment1GTCUSTOM:PassiveIncomeEnchantment20CUSTOM:PassiveIncomeEnchantment2GTCUSTOM:PassiveIncomeEnchantment30CUSTOM:PassiveIncomeEnchantment3"
}
}
\ No newline at end of file
diff --git a/elements/PhantomSpawnEgg.mod.json b/elements/PhantomSpawnEgg.mod.json
new file mode 100644
index 0000000..9922290
--- /dev/null
+++ b/elements/PhantomSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.PHANTOM_MEMBRANE"
+ },
+ {
+ "value": "Items.PHANTOM_MEMBRANE"
+ },
+ {
+ "value": "Items.PHANTOM_MEMBRANE"
+ },
+ {
+ "value": "Items.PHANTOM_MEMBRANE"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.PHANTOM_MEMBRANE"
+ },
+ {
+ "value": "Items.BED"
+ },
+ {
+ "value": "Items.ELYTRA"
+ },
+ {
+ "value": "Items.BED"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.PHANTOM_SPAWN_EGG"
+ },
+ "name": "phantom_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/PigSpawnEgg.mod.json b/elements/PigSpawnEgg.mod.json
new file mode 100644
index 0000000..784e4cd
--- /dev/null
+++ b/elements/PigSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.PORKCHOP"
+ },
+ {
+ "value": "Items.PORKCHOP"
+ },
+ {
+ "value": "Items.PORKCHOP"
+ },
+ {
+ "value": "Items.PORKCHOP"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.PORKCHOP"
+ },
+ {
+ "value": "Items.PORKCHOP"
+ },
+ {
+ "value": "Items.PORKCHOP"
+ },
+ {
+ "value": "Items.PORKCHOP"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#90"
+ },
+ "name": "pig_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/RabbitSpawnEgg.mod.json b/elements/RabbitSpawnEgg.mod.json
new file mode 100644
index 0000000..0992ba4
--- /dev/null
+++ b/elements/RabbitSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.RABBIT_HIDE"
+ },
+ {
+ "value": "Items.RABBIT_HIDE"
+ },
+ {
+ "value": "Items.RABBIT_HIDE"
+ },
+ {
+ "value": "Items.RABBIT_HIDE"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.RABBIT_HIDE"
+ },
+ {
+ "value": "Items.RABBIT_FOOT"
+ },
+ {
+ "value": "Items.RABBIT"
+ },
+ {
+ "value": "Items.RABBIT_FOOT"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#101"
+ },
+ "name": "rabbit_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/SheepSpawnEgg.mod.json b/elements/SheepSpawnEgg.mod.json
new file mode 100644
index 0000000..a78a6fc
--- /dev/null
+++ b/elements/SheepSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.MUTTON"
+ },
+ {
+ "value": "Blocks.WOOL"
+ },
+ {
+ "value": "Items.MUTTON"
+ },
+ {
+ "value": "Blocks.WOOL"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Blocks.WOOL"
+ },
+ {
+ "value": "Items.MUTTON"
+ },
+ {
+ "value": "Blocks.WOOL"
+ },
+ {
+ "value": "Items.MUTTON"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#91"
+ },
+ "name": "sheep_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/ShitPainting.mod.json b/elements/ShitPainting.mod.json
new file mode 100644
index 0000000..3ffd7a3
--- /dev/null
+++ b/elements/ShitPainting.mod.json
@@ -0,0 +1,11 @@
+{
+ "_fv": 73,
+ "_type": "painting",
+ "definition": {
+ "texture": "shit",
+ "width": 16,
+ "height": 16,
+ "title": "Shit Painting",
+ "author": "nim"
+ }
+}
\ No newline at end of file
diff --git a/elements/ShitProjectileProjectileHitsPlayer.mod.json b/elements/ShitProjectileProjectileHitsPlayer.mod.json
index 784841b..f979908 100644
--- a/elements/ShitProjectileProjectileHitsPlayer.mod.json
+++ b/elements/ShitProjectileProjectileHitsPlayer.mod.json
@@ -2,6 +2,6 @@
"_fv": 73,
"_type": "procedure",
"definition": {
- "procedurexml": "no_ext_triggerentity.ghast.screamplayer0.80.91.1CUSTOM:StinkyEffect160FALSEFALSE"
+ "procedurexml": "no_ext_triggerentity.ghast.screamplayer0.80.91.1CUSTOM:StinkyEffect120FALSEFALSE"
}
}
\ No newline at end of file
diff --git a/elements/ShulkerSpawnEgg.mod.json b/elements/ShulkerSpawnEgg.mod.json
new file mode 100644
index 0000000..7f33da1
--- /dev/null
+++ b/elements/ShulkerSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.CHORUS_FRUIT_POPPED"
+ },
+ {
+ "value": "Items.SHULKER_SHELL"
+ },
+ {
+ "value": "Items.CHORUS_FRUIT_POPPED"
+ },
+ {
+ "value": "Items.CHORUS_FRUIT_POPPED"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.CHORUS_FRUIT_POPPED"
+ },
+ {
+ "value": "Items.CHORUS_FRUIT_POPPED"
+ },
+ {
+ "value": "Items.SHULKER_SHELL"
+ },
+ {
+ "value": "Items.CHORUS_FRUIT_POPPED"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SHULKER_SPAWN_EGG"
+ },
+ "name": "shulker_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/SkeletonSpawnEgg.mod.json b/elements/SkeletonSpawnEgg.mod.json
new file mode 100644
index 0000000..3205c01
--- /dev/null
+++ b/elements/SkeletonSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.BONE"
+ },
+ {
+ "value": "Items.BONE"
+ },
+ {
+ "value": "Items.BONE"
+ },
+ {
+ "value": "Items.BONE"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.BONE"
+ },
+ {
+ "value": "Items.BONE"
+ },
+ {
+ "value": "Items.BONE"
+ },
+ {
+ "value": "Items.BONE"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#51"
+ },
+ "name": "skeleton_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/SlimeSpawnEgg.mod.json b/elements/SlimeSpawnEgg.mod.json
new file mode 100644
index 0000000..acb4a6c
--- /dev/null
+++ b/elements/SlimeSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.SLIME_BALL"
+ },
+ {
+ "value": "Items.SLIME_BALL"
+ },
+ {
+ "value": "Items.SLIME_BALL"
+ },
+ {
+ "value": "Items.SLIME_BALL"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.SLIME_BALL"
+ },
+ {
+ "value": "Items.SLIME_BALL"
+ },
+ {
+ "value": "Items.SLIME_BALL"
+ },
+ {
+ "value": "Items.SLIME_BALL"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#55"
+ },
+ "name": "slime_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/SnowGolemQuestionMark.mod.json b/elements/SnowGolemQuestionMark.mod.json
new file mode 100644
index 0000000..88b9214
--- /dev/null
+++ b/elements/SnowGolemQuestionMark.mod.json
@@ -0,0 +1,63 @@
+{
+ "_fv": 73,
+ "_type": "item",
+ "definition": {
+ "renderType": 0,
+ "texture": "snow_golem_question_mark",
+ "customModelName": "Normal",
+ "customProperties": {},
+ "states": [],
+ "name": "Snow Golem...?",
+ "rarity": "UNCOMMON",
+ "creativeTabs": [
+ {
+ "value": "MATERIALS"
+ }
+ ],
+ "stackSize": 64,
+ "enchantability": 0,
+ "useDuration": 0,
+ "toolType": 1.0,
+ "damageCount": 0,
+ "recipeRemainder": {
+ "value": ""
+ },
+ "destroyAnyBlock": false,
+ "immuneToFire": false,
+ "stayInGridWhenCrafting": false,
+ "damageOnCrafting": false,
+ "enableMeleeDamage": false,
+ "damageVsEntity": 0.0,
+ "specialInformation": {
+ "fixedValue": []
+ },
+ "glowCondition": {
+ "fixedValue": false
+ },
+ "inventorySize": 9,
+ "inventoryStackSize": 64,
+ "enableRanged": false,
+ "shootConstantly": false,
+ "rangedItemChargesPower": false,
+ "projectile": {
+ "value": "CUSTOM:ShitProjectile"
+ },
+ "projectileDisableAmmoCheck": false,
+ "isFood": false,
+ "nutritionalValue": 4,
+ "saturation": 0.3,
+ "eatResultItem": {
+ "value": ""
+ },
+ "isMeat": false,
+ "isAlwaysEdible": false,
+ "animation": "none",
+ "isMusicDisc": false,
+ "musicDiscMusic": {
+ "value": ""
+ },
+ "musicDiscDescription": "",
+ "musicDiscLengthInTicks": 100,
+ "musicDiscAnalogOutput": 0
+ }
+}
\ No newline at end of file
diff --git a/elements/SnowGolemQuestionMarkRecipe.mod.json b/elements/SnowGolemQuestionMarkRecipe.mod.json
new file mode 100644
index 0000000..699d1b2
--- /dev/null
+++ b/elements/SnowGolemQuestionMarkRecipe.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": ""
+ },
+ {
+ "value": "Blocks.CARVED_PUMPKIN"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": "Blocks.SNOW"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": "Blocks.SNOW"
+ },
+ {
+ "value": ""
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "CUSTOM:SnowGolemQuestionMark"
+ },
+ "name": "snow_golem_question_mark_recipe",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/SnowGolemSpawnEgg.mod.json b/elements/SnowGolemSpawnEgg.mod.json
new file mode 100644
index 0000000..60a2f42
--- /dev/null
+++ b/elements/SnowGolemSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": true,
+ "recipeSlots": [
+ {
+ "value": ""
+ },
+ {
+ "value": "CUSTOM:SnowGolemQuestionMark"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SNOW_GOLEM_SPAWN_EGG"
+ },
+ "name": "snow_golem_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/SpiderSpawnEgg.mod.json b/elements/SpiderSpawnEgg.mod.json
new file mode 100644
index 0000000..d0cb7c6
--- /dev/null
+++ b/elements/SpiderSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.STRING"
+ },
+ {
+ "value": "Items.SPIDER_EYE"
+ },
+ {
+ "value": "Items.STRING"
+ },
+ {
+ "value": "Items.SPIDER_EYE"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.SPIDER_EYE"
+ },
+ {
+ "value": "Items.STRING"
+ },
+ {
+ "value": "Items.SPIDER_EYE"
+ },
+ {
+ "value": "Items.STRING"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#52"
+ },
+ "name": "spider_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/SquidSpawnEgg.mod.json b/elements/SquidSpawnEgg.mod.json
new file mode 100644
index 0000000..9a54f1e
--- /dev/null
+++ b/elements/SquidSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.DYE#0"
+ },
+ {
+ "value": "Items.DYE#0"
+ },
+ {
+ "value": "Items.DYE#0"
+ },
+ {
+ "value": "Items.DYE#0"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.DYE#0"
+ },
+ {
+ "value": "Items.DYE#0"
+ },
+ {
+ "value": "Items.DYE#0"
+ },
+ {
+ "value": "Items.DYE#0"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#94"
+ },
+ "name": "squid_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/TotemOfUndyingRecipe.mod.json b/elements/TotemOfUndyingRecipe.mod.json
new file mode 100644
index 0000000..4c88e10
--- /dev/null
+++ b/elements/TotemOfUndyingRecipe.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 16,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": true,
+ "recipeSlots": [
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": "Items.TOTEM_OF_UNDYING"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": "CUSTOM:Shit"
+ },
+ {
+ "value": ""
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "CUSTOM:MagicDust"
+ },
+ "name": "totem_of_undying_recipe",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/TuxSpawnEgg.mod.json b/elements/TuxSpawnEgg.mod.json
new file mode 100644
index 0000000..46668e7
--- /dev/null
+++ b/elements/TuxSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "CUSTOM:BrokenGlass"
+ },
+ {
+ "value": "Blocks.BEDROCK"
+ },
+ {
+ "value": "CUSTOM:BrokenGlass"
+ },
+ {
+ "value": "Blocks.BEDROCK"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Blocks.BEDROCK"
+ },
+ {
+ "value": "CUSTOM:BrokenGlass"
+ },
+ {
+ "value": "Blocks.BEDROCK"
+ },
+ {
+ "value": "CUSTOM:BrokenGlass"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "CUSTOM:Tux.spawn_egg"
+ },
+ "name": "tux_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/WardenSpawnEgg.mod.json b/elements/WardenSpawnEgg.mod.json
new file mode 100644
index 0000000..985e077
--- /dev/null
+++ b/elements/WardenSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.ECHO_SHARD"
+ },
+ {
+ "value": "Items.ECHO_SHARD"
+ },
+ {
+ "value": "Items.ECHO_SHARD"
+ },
+ {
+ "value": "Items.ECHO_SHARD"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.ECHO_SHARD"
+ },
+ {
+ "value": "Items.ECHO_SHARD"
+ },
+ {
+ "value": "CUSTOM:IronGolemQuestionMark"
+ },
+ {
+ "value": "Items.ECHO_SHARD"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.WARDEN_SPAWN_EGG"
+ },
+ "name": "warden_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/WitherQuestionMark.mod.json b/elements/WitherQuestionMark.mod.json
new file mode 100644
index 0000000..191b438
--- /dev/null
+++ b/elements/WitherQuestionMark.mod.json
@@ -0,0 +1,63 @@
+{
+ "_fv": 73,
+ "_type": "item",
+ "definition": {
+ "renderType": 0,
+ "texture": "wither_question_mark",
+ "customModelName": "Normal",
+ "customProperties": {},
+ "states": [],
+ "name": "Wither...?",
+ "rarity": "RARE",
+ "creativeTabs": [
+ {
+ "value": "MATERIALS"
+ }
+ ],
+ "stackSize": 64,
+ "enchantability": 0,
+ "useDuration": 0,
+ "toolType": 1.0,
+ "damageCount": 0,
+ "recipeRemainder": {
+ "value": ""
+ },
+ "destroyAnyBlock": false,
+ "immuneToFire": true,
+ "stayInGridWhenCrafting": false,
+ "damageOnCrafting": false,
+ "enableMeleeDamage": false,
+ "damageVsEntity": 0.0,
+ "specialInformation": {
+ "fixedValue": []
+ },
+ "glowCondition": {
+ "fixedValue": false
+ },
+ "inventorySize": 9,
+ "inventoryStackSize": 64,
+ "enableRanged": false,
+ "shootConstantly": false,
+ "rangedItemChargesPower": false,
+ "projectile": {
+ "value": "CUSTOM:ShitProjectile"
+ },
+ "projectileDisableAmmoCheck": false,
+ "isFood": false,
+ "nutritionalValue": 4,
+ "saturation": 0.3,
+ "eatResultItem": {
+ "value": ""
+ },
+ "isMeat": false,
+ "isAlwaysEdible": false,
+ "animation": "none",
+ "isMusicDisc": false,
+ "musicDiscMusic": {
+ "value": ""
+ },
+ "musicDiscDescription": "",
+ "musicDiscLengthInTicks": 100,
+ "musicDiscAnalogOutput": 0
+ }
+}
\ No newline at end of file
diff --git a/elements/WitherQuestionMarkRecipe.mod.json b/elements/WitherQuestionMarkRecipe.mod.json
new file mode 100644
index 0000000..0985d15
--- /dev/null
+++ b/elements/WitherQuestionMarkRecipe.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Blocks.SKULL#1"
+ },
+ {
+ "value": "Blocks.SKULL#1"
+ },
+ {
+ "value": "Blocks.SKULL#1"
+ },
+ {
+ "value": "Blocks.SOUL_SAND"
+ },
+ {
+ "value": "Blocks.SOUL_SAND"
+ },
+ {
+ "value": "Blocks.SOUL_SAND"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": "Blocks.SOUL_SAND"
+ },
+ {
+ "value": ""
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "CUSTOM:WitherQuestionMark"
+ },
+ "name": "wither_question_mark_recipe",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/WitherSkeletonSpawnEgg.mod.json b/elements/WitherSkeletonSpawnEgg.mod.json
new file mode 100644
index 0000000..8bff59a
--- /dev/null
+++ b/elements/WitherSkeletonSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.COAL#0"
+ },
+ {
+ "value": "Blocks.SKULL#1"
+ },
+ {
+ "value": "Items.COAL#0"
+ },
+ {
+ "value": "Items.COAL#0"
+ },
+ {
+ "value": "Items.SPAWN_EGG#51"
+ },
+ {
+ "value": "Items.STONE_SWORD"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedCondensedNetherrack"
+ },
+ {
+ "value": "CUSTOM:CondensedCondensedCondensedNetherrack"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.WITHER_SKELETON_SPAWN_EGG"
+ },
+ "name": "wither_skeleton_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/WitherSpawnEggRecipe.mod.json b/elements/WitherSpawnEggRecipe.mod.json
new file mode 100644
index 0000000..ee3ec1f
--- /dev/null
+++ b/elements/WitherSpawnEggRecipe.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": true,
+ "recipeSlots": [
+ {
+ "value": ""
+ },
+ {
+ "value": "CUSTOM:WitherQuestionMark"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ },
+ {
+ "value": ""
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.WITHER_SPAWN_EGG"
+ },
+ "name": "wither_spawn_egg_recipe",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/WolfSpawnEgg.mod.json b/elements/WolfSpawnEgg.mod.json
new file mode 100644
index 0000000..61f4a17
--- /dev/null
+++ b/elements/WolfSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.COOKED_MUTTON"
+ },
+ {
+ "value": "Items.COOKED_CHICKEN"
+ },
+ {
+ "value": "Items.COOKED_MUTTON"
+ },
+ {
+ "value": "Items.COOKED_CHICKEN"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.COOKED_CHICKEN"
+ },
+ {
+ "value": "Items.COOKED_MUTTON"
+ },
+ {
+ "value": "Items.BONE"
+ },
+ {
+ "value": "Items.COOKED_MUTTON"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#95"
+ },
+ "name": "wolf_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/ZombieSpawnEgg.mod.json b/elements/ZombieSpawnEgg.mod.json
new file mode 100644
index 0000000..93db82a
--- /dev/null
+++ b/elements/ZombieSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.ROTTEN_FLESH"
+ },
+ {
+ "value": "Items.ROTTEN_FLESH"
+ },
+ {
+ "value": "Items.ROTTEN_FLESH"
+ },
+ {
+ "value": "Items.ROTTEN_FLESH"
+ },
+ {
+ "value": "CUSTOM:MagicEgg"
+ },
+ {
+ "value": "Items.ROTTEN_FLESH"
+ },
+ {
+ "value": "Items.ROTTEN_FLESH"
+ },
+ {
+ "value": "Items.ROTTEN_FLESH"
+ },
+ {
+ "value": "Items.ROTTEN_FLESH"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#54"
+ },
+ "name": "zombie_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/ZombieVillagerSpawnEgg.mod.json b/elements/ZombieVillagerSpawnEgg.mod.json
new file mode 100644
index 0000000..66c169f
--- /dev/null
+++ b/elements/ZombieVillagerSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "CUSTOM:MagicFlesh"
+ },
+ {
+ "value": "CUSTOM:MagicFlesh"
+ },
+ {
+ "value": "CUSTOM:MagicFlesh"
+ },
+ {
+ "value": "CUSTOM:MagicFlesh"
+ },
+ {
+ "value": "Items.SPAWN_EGG#54"
+ },
+ {
+ "value": "CUSTOM:MagicFlesh"
+ },
+ {
+ "value": "CUSTOM:MagicFlesh"
+ },
+ {
+ "value": "CUSTOM:MagicFlesh"
+ },
+ {
+ "value": "CUSTOM:MagicFlesh"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.ZOMBIE_VILLAGER_SPAWN_EGG"
+ },
+ "name": "zombie_villager_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/elements/ZombifiedPiglinSpawnEgg.mod.json b/elements/ZombifiedPiglinSpawnEgg.mod.json
new file mode 100644
index 0000000..4de83b9
--- /dev/null
+++ b/elements/ZombifiedPiglinSpawnEgg.mod.json
@@ -0,0 +1,48 @@
+{
+ "_fv": 73,
+ "_type": "recipe",
+ "definition": {
+ "recipeType": "Crafting",
+ "recipeRetstackSize": 1,
+ "group": "",
+ "cookingBookCategory": "MISC",
+ "xpReward": 0.0,
+ "cookingTime": 200,
+ "craftingBookCategory": "MISC",
+ "recipeShapeless": false,
+ "recipeSlots": [
+ {
+ "value": "Items.GOLD_NUGGET"
+ },
+ {
+ "value": "CUSTOM:CondensedNetherrack"
+ },
+ {
+ "value": "Items.GOLD_NUGGET"
+ },
+ {
+ "value": "CUSTOM:CondensedNetherrack"
+ },
+ {
+ "value": "Items.SPAWN_EGG#54"
+ },
+ {
+ "value": "CUSTOM:CondensedNetherrack"
+ },
+ {
+ "value": "Items.GOLD_NUGGET"
+ },
+ {
+ "value": "CUSTOM:CondensedNetherrack"
+ },
+ {
+ "value": "Items.GOLD_NUGGET"
+ }
+ ],
+ "recipeReturnStack": {
+ "value": "Items.SPAWN_EGG#57"
+ },
+ "name": "zombified_piglin_spawn_egg",
+ "namespace": "mod"
+ }
+}
\ No newline at end of file
diff --git a/nims_random_bullshit.mcreator b/nims_random_bullshit.mcreator
index 90ab7d0..55a3678 100644
--- a/nims_random_bullshit.mcreator
+++ b/nims_random_bullshit.mcreator
@@ -2348,32 +2348,6 @@
},
"path": "~/Magma"
},
- {
- "name": "BedrockLootTable",
- "type": "loottable",
- "compiles": true,
- "locked_code": false,
- "registry_name": "bedrock_loot_table",
- "metadata": {
- "files": [
- "src/main/resources/data/minecraft/loot_tables/blocks/bedrock.json"
- ]
- },
- "path": "~/Other"
- },
- {
- "name": "ObsidianRecipe",
- "type": "recipe",
- "compiles": true,
- "locked_code": false,
- "registry_name": "obsidian_recipe",
- "metadata": {
- "files": [
- "src/main/resources/data/nims_random_bullshit/recipes/obsidian_recipe.json"
- ]
- },
- "path": "~/Other"
- },
{
"name": "CheeseRecipe",
"type": "recipe",
@@ -2386,6 +2360,852 @@
]
},
"path": "~/Other"
+ },
+ {
+ "name": "BedrockRecipe",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "bedrock_recipe",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/bedrock_recipe.json"
+ ]
+ },
+ "path": "~/Bedrock"
+ },
+ {
+ "name": "BedrockRecipe2",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "bedrock_recipe_2",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/bedrock_recipe_2.json"
+ ]
+ },
+ "path": "~/Bedrock"
+ },
+ {
+ "name": "BedrockPickaxe",
+ "type": "tool",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "bedrock_pickaxe",
+ "metadata": {
+ "files": [
+ "src/main/resources/assets/nims_random_bullshit/models/item/bedrock_pickaxe.json",
+ "src/main/java/net/mcreator/nimsrandombullshit/item/BedrockPickaxeItem.java"
+ ]
+ },
+ "path": "~/Bedrock"
+ },
+ {
+ "name": "BedrockPickaxeEntitySwingsItem",
+ "type": "procedure",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "bedrock_pickaxe_entity_swings_item",
+ "metadata": {
+ "files": [
+ "src/main/java/net/mcreator/nimsrandombullshit/procedures/BedrockPickaxeEntitySwingsItemProcedure.java"
+ ],
+ "dependencies": [
+ {
+ "name": "entity",
+ "type": "entity"
+ },
+ {
+ "name": "world",
+ "type": "world"
+ }
+ ]
+ },
+ "path": "~/Bedrock"
+ },
+ {
+ "name": "BedrockUpgradeTemplate",
+ "type": "item",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "bedrock_upgrade_template",
+ "metadata": {
+ "files": [
+ "src/main/java/net/mcreator/nimsrandombullshit/item/BedrockUpgradeTemplateItem.java",
+ "src/main/resources/assets/nims_random_bullshit/models/item/bedrock_upgrade_template.json"
+ ]
+ },
+ "path": "~/Bedrock"
+ },
+ {
+ "name": "BedrockPickaxeRecipe",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "bedrock_pickaxe_recipe",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/bedrock_pickaxe_recipe.json"
+ ]
+ },
+ "path": "~/Bedrock"
+ },
+ {
+ "name": "BedrockUpgradeTemplateRecipe",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "bedrock_upgrade_template_recipe",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/bedrock_upgrade_template_recipe.json"
+ ]
+ },
+ "path": "~/Bedrock"
+ },
+ {
+ "name": "TotemOfUndyingRecipe",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "totem_of_undying_recipe",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/totem_of_undying_recipe.json"
+ ]
+ },
+ "path": "~/Other"
+ },
+ {
+ "name": "MailmanProfession",
+ "type": "villagerprofession",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "mailman_profession",
+ "metadata": {
+ "files": []
+ },
+ "path": "~/Other"
+ },
+ {
+ "name": "MailmanTrades",
+ "type": "villagertrade",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "mailman_trades",
+ "metadata": {
+ "files": []
+ },
+ "path": "~/Other"
+ },
+ {
+ "name": "Bedrockifier",
+ "type": "block",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "bedrockifier",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/loot_tables/blocks/bedrockifier.json",
+ "src/main/resources/assets/nims_random_bullshit/blockstates/bedrockifier.json",
+ "src/main/java/net/mcreator/nimsrandombullshit/block/BedrockifierBlock.java",
+ "src/main/java/net/mcreator/nimsrandombullshit/block/entity/BedrockifierBlockEntity.java",
+ "src/main/resources/assets/nims_random_bullshit/models/item/bedrockifier.json",
+ "src/main/resources/assets/nims_random_bullshit/models/block/bedrockifier.json"
+ ]
+ },
+ "path": "~/Bedrock"
+ },
+ {
+ "name": "BedrockifierGUI",
+ "type": "gui",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "bedrockifier_gui",
+ "metadata": {
+ "files": [
+ "src/main/java/net/mcreator/nimsrandombullshit/network/BedrockifierGUIButtonMessage.java",
+ "src/main/java/net/mcreator/nimsrandombullshit/world/inventory/BedrockifierGUIMenu.java",
+ "src/main/java/net/mcreator/nimsrandombullshit/client/gui/BedrockifierGUIScreen.java"
+ ]
+ },
+ "path": "~/Bedrock"
+ },
+ {
+ "name": "BedrockifierButtonPressLogic",
+ "type": "procedure",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "bedrockifier_button_press_logic",
+ "metadata": {
+ "files": [
+ "src/main/java/net/mcreator/nimsrandombullshit/procedures/BedrockifierButtonPressLogicProcedure.java"
+ ],
+ "dependencies": [
+ {
+ "name": "entity",
+ "type": "entity"
+ },
+ {
+ "name": "x",
+ "type": "number"
+ },
+ {
+ "name": "y",
+ "type": "number"
+ },
+ {
+ "name": "z",
+ "type": "number"
+ },
+ {
+ "name": "world",
+ "type": "world"
+ }
+ ]
+ },
+ "path": "~/Bedrock"
+ },
+ {
+ "name": "BedrockifierRecipe",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "bedrockifier_recipe",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/bedrockifier_recipe.json"
+ ]
+ },
+ "path": "~/Bedrock"
+ },
+ {
+ "name": "MagicEgg",
+ "type": "item",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "magic_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/assets/nims_random_bullshit/models/item/magic_egg.json",
+ "src/main/java/net/mcreator/nimsrandombullshit/item/MagicEggItem.java"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "MagicEggRecipe",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "magic_egg_recipe",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/magic_egg_recipe.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "WitherQuestionMark",
+ "type": "item",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "wither_question_mark",
+ "metadata": {
+ "files": [
+ "src/main/java/net/mcreator/nimsrandombullshit/item/WitherQuestionMarkItem.java",
+ "src/main/resources/assets/nims_random_bullshit/models/item/wither_question_mark.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "WitherQuestionMarkRecipe",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "wither_question_mark_recipe",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/wither_question_mark_recipe.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "WitherSpawnEggRecipe",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "wither_spawn_egg_recipe",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/wither_spawn_egg_recipe.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "ZombieSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "zombie_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/zombie_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "SkeletonSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "skeleton_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/skeleton_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "SpiderSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "spider_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/spider_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "CreeperSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "creeper_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/creeper_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "EndermanSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "enderman_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/enderman_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "CowSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "cow_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/cow_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "SheepSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "sheep_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/sheep_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "PigSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "pig_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/pig_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "HoglinSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "hoglin_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/hoglin_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "ChickenSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "chicken_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/chicken_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "TuxSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "tux_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/tux_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "SlimeSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "slime_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/slime_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "GhastSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "ghast_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/ghast_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "ZombifiedPiglinSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "zombified_piglin_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/zombified_piglin_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "ZombieVillagerSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "zombie_villager_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/zombie_villager_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "BlazeSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "blaze_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/blaze_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "MagmaCubeSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "magma_cube_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/magma_cube_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "WitherSkeletonSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "wither_skeleton_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/wither_skeleton_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "GuardianSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "guardian_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/guardian_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "ElderGuardianSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "elder_guardian_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/elder_guardian_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "SquidSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "squid_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/squid_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "GlowSquidSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "glow_squid_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/glow_squid_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "WolfSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "wolf_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/wolf_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "CatSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "cat_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/cat_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "OcelotSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "ocelot_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/ocelot_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "RabbitSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "rabbit_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/rabbit_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "MooshroomSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "mooshroom_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/mooshroom_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "DrownedSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "drowned_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/drowned_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "PhantomSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "phantom_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/phantom_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "ShulkerSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "shulker_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/shulker_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "EvokerSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "evoker_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/evoker_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "IronGolemQuestionMark",
+ "type": "item",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "iron_golem_question_mark",
+ "metadata": {
+ "files": [
+ "src/main/java/net/mcreator/nimsrandombullshit/item/IronGolemQuestionMarkItem.java",
+ "src/main/resources/assets/nims_random_bullshit/models/item/iron_golem_question_mark.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "IronGolemQuestionMarkRecipe",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "iron_golem_question_mark_recipe",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/iron_golem_question_mark_recipe.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "IronGolemSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "iron_golem_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/iron_golem_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "HorseSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "horse_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/horse_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "LlamaSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "llama_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/llama_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "SnowGolemQuestionMark",
+ "type": "item",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "snow_golem_question_mark",
+ "metadata": {
+ "files": [
+ "src/main/resources/assets/nims_random_bullshit/models/item/snow_golem_question_mark.json",
+ "src/main/java/net/mcreator/nimsrandombullshit/item/SnowGolemQuestionMarkItem.java"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "SnowGolemQuestionMarkRecipe",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "snow_golem_question_mark_recipe",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/snow_golem_question_mark_recipe.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "SnowGolemSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "snow_golem_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/snow_golem_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "WardenSpawnEgg",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "warden_spawn_egg",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/warden_spawn_egg.json"
+ ]
+ },
+ "path": "~/SpawnEggs"
+ },
+ {
+ "name": "BedrockSword",
+ "type": "tool",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "bedrock_sword",
+ "metadata": {
+ "files": [
+ "src/main/resources/assets/nims_random_bullshit/models/item/bedrock_sword.json",
+ "src/main/java/net/mcreator/nimsrandombullshit/item/BedrockSwordItem.java"
+ ]
+ },
+ "path": "~/Bedrock"
+ },
+ {
+ "name": "BedrockSwordRecipe",
+ "type": "recipe",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "bedrock_sword_recipe",
+ "metadata": {
+ "files": [
+ "src/main/resources/data/nims_random_bullshit/recipes/bedrock_sword_recipe.json"
+ ]
+ },
+ "path": "~/Bedrock"
+ },
+ {
+ "name": "ShitPainting",
+ "type": "painting",
+ "compiles": true,
+ "locked_code": false,
+ "registry_name": "shit_painting",
+ "metadata": {
+ "files": []
+ },
+ "path": "~/Shit"
}
],
"variable_elements": [],
@@ -2394,7 +3214,11 @@
"BLOCKS:minecraft:replaceable": [
"~CUSTOM:NetherrackJuice"
],
+ "BLOCKS:minecraft:needs_diamond_tool": [
+ "~CUSTOM:Bedrockifier"
+ ],
"BLOCKS:minecraft:mineable/pickaxe": [
+ "~CUSTOM:Bedrockifier",
"~CUSTOM:MagmaBrickButton",
"~CUSTOM:MagmaBrickPressurePlate",
"~CUSTOM:MagmaBrickWalls",
@@ -2421,6 +3245,7 @@
"~CUSTOM:RubberFence"
],
"ITEMS:minecraft:pickaxes": [
+ "~CUSTOM:BedrockPickaxe",
"~CUSTOM:StarWand",
"~CUSTOM:NetherrackitePickaxe"
],
@@ -2433,6 +3258,9 @@
"~CUSTOM:RedstoneBrickStairs",
"~CUSTOM:RubberStairs"
],
+ "ITEMS:minecraft:swords": [
+ "~CUSTOM:BedrockSword"
+ ],
"ITEMS:minecraft:shovels": [
"~CUSTOM:Gravedigger"
],
@@ -2448,14 +3276,16 @@
"tab_element_order": {},
"language_map": {
"en_us": {
- "gui.nims_random_bullshit.mailbox_name_entry_gui.button_done": "Done",
"item.nims_random_bullshit.star_wand": "Star Wand",
+ "gui.nims_random_bullshit.mailbox_name_entry_gui.button_done": "Done",
"gui.nims_random_bullshit.ore_miner_gui.button_mine": "Mine",
"block.nims_random_bullshit.penta_condensed_netherrack": "Penta-condensed Netherrack",
"item.nims_random_bullshit.magic_dust": "Magic Dust",
"block.nims_random_bullshit.magma_brick_button": "Magma Brick Button",
+ "painting.nims_random_bullshit.shit_painting.title": "Shit Painting",
"enchantment.nims_random_bullshit.passive_income_enchantment": "Passive Income",
"gui.nims_random_bullshit.label_copy_machine_gui.button_copy": "Copy",
+ "painting.nims_random_bullshit.shit_painting.author": "nim",
"gui.nims_random_bullshit.mailbox_gui.outbox_x_coord": "0",
"block.nims_random_bullshit.broken_glass": "Broken Glass",
"block.nims_random_bullshit.redstone_brick_walls": "Redstone Brick Wall",
@@ -2465,12 +3295,14 @@
"effect.nims_random_bullshit.summoned_entity_effect": "Summoned Entity",
"block.nims_random_bullshit.rubber_slab": "Rubber Slab",
"gui.nims_random_bullshit.mailbox_name_entry_gui.mailbox_name_field": "",
+ "item.nims_random_bullshit.bedrock_upgrade_template": "Bedrock Upgrade Template",
"item.nims_random_bullshit.shipping_label": "Shipping Label",
"item.nims_random_bullshit.ghoul_spawn_egg": "Ghoul Spawn Egg",
"block.nims_random_bullshit.magma_brick_walls": "Magma Brick Wall",
"gui.nims_random_bullshit.mailbox_gui.label_y": "Y:",
"block.nims_random_bullshit.redstone_bricks": "Redstone Bricks",
"gui.nims_random_bullshit.mailbox_gui.label_z": "Z:",
+ "item.nims_random_bullshit.iron_golem_question_mark": "Iron Golem...?",
"item.nims_random_bullshit.tux_spawn_egg": "Tux Spawn Egg",
"gui.nims_random_bullshit.mailbox_gui.label_x": "X:",
"gui.nims_random_bullshit.label_copy_machine_gui.label_label_copy_machine": "Label Copy Machine",
@@ -2480,11 +3312,14 @@
"block.nims_random_bullshit.rubber_fence_gate": "Rubber Fence Gate",
"gui.nims_random_bullshit.label_copy_machine_gui.tooltip_ink_sac_slot": "Ink Sac Slot",
"gui.nims_random_bullshit.label_copy_machine_gui.tooltip_paper_slot": "Paper Slot",
+ "item.nims_random_bullshit.snow_golem_question_mark": "Snow Golem...?",
+ "item.nims_random_bullshit.bedrock_sword": "Bedrock Sword",
"block.nims_random_bullshit.mailbox": "Mailbox",
"gui.nims_random_bullshit.mailbox_gui.button_send": "Send",
"block.nims_random_bullshit.redstone_brick_stairs": "Redstone Brick Stairs",
"gui.nims_random_bullshit.mailbox_gui.outbox_y_coord": "0",
"gui.nims_random_bullshit.mailbox_gui.label_inbox": "Inbox",
+ "item.nims_random_bullshit.wither_question_mark": "Wither...?",
"block.nims_random_bullshit.magma_brick_pressure_plate": "Magma Brick Pressure Plate",
"item.nims_random_bullshit.cheese": "Cheese",
"item.nims_random_bullshit.netherrackite": "Netherrackite Ingot",
@@ -2495,6 +3330,7 @@
"gui.nims_random_bullshit.mailbox_gui.outbox_z_coord": "0",
"gui.nims_random_bullshit.label_copy_machine_gui.tooltip_output_copy_of_shipping_label": "Output (copy of shipping label)",
"item.nims_random_bullshit.netherrackite_pickaxe.description_0": "Non-condensed netherracks broken by this pickaxe drop themselves an additional time.",
+ "gui.nims_random_bullshit.bedrockifier_gui.button_empty": "-\u003e",
"item.nims_random_bullshit.netherrackite_pickaxe": "Netherrackite Pickaxe",
"effect.nims_random_bullshit.stinky_effect": "Stinky",
"block.nims_random_bullshit.hexa_condensed_netherrack": "Hexa-condensed Netherrack",
@@ -2506,6 +3342,8 @@
"item.nims_random_bullshit.sand_dust": "Sand Dust",
"entity.nims_random_bullshit.tux": "Tux",
"item.nims_random_bullshit.magic_flesh": "Magic Flesh",
+ "block.nims_random_bullshit.bedrockifier": "Bedrockifier",
+ "item.nims_random_bullshit.magic_egg": "Magic Egg",
"item.nims_random_bullshit.block_eater": "Block Eater",
"item.nims_random_bullshit.golden_berries": "Golden Berries",
"item.nims_random_bullshit.netherrack_juice_bucket": "Netherrack Juice Bucket",
@@ -2514,9 +3352,12 @@
"item.nims_random_bullshit.star": "Star",
"gui.nims_random_bullshit.shit_gui.label_uh_ohh_stinky": "UH OHH!!! STINKY!!! UH OHH!!! STINKY!!! UH OHH!!! STINKY!!! UH OHH!!! STINKY!!! ",
"block.nims_random_bullshit.magma_bricks": "Magma Bricks",
+ "entity.minecraft.villager.nims_random_bullshit.mailman_profession": "Mailman Profession",
+ "gui.nims_random_bullshit.bedrockifier_gui.label_bedrockifier": "Bedrockifier",
"block.nims_random_bullshit.rubber_pressure_plate": "Rubber Pressure Plate",
"item.nims_random_bullshit.shit": "Shit",
"block.nims_random_bullshit.condensed_netherrack": "Condensed Netherrack",
+ "item.nims_random_bullshit.bedrock_pickaxe": "Bedrock Pickaxe",
"block.nims_random_bullshit.magma_brick_stairs": "Magma Brick Stairs",
"block.nims_random_bullshit.magma_brick_slabs": "Magma Brick Slab",
"gui.nims_random_bullshit.label_copy_machine_gui.tooltip_shipping_label_slot": "Shipping Label Slot",
@@ -2570,13 +3411,21 @@
{
"name": "Magma",
"children": []
+ },
+ {
+ "name": "Bedrock",
+ "children": []
+ },
+ {
+ "name": "SpawnEggs",
+ "children": []
}
]
},
"workspaceSettings": {
"modid": "nims_random_bullshit",
"modName": "Nim\u0027s Random Bullshit",
- "version": "1.5.0",
+ "version": "1.6.0",
"description": "Random shit added by Nim. Created with MCreator.",
"author": "nimsolated, MCreator",
"websiteURL": "https://mcreator.net",
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/NimsRandomBullshitMod.java b/src/main/java/net/mcreator/nimsrandombullshit/NimsRandomBullshitMod.java
index 327f9a8..c9b48ac 100644
--- a/src/main/java/net/mcreator/nimsrandombullshit/NimsRandomBullshitMod.java
+++ b/src/main/java/net/mcreator/nimsrandombullshit/NimsRandomBullshitMod.java
@@ -17,7 +17,9 @@ import net.minecraftforge.common.MinecraftForge;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.network.FriendlyByteBuf;
+import net.mcreator.nimsrandombullshit.init.NimsRandomBullshitModVillagerProfessions;
import net.mcreator.nimsrandombullshit.init.NimsRandomBullshitModTabs;
+import net.mcreator.nimsrandombullshit.init.NimsRandomBullshitModPaintings;
import net.mcreator.nimsrandombullshit.init.NimsRandomBullshitModMobEffects;
import net.mcreator.nimsrandombullshit.init.NimsRandomBullshitModMenus;
import net.mcreator.nimsrandombullshit.init.NimsRandomBullshitModItems;
@@ -57,6 +59,9 @@ public class NimsRandomBullshitMod {
NimsRandomBullshitModMobEffects.REGISTRY.register(bus);
+ NimsRandomBullshitModPaintings.REGISTRY.register(bus);
+
+ NimsRandomBullshitModVillagerProfessions.PROFESSIONS.register(bus);
NimsRandomBullshitModMenus.REGISTRY.register(bus);
NimsRandomBullshitModFluids.REGISTRY.register(bus);
NimsRandomBullshitModFluidTypes.REGISTRY.register(bus);
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/block/BedrockifierBlock.java b/src/main/java/net/mcreator/nimsrandombullshit/block/BedrockifierBlock.java
new file mode 100644
index 0000000..3a4a35a
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/block/BedrockifierBlock.java
@@ -0,0 +1,133 @@
+
+package net.mcreator.nimsrandombullshit.block;
+
+import net.minecraftforge.network.NetworkHooks;
+
+import net.minecraft.world.phys.BlockHitResult;
+import net.minecraft.world.level.block.state.properties.DirectionProperty;
+import net.minecraft.world.level.block.state.StateDefinition;
+import net.minecraft.world.level.block.state.BlockState;
+import net.minecraft.world.level.block.state.BlockBehaviour;
+import net.minecraft.world.level.block.entity.BlockEntity;
+import net.minecraft.world.level.block.SoundType;
+import net.minecraft.world.level.block.Rotation;
+import net.minecraft.world.level.block.Mirror;
+import net.minecraft.world.level.block.HorizontalDirectionalBlock;
+import net.minecraft.world.level.block.EntityBlock;
+import net.minecraft.world.level.block.Block;
+import net.minecraft.world.level.Level;
+import net.minecraft.world.level.BlockGetter;
+import net.minecraft.world.item.context.BlockPlaceContext;
+import net.minecraft.world.inventory.AbstractContainerMenu;
+import net.minecraft.world.entity.player.Player;
+import net.minecraft.world.entity.player.Inventory;
+import net.minecraft.world.MenuProvider;
+import net.minecraft.world.InteractionResult;
+import net.minecraft.world.InteractionHand;
+import net.minecraft.world.Containers;
+import net.minecraft.server.level.ServerPlayer;
+import net.minecraft.network.chat.Component;
+import net.minecraft.network.FriendlyByteBuf;
+import net.minecraft.core.Direction;
+import net.minecraft.core.BlockPos;
+
+import net.mcreator.nimsrandombullshit.world.inventory.BedrockifierGUIMenu;
+import net.mcreator.nimsrandombullshit.block.entity.BedrockifierBlockEntity;
+
+import io.netty.buffer.Unpooled;
+
+public class BedrockifierBlock extends Block implements EntityBlock {
+ public static final DirectionProperty FACING = HorizontalDirectionalBlock.FACING;
+
+ public BedrockifierBlock() {
+ super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(-1, 3600000).requiresCorrectToolForDrops());
+ this.registerDefaultState(this.stateDefinition.any().setValue(FACING, Direction.NORTH));
+ }
+
+ @Override
+ public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
+ return 15;
+ }
+
+ @Override
+ protected void createBlockStateDefinition(StateDefinition.Builder builder) {
+ super.createBlockStateDefinition(builder);
+ builder.add(FACING);
+ }
+
+ @Override
+ public BlockState getStateForPlacement(BlockPlaceContext context) {
+ return super.getStateForPlacement(context).setValue(FACING, context.getHorizontalDirection().getOpposite());
+ }
+
+ public BlockState rotate(BlockState state, Rotation rot) {
+ return state.setValue(FACING, rot.rotate(state.getValue(FACING)));
+ }
+
+ public BlockState mirror(BlockState state, Mirror mirrorIn) {
+ return state.rotate(mirrorIn.getRotation(state.getValue(FACING)));
+ }
+
+ @Override
+ public InteractionResult use(BlockState blockstate, Level world, BlockPos pos, Player entity, InteractionHand hand, BlockHitResult hit) {
+ super.use(blockstate, world, pos, entity, hand, hit);
+ if (entity instanceof ServerPlayer player) {
+ NetworkHooks.openScreen(player, new MenuProvider() {
+ @Override
+ public Component getDisplayName() {
+ return Component.literal("Bedrockifier");
+ }
+
+ @Override
+ public AbstractContainerMenu createMenu(int id, Inventory inventory, Player player) {
+ return new BedrockifierGUIMenu(id, inventory, new FriendlyByteBuf(Unpooled.buffer()).writeBlockPos(pos));
+ }
+ }, pos);
+ }
+ return InteractionResult.SUCCESS;
+ }
+
+ @Override
+ public MenuProvider getMenuProvider(BlockState state, Level worldIn, BlockPos pos) {
+ BlockEntity tileEntity = worldIn.getBlockEntity(pos);
+ return tileEntity instanceof MenuProvider menuProvider ? menuProvider : null;
+ }
+
+ @Override
+ public BlockEntity newBlockEntity(BlockPos pos, BlockState state) {
+ return new BedrockifierBlockEntity(pos, state);
+ }
+
+ @Override
+ public boolean triggerEvent(BlockState state, Level world, BlockPos pos, int eventID, int eventParam) {
+ super.triggerEvent(state, world, pos, eventID, eventParam);
+ BlockEntity blockEntity = world.getBlockEntity(pos);
+ return blockEntity == null ? false : blockEntity.triggerEvent(eventID, eventParam);
+ }
+
+ @Override
+ public void onRemove(BlockState state, Level world, BlockPos pos, BlockState newState, boolean isMoving) {
+ if (state.getBlock() != newState.getBlock()) {
+ BlockEntity blockEntity = world.getBlockEntity(pos);
+ if (blockEntity instanceof BedrockifierBlockEntity be) {
+ Containers.dropContents(world, pos, be);
+ world.updateNeighbourForOutputSignal(pos, this);
+ }
+ super.onRemove(state, world, pos, newState, isMoving);
+ }
+ }
+
+ @Override
+ public boolean hasAnalogOutputSignal(BlockState state) {
+ return true;
+ }
+
+ @Override
+ public int getAnalogOutputSignal(BlockState blockState, Level world, BlockPos pos) {
+ BlockEntity tileentity = world.getBlockEntity(pos);
+ if (tileentity instanceof BedrockifierBlockEntity be)
+ return AbstractContainerMenu.getRedstoneSignalFromContainer(be);
+ else
+ return 0;
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/block/entity/BedrockifierBlockEntity.java b/src/main/java/net/mcreator/nimsrandombullshit/block/entity/BedrockifierBlockEntity.java
new file mode 100644
index 0000000..2dbd2b7
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/block/entity/BedrockifierBlockEntity.java
@@ -0,0 +1,145 @@
+package net.mcreator.nimsrandombullshit.block.entity;
+
+import net.minecraftforge.items.wrapper.SidedInvWrapper;
+import net.minecraftforge.items.IItemHandler;
+import net.minecraftforge.common.util.LazyOptional;
+import net.minecraftforge.common.capabilities.ForgeCapabilities;
+import net.minecraftforge.common.capabilities.Capability;
+
+import net.minecraft.world.level.block.state.BlockState;
+import net.minecraft.world.level.block.entity.RandomizableContainerBlockEntity;
+import net.minecraft.world.item.ItemStack;
+import net.minecraft.world.inventory.AbstractContainerMenu;
+import net.minecraft.world.entity.player.Inventory;
+import net.minecraft.world.WorldlyContainer;
+import net.minecraft.world.ContainerHelper;
+import net.minecraft.network.protocol.game.ClientboundBlockEntityDataPacket;
+import net.minecraft.network.chat.Component;
+import net.minecraft.network.FriendlyByteBuf;
+import net.minecraft.nbt.CompoundTag;
+import net.minecraft.core.NonNullList;
+import net.minecraft.core.Direction;
+import net.minecraft.core.BlockPos;
+
+import net.mcreator.nimsrandombullshit.world.inventory.BedrockifierGUIMenu;
+import net.mcreator.nimsrandombullshit.init.NimsRandomBullshitModBlockEntities;
+
+import javax.annotation.Nullable;
+
+import java.util.stream.IntStream;
+
+import io.netty.buffer.Unpooled;
+
+public class BedrockifierBlockEntity extends RandomizableContainerBlockEntity implements WorldlyContainer {
+ private NonNullList stacks = NonNullList.withSize(3, ItemStack.EMPTY);
+ private final LazyOptional extends IItemHandler>[] handlers = SidedInvWrapper.create(this, Direction.values());
+
+ public BedrockifierBlockEntity(BlockPos position, BlockState state) {
+ super(NimsRandomBullshitModBlockEntities.BEDROCKIFIER.get(), position, state);
+ }
+
+ @Override
+ public void load(CompoundTag compound) {
+ super.load(compound);
+ if (!this.tryLoadLootTable(compound))
+ this.stacks = NonNullList.withSize(this.getContainerSize(), ItemStack.EMPTY);
+ ContainerHelper.loadAllItems(compound, this.stacks);
+ }
+
+ @Override
+ public void saveAdditional(CompoundTag compound) {
+ super.saveAdditional(compound);
+ if (!this.trySaveLootTable(compound)) {
+ ContainerHelper.saveAllItems(compound, this.stacks);
+ }
+ }
+
+ @Override
+ public ClientboundBlockEntityDataPacket getUpdatePacket() {
+ return ClientboundBlockEntityDataPacket.create(this);
+ }
+
+ @Override
+ public CompoundTag getUpdateTag() {
+ return this.saveWithFullMetadata();
+ }
+
+ @Override
+ public int getContainerSize() {
+ return stacks.size();
+ }
+
+ @Override
+ public boolean isEmpty() {
+ for (ItemStack itemstack : this.stacks)
+ if (!itemstack.isEmpty())
+ return false;
+ return true;
+ }
+
+ @Override
+ public Component getDefaultName() {
+ return Component.literal("bedrockifier");
+ }
+
+ @Override
+ public int getMaxStackSize() {
+ return 64;
+ }
+
+ @Override
+ public AbstractContainerMenu createMenu(int id, Inventory inventory) {
+ return new BedrockifierGUIMenu(id, inventory, new FriendlyByteBuf(Unpooled.buffer()).writeBlockPos(this.worldPosition));
+ }
+
+ @Override
+ public Component getDisplayName() {
+ return Component.literal("Bedrockifier");
+ }
+
+ @Override
+ protected NonNullList getItems() {
+ return this.stacks;
+ }
+
+ @Override
+ protected void setItems(NonNullList stacks) {
+ this.stacks = stacks;
+ }
+
+ @Override
+ public boolean canPlaceItem(int index, ItemStack stack) {
+ if (index == 2)
+ return false;
+ return true;
+ }
+
+ @Override
+ public int[] getSlotsForFace(Direction side) {
+ return IntStream.range(0, this.getContainerSize()).toArray();
+ }
+
+ @Override
+ public boolean canPlaceItemThroughFace(int index, ItemStack stack, @Nullable Direction direction) {
+ return this.canPlaceItem(index, stack);
+ }
+
+ @Override
+ public boolean canTakeItemThroughFace(int index, ItemStack stack, Direction direction) {
+ return true;
+ }
+
+ @Override
+ public LazyOptional getCapability(Capability capability, @Nullable Direction facing) {
+ if (!this.remove && facing != null && capability == ForgeCapabilities.ITEM_HANDLER)
+ return handlers[facing.ordinal()].cast();
+ return super.getCapability(capability, facing);
+ }
+
+ @Override
+ public void setRemoved() {
+ super.setRemoved();
+ for (LazyOptional extends IItemHandler> handler : handlers)
+ handler.invalidate();
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/client/gui/BedrockifierGUIScreen.java b/src/main/java/net/mcreator/nimsrandombullshit/client/gui/BedrockifierGUIScreen.java
new file mode 100644
index 0000000..c62cf76
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/client/gui/BedrockifierGUIScreen.java
@@ -0,0 +1,85 @@
+package net.mcreator.nimsrandombullshit.client.gui;
+
+import net.minecraft.world.level.Level;
+import net.minecraft.world.entity.player.Player;
+import net.minecraft.world.entity.player.Inventory;
+import net.minecraft.resources.ResourceLocation;
+import net.minecraft.network.chat.Component;
+import net.minecraft.client.gui.screens.inventory.AbstractContainerScreen;
+import net.minecraft.client.gui.components.Button;
+import net.minecraft.client.gui.GuiGraphics;
+
+import net.mcreator.nimsrandombullshit.world.inventory.BedrockifierGUIMenu;
+import net.mcreator.nimsrandombullshit.network.BedrockifierGUIButtonMessage;
+import net.mcreator.nimsrandombullshit.NimsRandomBullshitMod;
+
+import java.util.HashMap;
+
+import com.mojang.blaze3d.systems.RenderSystem;
+
+public class BedrockifierGUIScreen extends AbstractContainerScreen {
+ private final static HashMap guistate = BedrockifierGUIMenu.guistate;
+ private final Level world;
+ private final int x, y, z;
+ private final Player entity;
+ Button button_empty;
+
+ public BedrockifierGUIScreen(BedrockifierGUIMenu container, Inventory inventory, Component text) {
+ super(container, inventory, text);
+ this.world = container.world;
+ this.x = container.x;
+ this.y = container.y;
+ this.z = container.z;
+ this.entity = container.entity;
+ this.imageWidth = 176;
+ this.imageHeight = 166;
+ }
+
+ private static final ResourceLocation texture = new ResourceLocation("nims_random_bullshit:textures/screens/bedrockifier_gui.png");
+
+ @Override
+ public void render(GuiGraphics guiGraphics, int mouseX, int mouseY, float partialTicks) {
+ this.renderBackground(guiGraphics);
+ super.render(guiGraphics, mouseX, mouseY, partialTicks);
+ this.renderTooltip(guiGraphics, mouseX, mouseY);
+ }
+
+ @Override
+ protected void renderBg(GuiGraphics guiGraphics, float partialTicks, int gx, int gy) {
+ RenderSystem.setShaderColor(1, 1, 1, 1);
+ RenderSystem.enableBlend();
+ RenderSystem.defaultBlendFunc();
+ guiGraphics.blit(texture, this.leftPos, this.topPos, 0, 0, this.imageWidth, this.imageHeight, this.imageWidth, this.imageHeight);
+
+ guiGraphics.blit(new ResourceLocation("nims_random_bullshit:textures/screens/plus_sign.png"), this.leftPos + 42, this.topPos + 34, 0, 0, 16, 16, 16, 16);
+
+ RenderSystem.disableBlend();
+ }
+
+ @Override
+ public boolean keyPressed(int key, int b, int c) {
+ if (key == 256) {
+ this.minecraft.player.closeContainer();
+ return true;
+ }
+ return super.keyPressed(key, b, c);
+ }
+
+ @Override
+ protected void renderLabels(GuiGraphics guiGraphics, int mouseX, int mouseY) {
+ guiGraphics.drawString(this.font, Component.translatable("gui.nims_random_bullshit.bedrockifier_gui.label_bedrockifier"), 6, 7, -12829636, false);
+ }
+
+ @Override
+ public void init() {
+ super.init();
+ button_empty = Button.builder(Component.translatable("gui.nims_random_bullshit.bedrockifier_gui.button_empty"), e -> {
+ if (true) {
+ NimsRandomBullshitMod.PACKET_HANDLER.sendToServer(new BedrockifierGUIButtonMessage(0, x, y, z));
+ BedrockifierGUIButtonMessage.handleButtonAction(entity, 0, x, y, z);
+ }
+ }).bounds(this.leftPos + 96, this.topPos + 34, 35, 20).build();
+ guistate.put("button:button_empty", button_empty);
+ this.addRenderableWidget(button_empty);
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/entity/GhoulEntity.java b/src/main/java/net/mcreator/nimsrandombullshit/entity/GhoulEntity.java
index 12e47a8..fdecaf3 100644
--- a/src/main/java/net/mcreator/nimsrandombullshit/entity/GhoulEntity.java
+++ b/src/main/java/net/mcreator/nimsrandombullshit/entity/GhoulEntity.java
@@ -169,9 +169,9 @@ public class GhoulEntity extends Monster {
public static AttributeSupplier.Builder createAttributes() {
AttributeSupplier.Builder builder = Mob.createMobAttributes();
builder = builder.add(Attributes.MOVEMENT_SPEED, 0.36);
- builder = builder.add(Attributes.MAX_HEALTH, 9);
+ builder = builder.add(Attributes.MAX_HEALTH, 10);
builder = builder.add(Attributes.ARMOR, 0);
- builder = builder.add(Attributes.ATTACK_DAMAGE, 3);
+ builder = builder.add(Attributes.ATTACK_DAMAGE, 6);
builder = builder.add(Attributes.FOLLOW_RANGE, 19);
return builder;
}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModBlockEntities.java b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModBlockEntities.java
index 0a968c8..633c274 100644
--- a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModBlockEntities.java
+++ b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModBlockEntities.java
@@ -14,6 +14,7 @@ import net.minecraft.world.level.block.Block;
import net.mcreator.nimsrandombullshit.block.entity.OreMinerBlockEntity;
import net.mcreator.nimsrandombullshit.block.entity.MailboxBlockEntity;
import net.mcreator.nimsrandombullshit.block.entity.LabelCopyMachineBlockEntity;
+import net.mcreator.nimsrandombullshit.block.entity.BedrockifierBlockEntity;
import net.mcreator.nimsrandombullshit.NimsRandomBullshitMod;
public class NimsRandomBullshitModBlockEntities {
@@ -21,6 +22,7 @@ public class NimsRandomBullshitModBlockEntities {
public static final RegistryObject> ORE_MINER = register("ore_miner", NimsRandomBullshitModBlocks.ORE_MINER, OreMinerBlockEntity::new);
public static final RegistryObject> MAILBOX = register("mailbox", NimsRandomBullshitModBlocks.MAILBOX, MailboxBlockEntity::new);
public static final RegistryObject> LABEL_COPY_MACHINE = register("label_copy_machine", NimsRandomBullshitModBlocks.LABEL_COPY_MACHINE, LabelCopyMachineBlockEntity::new);
+ public static final RegistryObject> BEDROCKIFIER = register("bedrockifier", NimsRandomBullshitModBlocks.BEDROCKIFIER, BedrockifierBlockEntity::new);
// Start of user code block custom block entities
// End of user code block custom block entities
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModBlocks.java b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModBlocks.java
index 2164a2e..6632e33 100644
--- a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModBlocks.java
+++ b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModBlocks.java
@@ -31,6 +31,7 @@ import net.mcreator.nimsrandombullshit.block.CondensedNetherrackBlock;
import net.mcreator.nimsrandombullshit.block.CondensedCondensedNetherrackBlock;
import net.mcreator.nimsrandombullshit.block.CondensedCondensedCondensedNetherrackBlock;
import net.mcreator.nimsrandombullshit.block.BrokenGlassBlock;
+import net.mcreator.nimsrandombullshit.block.BedrockifierBlock;
import net.mcreator.nimsrandombullshit.NimsRandomBullshitMod;
public class NimsRandomBullshitModBlocks {
@@ -56,6 +57,7 @@ public class NimsRandomBullshitModBlocks {
public static final RegistryObject MAGMA_BRICK_WALLS = REGISTRY.register("magma_brick_walls", () -> new MagmaBrickWallsBlock());
public static final RegistryObject MAGMA_BRICK_PRESSURE_PLATE = REGISTRY.register("magma_brick_pressure_plate", () -> new MagmaBrickPressurePlateBlock());
public static final RegistryObject MAGMA_BRICK_BUTTON = REGISTRY.register("magma_brick_button", () -> new MagmaBrickButtonBlock());
+ public static final RegistryObject BEDROCKIFIER = REGISTRY.register("bedrockifier", () -> new BedrockifierBlock());
// Start of user code block custom blocks
// End of user code block custom blocks
}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModItems.java b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModItems.java
index d97a431..112744e 100644
--- a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModItems.java
+++ b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModItems.java
@@ -13,8 +13,10 @@ import net.minecraft.world.level.block.Block;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.BlockItem;
+import net.mcreator.nimsrandombullshit.item.WitherQuestionMarkItem;
import net.mcreator.nimsrandombullshit.item.StarWandItem;
import net.mcreator.nimsrandombullshit.item.StarItem;
+import net.mcreator.nimsrandombullshit.item.SnowGolemQuestionMarkItem;
import net.mcreator.nimsrandombullshit.item.ShitItem;
import net.mcreator.nimsrandombullshit.item.ShippingLabelItem;
import net.mcreator.nimsrandombullshit.item.SandDustItem;
@@ -22,12 +24,17 @@ import net.mcreator.nimsrandombullshit.item.NetherrackitePickaxeItem;
import net.mcreator.nimsrandombullshit.item.NetherrackiteItem;
import net.mcreator.nimsrandombullshit.item.NetherrackJuiceItem;
import net.mcreator.nimsrandombullshit.item.MagicFleshItem;
+import net.mcreator.nimsrandombullshit.item.MagicEggItem;
import net.mcreator.nimsrandombullshit.item.MagicDustItem;
import net.mcreator.nimsrandombullshit.item.LapisLazuliNuggetItem;
+import net.mcreator.nimsrandombullshit.item.IronGolemQuestionMarkItem;
import net.mcreator.nimsrandombullshit.item.GravediggerItem;
import net.mcreator.nimsrandombullshit.item.GoldenBerriesItem;
import net.mcreator.nimsrandombullshit.item.CheeseItem;
import net.mcreator.nimsrandombullshit.item.BlockEaterItem;
+import net.mcreator.nimsrandombullshit.item.BedrockUpgradeTemplateItem;
+import net.mcreator.nimsrandombullshit.item.BedrockSwordItem;
+import net.mcreator.nimsrandombullshit.item.BedrockPickaxeItem;
import net.mcreator.nimsrandombullshit.item.BeanItem;
import net.mcreator.nimsrandombullshit.NimsRandomBullshitMod;
@@ -71,6 +78,14 @@ public class NimsRandomBullshitModItems {
public static final RegistryObject- MAGMA_BRICK_BUTTON = block(NimsRandomBullshitModBlocks.MAGMA_BRICK_BUTTON);
public static final RegistryObject
- BEAN = REGISTRY.register("bean", () -> new BeanItem());
public static final RegistryObject
- CHEESE = REGISTRY.register("cheese", () -> new CheeseItem());
+ public static final RegistryObject
- BEDROCK_PICKAXE = REGISTRY.register("bedrock_pickaxe", () -> new BedrockPickaxeItem());
+ public static final RegistryObject
- BEDROCK_UPGRADE_TEMPLATE = REGISTRY.register("bedrock_upgrade_template", () -> new BedrockUpgradeTemplateItem());
+ public static final RegistryObject
- BEDROCKIFIER = block(NimsRandomBullshitModBlocks.BEDROCKIFIER);
+ public static final RegistryObject
- MAGIC_EGG = REGISTRY.register("magic_egg", () -> new MagicEggItem());
+ public static final RegistryObject
- WITHER_QUESTION_MARK = REGISTRY.register("wither_question_mark", () -> new WitherQuestionMarkItem());
+ public static final RegistryObject
- IRON_GOLEM_QUESTION_MARK = REGISTRY.register("iron_golem_question_mark", () -> new IronGolemQuestionMarkItem());
+ public static final RegistryObject
- SNOW_GOLEM_QUESTION_MARK = REGISTRY.register("snow_golem_question_mark", () -> new SnowGolemQuestionMarkItem());
+ public static final RegistryObject
- BEDROCK_SWORD = REGISTRY.register("bedrock_sword", () -> new BedrockSwordItem());
// Start of user code block custom items
// End of user code block custom items
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModMenus.java b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModMenus.java
index 0be0eb8..03ef3d0 100644
--- a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModMenus.java
+++ b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModMenus.java
@@ -16,6 +16,7 @@ import net.mcreator.nimsrandombullshit.world.inventory.OreMinerGUIMenu;
import net.mcreator.nimsrandombullshit.world.inventory.MailboxNameEntryGUIMenu;
import net.mcreator.nimsrandombullshit.world.inventory.MailboxGUIMenu;
import net.mcreator.nimsrandombullshit.world.inventory.LabelCopyMachineGUIMenu;
+import net.mcreator.nimsrandombullshit.world.inventory.BedrockifierGUIMenu;
import net.mcreator.nimsrandombullshit.NimsRandomBullshitMod;
public class NimsRandomBullshitModMenus {
@@ -25,4 +26,5 @@ public class NimsRandomBullshitModMenus {
public static final RegistryObject> MAILBOX_GUI = REGISTRY.register("mailbox_gui", () -> IForgeMenuType.create(MailboxGUIMenu::new));
public static final RegistryObject> MAILBOX_NAME_ENTRY_GUI = REGISTRY.register("mailbox_name_entry_gui", () -> IForgeMenuType.create(MailboxNameEntryGUIMenu::new));
public static final RegistryObject> LABEL_COPY_MACHINE_GUI = REGISTRY.register("label_copy_machine_gui", () -> IForgeMenuType.create(LabelCopyMachineGUIMenu::new));
+ public static final RegistryObject> BEDROCKIFIER_GUI = REGISTRY.register("bedrockifier_gui", () -> IForgeMenuType.create(BedrockifierGUIMenu::new));
}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModPaintings.java b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModPaintings.java
new file mode 100644
index 0000000..b342c10
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModPaintings.java
@@ -0,0 +1,18 @@
+
+/*
+ * MCreator note: This file will be REGENERATED on each build.
+ */
+package net.mcreator.nimsrandombullshit.init;
+
+import net.minecraftforge.registries.RegistryObject;
+import net.minecraftforge.registries.ForgeRegistries;
+import net.minecraftforge.registries.DeferredRegister;
+
+import net.minecraft.world.entity.decoration.PaintingVariant;
+
+import net.mcreator.nimsrandombullshit.NimsRandomBullshitMod;
+
+public class NimsRandomBullshitModPaintings {
+ public static final DeferredRegister REGISTRY = DeferredRegister.create(ForgeRegistries.PAINTING_VARIANTS, NimsRandomBullshitMod.MODID);
+ public static final RegistryObject SHIT_PAINTING = REGISTRY.register("shit_painting", () -> new PaintingVariant(16, 16));
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModScreens.java b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModScreens.java
index bd3c831..e0d8efc 100644
--- a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModScreens.java
+++ b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModScreens.java
@@ -16,6 +16,7 @@ import net.mcreator.nimsrandombullshit.client.gui.OreMinerGUIScreen;
import net.mcreator.nimsrandombullshit.client.gui.MailboxNameEntryGUIScreen;
import net.mcreator.nimsrandombullshit.client.gui.MailboxGUIScreen;
import net.mcreator.nimsrandombullshit.client.gui.LabelCopyMachineGUIScreen;
+import net.mcreator.nimsrandombullshit.client.gui.BedrockifierGUIScreen;
@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.MOD, value = Dist.CLIENT)
public class NimsRandomBullshitModScreens {
@@ -27,6 +28,7 @@ public class NimsRandomBullshitModScreens {
MenuScreens.register(NimsRandomBullshitModMenus.MAILBOX_GUI.get(), MailboxGUIScreen::new);
MenuScreens.register(NimsRandomBullshitModMenus.MAILBOX_NAME_ENTRY_GUI.get(), MailboxNameEntryGUIScreen::new);
MenuScreens.register(NimsRandomBullshitModMenus.LABEL_COPY_MACHINE_GUI.get(), LabelCopyMachineGUIScreen::new);
+ MenuScreens.register(NimsRandomBullshitModMenus.BEDROCKIFIER_GUI.get(), BedrockifierGUIScreen::new);
});
}
}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModTabs.java b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModTabs.java
index 7ad6a56..2756912 100644
--- a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModTabs.java
+++ b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModTabs.java
@@ -41,12 +41,19 @@ public class NimsRandomBullshitModTabs {
tabData.accept(NimsRandomBullshitModItems.STAR_WAND.get());
tabData.accept(NimsRandomBullshitModItems.NETHERRACK_JUICE_BUCKET.get());
tabData.accept(NimsRandomBullshitModItems.SHIPPING_LABEL.get());
+ tabData.accept(NimsRandomBullshitModItems.BEDROCK_PICKAXE.get());
+ tabData.accept(NimsRandomBullshitModItems.BEDROCK_SWORD.get());
} else if (tabData.getTabKey() == CreativeModeTabs.INGREDIENTS) {
tabData.accept(NimsRandomBullshitModItems.NETHERRACKITE.get());
tabData.accept(NimsRandomBullshitModItems.SAND_DUST.get());
tabData.accept(NimsRandomBullshitModItems.LAPIS_LAZULI_NUGGET.get());
tabData.accept(NimsRandomBullshitModItems.MAGIC_DUST.get());
tabData.accept(NimsRandomBullshitModItems.STAR.get());
+ tabData.accept(NimsRandomBullshitModItems.BEDROCK_UPGRADE_TEMPLATE.get());
+ tabData.accept(NimsRandomBullshitModItems.MAGIC_EGG.get());
+ tabData.accept(NimsRandomBullshitModItems.WITHER_QUESTION_MARK.get());
+ tabData.accept(NimsRandomBullshitModItems.IRON_GOLEM_QUESTION_MARK.get());
+ tabData.accept(NimsRandomBullshitModItems.SNOW_GOLEM_QUESTION_MARK.get());
} else if (tabData.getTabKey() == CreativeModeTabs.FOOD_AND_DRINKS) {
tabData.accept(NimsRandomBullshitModItems.MAGIC_FLESH.get());
tabData.accept(NimsRandomBullshitModItems.GOLDEN_BERRIES.get());
@@ -56,6 +63,7 @@ public class NimsRandomBullshitModTabs {
tabData.accept(NimsRandomBullshitModBlocks.ORE_MINER.get().asItem());
tabData.accept(NimsRandomBullshitModBlocks.MAILBOX.get().asItem());
tabData.accept(NimsRandomBullshitModBlocks.LABEL_COPY_MACHINE.get().asItem());
+ tabData.accept(NimsRandomBullshitModBlocks.BEDROCKIFIER.get().asItem());
} else if (tabData.getTabKey() == CreativeModeTabs.SPAWN_EGGS) {
tabData.accept(NimsRandomBullshitModItems.GHOUL_SPAWN_EGG.get());
tabData.accept(NimsRandomBullshitModItems.TUX_SPAWN_EGG.get());
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModTrades.java b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModTrades.java
new file mode 100644
index 0000000..de699f2
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModTrades.java
@@ -0,0 +1,25 @@
+
+/*
+* MCreator note: This file will be REGENERATED on each build.
+*/
+package net.mcreator.nimsrandombullshit.init;
+
+import net.minecraftforge.fml.common.Mod;
+import net.minecraftforge.eventbus.api.SubscribeEvent;
+import net.minecraftforge.event.village.VillagerTradesEvent;
+import net.minecraftforge.common.BasicItemListing;
+
+import net.minecraft.world.item.Items;
+import net.minecraft.world.item.ItemStack;
+
+@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.FORGE)
+public class NimsRandomBullshitModTrades {
+ @SubscribeEvent
+ public static void registerTrades(VillagerTradesEvent event) {
+ if (event.getType() == NimsRandomBullshitModVillagerProfessions.MAILMAN_PROFESSION.get()) {
+ event.getTrades().get(1).add(new BasicItemListing(new ItemStack(Items.EMERALD),
+
+ new ItemStack(NimsRandomBullshitModItems.SHIPPING_LABEL.get(), 12), 100, 5, 0.05f));
+ }
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModVillagerProfessions.java b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModVillagerProfessions.java
new file mode 100644
index 0000000..244d24e
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/init/NimsRandomBullshitModVillagerProfessions.java
@@ -0,0 +1,74 @@
+
+/*
+ * MCreator note: This file will be REGENERATED on each build.
+ */
+package net.mcreator.nimsrandombullshit.init;
+
+import net.minecraftforge.registries.RegistryObject;
+import net.minecraftforge.registries.RegisterEvent;
+import net.minecraftforge.registries.ForgeRegistries;
+import net.minecraftforge.registries.DeferredRegister;
+import net.minecraftforge.fml.common.Mod;
+import net.minecraftforge.eventbus.api.SubscribeEvent;
+
+import net.minecraft.world.level.block.Block;
+import net.minecraft.world.entity.npc.VillagerProfession;
+import net.minecraft.world.entity.ai.village.poi.PoiTypes;
+import net.minecraft.world.entity.ai.village.poi.PoiType;
+import net.minecraft.sounds.SoundEvent;
+import net.minecraft.resources.ResourceLocation;
+import net.minecraft.core.Holder;
+
+import net.mcreator.nimsrandombullshit.NimsRandomBullshitMod;
+
+import java.util.function.Supplier;
+import java.util.function.Predicate;
+import java.util.Optional;
+import java.util.Map;
+import java.util.HashMap;
+
+import com.google.common.collect.ImmutableSet;
+
+@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.MOD)
+public class NimsRandomBullshitModVillagerProfessions {
+ private static final Map POI_TYPES = new HashMap<>();
+ public static final DeferredRegister PROFESSIONS = DeferredRegister.create(ForgeRegistries.VILLAGER_PROFESSIONS, NimsRandomBullshitMod.MODID);
+ public static final RegistryObject MAILMAN_PROFESSION = registerProfession("mailman_profession", () -> NimsRandomBullshitModBlocks.MAILBOX.get(),
+ () -> ForgeRegistries.SOUND_EVENTS.getValue(new ResourceLocation("item.book.page_turn")));
+
+ private static RegistryObject registerProfession(String name, Supplier block, Supplier soundEvent) {
+ POI_TYPES.put(name, new ProfessionPoiType(block, null));
+ return PROFESSIONS.register(name, () -> {
+ Predicate> poiPredicate = poiTypeHolder -> (POI_TYPES.get(name).poiType != null) && (poiTypeHolder.get() == POI_TYPES.get(name).poiType.get());
+ return new VillagerProfession(NimsRandomBullshitMod.MODID + ":" + name, poiPredicate, poiPredicate, ImmutableSet.of(), ImmutableSet.of(), soundEvent.get());
+ });
+ }
+
+ @SubscribeEvent
+ public static void registerProfessionPointsOfInterest(RegisterEvent event) {
+ event.register(ForgeRegistries.Keys.POI_TYPES, registerHelper -> {
+ for (Map.Entry entry : POI_TYPES.entrySet()) {
+ Block block = entry.getValue().block.get();
+ String name = entry.getKey();
+ Optional> existingCheck = PoiTypes.forState(block.defaultBlockState());
+ if (existingCheck.isPresent()) {
+ NimsRandomBullshitMod.LOGGER.error("Skipping villager profession " + name + " that uses POI block " + block + " that is already in use by " + existingCheck);
+ continue;
+ }
+ PoiType poiType = new PoiType(ImmutableSet.copyOf(block.getStateDefinition().getPossibleStates()), 1, 1);
+ registerHelper.register(name, poiType);
+ entry.getValue().poiType = ForgeRegistries.POI_TYPES.getHolder(poiType).get();
+ }
+ });
+ }
+
+ private static class ProfessionPoiType {
+ final Supplier block;
+ Holder poiType;
+
+ ProfessionPoiType(Supplier block, Holder poiType) {
+ this.block = block;
+ this.poiType = poiType;
+ }
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/item/BedrockPickaxeItem.java b/src/main/java/net/mcreator/nimsrandombullshit/item/BedrockPickaxeItem.java
new file mode 100644
index 0000000..13ad06f
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/item/BedrockPickaxeItem.java
@@ -0,0 +1,49 @@
+
+package net.mcreator.nimsrandombullshit.item;
+
+import net.minecraft.world.level.block.Blocks;
+import net.minecraft.world.item.crafting.Ingredient;
+import net.minecraft.world.item.Tier;
+import net.minecraft.world.item.PickaxeItem;
+import net.minecraft.world.item.ItemStack;
+import net.minecraft.world.item.Item;
+import net.minecraft.world.entity.LivingEntity;
+
+import net.mcreator.nimsrandombullshit.procedures.BedrockPickaxeEntitySwingsItemProcedure;
+
+public class BedrockPickaxeItem extends PickaxeItem {
+ public BedrockPickaxeItem() {
+ super(new Tier() {
+ public int getUses() {
+ return 0;
+ }
+
+ public float getSpeed() {
+ return 9f;
+ }
+
+ public float getAttackDamageBonus() {
+ return 6f;
+ }
+
+ public int getLevel() {
+ return 4;
+ }
+
+ public int getEnchantmentValue() {
+ return 19;
+ }
+
+ public Ingredient getRepairIngredient() {
+ return Ingredient.of(new ItemStack(Blocks.BEDROCK));
+ }
+ }, 1, -2.8f, new Item.Properties().fireResistant());
+ }
+
+ @Override
+ public boolean onEntitySwing(ItemStack itemstack, LivingEntity entity) {
+ boolean retval = super.onEntitySwing(itemstack, entity);
+ BedrockPickaxeEntitySwingsItemProcedure.execute(entity.level(), entity);
+ return retval;
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/item/BedrockSwordItem.java b/src/main/java/net/mcreator/nimsrandombullshit/item/BedrockSwordItem.java
new file mode 100644
index 0000000..b7cb28c
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/item/BedrockSwordItem.java
@@ -0,0 +1,37 @@
+
+package net.mcreator.nimsrandombullshit.item;
+
+import net.minecraft.world.item.crafting.Ingredient;
+import net.minecraft.world.item.Tier;
+import net.minecraft.world.item.SwordItem;
+import net.minecraft.world.item.Item;
+
+public class BedrockSwordItem extends SwordItem {
+ public BedrockSwordItem() {
+ super(new Tier() {
+ public int getUses() {
+ return 0;
+ }
+
+ public float getSpeed() {
+ return 4f;
+ }
+
+ public float getAttackDamageBonus() {
+ return 76f;
+ }
+
+ public int getLevel() {
+ return 4;
+ }
+
+ public int getEnchantmentValue() {
+ return 19;
+ }
+
+ public Ingredient getRepairIngredient() {
+ return Ingredient.of();
+ }
+ }, 3, -2.4f, new Item.Properties().fireResistant());
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/item/BedrockUpgradeTemplateItem.java b/src/main/java/net/mcreator/nimsrandombullshit/item/BedrockUpgradeTemplateItem.java
new file mode 100644
index 0000000..12918ca
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/item/BedrockUpgradeTemplateItem.java
@@ -0,0 +1,11 @@
+
+package net.mcreator.nimsrandombullshit.item;
+
+import net.minecraft.world.item.Rarity;
+import net.minecraft.world.item.Item;
+
+public class BedrockUpgradeTemplateItem extends Item {
+ public BedrockUpgradeTemplateItem() {
+ super(new Item.Properties().stacksTo(64).fireResistant().rarity(Rarity.EPIC));
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/item/IronGolemQuestionMarkItem.java b/src/main/java/net/mcreator/nimsrandombullshit/item/IronGolemQuestionMarkItem.java
new file mode 100644
index 0000000..2653bb6
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/item/IronGolemQuestionMarkItem.java
@@ -0,0 +1,11 @@
+
+package net.mcreator.nimsrandombullshit.item;
+
+import net.minecraft.world.item.Rarity;
+import net.minecraft.world.item.Item;
+
+public class IronGolemQuestionMarkItem extends Item {
+ public IronGolemQuestionMarkItem() {
+ super(new Item.Properties().stacksTo(64).rarity(Rarity.UNCOMMON));
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/item/MagicEggItem.java b/src/main/java/net/mcreator/nimsrandombullshit/item/MagicEggItem.java
new file mode 100644
index 0000000..431220e
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/item/MagicEggItem.java
@@ -0,0 +1,11 @@
+
+package net.mcreator.nimsrandombullshit.item;
+
+import net.minecraft.world.item.Rarity;
+import net.minecraft.world.item.Item;
+
+public class MagicEggItem extends Item {
+ public MagicEggItem() {
+ super(new Item.Properties().stacksTo(64).rarity(Rarity.UNCOMMON));
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/item/SnowGolemQuestionMarkItem.java b/src/main/java/net/mcreator/nimsrandombullshit/item/SnowGolemQuestionMarkItem.java
new file mode 100644
index 0000000..733dade
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/item/SnowGolemQuestionMarkItem.java
@@ -0,0 +1,11 @@
+
+package net.mcreator.nimsrandombullshit.item;
+
+import net.minecraft.world.item.Rarity;
+import net.minecraft.world.item.Item;
+
+public class SnowGolemQuestionMarkItem extends Item {
+ public SnowGolemQuestionMarkItem() {
+ super(new Item.Properties().stacksTo(64).rarity(Rarity.UNCOMMON));
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/item/WitherQuestionMarkItem.java b/src/main/java/net/mcreator/nimsrandombullshit/item/WitherQuestionMarkItem.java
new file mode 100644
index 0000000..2c7395d
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/item/WitherQuestionMarkItem.java
@@ -0,0 +1,11 @@
+
+package net.mcreator.nimsrandombullshit.item;
+
+import net.minecraft.world.item.Rarity;
+import net.minecraft.world.item.Item;
+
+public class WitherQuestionMarkItem extends Item {
+ public WitherQuestionMarkItem() {
+ super(new Item.Properties().stacksTo(64).fireResistant().rarity(Rarity.RARE));
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/network/BedrockifierGUIButtonMessage.java b/src/main/java/net/mcreator/nimsrandombullshit/network/BedrockifierGUIButtonMessage.java
new file mode 100644
index 0000000..ad082ab
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/network/BedrockifierGUIButtonMessage.java
@@ -0,0 +1,75 @@
+
+package net.mcreator.nimsrandombullshit.network;
+
+import net.minecraftforge.network.NetworkEvent;
+import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
+import net.minecraftforge.fml.common.Mod;
+import net.minecraftforge.eventbus.api.SubscribeEvent;
+
+import net.minecraft.world.level.Level;
+import net.minecraft.world.entity.player.Player;
+import net.minecraft.network.FriendlyByteBuf;
+import net.minecraft.core.BlockPos;
+
+import net.mcreator.nimsrandombullshit.world.inventory.BedrockifierGUIMenu;
+import net.mcreator.nimsrandombullshit.procedures.BedrockifierButtonPressLogicProcedure;
+import net.mcreator.nimsrandombullshit.NimsRandomBullshitMod;
+
+import java.util.function.Supplier;
+import java.util.HashMap;
+
+@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.MOD)
+public class BedrockifierGUIButtonMessage {
+ private final int buttonID, x, y, z;
+
+ public BedrockifierGUIButtonMessage(FriendlyByteBuf buffer) {
+ this.buttonID = buffer.readInt();
+ this.x = buffer.readInt();
+ this.y = buffer.readInt();
+ this.z = buffer.readInt();
+ }
+
+ public BedrockifierGUIButtonMessage(int buttonID, int x, int y, int z) {
+ this.buttonID = buttonID;
+ this.x = x;
+ this.y = y;
+ this.z = z;
+ }
+
+ public static void buffer(BedrockifierGUIButtonMessage message, FriendlyByteBuf buffer) {
+ buffer.writeInt(message.buttonID);
+ buffer.writeInt(message.x);
+ buffer.writeInt(message.y);
+ buffer.writeInt(message.z);
+ }
+
+ public static void handler(BedrockifierGUIButtonMessage message, Supplier contextSupplier) {
+ NetworkEvent.Context context = contextSupplier.get();
+ context.enqueueWork(() -> {
+ Player entity = context.getSender();
+ int buttonID = message.buttonID;
+ int x = message.x;
+ int y = message.y;
+ int z = message.z;
+ handleButtonAction(entity, buttonID, x, y, z);
+ });
+ context.setPacketHandled(true);
+ }
+
+ public static void handleButtonAction(Player entity, int buttonID, int x, int y, int z) {
+ Level world = entity.level();
+ HashMap guistate = BedrockifierGUIMenu.guistate;
+ // security measure to prevent arbitrary chunk generation
+ if (!world.hasChunkAt(new BlockPos(x, y, z)))
+ return;
+ if (buttonID == 0) {
+
+ BedrockifierButtonPressLogicProcedure.execute(world, x, y, z, entity);
+ }
+ }
+
+ @SubscribeEvent
+ public static void registerMessage(FMLCommonSetupEvent event) {
+ NimsRandomBullshitMod.addNetworkMessage(BedrockifierGUIButtonMessage.class, BedrockifierGUIButtonMessage::buffer, BedrockifierGUIButtonMessage::new, BedrockifierGUIButtonMessage::handler);
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/procedures/BedrockPickaxeEntitySwingsItemProcedure.java b/src/main/java/net/mcreator/nimsrandombullshit/procedures/BedrockPickaxeEntitySwingsItemProcedure.java
new file mode 100644
index 0000000..52234ea
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/procedures/BedrockPickaxeEntitySwingsItemProcedure.java
@@ -0,0 +1,123 @@
+package net.mcreator.nimsrandombullshit.procedures;
+
+import net.minecraftforge.registries.ForgeRegistries;
+
+import net.minecraft.world.level.block.state.properties.Property;
+import net.minecraft.world.level.block.state.BlockState;
+import net.minecraft.world.level.block.Blocks;
+import net.minecraft.world.level.LevelAccessor;
+import net.minecraft.world.level.Level;
+import net.minecraft.world.level.ClipContext;
+import net.minecraft.world.item.ItemStack;
+import net.minecraft.world.entity.item.ItemEntity;
+import net.minecraft.world.entity.Entity;
+import net.minecraft.sounds.SoundSource;
+import net.minecraft.server.level.ServerLevel;
+import net.minecraft.resources.ResourceLocation;
+import net.minecraft.core.BlockPos;
+
+import net.mcreator.nimsrandombullshit.init.NimsRandomBullshitModBlocks;
+
+import java.util.Map;
+
+public class BedrockPickaxeEntitySwingsItemProcedure {
+ public static void execute(LevelAccessor world, Entity entity) {
+ if (entity == null)
+ return;
+ if (!world.isClientSide()) {
+ if ((world.getBlockState(
+ new BlockPos(entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getX(),
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getY(),
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getZ())))
+ .getBlock() == Blocks.BEDROCK) {
+ {
+ BlockPos _bp = new BlockPos(
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getX(),
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getY(),
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getZ());
+ BlockState _bs = Blocks.AIR.defaultBlockState();
+ BlockState _bso = world.getBlockState(_bp);
+ for (Map.Entry, Comparable>> entry : _bso.getValues().entrySet()) {
+ Property _property = _bs.getBlock().getStateDefinition().getProperty(entry.getKey().getName());
+ if (_property != null && _bs.getValue(_property) != null)
+ try {
+ _bs = _bs.setValue(_property, (Comparable) entry.getValue());
+ } catch (Exception e) {
+ }
+ }
+ world.setBlock(_bp, _bs, 3);
+ }
+ if (world instanceof Level _level) {
+ if (!_level.isClientSide()) {
+ _level.playSound(null, new BlockPos(
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getX(),
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getY(),
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getZ()),
+ ForgeRegistries.SOUND_EVENTS.getValue(new ResourceLocation("block.stone.break")), SoundSource.BLOCKS, (float) 0.8, (float) 0.8);
+ } else {
+ _level.playLocalSound(
+ (entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getX()),
+ (entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getY()),
+ (entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getZ()),
+ ForgeRegistries.SOUND_EVENTS.getValue(new ResourceLocation("block.stone.break")), SoundSource.BLOCKS, (float) 0.8, (float) 0.8, false);
+ }
+ }
+ if (world instanceof ServerLevel _level) {
+ ItemEntity entityToSpawn = new ItemEntity(_level,
+ (entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getX()),
+ (entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getY()),
+ (entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getZ()),
+ new ItemStack(Blocks.BEDROCK));
+ entityToSpawn.setPickUpDelay(10);
+ _level.addFreshEntity(entityToSpawn);
+ }
+ } else if ((world.getBlockState(
+ new BlockPos(entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getX(),
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getY(),
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getZ())))
+ .getBlock() == NimsRandomBullshitModBlocks.BEDROCKIFIER.get()) {
+ {
+ BlockPos _bp = new BlockPos(
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getX(),
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getY(),
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getZ());
+ BlockState _bs = Blocks.AIR.defaultBlockState();
+ BlockState _bso = world.getBlockState(_bp);
+ for (Map.Entry, Comparable>> entry : _bso.getValues().entrySet()) {
+ Property _property = _bs.getBlock().getStateDefinition().getProperty(entry.getKey().getName());
+ if (_property != null && _bs.getValue(_property) != null)
+ try {
+ _bs = _bs.setValue(_property, (Comparable) entry.getValue());
+ } catch (Exception e) {
+ }
+ }
+ world.setBlock(_bp, _bs, 3);
+ }
+ if (world instanceof Level _level) {
+ if (!_level.isClientSide()) {
+ _level.playSound(null, new BlockPos(
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getX(),
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getY(),
+ entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getZ()),
+ ForgeRegistries.SOUND_EVENTS.getValue(new ResourceLocation("block.stone.break")), SoundSource.BLOCKS, (float) 0.8, (float) 0.8);
+ } else {
+ _level.playLocalSound(
+ (entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getX()),
+ (entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getY()),
+ (entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getZ()),
+ ForgeRegistries.SOUND_EVENTS.getValue(new ResourceLocation("block.stone.break")), SoundSource.BLOCKS, (float) 0.8, (float) 0.8, false);
+ }
+ }
+ if (world instanceof ServerLevel _level) {
+ ItemEntity entityToSpawn = new ItemEntity(_level,
+ (entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getX()),
+ (entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getY()),
+ (entity.level().clip(new ClipContext(entity.getEyePosition(1f), entity.getEyePosition(1f).add(entity.getViewVector(1f).scale(4.5)), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, entity)).getBlockPos().getZ()),
+ new ItemStack(NimsRandomBullshitModBlocks.BEDROCKIFIER.get()));
+ entityToSpawn.setPickUpDelay(10);
+ _level.addFreshEntity(entityToSpawn);
+ }
+ }
+ }
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/procedures/BedrockifierButtonPressLogicProcedure.java b/src/main/java/net/mcreator/nimsrandombullshit/procedures/BedrockifierButtonPressLogicProcedure.java
new file mode 100644
index 0000000..267a78d
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/procedures/BedrockifierButtonPressLogicProcedure.java
@@ -0,0 +1,95 @@
+package net.mcreator.nimsrandombullshit.procedures;
+
+import net.minecraftforge.registries.ForgeRegistries;
+
+import net.minecraft.world.level.block.Blocks;
+import net.minecraft.world.level.LevelAccessor;
+import net.minecraft.world.level.Level;
+import net.minecraft.world.item.ItemStack;
+import net.minecraft.world.inventory.Slot;
+import net.minecraft.world.entity.player.Player;
+import net.minecraft.world.entity.Entity;
+import net.minecraft.sounds.SoundSource;
+import net.minecraft.resources.ResourceLocation;
+import net.minecraft.core.BlockPos;
+
+import java.util.function.Supplier;
+import java.util.Map;
+
+public class BedrockifierButtonPressLogicProcedure {
+ public static void execute(LevelAccessor world, double x, double y, double z, Entity entity) {
+ if (entity == null)
+ return;
+ if (!world.isClientSide()) {
+ if (new Object() {
+ public int getAmount(int sltid) {
+ if (entity instanceof Player _player && _player.containerMenu instanceof Supplier _current && _current.get() instanceof Map _slots) {
+ ItemStack stack = ((Slot) _slots.get(sltid)).getItem();
+ if (stack != null)
+ return stack.getCount();
+ }
+ return 0;
+ }
+ }.getAmount(0) > 0) {
+ if ((entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(0)).getItem() : ItemStack.EMPTY).getOrCreateTag()
+ .getBoolean("Unbreakable") == false
+ && (entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(1)).getItem() : ItemStack.EMPTY).getItem() == Blocks.BEDROCK.asItem()) {
+ if (entity instanceof Player _player && _player.containerMenu instanceof Supplier _current && _current.get() instanceof Map _slots) {
+ ItemStack _setstack = (entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(0)).getItem() : ItemStack.EMPTY).copy();
+ _setstack.setCount((int) (new Object() {
+ public int getAmount(int sltid) {
+ if (entity instanceof Player _player && _player.containerMenu instanceof Supplier _current && _current.get() instanceof Map _slots) {
+ ItemStack stack = ((Slot) _slots.get(sltid)).getItem();
+ if (stack != null)
+ return stack.getCount();
+ }
+ return 0;
+ }
+ }.getAmount(2) + 1));
+ ((Slot) _slots.get(2)).set(_setstack);
+ _player.containerMenu.broadcastChanges();
+ }
+ if (entity instanceof Player _player && _player.containerMenu instanceof Supplier _current && _current.get() instanceof Map _slots) {
+ ItemStack _setstack = (entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(0)).getItem() : ItemStack.EMPTY).copy();
+ _setstack.setCount((int) (new Object() {
+ public int getAmount(int sltid) {
+ if (entity instanceof Player _player && _player.containerMenu instanceof Supplier _current && _current.get() instanceof Map _slots) {
+ ItemStack stack = ((Slot) _slots.get(sltid)).getItem();
+ if (stack != null)
+ return stack.getCount();
+ }
+ return 0;
+ }
+ }.getAmount(0) - 1));
+ ((Slot) _slots.get(0)).set(_setstack);
+ _player.containerMenu.broadcastChanges();
+ }
+ if (entity instanceof Player _player && _player.containerMenu instanceof Supplier _current && _current.get() instanceof Map _slots) {
+ ItemStack _setstack = (entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(1)).getItem() : ItemStack.EMPTY).copy();
+ _setstack.setCount((int) (new Object() {
+ public int getAmount(int sltid) {
+ if (entity instanceof Player _player && _player.containerMenu instanceof Supplier _current && _current.get() instanceof Map _slots) {
+ ItemStack stack = ((Slot) _slots.get(sltid)).getItem();
+ if (stack != null)
+ return stack.getCount();
+ }
+ return 0;
+ }
+ }.getAmount(1) - 1));
+ ((Slot) _slots.get(1)).set(_setstack);
+ _player.containerMenu.broadcastChanges();
+ }
+ (entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(2)).getItem() : ItemStack.EMPTY).getOrCreateTag().putBoolean("Unbreakable",
+ true);
+ if (world instanceof Level _level) {
+ if (!_level.isClientSide()) {
+ _level.playSound(null, BlockPos.containing(x, y, z), ForgeRegistries.SOUND_EVENTS.getValue(new ResourceLocation("block.smithing_table.use")), SoundSource.BLOCKS, (float) 0.8, (float) 0.8);
+ } else {
+ _level.playLocalSound(x, y, z, ForgeRegistries.SOUND_EVENTS.getValue(new ResourceLocation("block.smithing_table.use")), SoundSource.BLOCKS, (float) 0.8, (float) 0.8, false);
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/procedures/PassiveIncomeProcedureProcedure.java b/src/main/java/net/mcreator/nimsrandombullshit/procedures/PassiveIncomeProcedureProcedure.java
index 964e07b..2009720 100644
--- a/src/main/java/net/mcreator/nimsrandombullshit/procedures/PassiveIncomeProcedureProcedure.java
+++ b/src/main/java/net/mcreator/nimsrandombullshit/procedures/PassiveIncomeProcedureProcedure.java
@@ -32,27 +32,29 @@ public class PassiveIncomeProcedureProcedure {
private static void execute(@Nullable Event event, LevelAccessor world, Entity entity) {
if (entity == null)
return;
- entity.getPersistentData().putDouble("PassiveIncomeCounter", (entity.getPersistentData().getDouble("PassiveIncomeCounter") + 1));
- if (entity.getPersistentData().getDouble("PassiveIncomeCounter") % 3340 == 0) {
- if ((entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.FEET) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()) > 0) {
- if (entity instanceof Player _player)
- _player.giveExperiencePoints(
- (entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.FEET) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()));
- }
- if ((entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.LEGS) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()) > 0) {
- if (entity instanceof Player _player)
- _player.giveExperiencePoints(
- (entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.LEGS) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()));
- }
- if ((entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.CHEST) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()) > 0) {
- if (entity instanceof Player _player)
- _player.giveExperiencePoints(
- (entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.CHEST) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()));
- }
- if ((entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.HEAD) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()) > 0) {
- if (entity instanceof Player _player)
- _player.giveExperiencePoints(
- (entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.HEAD) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()));
+ if (!world.isClientSide()) {
+ entity.getPersistentData().putDouble("PassiveIncomeCounter", (entity.getPersistentData().getDouble("PassiveIncomeCounter") + 1));
+ if (entity.getPersistentData().getDouble("PassiveIncomeCounter") % 1340 == 0) {
+ if ((entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.FEET) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()) > 0) {
+ if (entity instanceof Player _player)
+ _player.giveExperiencePoints(
+ (entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.FEET) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()));
+ }
+ if ((entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.LEGS) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()) > 0) {
+ if (entity instanceof Player _player)
+ _player.giveExperiencePoints(
+ (entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.LEGS) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()));
+ }
+ if ((entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.CHEST) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()) > 0) {
+ if (entity instanceof Player _player)
+ _player.giveExperiencePoints(
+ (entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.CHEST) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()));
+ }
+ if ((entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.HEAD) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()) > 0) {
+ if (entity instanceof Player _player)
+ _player.giveExperiencePoints(
+ (entity instanceof LivingEntity _entGetArmor ? _entGetArmor.getItemBySlot(EquipmentSlot.HEAD) : ItemStack.EMPTY).getEnchantmentLevel(NimsRandomBullshitModEnchantments.PASSIVE_INCOME_ENCHANTMENT.get()));
+ }
}
}
}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/procedures/ShitProjectileProjectileHitsPlayerProcedure.java b/src/main/java/net/mcreator/nimsrandombullshit/procedures/ShitProjectileProjectileHitsPlayerProcedure.java
index ee60e2e..a443843 100644
--- a/src/main/java/net/mcreator/nimsrandombullshit/procedures/ShitProjectileProjectileHitsPlayerProcedure.java
+++ b/src/main/java/net/mcreator/nimsrandombullshit/procedures/ShitProjectileProjectileHitsPlayerProcedure.java
@@ -28,7 +28,7 @@ public class ShitProjectileProjectileHitsPlayerProcedure {
}
}
if (entity instanceof LivingEntity _entity && !_entity.level().isClientSide())
- _entity.addEffect(new MobEffectInstance(NimsRandomBullshitModMobEffects.STINKY_EFFECT.get(), 60, 1, false, false));
+ _entity.addEffect(new MobEffectInstance(NimsRandomBullshitModMobEffects.STINKY_EFFECT.get(), 20, 1, false, false));
}
}
}
diff --git a/src/main/java/net/mcreator/nimsrandombullshit/world/inventory/BedrockifierGUIMenu.java b/src/main/java/net/mcreator/nimsrandombullshit/world/inventory/BedrockifierGUIMenu.java
new file mode 100644
index 0000000..6fdd165
--- /dev/null
+++ b/src/main/java/net/mcreator/nimsrandombullshit/world/inventory/BedrockifierGUIMenu.java
@@ -0,0 +1,265 @@
+
+package net.mcreator.nimsrandombullshit.world.inventory;
+
+import net.minecraftforge.items.SlotItemHandler;
+import net.minecraftforge.items.ItemStackHandler;
+import net.minecraftforge.items.IItemHandler;
+import net.minecraftforge.common.capabilities.ForgeCapabilities;
+
+import net.minecraft.world.level.block.entity.BlockEntity;
+import net.minecraft.world.level.block.Blocks;
+import net.minecraft.world.level.Level;
+import net.minecraft.world.item.ItemStack;
+import net.minecraft.world.inventory.Slot;
+import net.minecraft.world.inventory.ContainerLevelAccess;
+import net.minecraft.world.inventory.AbstractContainerMenu;
+import net.minecraft.world.entity.player.Player;
+import net.minecraft.world.entity.player.Inventory;
+import net.minecraft.world.entity.Entity;
+import net.minecraft.server.level.ServerPlayer;
+import net.minecraft.network.FriendlyByteBuf;
+import net.minecraft.core.BlockPos;
+
+import net.mcreator.nimsrandombullshit.init.NimsRandomBullshitModMenus;
+
+import java.util.function.Supplier;
+import java.util.Map;
+import java.util.HashMap;
+
+public class BedrockifierGUIMenu extends AbstractContainerMenu implements Supplier