From 052fd8e7b628ac966c41ca7ed2ad936cb88039de Mon Sep 17 00:00:00 2001 From: Yukkuri C <799433638@qq.com> Date: Sun, 23 Aug 2020 13:14:34 +0800 Subject: [PATCH 1/3] DamageSource lang of drill and saw fix - create.(drill|saw) -> create.mechanical_\1 - unused DrillTileEntity.damageSourceDrill removed --- .../content/contraptions/components/actors/DrillBlock.java | 2 +- .../content/contraptions/components/actors/DrillTileEntity.java | 2 -- .../create/content/contraptions/components/saw/SawBlock.java | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/actors/DrillBlock.java b/src/main/java/com/simibubi/create/content/contraptions/components/actors/DrillBlock.java index 74eb40d0d..437390c00 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/actors/DrillBlock.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/actors/DrillBlock.java @@ -29,7 +29,7 @@ import mcp.MethodsReturnNonnullByDefault; @ParametersAreNonnullByDefault @MethodsReturnNonnullByDefault public class DrillBlock extends DirectionalKineticBlock implements ITE { - public static DamageSource damageSourceDrill = new DamageSource("create.drill").setDamageBypassesArmor(); + public static DamageSource damageSourceDrill = new DamageSource("create.mechanical_drill").setDamageBypassesArmor(); public DrillBlock(Properties properties) { super(properties); diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/actors/DrillTileEntity.java b/src/main/java/com/simibubi/create/content/contraptions/components/actors/DrillTileEntity.java index 8987a1334..4edeec202 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/actors/DrillTileEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/actors/DrillTileEntity.java @@ -6,8 +6,6 @@ import net.minecraft.util.math.BlockPos; public class DrillTileEntity extends BlockBreakingKineticTileEntity { - public static DamageSource damageSourceDrill = new DamageSource("create.drill").setDamageBypassesArmor(); - public DrillTileEntity(TileEntityType type) { super(type); } diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/saw/SawBlock.java b/src/main/java/com/simibubi/create/content/contraptions/components/saw/SawBlock.java index 8ec99f1b9..059242730 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/saw/SawBlock.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/saw/SawBlock.java @@ -37,7 +37,7 @@ import mcp.MethodsReturnNonnullByDefault; public class SawBlock extends DirectionalAxisKineticBlock implements ITE { public static final BooleanProperty RUNNING = BooleanProperty.create("running"); - public static DamageSource damageSourceSaw = new DamageSource("create.saw").setDamageBypassesArmor(); + public static DamageSource damageSourceSaw = new DamageSource("create.mechanical_saw").setDamageBypassesArmor(); public SawBlock(Properties properties) { super(properties); From c64d0fd98e6a01103cdd3386dd3ca1ff4d08c6fb Mon Sep 17 00:00:00 2001 From: Daniel Amberson Date: Fri, 28 Aug 2020 12:20:07 -0500 Subject: [PATCH 2/3] more corrections blockbench also likes putting "create:" in front of vanilla textures also log waterwheel spokes! --- .../models/block/mechanical_mixer/item.json | 3 +-- .../assets/create/textures/block/wheel.png | Bin 1143 -> 1158 bytes .../create/textures/block/wheel_extras.png | Bin 697 -> 855 bytes 3 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/resources/assets/create/models/block/mechanical_mixer/item.json b/src/main/resources/assets/create/models/block/mechanical_mixer/item.json index 6451df90d..d53ce5844 100644 --- a/src/main/resources/assets/create/models/block/mechanical_mixer/item.json +++ b/src/main/resources/assets/create/models/block/mechanical_mixer/item.json @@ -4,12 +4,11 @@ "ambientocclusion": false, "texture_size": [32, 32], "textures": { - "2": "create:block/spruce_log_top", + "2": "block/spruce_log_top", "4": "create:block/mixer_base_side", "6": "create:block/mixer_head", "11": "create:block/mechanical_press_top", "1_2": "create:block/cogwheel", - "particle": "create:block/stripped_spruce_log", "mechanical_press_pole": "create:block/mechanical_press_pole" }, "elements": [ diff --git a/src/main/resources/assets/create/textures/block/wheel.png b/src/main/resources/assets/create/textures/block/wheel.png index 1bfd0d8eb98ea760436dfb6d7b7f83c49154ce79..74d3e89b87a122f9939c130cbf06f00b42e5c358 100644 GIT binary patch delta 1100 zcmV-S1hf112!;ueNq@iq01m(bYSxJf000CVNklnm9iPdvzqfvy z@%jV-`K0meHS@lA&U46d9McPTuAX#akx1jtm}09wk;sLaOj|*12_QHc z4V%f)l-zF@YceZz%}&|VCY4N@L_B5|mNw-6$*YeoL}pKn$)aQ|Z1Tm5iAAIGyoJF1 z8|NGZqa_*^OMfMK9tsV}9E9WS$~>4zxZi|)B0&;Y&Q3U(Je!V~rOlF0AS}NPpt))t zi+IG)j$js392nX}uR$P~5C2r(F2Ve={6JSAZY{-0C+!XD9u5F8N z=fADWh(y9Bor;;^p`?7Dh(~2CENz)DE+M|(G)^+k8 z3sh>mCSNGK1e)3Q1KSNKqb@~;YR_z6ivqJ94MHszPsxO;jK$EJ*{y2 z@_%s$vfIV|;8o$vZh`C6uwWJ60u&DN7Uq;w1t|%MAQ7q}E@DtK7zk&rrZY-)16J|- z0XE_oRY2&+O2OU4i)0QTK!g)yK;I#p=s!G>b`PS8$!6kGSI}O&B)cE5TeBtt9HFG6 zR~7MLOsX1CVblmx)h@ew2x%ijPjG5xTz|5lSHIZQ5z!4{zSYfwYer8??SzyFuqzz_ z2eO&{AO!8YqIPI$$@FkS6Ky&H!3osA3jB<_H0bOjSRV913ju&7ilwS_H9;ak`$QEA z2}(JFLBGO5TLKD*FbB;Gv}XherrLFD%R8Yf0R?WcD`xOd%I|0#L|+8{CE608u0@mU zL_39uJV$FvDuv4a4}dEkJbC+nEO77oY5Dlkiw}P+Fo*+pLDOk?5IA50#{2^AoNIQy S$4&bH0000?~{qOHr^0Q9`0-^WLzVePoky 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 Date: Fri, 28 Aug 2020 21:24:08 +0200 Subject: [PATCH 3/3] tweak Drill and Saw damage - also removes redundant cast in AllTileEntities --- .../resources/assets/create/lang/en_us.json | 4 +- .../com/simibubi/create/AllTileEntities.java | 149 ++++++++---------- .../BlockBreakingMovementBehaviour.java | 5 +- .../components/actors/DrillBlock.java | 9 +- .../contraptions/components/saw/SawBlock.java | 7 +- 5 files changed, 85 insertions(+), 89 deletions(-) diff --git a/src/generated/resources/assets/create/lang/en_us.json b/src/generated/resources/assets/create/lang/en_us.json index 3e1f93730..ed8bcc2d1 100644 --- a/src/generated/resources/assets/create/lang/en_us.json +++ b/src/generated/resources/assets/create/lang/en_us.json @@ -521,8 +521,8 @@ "death.attack.create.crush": "%1$s was processed by Crushing Wheels", "death.attack.create.fan_fire": "%1$s was burned to death by hot air", "death.attack.create.fan_lava": "%1$s was burned to death by lava fan", - "death.attack.create.mechanical_drill": "%1$s was impaled by Mechanical mechanical_drill", - "death.attack.create.mechanical_saw": "%1$s got cut in half by Mechanical Saw", + "death.attack.create.mechanical_drill": "%1$s was impaled by a Mechanical Drill", + "death.attack.create.mechanical_saw": "%1$s got cut in half by a Mechanical Saw", "death.attack.create.cuckoo_clock_explosion": "%1$s was blown up by tampered cuckoo clock", "create.block.deployer.damage_source_name": "a rogue Deployer", diff --git a/src/main/java/com/simibubi/create/AllTileEntities.java b/src/main/java/com/simibubi/create/AllTileEntities.java index 7d969877a..f3309ac54 100644 --- a/src/main/java/com/simibubi/create/AllTileEntities.java +++ b/src/main/java/com/simibubi/create/AllTileEntities.java @@ -60,11 +60,7 @@ import com.simibubi.create.content.contraptions.relays.advanced.sequencer.Sequen import com.simibubi.create.content.contraptions.relays.belt.BeltRenderer; import com.simibubi.create.content.contraptions.relays.belt.BeltTileEntity; import com.simibubi.create.content.contraptions.relays.elementary.SimpleKineticTileEntity; -import com.simibubi.create.content.contraptions.relays.encased.AdjustablePulleyTileEntity; -import com.simibubi.create.content.contraptions.relays.encased.ClutchTileEntity; -import com.simibubi.create.content.contraptions.relays.encased.EncasedShaftRenderer; -import com.simibubi.create.content.contraptions.relays.encased.EncasedShaftTileEntity; -import com.simibubi.create.content.contraptions.relays.encased.SplitShaftRenderer; +import com.simibubi.create.content.contraptions.relays.encased.*; import com.simibubi.create.content.contraptions.relays.gauge.GaugeRenderer; import com.simibubi.create.content.contraptions.relays.gauge.SpeedGaugeTileEntity; import com.simibubi.create.content.contraptions.relays.gauge.StressGaugeTileEntity; @@ -93,12 +89,7 @@ import com.simibubi.create.content.logistics.block.mechanicalArm.ArmRenderer; import com.simibubi.create.content.logistics.block.mechanicalArm.ArmTileEntity; import com.simibubi.create.content.logistics.block.packager.PackagerRenderer; import com.simibubi.create.content.logistics.block.packager.PackagerTileEntity; -import com.simibubi.create.content.logistics.block.redstone.AnalogLeverRenderer; -import com.simibubi.create.content.logistics.block.redstone.AnalogLeverTileEntity; -import com.simibubi.create.content.logistics.block.redstone.NixieTubeRenderer; -import com.simibubi.create.content.logistics.block.redstone.NixieTubeTileEntity; -import com.simibubi.create.content.logistics.block.redstone.RedstoneLinkTileEntity; -import com.simibubi.create.content.logistics.block.redstone.StockpileSwitchTileEntity; +import com.simibubi.create.content.logistics.block.redstone.*; import com.simibubi.create.content.logistics.block.transposer.LinkedTransposerTileEntity; import com.simibubi.create.content.logistics.block.transposer.TransposerTileEntity; import com.simibubi.create.content.schematics.block.SchematicTableTileEntity; @@ -106,100 +97,97 @@ import com.simibubi.create.content.schematics.block.SchematicannonRenderer; import com.simibubi.create.content.schematics.block.SchematicannonTileEntity; import com.simibubi.create.foundation.tileEntity.renderer.SmartTileEntityRenderer; import com.tterrag.registrate.util.entry.TileEntityEntry; -import com.tterrag.registrate.util.nullness.NonNullFunction; - -import net.minecraft.tileentity.TileEntityType; public class AllTileEntities { // Schematics public static final TileEntityEntry SCHEMATICANNON = Create.registrate() - .tileEntity("schematicannon", (NonNullFunction, ? extends SchematicannonTileEntity>) SchematicannonTileEntity::new) + .tileEntity("schematicannon", SchematicannonTileEntity::new) .validBlocks(AllBlocks.SCHEMATICANNON) .renderer(() -> SchematicannonRenderer::new) .register(); public static final TileEntityEntry SCHEMATIC_TABLE = Create.registrate() - .tileEntity("schematic_table", (NonNullFunction, ? extends SchematicTableTileEntity>) SchematicTableTileEntity::new) + .tileEntity("schematic_table", SchematicTableTileEntity::new) .validBlocks(AllBlocks.SCHEMATIC_TABLE) //.renderer(() -> renderer) .register(); // Kinetics public static final TileEntityEntry SIMPLE_KINETIC = Create.registrate() - .tileEntity("simple_kinetic", (NonNullFunction, ? extends SimpleKineticTileEntity>) SimpleKineticTileEntity::new) + .tileEntity("simple_kinetic", SimpleKineticTileEntity::new) .validBlocks(AllBlocks.SHAFT, AllBlocks.COGWHEEL, AllBlocks.LARGE_COGWHEEL, AllBlocks.ENCASED_SHAFT) .renderer(() -> KineticTileEntityRenderer::new) .register(); public static final TileEntityEntry MOTOR = Create.registrate() - .tileEntity("motor", (NonNullFunction, ? extends CreativeMotorTileEntity>) CreativeMotorTileEntity::new) + .tileEntity("motor", CreativeMotorTileEntity::new) .validBlocks(AllBlocks.CREATIVE_MOTOR) .renderer(() -> CreativeMotorRenderer::new) .register(); public static final TileEntityEntry GEARBOX = Create.registrate() - .tileEntity("gearbox", (NonNullFunction, ? extends GearboxTileEntity>) GearboxTileEntity::new) + .tileEntity("gearbox", GearboxTileEntity::new) .validBlocks(AllBlocks.GEARBOX) .renderer(() -> GearboxRenderer::new) .register(); public static final TileEntityEntry ENCASED_SHAFT = Create.registrate() - .tileEntity("encased_shaft", (NonNullFunction, ? extends EncasedShaftTileEntity>) EncasedShaftTileEntity::new) + .tileEntity("encased_shaft", EncasedShaftTileEntity::new) .validBlocks(AllBlocks.ENCASED_SHAFT, AllBlocks.ENCASED_BELT) .renderer(() -> EncasedShaftRenderer::new) .register(); public static final TileEntityEntry ADJUSTABLE_PULLEY = Create.registrate() - .tileEntity("adjustable_pulley", (NonNullFunction, ? extends AdjustablePulleyTileEntity>) AdjustablePulleyTileEntity::new) + .tileEntity("adjustable_pulley", AdjustablePulleyTileEntity::new) .validBlocks(AllBlocks.ADJUSTABLE_PULLEY) .renderer(() -> EncasedShaftRenderer::new) .register(); public static final TileEntityEntry ENCASED_FAN = Create.registrate() - .tileEntity("encased_fan", (NonNullFunction, ? extends EncasedFanTileEntity>) EncasedFanTileEntity::new) + .tileEntity("encased_fan", EncasedFanTileEntity::new) .validBlocks(AllBlocks.ENCASED_FAN) .renderer(() -> EncasedFanRenderer::new) .register(); public static final TileEntityEntry NOZZLE = Create.registrate() - .tileEntity("nozzle", (NonNullFunction, ? extends NozzleTileEntity>) NozzleTileEntity::new) + .tileEntity("nozzle", NozzleTileEntity::new) .validBlocks(AllBlocks.NOZZLE) //.renderer(() -> renderer) .register(); public static final TileEntityEntry CLUTCH = Create.registrate() - .tileEntity("clutch", (NonNullFunction, ? extends ClutchTileEntity>) ClutchTileEntity::new) + .tileEntity("clutch", ClutchTileEntity::new) .validBlocks(AllBlocks.CLUTCH) .renderer(() -> SplitShaftRenderer::new) .register(); public static final TileEntityEntry GEARSHIFT = Create.registrate() - .tileEntity("gearshift", (NonNullFunction, ? extends GearshiftTileEntity>) GearshiftTileEntity::new) + .tileEntity("gearshift", GearshiftTileEntity::new) .validBlocks(AllBlocks.GEARSHIFT) .renderer(() -> SplitShaftRenderer::new) .register(); public static final TileEntityEntry TURNTABLE = Create.registrate() - .tileEntity("turntable", (NonNullFunction, ? extends TurntableTileEntity>) TurntableTileEntity::new) + .tileEntity("turntable", TurntableTileEntity::new) .validBlocks(AllBlocks.TURNTABLE) .renderer(() -> KineticTileEntityRenderer::new) .register(); public static final TileEntityEntry HAND_CRANK = Create.registrate() - .tileEntity("hand_crank", (NonNullFunction, ? extends HandCrankTileEntity>) HandCrankTileEntity::new) + .tileEntity("hand_crank", HandCrankTileEntity::new) .validBlocks(AllBlocks.HAND_CRANK) .renderer(() -> HandCrankRenderer::new) .register(); public static final TileEntityEntry CUCKOO_CLOCK = Create.registrate() - .tileEntity("cuckoo_clock", (NonNullFunction, ? extends CuckooClockTileEntity>) CuckooClockTileEntity::new) + .tileEntity("cuckoo_clock", CuckooClockTileEntity::new) .validBlocks(AllBlocks.CUCKOO_CLOCK, AllBlocks.MYSTERIOUS_CUCKOO_CLOCK) .renderer(() -> CuckooClockRenderer::new) .register(); public static final TileEntityEntry MECHANICAL_PUMP = Create.registrate() - .tileEntity("mechanical_pump", (NonNullFunction, ? extends PumpTileEntity>) PumpTileEntity::new) + .tileEntity("mechanical_pump", PumpTileEntity::new) .validBlocks(AllBlocks.MECHANICAL_PUMP) .renderer(() -> PumpRenderer::new) .register(); @@ -208,300 +196,301 @@ public class AllTileEntities { .tileEntity("fluid_pipe", FluidPipeTileEntity::new) .validBlocks(AllBlocks.FLUID_PIPE) .register(); - + public static final TileEntityEntry ENCASED_FLUID_PIPE = Create.registrate() .tileEntity("encased_fluid_pipe", StraightPipeTileEntity::new) .validBlocks(AllBlocks.ENCASED_FLUID_PIPE) .register(); - + public static final TileEntityEntry GLASS_FLUID_PIPE = Create.registrate() .tileEntity("glass_fluid_pipe", StraightPipeTileEntity::new) .validBlocks(AllBlocks.GLASS_FLUID_PIPE) .renderer(() -> TransparentStraightPipeRenderer::new) .register(); - + public static final TileEntityEntry FLUID_TANK = Create.registrate() - .tileEntity("fluid_tank", (NonNullFunction, ? extends FluidTankTileEntity>) FluidTankTileEntity::new) + .tileEntity("fluid_tank", FluidTankTileEntity::new) .validBlocks(AllBlocks.FLUID_TANK) .renderer(() -> FluidTankRenderer::new) .register(); public static final TileEntityEntry BELT = Create.registrate() - .tileEntity("belt", (NonNullFunction, ? extends BeltTileEntity>) BeltTileEntity::new) + .tileEntity("belt", BeltTileEntity::new) .validBlocks(AllBlocks.BELT) .renderer(() -> BeltRenderer::new) .register(); public static final TileEntityEntry CHUTE = Create.registrate() - .tileEntity("chute", (NonNullFunction, ? extends ChuteTileEntity>) ChuteTileEntity::new) + .tileEntity("chute", ChuteTileEntity::new) .validBlocks(AllBlocks.CHUTE) .renderer(() -> ChuteRenderer::new) .register(); public static final TileEntityEntry ANDESITE_TUNNEL = Create.registrate() - .tileEntity("andesite_tunnel", (NonNullFunction, ? extends BeltTunnelTileEntity>) BeltTunnelTileEntity::new) + .tileEntity("andesite_tunnel", BeltTunnelTileEntity::new) .validBlocks(AllBlocks.ANDESITE_TUNNEL) .renderer(() -> BeltTunnelRenderer::new) .register(); public static final TileEntityEntry BRASS_TUNNEL = Create.registrate() - .tileEntity("brass_tunnel", (NonNullFunction, ? extends BrassTunnelTileEntity>) BrassTunnelTileEntity::new) + .tileEntity("brass_tunnel", BrassTunnelTileEntity::new) .validBlocks(AllBlocks.BRASS_TUNNEL) .renderer(() -> BeltTunnelRenderer::new) .register(); public static final TileEntityEntry MECHANICAL_ARM = Create.registrate() - .tileEntity("mechanical_arm", (NonNullFunction, ? extends ArmTileEntity>) ArmTileEntity::new) + .tileEntity("mechanical_arm", ArmTileEntity::new) .validBlocks(AllBlocks.MECHANICAL_ARM) .renderer(() -> ArmRenderer::new) .register(); public static final TileEntityEntry MECHANICAL_PISTON = Create.registrate() - .tileEntity("mechanical_piston", (NonNullFunction, ? extends MechanicalPistonTileEntity>) MechanicalPistonTileEntity::new) + .tileEntity("mechanical_piston", MechanicalPistonTileEntity::new) .validBlocks(AllBlocks.MECHANICAL_PISTON, AllBlocks.STICKY_MECHANICAL_PISTON) .renderer(() -> MechanicalPistonRenderer::new) .register(); public static final TileEntityEntry MECHANICAL_BEARING = Create.registrate() - .tileEntity("mechanical_bearing", (NonNullFunction, ? extends MechanicalBearingTileEntity>) MechanicalBearingTileEntity::new) + .tileEntity("mechanical_bearing", MechanicalBearingTileEntity::new) .validBlocks(AllBlocks.MECHANICAL_BEARING) .renderer(() -> BearingRenderer::new) .register(); public static final TileEntityEntry CLOCKWORK_BEARING = Create.registrate() - .tileEntity("clockwork_bearing", (NonNullFunction, ? extends ClockworkBearingTileEntity>) ClockworkBearingTileEntity::new) + .tileEntity("clockwork_bearing", ClockworkBearingTileEntity::new) .validBlocks(AllBlocks.CLOCKWORK_BEARING) .renderer(() -> BearingRenderer::new) .register(); public static final TileEntityEntry ROPE_PULLEY = Create.registrate() - .tileEntity("rope_pulley", (NonNullFunction, ? extends PulleyTileEntity>) PulleyTileEntity::new) + .tileEntity("rope_pulley", PulleyTileEntity::new) .validBlocks(AllBlocks.ROPE_PULLEY) .renderer(() -> PulleyRenderer::new) .register(); public static final TileEntityEntry CHASSIS = Create.registrate() - .tileEntity("chassis", (NonNullFunction, ? extends ChassisTileEntity>) ChassisTileEntity::new) + .tileEntity("chassis", ChassisTileEntity::new) .validBlocks(AllBlocks.RADIAL_CHASSIS, AllBlocks.LINEAR_CHASSIS, AllBlocks.SECONDARY_LINEAR_CHASSIS) //.renderer(() -> renderer) .register(); public static final TileEntityEntry DRILL = Create.registrate() - .tileEntity("drill", (NonNullFunction, ? extends DrillTileEntity>) DrillTileEntity::new) + .tileEntity("drill", DrillTileEntity::new) .validBlocks(AllBlocks.MECHANICAL_DRILL) .renderer(() -> DrillRenderer::new) .register(); public static final TileEntityEntry SAW = Create.registrate() - .tileEntity("saw", (NonNullFunction, ? extends SawTileEntity>) SawTileEntity::new) + .tileEntity("saw", SawTileEntity::new) .validBlocks(AllBlocks.MECHANICAL_SAW) .renderer(() -> SawRenderer::new) .register(); public static final TileEntityEntry HARVESTER = Create.registrate() - .tileEntity("harvester", (NonNullFunction, ? extends HarvesterTileEntity>) HarvesterTileEntity::new) + .tileEntity("harvester", HarvesterTileEntity::new) .validBlocks(AllBlocks.MECHANICAL_HARVESTER) .renderer(() -> HarvesterRenderer::new) .register(); public static final TileEntityEntry FLYWHEEL = Create.registrate() - .tileEntity("flywheel", (NonNullFunction, ? extends FlywheelTileEntity>) FlywheelTileEntity::new) + .tileEntity("flywheel", FlywheelTileEntity::new) .validBlocks(AllBlocks.FLYWHEEL) .renderer(() -> FlywheelRenderer::new) .register(); public static final TileEntityEntry FURNACE_ENGINE = Create.registrate() - .tileEntity("furnace_engine", (NonNullFunction, ? extends FurnaceEngineTileEntity>) FurnaceEngineTileEntity::new) + .tileEntity("furnace_engine", FurnaceEngineTileEntity::new) .validBlocks(AllBlocks.FURNACE_ENGINE) .renderer(() -> EngineRenderer::new) .register(); public static final TileEntityEntry MILLSTONE = Create.registrate() - .tileEntity("millstone", (NonNullFunction, ? extends MillstoneTileEntity>) MillstoneTileEntity::new) + .tileEntity("millstone", MillstoneTileEntity::new) .validBlocks(AllBlocks.MILLSTONE) .renderer(() -> MillstoneRenderer::new) .register(); public static final TileEntityEntry CRUSHING_WHEEL = Create.registrate() - .tileEntity("crushing_wheel", (NonNullFunction, ? extends CrushingWheelTileEntity>) CrushingWheelTileEntity::new) + .tileEntity("crushing_wheel", CrushingWheelTileEntity::new) .validBlocks(AllBlocks.CRUSHING_WHEEL) .renderer(() -> KineticTileEntityRenderer::new) .register(); public static final TileEntityEntry CRUSHING_WHEEL_CONTROLLER = Create.registrate() - .tileEntity("crushing_wheel_controller", (NonNullFunction, ? extends CrushingWheelControllerTileEntity>) CrushingWheelControllerTileEntity::new) + .tileEntity("crushing_wheel_controller", CrushingWheelControllerTileEntity::new) .validBlocks(AllBlocks.CRUSHING_WHEEL_CONTROLLER) //.renderer(() -> renderer) .register(); public static final TileEntityEntry WATER_WHEEL = Create.registrate() - .tileEntity("water_wheel", (NonNullFunction, ? extends WaterWheelTileEntity>) WaterWheelTileEntity::new) + .tileEntity("water_wheel", WaterWheelTileEntity::new) .validBlocks(AllBlocks.WATER_WHEEL) .renderer(() -> KineticTileEntityRenderer::new) .register(); public static final TileEntityEntry MECHANICAL_PRESS = Create.registrate() - .tileEntity("mechanical_press", (NonNullFunction, ? extends MechanicalPressTileEntity>) MechanicalPressTileEntity::new) + .tileEntity("mechanical_press", MechanicalPressTileEntity::new) .validBlocks(AllBlocks.MECHANICAL_PRESS) .renderer(() -> MechanicalPressRenderer::new) .register(); public static final TileEntityEntry MECHANICAL_MIXER = Create.registrate() - .tileEntity("mechanical_mixer", (NonNullFunction, ? extends MechanicalMixerTileEntity>) MechanicalMixerTileEntity::new) + .tileEntity("mechanical_mixer", MechanicalMixerTileEntity::new) .validBlocks(AllBlocks.MECHANICAL_MIXER) .renderer(() -> MechanicalMixerRenderer::new) .register(); public static final TileEntityEntry DEPLOYER = Create.registrate() - .tileEntity("deployer", (NonNullFunction, ? extends DeployerTileEntity>) DeployerTileEntity::new) + .tileEntity("deployer", DeployerTileEntity::new) .validBlocks(AllBlocks.DEPLOYER) .renderer(() -> DeployerRenderer::new) .register(); public static final TileEntityEntry BASIN = Create.registrate() - .tileEntity("basin", (NonNullFunction, ? extends BasinTileEntity>) BasinTileEntity::new) + .tileEntity("basin", BasinTileEntity::new) .validBlocks(AllBlocks.BASIN) .renderer(() -> BasinRenderer::new) .register(); public static final TileEntityEntry HEATER = Create.registrate() - .tileEntity("blaze_heater", (NonNullFunction, ? extends BlazeBurnerTileEntity>) BlazeBurnerTileEntity::new) + .tileEntity("blaze_heater", BlazeBurnerTileEntity::new) .validBlocks(AllBlocks.BLAZE_BURNER) .renderer(() -> BlazeBurnerRenderer::new) .register(); public static final TileEntityEntry MECHANICAL_CRAFTER = Create.registrate() - .tileEntity("mechanical_crafter", (NonNullFunction, ? extends MechanicalCrafterTileEntity>) MechanicalCrafterTileEntity::new) + .tileEntity("mechanical_crafter", MechanicalCrafterTileEntity::new) .validBlocks(AllBlocks.MECHANICAL_CRAFTER) .renderer(() -> MechanicalCrafterRenderer::new) .register(); public static final TileEntityEntry SEQUENCED_GEARSHIFT = Create.registrate() - .tileEntity("sequenced_gearshift", (NonNullFunction, ? extends SequencedGearshiftTileEntity>) SequencedGearshiftTileEntity::new) + .tileEntity("sequenced_gearshift", SequencedGearshiftTileEntity::new) .validBlocks(AllBlocks.SEQUENCED_GEARSHIFT) .renderer(() -> SplitShaftRenderer::new) .register(); public static final TileEntityEntry ROTATION_SPEED_CONTROLLER = Create.registrate() - .tileEntity("rotation_speed_controller", (NonNullFunction, ? extends SpeedControllerTileEntity>) SpeedControllerTileEntity::new) + .tileEntity("rotation_speed_controller", SpeedControllerTileEntity::new) .validBlocks(AllBlocks.ROTATION_SPEED_CONTROLLER) .renderer(() -> SpeedControllerRenderer::new) .register(); public static final TileEntityEntry SPEEDOMETER = Create.registrate() - .tileEntity("speedometer", (NonNullFunction, ? extends SpeedGaugeTileEntity>) SpeedGaugeTileEntity::new) + .tileEntity("speedometer", SpeedGaugeTileEntity::new) .validBlocks(AllBlocks.SPEEDOMETER) .renderer(() -> GaugeRenderer::speed) .register(); public static final TileEntityEntry STRESSOMETER = Create.registrate() - .tileEntity("stressometer", (NonNullFunction, ? extends StressGaugeTileEntity>) StressGaugeTileEntity::new) + .tileEntity("stressometer", StressGaugeTileEntity::new) .validBlocks(AllBlocks.STRESSOMETER) .renderer(() -> GaugeRenderer::stress) .register(); public static final TileEntityEntry ANALOG_LEVER = Create.registrate() - .tileEntity("analog_lever", (NonNullFunction, ? extends AnalogLeverTileEntity>) AnalogLeverTileEntity::new) + .tileEntity("analog_lever", AnalogLeverTileEntity::new) .validBlocks(AllBlocks.ANALOG_LEVER) .renderer(() -> AnalogLeverRenderer::new) .register(); public static final TileEntityEntry CART_ASSEMBLER = Create.registrate() - .tileEntity("cart_assembler", (NonNullFunction, ? extends CartAssemblerTileEntity>) CartAssemblerTileEntity::new) + .tileEntity("cart_assembler", CartAssemblerTileEntity::new) .validBlocks(AllBlocks.CART_ASSEMBLER) //.renderer(() -> renderer) .register(); // Logistics public static final TileEntityEntry REDSTONE_LINK = Create.registrate() - .tileEntity("redstone_link", (NonNullFunction, ? extends RedstoneLinkTileEntity>) RedstoneLinkTileEntity::new) + .tileEntity("redstone_link", RedstoneLinkTileEntity::new) .validBlocks(AllBlocks.REDSTONE_LINK) .renderer(() -> SmartTileEntityRenderer::new) .register(); public static final TileEntityEntry NIXIE_TUBE = Create.registrate() - .tileEntity("nixie_tube", (NonNullFunction, ? extends NixieTubeTileEntity>) NixieTubeTileEntity::new) + .tileEntity("nixie_tube", NixieTubeTileEntity::new) .validBlocks(AllBlocks.NIXIE_TUBE) .renderer(() -> NixieTubeRenderer::new) .register(); public static final TileEntityEntry STOCKPILE_SWITCH = Create.registrate() - .tileEntity("stockpile_switch", (NonNullFunction, ? extends StockpileSwitchTileEntity>) StockpileSwitchTileEntity::new) + .tileEntity("stockpile_switch", StockpileSwitchTileEntity::new) .validBlocks(AllBlocks.STOCKPILE_SWITCH) //.renderer(() -> renderer) .register(); public static final TileEntityEntry ADJUSTABLE_CRATE = Create.registrate() - .tileEntity("adjustable_crate", (NonNullFunction, ? extends AdjustableCrateTileEntity>) AdjustableCrateTileEntity::new) + .tileEntity("adjustable_crate", AdjustableCrateTileEntity::new) .validBlocks(AllBlocks.ADJUSTABLE_CRATE) //.renderer(() -> renderer) .register(); public static final TileEntityEntry CREATIVE_CRATE = Create.registrate() - .tileEntity("creative_crate", (NonNullFunction, ? extends CreativeCrateTileEntity>) CreativeCrateTileEntity::new) + .tileEntity("creative_crate", CreativeCrateTileEntity::new) .validBlocks(AllBlocks.CREATIVE_CRATE) .renderer(() -> SmartTileEntityRenderer::new) .register(); public static final TileEntityEntry DEPOT = Create.registrate() - .tileEntity("depot", (NonNullFunction, ? extends DepotTileEntity>) DepotTileEntity::new) + .tileEntity("depot", DepotTileEntity::new) .validBlocks(AllBlocks.DEPOT) .renderer(() -> DepotRenderer::new) .register(); public static final TileEntityEntry FUNNEL = Create.registrate() - .tileEntity("funnel", (NonNullFunction, ? extends FunnelTileEntity>) FunnelTileEntity::new) + .tileEntity("funnel", FunnelTileEntity::new) .validBlocks(AllBlocks.BRASS_FUNNEL, AllBlocks.BRASS_BELT_FUNNEL, AllBlocks.BRASS_CHUTE_FUNNEL, AllBlocks.ANDESITE_FUNNEL, AllBlocks.ANDESITE_BELT_FUNNEL, AllBlocks.ANDESITE_CHUTE_FUNNEL) .renderer(() -> FunnelRenderer::new) .register(); public static final TileEntityEntry PACKAGER = Create.registrate() - .tileEntity("packager", (NonNullFunction, ? extends PackagerTileEntity>) PackagerTileEntity::new) + .tileEntity("packager", PackagerTileEntity::new) .validBlocks(AllBlocks.PACKAGER) .renderer(() -> PackagerRenderer::new) .register(); public static final TileEntityEntry EXTRACTOR = Create.registrate() - .tileEntity("extractor", (NonNullFunction, ? extends ExtractorTileEntity>) ExtractorTileEntity::new) + .tileEntity("extractor", ExtractorTileEntity::new) .validBlocks(AllBlocks.EXTRACTOR, AllBlocks.VERTICAL_EXTRACTOR) .renderer(() -> SmartTileEntityRenderer::new) .register(); public static final TileEntityEntry LINKED_EXTRACTOR = Create.registrate() - .tileEntity("linked_extractor", (NonNullFunction, ? extends LinkedExtractorTileEntity>) LinkedExtractorTileEntity::new) + .tileEntity("linked_extractor", LinkedExtractorTileEntity::new) .validBlocks(AllBlocks.LINKED_EXTRACTOR, AllBlocks.VERTICAL_LINKED_EXTRACTOR) .renderer(() -> SmartTileEntityRenderer::new) .register(); public static final TileEntityEntry TRANSPOSER = Create.registrate() - .tileEntity("transposer", (NonNullFunction, ? extends TransposerTileEntity>) TransposerTileEntity::new) + .tileEntity("transposer", TransposerTileEntity::new) .validBlocks(AllBlocks.TRANSPOSER, AllBlocks.VERTICAL_TRANSPOSER) .renderer(() -> SmartTileEntityRenderer::new) .register(); public static final TileEntityEntry LINKED_TRANSPOSER = Create.registrate() - .tileEntity("linked_transposer", (NonNullFunction, ? extends LinkedTransposerTileEntity>) LinkedTransposerTileEntity::new) + .tileEntity("linked_transposer", LinkedTransposerTileEntity::new) .validBlocks(AllBlocks.LINKED_TRANSPOSER, AllBlocks.VERTICAL_LINKED_TRANSPOSER) .renderer(() -> SmartTileEntityRenderer::new) .register(); public static final TileEntityEntry BELT_OBSERVER = Create.registrate() - .tileEntity("belt_observer", (NonNullFunction, ? extends BeltObserverTileEntity>) BeltObserverTileEntity::new) + .tileEntity("belt_observer", BeltObserverTileEntity::new) .validBlocks(AllBlocks.BELT_OBSERVER) .renderer(() -> BeltObserverRenderer::new) .register(); public static final TileEntityEntry ADJUSTABLE_REPEATER = Create.registrate() - .tileEntity("adjustable_repeater", (NonNullFunction, ? extends AdjustableRepeaterTileEntity>) AdjustableRepeaterTileEntity::new) + .tileEntity("adjustable_repeater", AdjustableRepeaterTileEntity::new) .validBlocks(AllBlocks.ADJUSTABLE_REPEATER) .renderer(() -> AdjustableRepeaterRenderer::new) .register(); public static final TileEntityEntry ADJUSTABLE_PULSE_REPEATER = Create.registrate() - .tileEntity("adjustable_pulse_repeater", (NonNullFunction, ? extends AdjustablePulseRepeaterTileEntity>) AdjustablePulseRepeaterTileEntity::new) + .tileEntity("adjustable_pulse_repeater", AdjustablePulseRepeaterTileEntity::new) .validBlocks(AllBlocks.ADJUSTABLE_PULSE_REPEATER) .renderer(() -> AdjustableRepeaterRenderer::new) .register(); - public static void register() {} + public static void register() { + } } diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/actors/BlockBreakingMovementBehaviour.java b/src/main/java/com/simibubi/create/content/contraptions/components/actors/BlockBreakingMovementBehaviour.java index d562d43c9..3e36607b3 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/actors/BlockBreakingMovementBehaviour.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/actors/BlockBreakingMovementBehaviour.java @@ -60,9 +60,10 @@ public class BlockBreakingMovementBehaviour extends MovementBehaviour { && ((ContraptionEntity) passenger).getContraption() == context.contraption) continue Entities; - float damage = (float) MathHelper.clamp(Math.abs(context.relativeMotion.length() * 10) + 1, 5, 20); - if (damageSource != null && !world.isRemote) + if (damageSource != null && !world.isRemote) { + float damage = (float) MathHelper.clamp(6 * Math.pow(context.relativeMotion.length(), 0.4) + 1, 2, 10); entity.attackEntityFrom(damageSource, damage); + } if (throwsEntities() && (world.isRemote == (entity instanceof PlayerEntity))) { Vec3d motionBoost = context.motion.add(0, context.motion.length() / 4f, 0); int maxBoost = 4; diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/actors/DrillBlock.java b/src/main/java/com/simibubi/create/content/contraptions/components/actors/DrillBlock.java index 437390c00..f82c646c0 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/actors/DrillBlock.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/actors/DrillBlock.java @@ -49,7 +49,7 @@ public class DrillBlock extends DirectionalKineticBlock implements ITE { if (te.getSpeed() == 0) return; - entityIn.attackEntityFrom(damageSourceDrill, MathHelper.clamp(Math.abs(te.getSpeed() / 32f) + 1, 0, 20)); + entityIn.attackEntityFrom(damageSourceDrill, (float) getDamage(te.getSpeed())); }); } @@ -89,4 +89,11 @@ public class DrillBlock extends DirectionalKineticBlock implements ITE { if (te.getSpeed() == 0) return; - entityIn.attackEntityFrom(damageSourceSaw, MathHelper.clamp(Math.abs(te.getSpeed() / 32f) + 1, 0, 20)); + entityIn.attackEntityFrom(damageSourceSaw, (float) DrillBlock.getDamage(te.getSpeed())); }); }