1
0
Fork 0

improve item categories

This commit is contained in:
Sen 2025-09-05 20:20:07 +02:00
parent 83dca68f11
commit f123a599a2
Signed by: sen
GPG key ID: 3AC50A6F47D1B722
43 changed files with 190 additions and 95 deletions

View file

@ -285,8 +285,8 @@ public class Item {
return this.block != null ? this.block.getRadiation() * (float)stack.getSize() : 0.0f;
}
public boolean canBeHeld() {
return this.block != null;
public ItemCategory getCategory() {
return this.block != null ? ItemCategory.PLACEABLE : null;
}
public WieldType getWieldType() {

View file

@ -0,0 +1,17 @@
package common.item;
public enum ItemCategory {
USEABLE("Verwendbar"),
CONSUMABLE("Einnehmbar"),
PLACEABLE("Platzierbar");
private final String name;
private ItemCategory(String name) {
this.name = name;
}
public String toString() {
return this.name;
}
}

View file

@ -8,6 +8,7 @@ import common.item.CheatTab;
import common.item.Item;
import common.item.ItemAction;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.world.World;
public class ItemFood extends Item
@ -28,8 +29,8 @@ public class ItemFood extends Item
this.setTab(CheatTab.FOOD);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.CONSUMABLE;
}
/**

View file

@ -8,6 +8,7 @@ import common.item.CheatTab;
import common.item.Item;
import common.item.ItemAction;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.util.Clientside;
import common.world.World;
@ -18,8 +19,8 @@ public class ItemMilkBottle extends Item {
this.setMagnetic();
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.CONSUMABLE;
}
public ItemStack onItemUseFinish(ItemStack stack, World worldIn, EntityNPC playerIn) {

View file

@ -15,6 +15,7 @@ import common.item.Item;
import common.item.ItemAction;
import common.item.ItemControl;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.item.ItemWeight;
import common.tileentity.TileEntity;
import common.util.LocalPos;
@ -80,8 +81,8 @@ public class ItemPotion extends Item
POTIONS.add(this);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.CONSUMABLE;
}
public StatusEffect getEffect()

View file

@ -6,6 +6,7 @@ import common.init.Items;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.util.LocalPos;
import common.util.HitPosition;
import common.world.World;
@ -18,8 +19,8 @@ public class ItemBottle extends Item
this.setFragile();
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
/**

View file

@ -23,6 +23,7 @@ import common.init.SoundEvent;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.tileentity.TileEntity;
import common.tileentity.DeviceDispenser;
import common.util.LocalPos;
@ -133,8 +134,8 @@ public class ItemBucket extends Item
}
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public BlockDynamicLiquid getLiquid() {

View file

@ -10,6 +10,7 @@ import common.init.Blocks;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.item.ItemWeight;
import common.util.LocalPos;
import common.util.Facing;
@ -35,8 +36,8 @@ public class ItemDye extends Item {
DIES[this.color.ordinal()] = this;
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public Color getColor() {

View file

@ -6,6 +6,7 @@ import common.entity.npc.EntityNPC;
import common.init.Blocks;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.tileentity.TileEntity;
import common.util.LocalPos;
import common.util.Clientside;
@ -40,8 +41,8 @@ public class ItemGrindedBones extends Item {
}
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public static boolean applyBonemeal(ItemStack stack, World worldIn, LocalPos target)

View file

@ -1,9 +1,10 @@
package common.item.material;
import common.item.Item;
import common.item.ItemCategory;
public class ItemLure extends Item {
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
}

View file

@ -6,6 +6,7 @@ import common.entity.npc.EntityNPC;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.util.LocalPos;
import common.util.Facing;
import common.world.World;
@ -22,8 +23,8 @@ public class ItemSeeds extends Item
this.setTab(CheatTab.MATERIALS);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public boolean onItemUse(ItemStack stack, EntityNPC playerIn, World worldIn, LocalPos pos, Facing side, float hitX, float hitY, float hitZ)

View file

@ -9,6 +9,7 @@ import common.init.SoundEvent;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.util.LocalPos;
import common.util.Facing;
import common.util.ParticleType;
@ -26,8 +27,8 @@ public class ItemChargedOrb extends Item
this.setFragile();
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public ItemStack onItemRightClick(ItemStack itemStackIn, World worldIn, EntityNPC playerIn)

View file

@ -10,6 +10,7 @@ import common.init.SoundEvent;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.tileentity.TileEntity;
import common.util.LocalPos;
import common.util.Facing;
@ -53,8 +54,8 @@ public class ItemDie extends Item
DICE.put(sides, this);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public int getSides() {

View file

@ -6,6 +6,7 @@ import common.init.SoundEvent;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.tileentity.TileEntity;
import common.util.LocalPos;
import common.util.ExtMath;
@ -31,8 +32,8 @@ public class ItemDynamite extends Item {
DYNAMITE[power] = this;
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public int getExplosionPower() {

View file

@ -6,6 +6,7 @@ import common.init.SoundEvent;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.tileentity.TileEntity;
import common.util.LocalPos;
import common.util.Facing;
@ -21,8 +22,8 @@ public class ItemEgg extends Item
this.setTab(CheatTab.TOOLS);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
/**

View file

@ -7,6 +7,7 @@ import common.init.SoundEvent;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.tileentity.TileEntity;
import common.util.LocalPos;
import common.util.Facing;
@ -22,8 +23,8 @@ public class ItemFireball extends Item
this.setTab(CheatTab.TOOLS);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
/**

View file

@ -6,6 +6,7 @@ import common.init.SoundEvent;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.tileentity.TileEntity;
import common.util.LocalPos;
import common.util.Facing;
@ -21,8 +22,8 @@ public class ItemSnowball extends Item
this.setTab(CheatTab.TOOLS);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
/**

View file

@ -10,6 +10,7 @@ import common.init.Blocks;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.tileentity.TileEntity;
import common.util.LocalPos;
import common.util.BoundingBox;
@ -29,8 +30,8 @@ public class ItemBoat extends Item
this.setTab(CheatTab.VEHICLES);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
/**

View file

@ -17,6 +17,7 @@ import common.init.EntityRegistry;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.util.LocalPos;
import common.util.Clientside;
import common.util.ExtMath;
@ -41,8 +42,8 @@ public class ItemCharTemplate extends Item
TEMPLATES.add(this);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public void delegateSetDisplay() {

View file

@ -8,6 +8,7 @@ import common.init.Blocks;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.tileentity.TileEntity;
import common.util.LocalPos;
import common.util.Facing;
@ -26,8 +27,8 @@ public class ItemMinecart extends Item
this.setMagnetic();
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
/**

View file

@ -15,6 +15,7 @@ import common.init.EntityRegistry;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.util.LocalPos;
import common.util.Clientside;
import common.util.ExtMath;
@ -39,8 +40,8 @@ public class ItemMobTemplate extends Item
TEMPLATES.add(this);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public void delegateSetDisplay() {

View file

@ -4,6 +4,7 @@ import common.entity.npc.EntityNPC;
import common.item.ItemControl;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.util.LocalPos;
import common.util.Clientside;
import common.world.World;
@ -14,8 +15,8 @@ public class ItemCamera extends Item {
this.setMagnetic();
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public boolean onAction(ItemStack stack, EntityNPC player, World world, ItemControl control, LocalPos block) {

View file

@ -5,6 +5,7 @@ import common.item.CheatTab;
import common.item.Item;
import common.item.ItemControl;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.util.LocalPos;
import common.world.World;
@ -14,8 +15,8 @@ public class ItemEditor extends Item {
this.setTab(CheatTab.TOOLS);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public boolean onAction(ItemStack stack, EntityNPC player, World world, ItemControl control, LocalPos block) {

View file

@ -10,6 +10,7 @@ import common.init.SoundEvent;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.tileentity.TileEntity;
import common.util.LocalPos;
import common.util.Facing;
@ -30,8 +31,8 @@ public class ItemFire extends Item
this.setMagnetic();
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public void addInformation(ItemStack stack, EntityNPC playerIn, List<String> tooltip) {

View file

@ -6,6 +6,7 @@ import common.init.SoundEvent;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.item.WieldType;
import common.util.Clientside;
import common.world.World;
@ -18,8 +19,8 @@ public class ItemFishingRod extends Item
this.setTab(CheatTab.TOOLS);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
// /**

View file

@ -6,6 +6,7 @@ import common.init.Blocks;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.item.WieldType;
import common.util.LocalPos;
import common.util.Facing;
@ -20,8 +21,8 @@ public class ItemHoe extends Item
this.setTab(CheatTab.TOOLS);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public boolean onItemUse(ItemStack stack, EntityNPC playerIn, World worldIn, LocalPos pos, Facing side, float hitX, float hitY, float hitZ)

View file

@ -1,13 +1,14 @@
package common.item.tool;
import common.item.Item;
import common.item.ItemCategory;
public class ItemKey extends Item {
public ItemKey() {
this.setMagnetic();
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
}

View file

@ -8,6 +8,7 @@ import common.entity.types.EntityLiving;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.util.LocalPos;
import common.util.BoundingBox;
import common.util.Facing;
@ -20,8 +21,8 @@ public class ItemLead extends Item
this.setTab(CheatTab.TOOLS);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
/**

View file

@ -9,6 +9,7 @@ import common.entity.npc.EntityNPC;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.item.WieldType;
import common.util.BoundingBox;
import common.util.Vec3;
@ -24,8 +25,8 @@ public class ItemMagnet extends Item {
this.chicken = chicken;
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
// public boolean isFull3D() {

View file

@ -5,6 +5,7 @@ import common.entity.types.EntityLiving;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
public class ItemNameTag extends Item
{
@ -13,8 +14,8 @@ public class ItemNameTag extends Item
this.setTab(CheatTab.TOOLS);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
/**

View file

@ -6,6 +6,7 @@ import common.entity.types.EntityLiving;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
public class ItemSaddle extends Item
{
@ -15,8 +16,8 @@ public class ItemSaddle extends Item
this.setTab(CheatTab.TOOLS);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
/**

View file

@ -6,6 +6,7 @@ import common.entity.npc.EntityNPC;
import common.item.Item;
import common.item.ItemControl;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.util.LocalPos;
import common.util.Clientside;
import common.util.Color;
@ -23,8 +24,8 @@ public class ItemSpaceNavigator extends Item {
this.setMagnetic();
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public void setLocalTime(String local) {

View file

@ -12,6 +12,7 @@ import common.item.CheatTab;
import common.item.Item;
import common.item.ItemAction;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.item.WieldType;
import common.util.LocalPos;
import common.util.Clientside;
@ -34,8 +35,8 @@ public class ItemTool extends Item {
this.setFuelAmount(200);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
@Clientside

View file

@ -7,6 +7,7 @@ import common.item.CheatTab;
import common.item.Item;
import common.item.ItemControl;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.item.WieldType;
import common.util.LocalPos;
import common.util.Clientside;
@ -23,8 +24,8 @@ public abstract class ItemWand extends Item {
this.setTab(CheatTab.TOOLS);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public final boolean onAction(ItemStack stack, EntityNPC player, World world, ItemControl control, LocalPos block) {

View file

@ -4,6 +4,7 @@ import common.entity.npc.EntityNPC;
import common.init.SoundEvent;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.util.Color;
import common.world.Weather;
import common.world.World;
@ -20,8 +21,8 @@ public class ItemWeatherToken extends Item {
this.setMagnetic();
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public ItemStack onItemRightClick(ItemStack itemStackIn, World worldIn, EntityNPC playerIn)

View file

@ -5,6 +5,7 @@ import common.entity.npc.EntityNPC;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.item.WieldType;
import common.world.World;
@ -16,8 +17,8 @@ public class ItemWhip extends Item
this.setMaxDamage(35);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public ItemStack onItemRightClick(ItemStack itemStackIn, World worldIn, EntityNPC playerIn)

View file

@ -10,6 +10,7 @@ import common.item.CheatTab;
import common.item.Item;
import common.item.ItemAction;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.item.WieldType;
import common.util.Clientside;
import common.world.World;
@ -22,8 +23,8 @@ public class ItemBow extends Item
this.setTab(CheatTab.WEAPONS);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
/**

View file

@ -6,6 +6,7 @@ import common.init.SoundEvent;
import common.item.CheatTab;
import common.item.Item;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.util.Color;
import common.world.World;
import common.world.AWorldServer;
@ -18,8 +19,8 @@ public class ItemExterminator extends Item {
this.setMagnetic();
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
public ItemStack onItemRightClick(ItemStack stack, World world, EntityNPC player) {

View file

@ -10,6 +10,7 @@ import common.item.CheatTab;
import common.item.Item;
import common.item.ItemAction;
import common.item.ItemStack;
import common.item.ItemCategory;
import common.item.WieldType;
import common.rng.Random;
import common.util.Clientside;
@ -26,8 +27,8 @@ public abstract class ItemGunBase extends Item
this.setTab(CheatTab.WEAPONS);
}
public boolean canBeHeld() {
return true;
public ItemCategory getCategory() {
return ItemCategory.USEABLE;
}
@Clientside