Playtest Issues, Part V

- Changed a few stress balancing params
- Fixed crash when resource reloading outside of a world
- Fixed crash when moving a tile-entity only contraption with shaders preset
- Fixed drill not breaking blocks after being moved
- Lowered max speed of Mechanical Bearing in generator mode
- Redstone wire and diodes aswell as flower pots can now be moved
- Fixed in-world neighbour checking of moved blocks that are not doors
- Bumped version in mods.toml
This commit is contained in:
simibubi 2020-03-18 21:38:56 +01:00
parent 4eaa077390
commit 75145976d3
10 changed files with 43 additions and 20 deletions

View file

@ -31,8 +31,8 @@ public class CKinetics extends ConfigBase {
public ConfigFloat mediumSpeed = f(30, 0, 4096, "mediumSpeed", Comments.rpm, Comments.mediumSpeed); public ConfigFloat mediumSpeed = f(30, 0, 4096, "mediumSpeed", Comments.rpm, Comments.mediumSpeed);
public ConfigFloat fastSpeed = f(100, 0, 65535, "fastSpeed", Comments.rpm, Comments.fastSpeed); public ConfigFloat fastSpeed = f(100, 0, 65535, "fastSpeed", Comments.rpm, Comments.fastSpeed);
public ConfigFloat mediumStressImpact = public ConfigFloat mediumStressImpact =
f(8, 0, 4096, "mediumStressImpact", Comments.su, Comments.mediumStressImpact); f(4, 0, 4096, "mediumStressImpact", Comments.su, Comments.mediumStressImpact);
public ConfigFloat highStressImpact = f(32, 0, 65535, "highStressImpact", Comments.su, Comments.highStressImpact); public ConfigFloat highStressImpact = f(8, 0, 65535, "highStressImpact", Comments.su, Comments.highStressImpact);
public ConfigFloat mediumCapacity = f(128, 0, 4096, "mediumCapacity", Comments.su, Comments.mediumCapacity); public ConfigFloat mediumCapacity = f(128, 0, 4096, "mediumCapacity", Comments.su, Comments.mediumCapacity);
public ConfigFloat highCapacity = f(512, 0, 65535, "highCapacity", Comments.su, Comments.highCapacity); public ConfigFloat highCapacity = f(512, 0, 65535, "highCapacity", Comments.su, Comments.highCapacity);

View file

@ -12,12 +12,12 @@ public class StressConfigDefaults {
case FURNACE_ENGINE: case FURNACE_ENGINE:
return 512; return 512;
case MECHANICAL_BEARING: case MECHANICAL_BEARING:
return 128; return 256;
case ENCASED_FAN: case ENCASED_FAN:
case HAND_CRANK: case HAND_CRANK:
return 64; return 16;
case WATER_WHEEL: case WATER_WHEEL:
return 32; return 4;
default: default:
return -1; return -1;
} }
@ -28,29 +28,25 @@ public class StressConfigDefaults {
switch (block) { switch (block) {
case CRUSHING_WHEEL: case CRUSHING_WHEEL:
case MECHANICAL_PRESS: case MECHANICAL_PRESS:
return 32; return 8;
case DRILL: case DRILL:
case SAW: case SAW:
case DEPLOYER: case DEPLOYER:
return 16;
case ENCASED_FAN: case ENCASED_FAN:
case MECHANICAL_MIXER: case MECHANICAL_MIXER:
case MECHANICAL_CRAFTER: return 4;
return 8;
case MECHANICAL_CRAFTER:
case TURNTABLE: case TURNTABLE:
case MECHANICAL_PISTON: case MECHANICAL_PISTON:
case MECHANICAL_BEARING: case MECHANICAL_BEARING:
case CLOCKWORK_BEARING: case CLOCKWORK_BEARING:
case ROPE_PULLEY: case ROPE_PULLEY:
case STICKY_MECHANICAL_PISTON: case STICKY_MECHANICAL_PISTON:
return 4;
case BELT:
return 2; return 2;
case BELT:
case CUCKOO_CLOCK: case CUCKOO_CLOCK:
return 1; return 1;

View file

@ -20,8 +20,6 @@ public class ToggleDebugCommand {
.then(Commands.argument("value", BoolArgumentType.bool()) .then(Commands.argument("value", BoolArgumentType.bool())
.executes(ctx -> { .executes(ctx -> {
boolean value = BoolArgumentType.getBool(ctx, "value"); boolean value = BoolArgumentType.getBool(ctx, "value");
System.out.println("Command toggleDebug " + value);
DistExecutor.runWhenOn(Dist.CLIENT, () -> () -> AllConfigs.CLIENT.rainbowDebug.set(value)); DistExecutor.runWhenOn(Dist.CLIENT, () -> () -> AllConfigs.CLIENT.rainbowDebug.set(value));
DistExecutor.runWhenOn(Dist.DEDICATED_SERVER, () -> () -> DistExecutor.runWhenOn(Dist.DEDICATED_SERVER, () -> () ->

View file

@ -17,6 +17,7 @@ import com.simibubi.create.modules.contraptions.components.flywheel.engine.Engin
import com.simibubi.create.modules.curiosities.tools.AllToolTiers; import com.simibubi.create.modules.curiosities.tools.AllToolTiers;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.player.ClientPlayerEntity;
import net.minecraft.client.resources.I18n; import net.minecraft.client.resources.I18n;
import net.minecraft.inventory.EquipmentSlotType; import net.minecraft.inventory.EquipmentSlotType;
import net.minecraft.item.BlockItem; import net.minecraft.item.BlockItem;
@ -86,8 +87,10 @@ public class TooltipHelper {
public static boolean hasTooltip(ItemStack stack) { public static boolean hasTooltip(ItemStack stack) {
checkLocale(); checkLocale();
ClientPlayerEntity player = Minecraft.getInstance().player;
boolean hasGlasses = boolean hasGlasses =
AllItems.GOGGLES.typeOf(Minecraft.getInstance().player.getItemStackFromSlot(EquipmentSlotType.HEAD)); player != null && AllItems.GOGGLES.typeOf(player.getItemStackFromSlot(EquipmentSlotType.HEAD));
if (hasGlasses != gogglesMode) { if (hasGlasses != gogglesMode) {
gogglesMode = hasGlasses; gogglesMode = hasGlasses;
cachedTooltips.clear(); cachedTooltips.clear();

View file

@ -100,6 +100,8 @@ public class SuperByteBuffer {
} }
public void renderInto(BufferBuilder buffer) { public void renderInto(BufferBuilder buffer) {
if (original.limit() == 0)
return;
buffer.putBulkData(build()); buffer.putBulkData(build());
} }

View file

@ -39,6 +39,13 @@ public abstract class BlockBreakingKineticTileEntity extends KineticTileEntity {
if (destroyProgress == -1) if (destroyProgress == -1)
destroyNextTick(); destroyNextTick();
} }
@Override
public void lazyTick() {
super.lazyTick();
if (ticksUntilNextProgress == -1)
destroyNextTick();
}
public void destroyNextTick() { public void destroyNextTick() {
ticksUntilNextProgress = 1; ticksUntilNextProgress = 1;

View file

@ -11,9 +11,12 @@ import net.minecraft.block.Block;
import net.minecraft.block.BlockState; import net.minecraft.block.BlockState;
import net.minecraft.block.Blocks; import net.minecraft.block.Blocks;
import net.minecraft.block.DoorBlock; import net.minecraft.block.DoorBlock;
import net.minecraft.block.FlowerPotBlock;
import net.minecraft.block.HorizontalFaceBlock; import net.minecraft.block.HorizontalFaceBlock;
import net.minecraft.block.LadderBlock; import net.minecraft.block.LadderBlock;
import net.minecraft.block.RedstoneDiodeBlock;
import net.minecraft.block.RedstoneWallTorchBlock; import net.minecraft.block.RedstoneWallTorchBlock;
import net.minecraft.block.RedstoneWireBlock;
import net.minecraft.block.TorchBlock; import net.minecraft.block.TorchBlock;
import net.minecraft.block.WallTorchBlock; import net.minecraft.block.WallTorchBlock;
import net.minecraft.block.material.PushReaction; import net.minecraft.block.material.PushReaction;
@ -61,6 +64,8 @@ public class BlockMovementTraits {
return true; return true;
if (block instanceof TorchBlock) if (block instanceof TorchBlock)
return true; return true;
if (block instanceof FlowerPotBlock)
return true;
if (block instanceof AbstractPressurePlateBlock) if (block instanceof AbstractPressurePlateBlock)
return true; return true;
if (block instanceof DoorBlock) if (block instanceof DoorBlock)
@ -69,6 +74,10 @@ public class BlockMovementTraits {
return true; return true;
if (block instanceof AbstractRailBlock) if (block instanceof AbstractRailBlock)
return true; return true;
if (block instanceof RedstoneDiodeBlock)
return true;
if (block instanceof RedstoneWireBlock)
return true;
return false; return false;
} }
@ -85,6 +94,12 @@ public class BlockMovementTraits {
return direction == Direction.DOWN; return direction == Direction.DOWN;
if (block instanceof DoorBlock) if (block instanceof DoorBlock)
return direction == Direction.DOWN; return direction == Direction.DOWN;
if (block instanceof FlowerPotBlock)
return direction == Direction.DOWN;
if (block instanceof RedstoneDiodeBlock)
return direction == Direction.DOWN;
if (block instanceof RedstoneWireBlock)
return direction == Direction.DOWN;
if (block instanceof RedstoneWallTorchBlock) if (block instanceof RedstoneWallTorchBlock)
return state.get(RedstoneWallTorchBlock.FACING) == direction.getOpposite(); return state.get(RedstoneWallTorchBlock.FACING) == direction.getOpposite();
if (block instanceof TorchBlock) if (block instanceof TorchBlock)

View file

@ -395,7 +395,9 @@ public abstract class Contraption {
if (customRemoval.test(add, block.state)) if (customRemoval.test(add, block.state))
continue; continue;
world.getWorld().removeTileEntity(add); world.getWorld().removeTileEntity(add);
int flags = 67 | 32 | 16; int flags = 67;
if (world.getBlockState(add).getBlock() instanceof DoorBlock)
flags = flags | 32 | 16;
world.setBlockState(add, Blocks.AIR.getDefaultState(), flags); world.setBlockState(add, Blocks.AIR.getDefaultState(), flags);
} }
} }

View file

@ -92,7 +92,7 @@ public class MechanicalBearingTileEntity extends GeneratingKineticTileEntity imp
if (movedContraption == null) if (movedContraption == null)
return 0; return 0;
int sails = ((BearingContraption) movedContraption.getContraption()).getSailBlocks() / 8; int sails = ((BearingContraption) movedContraption.getContraption()).getSailBlocks() / 8;
return MathHelper.clamp(sails, 1, 64); return MathHelper.clamp(sails, 1, 16);
} }
@Override @Override

View file

@ -4,12 +4,12 @@ loaderVersion="[28,)"
[[mods]] [[mods]]
modId="create" modId="create"
version="0.1.1b" version="0.2"
displayName="Create" displayName="Create"
#updateJSONURL="" #updateJSONURL=""
authors="simibubi" authors="simibubi"
description=''' description='''
A handful of additions to aid the creative survivalist.''' Technology that empowers the player.'''
[[dependencies.create]] [[dependencies.create]]
modId="forge" modId="forge"