pala M-hoes-1 + M-fix-2: 4 grandes houes AoE + capture +7
This commit is contained in:
@@ -99,6 +99,12 @@ public final class PalaItems {
|
||||
public static final Item ENDIUM_PICKAXE = register("endium_pickaxe", id -> new Item(new Item.Properties().setId(id).pickaxe(PalaToolMaterials.ENDIUM_PICKAXE, 5.5F, -3.0F)));
|
||||
public static final Item ENDIUM_SWORD = register("endium_sword", id -> new Item(new Item.Properties().setId(id).sword(PalaToolMaterials.ENDIUM_SWORD, 11.0F, -2.0F)));
|
||||
public static final Item KISAKAY_AXE = register("kisakay_axe", id -> new Item(new Item.Properties().setId(id).axe(PalaToolMaterials.KISAKAY_AXE, 25.0F, -3.0F)));
|
||||
// M-hoes-1 : grandes houes AoE (labourage dans PalaItemUseEvents, gates fermier).
|
||||
// Degats 1.0F/-2.0F ECART (non publies) ; houe titane SKIP TODO:texture.
|
||||
public static final Item AMETHYST_HOE = register("amethyst_hoe", id -> new Item(new Item.Properties().setId(id).hoe(PalaToolMaterials.AMETHYST_HOE, 1.0F, -2.0F)));
|
||||
public static final Item PALADIUM_HOE = register("paladium_hoe", id -> new Item(new Item.Properties().setId(id).hoe(PalaToolMaterials.PALADIUM_HOE, 1.0F, -2.0F)));
|
||||
public static final Item PALADIUM_GREEN_HOE = register("paladium_green_hoe", id -> new Item(new Item.Properties().setId(id).hoe(PalaToolMaterials.PALADIUM_GREEN_HOE, 1.0F, -2.0F)));
|
||||
public static final Item ENDIUM_HOE = register("endium_hoe", id -> new Item(new Item.Properties().setId(id).hoe(PalaToolMaterials.ENDIUM_HOE, 1.0F, -2.0F)));
|
||||
public static final Item KISAKAY_HOE = register("kisakay_hoe", id -> new Item(new Item.Properties().setId(id).hoe(PalaToolMaterials.KISAKAY_HOE, 8.0F, -3.0F)));
|
||||
public static final Item KISAKAY_PICKAXE = register("kisakay_pickaxe", id -> new Item(new Item.Properties().setId(id).pickaxe(PalaToolMaterials.KISAKAY_PICKAXE, 8.0F, -3.0F)));
|
||||
public static final Item KISAKAY_SHOVEL = register("kisakay_shovel", id -> new Item(new Item.Properties().setId(id).shovel(PalaToolMaterials.KISAKAY_SHOVEL, 8.0F, -3.0F)));
|
||||
@@ -152,7 +158,14 @@ public final class PalaItems {
|
||||
// M-hunter-6 (wiki niv.18 VERIFIE : renomme 1 entite, max 3, la 4e fait perdre
|
||||
// le surnom a la 1ere ; nom via rename enclume comme nametag vanilla, ECART).
|
||||
public static final Item ENDIUM_NAMETAG = register("endium_nametag", id -> new Item(new Item.Properties().setId(id).stacksTo(16)));
|
||||
public static final Item CAPTURE_SWORD = register("capture_sword", id -> new Item(new Item.Properties().setId(id).stacksTo(1).durability(32)));
|
||||
public static final Item CAPTURE_SWORD = register("capture_sword", id -> new Item(new Item.Properties().setId(id).stacksTo(1).durability(32).component(DataComponents.ATTRIBUTE_MODIFIERS,
|
||||
net.minecraft.world.item.component.ItemAttributeModifiers.builder().add(
|
||||
net.minecraft.world.entity.ai.attributes.Attributes.ATTACK_DAMAGE,
|
||||
new net.minecraft.world.entity.ai.attributes.AttributeModifier(
|
||||
net.minecraft.resources.Identifier.fromNamespaceAndPath("pala", "capture_sword"),
|
||||
6.0,
|
||||
net.minecraft.world.entity.ai.attributes.AttributeModifier.Operation.ADD_VALUE),
|
||||
net.minecraft.world.entity.EquipmentSlotGroup.MAINHAND).build())));
|
||||
public static final Item CAPTURE_STONE_EMPTY = register("capture_stone_empty", id -> new Item(new Item.Properties().setId(id)));
|
||||
public static final Item CAPTURE_STONE_FULL = register("capture_stone_full", id -> new Item(new Item.Properties().setId(id).stacksTo(1)));
|
||||
public static final Item INFERNAL_KNOCKER = register("infernal_knocker", id -> new Item(new Item.Properties().setId(id).stacksTo(1).component(DataComponents.ATTRIBUTE_MODIFIERS,
|
||||
|
||||
@@ -89,6 +89,10 @@ public final class PalaTabs {
|
||||
output.accept(PalaItems.CAPTURE_STONE_FULL);
|
||||
output.accept(PalaItems.ENDIUM_NAMETAG);
|
||||
output.accept(PalaItems.ROLLER);
|
||||
output.accept(PalaItems.AMETHYST_HOE);
|
||||
output.accept(PalaItems.PALADIUM_HOE);
|
||||
output.accept(PalaItems.PALADIUM_GREEN_HOE);
|
||||
output.accept(PalaItems.ENDIUM_HOE);
|
||||
output.accept(PalaItems.SPAWNER_FINDER);
|
||||
output.accept(PalaItems.DYNAMITE);
|
||||
output.accept(PalaItems.NINJA_DYNAMITE);
|
||||
|
||||
@@ -45,6 +45,12 @@ public final class PalaToolMaterials {
|
||||
public static final ToolMaterial ENDIUM_PICKAXE = new ToolMaterial(BlockTags.INCORRECT_FOR_DIAMOND_TOOL, 4595, 11.0F, 0.0F, 25, repair("endium_pickaxe_repairs"));
|
||||
public static final ToolMaterial ENDIUM_SWORD = new ToolMaterial(BlockTags.INCORRECT_FOR_DIAMOND_TOOL, 4595, 11.0F, 0.0F, 25, repair("endium_sword_repairs"));
|
||||
public static final ToolMaterial KISAKAY_AXE = new ToolMaterial(BlockTags.INCORRECT_FOR_NETHERITE_TOOL, 1927, 14.0F, 0.0F, 60, repair("kisakay_axe_repairs"));
|
||||
// M-hoes-1 (wiki outils VERIFIE : dura 1999/4999/4999/4999 ; vitesses = pioches
|
||||
// du tier ECART ; degats/enchant comme pioches du tier).
|
||||
public static final ToolMaterial AMETHYST_HOE = new ToolMaterial(BlockTags.INCORRECT_FOR_STONE_TOOL, 1999, 6.0F, 0.0F, 7, repair("amethyst_hoe_repairs"));
|
||||
public static final ToolMaterial PALADIUM_HOE = new ToolMaterial(BlockTags.INCORRECT_FOR_IRON_TOOL, 4999, 9.0F, 0.0F, 10, repair("paladium_hoe_repairs"));
|
||||
public static final ToolMaterial PALADIUM_GREEN_HOE = new ToolMaterial(BlockTags.INCORRECT_FOR_DIAMOND_TOOL, 4999, 10.0F, 0.0F, 22, repair("paladium_green_hoe_repairs"));
|
||||
public static final ToolMaterial ENDIUM_HOE = new ToolMaterial(BlockTags.INCORRECT_FOR_DIAMOND_TOOL, 4999, 11.0F, 0.0F, 25, repair("endium_hoe_repairs"));
|
||||
public static final ToolMaterial KISAKAY_HOE = new ToolMaterial(BlockTags.INCORRECT_FOR_NETHERITE_TOOL, 1927, 14.0F, 0.0F, 60, repair("kisakay_hoe_repairs"));
|
||||
public static final ToolMaterial KISAKAY_PICKAXE = new ToolMaterial(BlockTags.INCORRECT_FOR_NETHERITE_TOOL, 1927, 14.0F, 0.0F, 60, repair("kisakay_pickaxe_repairs"));
|
||||
public static final ToolMaterial KISAKAY_SHOVEL = new ToolMaterial(BlockTags.INCORRECT_FOR_NETHERITE_TOOL, 1927, 14.0F, 0.0F, 60, repair("kisakay_shovel_repairs"));
|
||||
|
||||
@@ -365,6 +365,63 @@ public final class PalaItemUseEvents {
|
||||
ItemStack stack = player.getItemInHand(hand);
|
||||
Item item = stack.isEmpty() ? null : stack.getItem();
|
||||
|
||||
// --- Grandes houes (M-hoes-1, wiki outils VERIFIE : AoE + gates fermier) :
|
||||
// carre NxN ancre (bloc clique = coin, ECART pairs non centrables), FAIL si
|
||||
// gate KO (pas de contournement vanilla), -1 dura/bloc ECART, claims respectes.
|
||||
int hoeSize = 0;
|
||||
int hoeLevel = 0;
|
||||
if (item == PalaItems.AMETHYST_HOE) {
|
||||
hoeSize = 2;
|
||||
hoeLevel = 2;
|
||||
} else if (item == PalaItems.PALADIUM_HOE) {
|
||||
hoeSize = 6;
|
||||
hoeLevel = 12;
|
||||
} else if (item == PalaItems.PALADIUM_GREEN_HOE) {
|
||||
hoeSize = 8;
|
||||
hoeLevel = 16;
|
||||
} else if (item == PalaItems.ENDIUM_HOE) {
|
||||
hoeSize = 12;
|
||||
hoeLevel = 20;
|
||||
}
|
||||
if (hoeSize > 0) {
|
||||
if (fr.surviepote.pala.core.PalaJobs.levelOf(sp, "fermier") < hoeLevel) {
|
||||
final int required = hoeLevel;
|
||||
sp.sendSystemMessage(net.minecraft.network.chat.Component.literal(
|
||||
"§cFermier niveau " + required + " requis pour cette houe."));
|
||||
return InteractionResult.FAIL;
|
||||
}
|
||||
int tilled = 0;
|
||||
for (int dx = 1 - hoeSize; dx <= 0; dx++) {
|
||||
for (int dz = 1 - hoeSize; dz <= 0; dz++) {
|
||||
if (stack.isEmpty()) {
|
||||
break;
|
||||
}
|
||||
BlockPos cursor = pos.offset(dx, 0, dz);
|
||||
BlockState state = sl.getBlockState(cursor);
|
||||
Block b = state.getBlock();
|
||||
if (b != Blocks.GRASS_BLOCK && b != Blocks.DIRT
|
||||
&& b != Blocks.COARSE_DIRT && b != Blocks.DIRT_PATH) {
|
||||
continue;
|
||||
}
|
||||
if (!sl.getBlockState(cursor.above()).isAir()) {
|
||||
continue;
|
||||
}
|
||||
if (!fr.surviepote.pala.events.PalaFactionProtect.canAct(sp, sl, cursor)) {
|
||||
continue;
|
||||
}
|
||||
sl.setBlock(cursor, Blocks.FARMLAND.defaultBlockState(), 11);
|
||||
stack.hurtAndBreak(1, sp, hand);
|
||||
tilled++;
|
||||
}
|
||||
}
|
||||
if (tilled > 0) {
|
||||
sl.playSound(null, pos.getX(), pos.getY(), pos.getZ(),
|
||||
SoundEvents.HOE_TILL, SoundSource.BLOCKS, 1.0F, 1.0F);
|
||||
return InteractionResult.SUCCESS;
|
||||
}
|
||||
return InteractionResult.PASS;
|
||||
}
|
||||
|
||||
// --- Grinder : le coeur (PalaGrinderBlock) gere lui-meme le clic droit
|
||||
// (diagnostic PalaGrinder.isFormed + ouverture GUI). Rien a faire ici : PASS
|
||||
// pour laisser useWithoutItem du bloc s'executer (un SUCCESS du callback
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"model": {
|
||||
"type": "minecraft:model",
|
||||
"model": "pala:item/amethyst_hoe"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"model": {
|
||||
"type": "minecraft:model",
|
||||
"model": "pala:item/endium_hoe"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"model": {
|
||||
"type": "minecraft:model",
|
||||
"model": "pala:item/paladium_green_hoe"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"model": {
|
||||
"type": "minecraft:model",
|
||||
"model": "pala:item/paladium_hoe"
|
||||
}
|
||||
}
|
||||
@@ -15,6 +15,10 @@
|
||||
"item.pala.capture_stone_full": "Full Capture Stone",
|
||||
"item.pala.endium_nametag": "Endium Tag",
|
||||
"item.pala.roller": "Rollers",
|
||||
"item.pala.amethyst_hoe": "Amethyst Hoe",
|
||||
"item.pala.paladium_hoe": "Paladium Hoe",
|
||||
"item.pala.paladium_green_hoe": "Green Paladium Hoe",
|
||||
"item.pala.endium_hoe": "Endium Hoe",
|
||||
"item.pala.cave_hammer": "Marteau des cavernes",
|
||||
"item.pala.magma_amulet": "Amulette de feu",
|
||||
"enchantment.pala.experience_bottler": "Experience Bottler",
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "pala:item/amethyst_radius_hoe"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "pala:item/endium_radius_hoe"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "pala:item/green_paladium_radius_hoe"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "pala:item/paladium_hoe"
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 332 B |
Binary file not shown.
|
After Width: | Height: | Size: 449 B |
Binary file not shown.
|
After Width: | Height: | Size: 297 B |
Binary file not shown.
|
After Width: | Height: | Size: 217 B |
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"replace": false,
|
||||
"values": [
|
||||
"pala:amethyst_ingot"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"replace": false,
|
||||
"values": [
|
||||
"pala:endium_ingot"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"replace": false,
|
||||
"values": [
|
||||
"pala:paladium_green_ingot"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"replace": false,
|
||||
"values": [
|
||||
"pala:paladium_ingot"
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user