Added advancements for Stalinium armor, updated existing advancements, improved tool hover text, and adjusted item properties for consistency.
This commit is contained in:
@@ -49,19 +49,19 @@ public class ModItems {
|
|||||||
|
|
||||||
public static final DeferredItem<ArmorItem> STALINIUM_HELMET = ITEMS.register("stalinium_helmet",
|
public static final DeferredItem<ArmorItem> STALINIUM_HELMET = ITEMS.register("stalinium_helmet",
|
||||||
() -> new StaliniumHelmetItem(ModArmorMaterials.STALINIUM_ARMOR_MATERIAL, ArmorItem.Type.HELMET,
|
() -> new StaliniumHelmetItem(ModArmorMaterials.STALINIUM_ARMOR_MATERIAL, ArmorItem.Type.HELMET,
|
||||||
new Item.Properties().component(DataComponents.UNBREAKABLE, new Unbreakable(true))));
|
new Item.Properties().component(DataComponents.UNBREAKABLE, new Unbreakable(true)).stacksTo(1)));
|
||||||
|
|
||||||
public static final DeferredItem<ArmorItem> STALINIUM_CHESTPLATE = ITEMS.register("stalinium_chestplate",
|
public static final DeferredItem<ArmorItem> STALINIUM_CHESTPLATE = ITEMS.register("stalinium_chestplate",
|
||||||
() -> new StaliniumChestplateLeggingsItem(ModArmorMaterials.STALINIUM_ARMOR_MATERIAL, ArmorItem.Type.CHESTPLATE,
|
() -> new StaliniumChestplateLeggingsItem(ModArmorMaterials.STALINIUM_ARMOR_MATERIAL, ArmorItem.Type.CHESTPLATE,
|
||||||
new Item.Properties().component(DataComponents.UNBREAKABLE, new Unbreakable(true))));
|
new Item.Properties().component(DataComponents.UNBREAKABLE, new Unbreakable(true)).stacksTo(1)));
|
||||||
|
|
||||||
public static final DeferredItem<ArmorItem> STALINIUM_LEGGINGS = ITEMS.register("stalinium_leggings",
|
public static final DeferredItem<ArmorItem> STALINIUM_LEGGINGS = ITEMS.register("stalinium_leggings",
|
||||||
() -> new StaliniumChestplateLeggingsItem(ModArmorMaterials.STALINIUM_ARMOR_MATERIAL, ArmorItem.Type.LEGGINGS,
|
() -> new StaliniumChestplateLeggingsItem(ModArmorMaterials.STALINIUM_ARMOR_MATERIAL, ArmorItem.Type.LEGGINGS,
|
||||||
new Item.Properties().component(DataComponents.UNBREAKABLE, new Unbreakable(true))));
|
new Item.Properties().component(DataComponents.UNBREAKABLE, new Unbreakable(true)).stacksTo(1)));
|
||||||
|
|
||||||
public static final DeferredItem<ArmorItem> STALINIUM_BOOTS = ITEMS.register("stalinium_boots",
|
public static final DeferredItem<ArmorItem> STALINIUM_BOOTS = ITEMS.register("stalinium_boots",
|
||||||
() -> new StaliniumBootsItem(ModArmorMaterials.STALINIUM_ARMOR_MATERIAL, ArmorItem.Type.BOOTS,
|
() -> new StaliniumBootsItem(ModArmorMaterials.STALINIUM_ARMOR_MATERIAL, ArmorItem.Type.BOOTS,
|
||||||
new Item.Properties().component(DataComponents.UNBREAKABLE, new Unbreakable(true))));
|
new Item.Properties().component(DataComponents.UNBREAKABLE, new Unbreakable(true)).stacksTo(1)));
|
||||||
|
|
||||||
public static final DeferredItem<Item> STALINIUM_SMITHING_TEMPLATE = ITEMS.register("stalinium_smithing_template",
|
public static final DeferredItem<Item> STALINIUM_SMITHING_TEMPLATE = ITEMS.register("stalinium_smithing_template",
|
||||||
() -> new Item(new Item.Properties()));
|
() -> new Item(new Item.Properties()));
|
||||||
|
|||||||
@@ -1,7 +1,9 @@
|
|||||||
package net.krituximon.stalinium.item.custom;
|
package net.krituximon.stalinium.item.custom;
|
||||||
|
|
||||||
import net.krituximon.stalinium.event.ComradeHandler;
|
import net.krituximon.stalinium.event.ComradeHandler;
|
||||||
|
import net.minecraft.client.gui.screens.Screen;
|
||||||
import net.minecraft.core.BlockPos;
|
import net.minecraft.core.BlockPos;
|
||||||
|
import net.minecraft.network.chat.Component;
|
||||||
import net.minecraft.server.level.ServerLevel;
|
import net.minecraft.server.level.ServerLevel;
|
||||||
import net.minecraft.server.level.ServerPlayer;
|
import net.minecraft.server.level.ServerPlayer;
|
||||||
import net.minecraft.world.entity.LivingEntity;
|
import net.minecraft.world.entity.LivingEntity;
|
||||||
@@ -9,6 +11,7 @@ import net.minecraft.world.entity.player.Player;
|
|||||||
import net.minecraft.world.item.HoeItem;
|
import net.minecraft.world.item.HoeItem;
|
||||||
import net.minecraft.world.item.ItemStack;
|
import net.minecraft.world.item.ItemStack;
|
||||||
import net.minecraft.world.item.Tier;
|
import net.minecraft.world.item.Tier;
|
||||||
|
import net.minecraft.world.item.TooltipFlag;
|
||||||
import net.minecraft.world.level.Level;
|
import net.minecraft.world.level.Level;
|
||||||
import net.minecraft.world.level.block.Block;
|
import net.minecraft.world.level.block.Block;
|
||||||
import net.minecraft.world.level.block.Blocks;
|
import net.minecraft.world.level.block.Blocks;
|
||||||
@@ -32,8 +35,6 @@ public class StaliniumHoeItem extends HoeItem {
|
|||||||
LivingEntity miner) {
|
LivingEntity miner) {
|
||||||
if (level.isClientSide || !(miner instanceof Player player))
|
if (level.isClientSide || !(miner instanceof Player player))
|
||||||
return super.mineBlock(stack, level, state, pos, miner);
|
return super.mineBlock(stack, level, state, pos, miner);
|
||||||
|
|
||||||
// only for fully grown crops:
|
|
||||||
if (state.getBlock() instanceof CropBlock) {
|
if (state.getBlock() instanceof CropBlock) {
|
||||||
List<ItemStack> drops = Block.getDrops(
|
List<ItemStack> drops = Block.getDrops(
|
||||||
state,
|
state,
|
||||||
@@ -43,16 +44,10 @@ public class StaliniumHoeItem extends HoeItem {
|
|||||||
player,
|
player,
|
||||||
stack
|
stack
|
||||||
);
|
);
|
||||||
|
|
||||||
// break the crop:
|
|
||||||
level.setBlock(pos, Blocks.AIR.defaultBlockState(), 3);
|
level.setBlock(pos, Blocks.AIR.defaultBlockState(), 3);
|
||||||
|
|
||||||
// 1) give base drops to the harvester:
|
|
||||||
for (ItemStack drop : drops) {
|
for (ItemStack drop : drops) {
|
||||||
player.addItem(drop.copy());
|
player.addItem(drop.copy());
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2) if raining here, give them a second batch:
|
|
||||||
if (level.isRaining() && level.isRainingAt(pos)) {
|
if (level.isRaining() && level.isRainingAt(pos)) {
|
||||||
for (ItemStack drop : drops) {
|
for (ItemStack drop : drops) {
|
||||||
ItemStack extra = drop.copy();
|
ItemStack extra = drop.copy();
|
||||||
@@ -60,8 +55,6 @@ public class StaliniumHoeItem extends HoeItem {
|
|||||||
player.addItem(extra);
|
player.addItem(extra);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 3) 50% chance to also duplicate to each ally in range:
|
|
||||||
if (!level.isClientSide() && level.getRandom().nextFloat() < 0.5f) {
|
if (!level.isClientSide() && level.getRandom().nextFloat() < 0.5f) {
|
||||||
Optional<ComradeHandler.Party> partyOpt = ComradeHandler.findPartyOf(player.getUUID());
|
Optional<ComradeHandler.Party> partyOpt = ComradeHandler.findPartyOf(player.getUUID());
|
||||||
if (partyOpt.isPresent()) {
|
if (partyOpt.isPresent()) {
|
||||||
@@ -89,4 +82,17 @@ public class StaliniumHoeItem extends HoeItem {
|
|||||||
|
|
||||||
@Override public boolean isDamageable(ItemStack stack) { return false; }
|
@Override public boolean isDamageable(ItemStack stack) { return false; }
|
||||||
@Override public boolean isDamaged(ItemStack stack) { return false; }
|
@Override public boolean isDamaged(ItemStack stack) { return false; }
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void appendHoverText(ItemStack stack,
|
||||||
|
TooltipContext context,
|
||||||
|
List<Component> tooltipComponents,
|
||||||
|
TooltipFlag tooltipFlag) {
|
||||||
|
if (Screen.hasShiftDown()) {
|
||||||
|
tooltipComponents.add(Component.translatable("item.stalinium_hoe.tooltip_shift"));
|
||||||
|
} else {
|
||||||
|
tooltipComponents.add(Component.translatable("item.stalinium_hoe.tooltip"));
|
||||||
|
}
|
||||||
|
super.appendHoverText(stack, context, tooltipComponents, tooltipFlag);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -1,8 +1,10 @@
|
|||||||
package net.krituximon.stalinium.item.custom;
|
package net.krituximon.stalinium.item.custom;
|
||||||
|
|
||||||
import net.krituximon.stalinium.event.ComradeHandler;
|
import net.krituximon.stalinium.event.ComradeHandler;
|
||||||
|
import net.minecraft.client.gui.screens.Screen;
|
||||||
import net.minecraft.core.BlockPos;
|
import net.minecraft.core.BlockPos;
|
||||||
import net.minecraft.core.Direction;
|
import net.minecraft.core.Direction;
|
||||||
|
import net.minecraft.network.chat.Component;
|
||||||
import net.minecraft.server.level.ServerLevel;
|
import net.minecraft.server.level.ServerLevel;
|
||||||
import net.minecraft.server.level.ServerPlayer;
|
import net.minecraft.server.level.ServerPlayer;
|
||||||
import net.minecraft.world.entity.LivingEntity;
|
import net.minecraft.world.entity.LivingEntity;
|
||||||
@@ -10,6 +12,7 @@ import net.minecraft.world.entity.player.Player;
|
|||||||
import net.minecraft.world.item.ItemStack;
|
import net.minecraft.world.item.ItemStack;
|
||||||
import net.minecraft.world.item.PickaxeItem;
|
import net.minecraft.world.item.PickaxeItem;
|
||||||
import net.minecraft.world.item.Tier;
|
import net.minecraft.world.item.Tier;
|
||||||
|
import net.minecraft.world.item.TooltipFlag;
|
||||||
import net.minecraft.world.level.Level;
|
import net.minecraft.world.level.Level;
|
||||||
import net.minecraft.world.level.block.Block;
|
import net.minecraft.world.level.block.Block;
|
||||||
import net.minecraft.world.level.block.DropExperienceBlock;
|
import net.minecraft.world.level.block.DropExperienceBlock;
|
||||||
@@ -96,4 +99,17 @@ public class StaliniumPickaxeItem extends PickaxeItem {
|
|||||||
public boolean isDamageable(ItemStack stack) { return false; }
|
public boolean isDamageable(ItemStack stack) { return false; }
|
||||||
@Override
|
@Override
|
||||||
public boolean isDamaged(ItemStack stack) { return false; }
|
public boolean isDamaged(ItemStack stack) { return false; }
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void appendHoverText(ItemStack stack,
|
||||||
|
TooltipContext context,
|
||||||
|
List<Component> tooltipComponents,
|
||||||
|
TooltipFlag tooltipFlag) {
|
||||||
|
if (Screen.hasShiftDown()) {
|
||||||
|
tooltipComponents.add(Component.translatable("item.stalinium_pickaxe.tooltip_shift"));
|
||||||
|
} else {
|
||||||
|
tooltipComponents.add(Component.translatable("item.stalinium_pickaxe.tooltip"));
|
||||||
|
}
|
||||||
|
super.appendHoverText(stack, context, tooltipComponents, tooltipFlag);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -29,6 +29,19 @@
|
|||||||
"advancements.stalinium.stalinium.cropaganda.desc": "Obtain the Stalinium Hoe",
|
"advancements.stalinium.stalinium.cropaganda.desc": "Obtain the Stalinium Hoe",
|
||||||
"advancements.stalinium.stalinium.strike_state.title": "Strike for the State",
|
"advancements.stalinium.stalinium.strike_state.title": "Strike for the State",
|
||||||
"advancements.stalinium.stalinium.strike_state.desc": "Obtain the Stalinium Sword",
|
"advancements.stalinium.stalinium.strike_state.desc": "Obtain the Stalinium Sword",
|
||||||
|
"advancements.stalinium.stalinium.five_tool_plan.title": "The Five Tool Plan",
|
||||||
|
"advancements.stalinium.stalinium.five_tool_plan.desc": "Obtain all Stalinium Tools",
|
||||||
|
"advancements.stalinium.stalinium.cranial_defense.title": "Commissar of Cranial Defense",
|
||||||
|
"advancements.stalinium.stalinium.cranial_defense.desc": "Obtain the Stalinium Helmet",
|
||||||
|
"advancements.stalinium.stalinium.iron_curtain.title": "The Iron Curtain",
|
||||||
|
"advancements.stalinium.stalinium.iron_curtain.desc": "Obtain the Stalinium Chestplate",
|
||||||
|
"advancements.stalinium.stalinium.leg_lenin.title": "Leg day for Lenin",
|
||||||
|
"advancements.stalinium.stalinium.leg_lenin.desc": "Obtain the Stalinium Leggings",
|
||||||
|
"advancements.stalinium.stalinium.boots_bloc.title": "Boots of the Bloc",
|
||||||
|
"advancements.stalinium.stalinium.boots_bloc.desc": "Obtain the Stalinium Boots",
|
||||||
|
"advancements.stalinium.stalinium.comrade_prime.title": "Comrade Prime",
|
||||||
|
"advancements.stalinium.stalinium.comrade_prime.desc": "Wear a full set of Stalinium Armor",
|
||||||
|
|
||||||
|
|
||||||
"item.stalinium.stalinium_helmet": "Stalinium Helmet",
|
"item.stalinium.stalinium_helmet": "Stalinium Helmet",
|
||||||
"item.stalinium.stalinium_chestplate": "Stalinium Chestplate",
|
"item.stalinium.stalinium_chestplate": "Stalinium Chestplate",
|
||||||
|
|||||||
@@ -0,0 +1,34 @@
|
|||||||
|
{
|
||||||
|
"parent": "stalinium:stalinium/full_metal_marxist",
|
||||||
|
"criteria": {
|
||||||
|
"stalinium_boots": {
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"items": "stalinium:stalinium_boots"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"trigger": "minecraft:inventory_changed"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"display": {
|
||||||
|
"background": "minecraft:textures/gui/advancements/backgrounds/stone.png",
|
||||||
|
"description": {
|
||||||
|
"translate": "advancements.stalinium.stalinium.boots_bloc.desc"
|
||||||
|
},
|
||||||
|
"icon": {
|
||||||
|
"count": 1,
|
||||||
|
"id": "stalinium:stalinium_boots"
|
||||||
|
},
|
||||||
|
"title": {
|
||||||
|
"translate": "advancements.stalinium.stalinium.boots_bloc.title"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"stalinium_boots"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"sends_telemetry_event": true
|
||||||
|
}
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
{
|
||||||
|
"parent": "stalinium:stalinium/full_metal_marxist",
|
||||||
|
"criteria": {
|
||||||
|
"stalinium_helmet": {
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"items": "stalinium:stalinium_helmet"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"trigger": "minecraft:inventory_changed"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"display": {
|
||||||
|
"background": "minecraft:textures/gui/advancements/backgrounds/stone.png",
|
||||||
|
"description": {
|
||||||
|
"translate": "advancements.stalinium.stalinium.cranial_defense.desc"
|
||||||
|
},
|
||||||
|
"icon": {
|
||||||
|
"count": 1,
|
||||||
|
"id": "stalinium:stalinium_helmet"
|
||||||
|
},
|
||||||
|
"title": {
|
||||||
|
"translate": "advancements.stalinium.stalinium.cranial_defense.title"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"stalinium_helmet"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"sends_telemetry_event": true
|
||||||
|
}
|
||||||
@@ -1,78 +0,0 @@
|
|||||||
{
|
|
||||||
"parent": "stalinium:stalinium/from_each_fortune",
|
|
||||||
"criteria": {
|
|
||||||
"stalinium_axe": {
|
|
||||||
"conditions": {
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"items": "stalinium:stalinium_axe"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"trigger": "minecraft:inventory_changed"
|
|
||||||
},
|
|
||||||
"stalinium_pickaxe": {
|
|
||||||
"conditions": {
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"items": "stalinium:stalinium_pickaxe"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"trigger": "minecraft:inventory_changed"
|
|
||||||
},
|
|
||||||
"stalinium_shovel": {
|
|
||||||
"conditions": {
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"items": "stalinium:stalinium_shovel"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"trigger": "minecraft:inventory_changed"
|
|
||||||
},
|
|
||||||
"stalinium_hoe": {
|
|
||||||
"conditions": {
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"items": "stalinium:stalinium_hoe"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"trigger": "minecraft:inventory_changed"
|
|
||||||
},
|
|
||||||
"stalinium_sword": {
|
|
||||||
"conditions": {
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"items": "stalinium:stalinium_sword"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"trigger": "minecraft:inventory_changed"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"display": {
|
|
||||||
"background": "minecraft:textures/gui/advancements/backgrounds/stone.png",
|
|
||||||
"description": {
|
|
||||||
"translate": "advancements.stalinium.stalinium.means_revolution.desc"
|
|
||||||
},
|
|
||||||
"icon": {
|
|
||||||
"count": 1,
|
|
||||||
"id": "stalinium:stalinium_pickaxe"
|
|
||||||
},
|
|
||||||
"title": {
|
|
||||||
"translate": "advancements.stalinium.stalinium.means_revolution.title"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"requirements": [
|
|
||||||
[
|
|
||||||
"stalinium_axe",
|
|
||||||
"stalinium_pickaxe",
|
|
||||||
"stalinium_shovel",
|
|
||||||
"stalinium_hoe",
|
|
||||||
"stalinium_sword"
|
|
||||||
]
|
|
||||||
],
|
|
||||||
"sends_telemetry_event": true
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
{
|
||||||
|
"parent": "stalinium:stalinium/full_metal_marxist",
|
||||||
|
"criteria": {
|
||||||
|
"stalinium_chestplate": {
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"items": "stalinium:stalinium_chestplate"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"trigger": "minecraft:inventory_changed"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"display": {
|
||||||
|
"background": "minecraft:textures/gui/advancements/backgrounds/stone.png",
|
||||||
|
"description": {
|
||||||
|
"translate": "advancements.stalinium.stalinium.iron_curtain.desc"
|
||||||
|
},
|
||||||
|
"icon": {
|
||||||
|
"count": 1,
|
||||||
|
"id": "stalinium:stalinium_chestplate"
|
||||||
|
},
|
||||||
|
"title": {
|
||||||
|
"translate": "advancements.stalinium.stalinium.iron_curtain.title"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"stalinium_chestplate"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"sends_telemetry_event": true
|
||||||
|
}
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
{
|
||||||
|
"parent": "stalinium:stalinium/full_metal_marxist",
|
||||||
|
"criteria": {
|
||||||
|
"stalinium_leggings": {
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"items": "stalinium:stalinium_leggings"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"trigger": "minecraft:inventory_changed"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"display": {
|
||||||
|
"background": "minecraft:textures/gui/advancements/backgrounds/stone.png",
|
||||||
|
"description": {
|
||||||
|
"translate": "advancements.stalinium.stalinium.leg_lenin.desc"
|
||||||
|
},
|
||||||
|
"icon": {
|
||||||
|
"count": 1,
|
||||||
|
"id": "stalinium:stalinium_leggings"
|
||||||
|
},
|
||||||
|
"title": {
|
||||||
|
"translate": "advancements.stalinium.stalinium.leg_lenin.title"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"stalinium_leggings"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"sends_telemetry_event": true
|
||||||
|
}
|
||||||
@@ -6,7 +6,7 @@
|
|||||||
},
|
},
|
||||||
"display": {
|
"display": {
|
||||||
"announce_to_chat": false,
|
"announce_to_chat": false,
|
||||||
"background": "minecraft:textures/gui/advancements/backgrounds/stone.png",
|
"background": "stalinium:textures/block/stalinium_block.png",
|
||||||
"description": {
|
"description": {
|
||||||
"translate": "advancements.stalinium.stalinium.root.desc"
|
"translate": "advancements.stalinium.stalinium.root.desc"
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user