Back in the early game

- Hand cranks can now be made without the need of brass
- Fixed tooltip referrals
- Crafters can no longer be covered when while they are holding an item
- Pushed some numbers around
This commit is contained in:
simibubi 2020-10-22 01:48:24 +02:00
parent b14664d45f
commit b2cd378b52
13 changed files with 34 additions and 24 deletions

View file

@ -2566,7 +2566,7 @@ b7fa20d10c0e0e7270b1c0d6f3881b8e25b39bea data/create/recipes/crafting/kinetics/g
9899501f18e7f3452d4ab4bf658079ab414aa176 data/create/recipes/crafting/kinetics/green_seat.json 9899501f18e7f3452d4ab4bf658079ab414aa176 data/create/recipes/crafting/kinetics/green_seat.json
6f65a84e00f25d956a6ae834678ff781569b243a data/create/recipes/crafting/kinetics/green_seat_from_other_seat.json 6f65a84e00f25d956a6ae834678ff781569b243a data/create/recipes/crafting/kinetics/green_seat_from_other_seat.json
63edaccace961a65aa7bd406d36894c7ca4816b8 data/create/recipes/crafting/kinetics/green_valve_handle_from_other_valve_handle.json 63edaccace961a65aa7bd406d36894c7ca4816b8 data/create/recipes/crafting/kinetics/green_valve_handle_from_other_valve_handle.json
9af4b862db77034f61d2d35e45db00f8dda6dc4b data/create/recipes/crafting/kinetics/hand_crank.json 9f08bdaeec88e04a43c2dc103869f9648deee079 data/create/recipes/crafting/kinetics/hand_crank.json
237541c1c318b8426734c1c43be31fbd01413d39 data/create/recipes/crafting/kinetics/large_cogwheel.json 237541c1c318b8426734c1c43be31fbd01413d39 data/create/recipes/crafting/kinetics/large_cogwheel.json
a33e3301fc6d3a446e61a1c4b8a93aff079baeba data/create/recipes/crafting/kinetics/light_blue_seat.json a33e3301fc6d3a446e61a1c4b8a93aff079baeba data/create/recipes/crafting/kinetics/light_blue_seat.json
958bb5d3aeb8d8e5dbf5d97cf5fd9ff5151575dc data/create/recipes/crafting/kinetics/light_blue_seat_from_other_seat.json 958bb5d3aeb8d8e5dbf5d97cf5fd9ff5151575dc data/create/recipes/crafting/kinetics/light_blue_seat_from_other_seat.json

View file

@ -1,19 +1,19 @@
{ {
"type": "minecraft:crafting_shaped", "type": "minecraft:crafting_shaped",
"pattern": [ "pattern": [
" B ", " S ",
"CCC", "CCC",
" S" " A"
], ],
"key": { "key": {
"S": { "A": {
"item": "create:andesite_alloy" "item": "create:andesite_alloy"
}, },
"C": { "C": {
"tag": "minecraft:planks" "tag": "minecraft:planks"
}, },
"B": { "S": {
"tag": "forge:ingots/brass" "item": "create:shaft"
} }
}, },
"result": { "result": {

View file

@ -348,7 +348,7 @@ public class AllBlocks {
public static final BlockEntry<HandCrankBlock> HAND_CRANK = REGISTRATE.block("hand_crank", HandCrankBlock::new) public static final BlockEntry<HandCrankBlock> HAND_CRANK = REGISTRATE.block("hand_crank", HandCrankBlock::new)
.initialProperties(SharedProperties::wooden) .initialProperties(SharedProperties::wooden)
.blockstate(BlockStateGen.directionalBlockProvider(true)) .blockstate(BlockStateGen.directionalBlockProvider(true))
.transform(StressConfigDefaults.setCapacity(32.0)) .transform(StressConfigDefaults.setCapacity(8.0))
.tag(AllBlockTags.BRITTLE.tag) .tag(AllBlockTags.BRITTLE.tag)
.item() .item()
.transform(customItemModel()) .transform(customItemModel())

View file

@ -186,6 +186,8 @@ public class MechanicalCrafterBlock extends HorizontalKineticBlock implements IT
if (AllItems.CRAFTER_SLOT_COVER.isIn(heldItem)) { if (AllItems.CRAFTER_SLOT_COVER.isIn(heldItem)) {
if (crafter.covered) if (crafter.covered)
return ActionResultType.PASS; return ActionResultType.PASS;
if (!crafter.inventory.isEmpty())
return ActionResultType.PASS;
crafter.covered = true; crafter.covered = true;
crafter.markDirty(); crafter.markDirty();
crafter.sendData(); crafter.sendData();

View file

@ -67,9 +67,10 @@ public class HandCrankTileEntity extends GeneratingKineticTileEntity {
updateGeneratedRotation(); updateGeneratedRotation();
} }
} }
@Override @Override
protected Block getStressConfigKey() { protected Block getStressConfigKey() {
return AllBlocks.HAND_CRANK.get(); return AllBlocks.HAND_CRANK.get();
} }
} }

View file

@ -119,7 +119,8 @@ public class WaterWheelBlock extends HorizontalKineticBlock implements ITE<Water
AllTriggers.triggerForNearbyPlayers(AllTriggers.LAVA_WHEEL, world, pos, 5); AllTriggers.triggerForNearbyPlayers(AllTriggers.LAVA_WHEEL, world, pos, 5);
} }
te.setFlow(f, (float) (flowStrength * AllConfigs.SERVER.kinetics.waterWheelSpeed.get() / 2f)); Integer flowModifier = AllConfigs.SERVER.kinetics.waterWheelFlowSpeed.get();
te.setFlow(f, (float) (flowStrength * flowModifier / 2f));
}); });
} }

View file

@ -5,6 +5,7 @@ import java.util.Map;
import com.simibubi.create.AllBlocks; import com.simibubi.create.AllBlocks;
import com.simibubi.create.content.contraptions.base.GeneratingKineticTileEntity; import com.simibubi.create.content.contraptions.base.GeneratingKineticTileEntity;
import com.simibubi.create.foundation.config.AllConfigs;
import net.minecraft.nbt.CompoundNBT; import net.minecraft.nbt.CompoundNBT;
import net.minecraft.tileentity.TileEntityType; import net.minecraft.tileentity.TileEntityType;
@ -58,6 +59,8 @@ public class WaterWheelTileEntity extends GeneratingKineticTileEntity {
float speed = 0; float speed = 0;
for (Float f : flows.values()) for (Float f : flows.values())
speed += f; speed += f;
if (speed != 0)
speed += AllConfigs.SERVER.kinetics.waterWheelBaseSpeed.get() * Math.signum(speed);
return speed; return speed;
} }

View file

@ -6,7 +6,8 @@ public class CKinetics extends ConfigBase {
public ConfigInt maxBeltLength = i(20, 5, "maxBeltLength", Comments.maxBeltLength); public ConfigInt maxBeltLength = i(20, 5, "maxBeltLength", Comments.maxBeltLength);
public ConfigInt crushingDamage = i(4, 0, "crushingDamage", Comments.crushingDamage); public ConfigInt crushingDamage = i(4, 0, "crushingDamage", Comments.crushingDamage);
public ConfigInt maxMotorSpeed = i(256, 64, "maxMotorSpeed", Comments.rpm, Comments.maxMotorSpeed); public ConfigInt maxMotorSpeed = i(256, 64, "maxMotorSpeed", Comments.rpm, Comments.maxMotorSpeed);
public ConfigInt waterWheelSpeed = i(5, 1, "waterWheelSpeed", Comments.rpm, Comments.waterWheelSpeed); public ConfigInt waterWheelBaseSpeed = i(4, 1, "waterWheelBaseSpeed", Comments.rpm, Comments.waterWheelBaseSpeed);
public ConfigInt waterWheelFlowSpeed = i(4, 1, "waterWheelFlowSpeed", Comments.rpm, Comments.waterWheelFlowSpeed);
public ConfigInt furnaceEngineSpeed = i(16, 1, "furnaceEngineSpeed", Comments.rpm, Comments.furnaceEngineSpeed); public ConfigInt furnaceEngineSpeed = i(16, 1, "furnaceEngineSpeed", Comments.rpm, Comments.furnaceEngineSpeed);
public ConfigInt maxRotationSpeed = i(256, 64, "maxRotationSpeed", Comments.rpm, Comments.maxRotationSpeed); public ConfigInt maxRotationSpeed = i(256, 64, "maxRotationSpeed", Comments.rpm, Comments.maxRotationSpeed);
public ConfigEnum<DeployerAggroSetting> ignoreDeployerAttacks = public ConfigEnum<DeployerAggroSetting> ignoreDeployerAttacks =
@ -19,7 +20,7 @@ public class CKinetics extends ConfigBase {
public ConfigInt fanPullDistance = i(20, 5, "fanPullDistance", Comments.fanPullDistance); public ConfigInt fanPullDistance = i(20, 5, "fanPullDistance", Comments.fanPullDistance);
public ConfigInt fanBlockCheckRate = i(30, 10, "fanBlockCheckRate", Comments.fanBlockCheckRate); public ConfigInt fanBlockCheckRate = i(30, 10, "fanBlockCheckRate", Comments.fanBlockCheckRate);
public ConfigInt fanRotationArgmax = i(256, 64, "fanRotationArgmax", Comments.rpm, Comments.fanRotationArgmax); public ConfigInt fanRotationArgmax = i(256, 64, "fanRotationArgmax", Comments.rpm, Comments.fanRotationArgmax);
public ConfigInt generatingFanSpeed = i(16, 0, "generatingFanSpeed", Comments.rpm, Comments.generatingFanSpeed); public ConfigInt generatingFanSpeed = i(4, 0, "generatingFanSpeed", Comments.rpm, Comments.generatingFanSpeed);
public ConfigInt inWorldProcessingTime = i(150, 0, "inWorldProcessingTime", Comments.inWorldProcessingTime); public ConfigInt inWorldProcessingTime = i(150, 0, "inWorldProcessingTime", Comments.inWorldProcessingTime);
public ConfigGroup contraptions = group(1, "contraptions", "Moving Contraptions"); public ConfigGroup contraptions = group(1, "contraptions", "Moving Contraptions");
@ -73,7 +74,8 @@ public class CKinetics extends ConfigBase {
static String highCapacity = "Minimum added Capacity by sources to be considered 'high'"; static String highCapacity = "Minimum added Capacity by sources to be considered 'high'";
static String stress = "Fine tune the kinetic stats of individual components"; static String stress = "Fine tune the kinetic stats of individual components";
static String ignoreDeployerAttacks = "Select what mobs should ignore Deployers when attacked by them."; static String ignoreDeployerAttacks = "Select what mobs should ignore Deployers when attacked by them.";
static String waterWheelSpeed = "Rotation speed gained by a water wheel for each side with running water. (halved if not against blades)"; static String waterWheelBaseSpeed = "Added rotation speed by a water wheel when at least one flow is present.";
static String waterWheelFlowSpeed = "Rotation speed gained by a water wheel for each side with running fluids. (halved if not against blades)";
static String furnaceEngineSpeed = "Base rotation speed for the furnace engine generator"; static String furnaceEngineSpeed = "Base rotation speed for the furnace engine generator";
static String disableStress = "Disable the Stress mechanic altogether."; static String disableStress = "Disable the Stress mechanic altogether.";
static String kineticValidationFrequency = "Game ticks between Kinetic Blocks checking whether their source is still valid."; static String kineticValidationFrequency = "Game ticks between Kinetic Blocks checking whether their source is still valid.";

View file

@ -330,12 +330,12 @@ public class StandardRecipeGen extends CreateRecipeProvider {
.patternLine("L L")), .patternLine("L L")),
HAND_CRANK = create(AllBlocks.HAND_CRANK).unlockedBy(I::andesite) HAND_CRANK = create(AllBlocks.HAND_CRANK).unlockedBy(I::andesite)
.viaShaped(b -> b.key('S', I.andesite()) .viaShaped(b -> b.key('A', I.andesite())
.key('C', ItemTags.PLANKS) .key('C', ItemTags.PLANKS)
.key('B', I.brass()) .key('S', I.shaft())
.patternLine(" B ") .patternLine(" S ")
.patternLine("CCC") .patternLine("CCC")
.patternLine(" S")), .patternLine(" A")),
COPPER_VALVE_HANDLE = create(AllBlocks.COPPER_VALVE_HANDLE).unlockedByTag(I::copper) COPPER_VALVE_HANDLE = create(AllBlocks.COPPER_VALVE_HANDLE).unlockedByTag(I::copper)
.viaShaped(b -> b.key('S', I.andesite()) .viaShaped(b -> b.key('S', I.andesite())

View file

@ -290,8 +290,9 @@ public class ItemDescription {
String value = ""; String value = "";
if (block instanceof WaterWheelBlock) { if (block instanceof WaterWheelBlock) {
int baseSpeed = AllConfigs.SERVER.kinetics.waterWheelSpeed.get(); int baseSpeed = AllConfigs.SERVER.kinetics.waterWheelBaseSpeed.get();
value = baseSpeed + "-" + (baseSpeed * 3); int speedmod = AllConfigs.SERVER.kinetics.waterWheelFlowSpeed.get();
value = (speedmod + baseSpeed) + "-" + (baseSpeed + (speedmod * 3));
} }
else if (block instanceof EncasedFanBlock) else if (block instanceof EncasedFanBlock)

View file

@ -196,7 +196,7 @@ public class TooltipHelper {
} }
if (tooltipReferrals.containsKey(item)) if (tooltipReferrals.containsKey(item))
return tooltipReferrals.get(item) + ".tooltip"; return tooltipReferrals.get(item).get() + ".tooltip";
return item.getTranslationKey(stack) + ".tooltip"; return item.getTranslationKey(stack) + ".tooltip";
} }

View file

@ -4,7 +4,7 @@
"textures": { "textures": {
"0": "create:block/axis", "0": "create:block/axis",
"2": "create:block/andesite_casing_short", "2": "create:block/andesite_casing_short",
"3": "create:block/brass_block", "3": "create:block/smooth_dark_log_top",
"particle": "create:block/axis" "particle": "create:block/axis"
}, },
"elements": [ "elements": [
@ -13,9 +13,9 @@
"from": [5, 5, 11], "from": [5, 5, 11],
"to": [11, 11, 14], "to": [11, 11, 14],
"faces": { "faces": {
"north": {"uv": [5, 0, 11, 6], "texture": "#3"}, "north": {"uv": [5, 5, 11, 11], "texture": "#3"},
"east": {"uv": [13, 6, 16, 12], "texture": "#3"}, "east": {"uv": [13, 6, 16, 12], "texture": "#3"},
"south": {"uv": [3, 4, 9, 10], "texture": "#3"}, "south": {"uv": [5, 5, 11, 11], "texture": "#3"},
"west": {"uv": [0, 3, 3, 9], "texture": "#3"}, "west": {"uv": [0, 3, 3, 9], "texture": "#3"},
"up": {"uv": [6, 0, 12, 3], "texture": "#3"}, "up": {"uv": [6, 0, 12, 3], "texture": "#3"},
"down": {"uv": [6, 13, 12, 16], "texture": "#3"} "down": {"uv": [6, 13, 12, 16], "texture": "#3"}

View file

@ -5,7 +5,7 @@
"0": "create:block/axis", "0": "create:block/axis",
"1": "create:block/axis_top", "1": "create:block/axis_top",
"2": "create:block/andesite_casing_short", "2": "create:block/andesite_casing_short",
"4": "create:block/brass_block", "4": "create:block/smooth_dark_log_top",
"particle": "create:block/axis" "particle": "create:block/axis"
}, },
"elements": [ "elements": [
@ -27,7 +27,7 @@
"from": [5, 5, 11], "from": [5, 5, 11],
"to": [11, 11, 14], "to": [11, 11, 14],
"faces": { "faces": {
"north": {"uv": [0, 0, 6, 6], "texture": "#4"}, "north": {"uv": [5, 5, 11, 11], "texture": "#4"},
"east": {"uv": [13, 5, 16, 11], "texture": "#4"}, "east": {"uv": [13, 5, 16, 11], "texture": "#4"},
"south": {"uv": [5, 5, 11, 11], "texture": "#4"}, "south": {"uv": [5, 5, 11, 11], "texture": "#4"},
"west": {"uv": [0, 5, 3, 11], "texture": "#4"}, "west": {"uv": [0, 5, 3, 11], "texture": "#4"},