mirror of
https://github.com/tobspr/shapez.io.git
synced 2025-12-15 19:21:49 +00:00
adjust hub goals
This commit is contained in:
parent
0540a010a6
commit
132eff5f58
@ -87,17 +87,14 @@ export const globalConfig = {
|
|||||||
puzzleMaxBoundsSize: 20,
|
puzzleMaxBoundsSize: 20,
|
||||||
puzzleValidationDurationSeconds: 30,
|
puzzleValidationDurationSeconds: 30,
|
||||||
|
|
||||||
buildingSpeeds: {
|
buildingRatios: {
|
||||||
cutter: 1 / 4,
|
cutter: 4,
|
||||||
cutterQuad: 1 / 4,
|
cutterQuad: 4,
|
||||||
rotater: 1 / 1,
|
painter: 6,
|
||||||
rotaterCCW: 1 / 1,
|
painterDouble: 8,
|
||||||
rotater180: 1 / 1,
|
painterQuad: 2,
|
||||||
painter: 1 / 6,
|
mixer: 5,
|
||||||
painterDouble: 1 / 8,
|
stacker: 8,
|
||||||
painterQuad: 1 / 2,
|
|
||||||
mixer: 1 / 5,
|
|
||||||
stacker: 1 / 8,
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// Zooming
|
// Zooming
|
||||||
|
|||||||
@ -507,55 +507,37 @@ export class HubGoals extends BasicSerializableObject {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Processor speed
|
* Processor time to process
|
||||||
* @param {enumItemProcessorTypes} processorType
|
* @param {enumItemProcessorTypes} processorType
|
||||||
* @returns {number} items / sec
|
* @returns {number} progress in tiles
|
||||||
*/
|
*/
|
||||||
getProcessorBaseSpeed(processorType) {
|
getProcessingProgress(processorType) {
|
||||||
if (this.root.gameMode.throughputDoesNotMatter()) {
|
if (this.root.gameMode.throughputDoesNotMatter()) {
|
||||||
return globalConfig.beltSpeedItemsPerSecond * globalConfig.puzzleModeSpeed * 10;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (processorType) {
|
switch (processorType) {
|
||||||
case enumItemProcessorTypes.trash:
|
case enumItemProcessorTypes.trash:
|
||||||
case enumItemProcessorTypes.hub:
|
case enumItemProcessorTypes.hub:
|
||||||
case enumItemProcessorTypes.goal:
|
case enumItemProcessorTypes.goal:
|
||||||
return 1e30;
|
|
||||||
case enumItemProcessorTypes.balancer:
|
case enumItemProcessorTypes.balancer:
|
||||||
return globalConfig.beltSpeedItemsPerSecond * this.upgradeImprovements.belt * 2;
|
|
||||||
case enumItemProcessorTypes.reader:
|
case enumItemProcessorTypes.reader:
|
||||||
return globalConfig.beltSpeedItemsPerSecond * this.upgradeImprovements.belt;
|
case enumItemProcessorTypes.rotater:
|
||||||
|
case enumItemProcessorTypes.rotaterCCW:
|
||||||
|
case enumItemProcessorTypes.rotater180:
|
||||||
|
return 0;
|
||||||
|
|
||||||
case enumItemProcessorTypes.mixer:
|
case enumItemProcessorTypes.mixer:
|
||||||
case enumItemProcessorTypes.painter:
|
case enumItemProcessorTypes.painter:
|
||||||
case enumItemProcessorTypes.painterDouble:
|
case enumItemProcessorTypes.painterDouble:
|
||||||
case enumItemProcessorTypes.painterQuad: {
|
case enumItemProcessorTypes.painterQuad: {
|
||||||
assert(
|
return this.getProgressWithUpgrades(this.upgradeImprovements.painting, processorType);
|
||||||
globalConfig.buildingSpeeds[processorType],
|
|
||||||
"Processor type has no speed set in globalConfig.buildingSpeeds: " + processorType
|
|
||||||
);
|
|
||||||
return (
|
|
||||||
globalConfig.beltSpeedItemsPerSecond *
|
|
||||||
this.upgradeImprovements.painting *
|
|
||||||
globalConfig.buildingSpeeds[processorType]
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
case enumItemProcessorTypes.cutter:
|
case enumItemProcessorTypes.cutter:
|
||||||
case enumItemProcessorTypes.cutterQuad:
|
case enumItemProcessorTypes.cutterQuad:
|
||||||
case enumItemProcessorTypes.rotater:
|
|
||||||
case enumItemProcessorTypes.rotaterCCW:
|
|
||||||
case enumItemProcessorTypes.rotater180:
|
|
||||||
case enumItemProcessorTypes.stacker: {
|
case enumItemProcessorTypes.stacker: {
|
||||||
assert(
|
return this.getProgressWithUpgrades(this.upgradeImprovements.processors, processorType);
|
||||||
globalConfig.buildingSpeeds[processorType],
|
|
||||||
"Processor type has no speed set in globalConfig.buildingSpeeds: " + processorType
|
|
||||||
);
|
|
||||||
return (
|
|
||||||
globalConfig.beltSpeedItemsPerSecond *
|
|
||||||
this.upgradeImprovements.processors *
|
|
||||||
globalConfig.buildingSpeeds[processorType]
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
if (MOD_ITEM_PROCESSOR_SPEEDS[processorType]) {
|
if (MOD_ITEM_PROCESSOR_SPEEDS[processorType]) {
|
||||||
@ -564,6 +546,33 @@ export class HubGoals extends BasicSerializableObject {
|
|||||||
assertAlways(false, "invalid processor type: " + processorType);
|
assertAlways(false, "invalid processor type: " + processorType);
|
||||||
}
|
}
|
||||||
|
|
||||||
return 1 / globalConfig.beltSpeedItemsPerSecond;
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {number} upgrade
|
||||||
|
* @param {number} upgrade
|
||||||
|
*/
|
||||||
|
getProgressWithUpgrades(upgrade, processorType) {
|
||||||
|
assert(
|
||||||
|
globalConfig.buildingRatios[processorType],
|
||||||
|
"Processor type has no speed set in globalConfig.buildingRatios: " + processorType
|
||||||
|
);
|
||||||
|
|
||||||
|
const progress = globalConfig.buildingRatios[processorType] - 1;
|
||||||
|
return progress / upgrade;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Processor speed
|
||||||
|
* @param {enumItemProcessorTypes} processorType
|
||||||
|
* @returns {number} items/sec
|
||||||
|
*/
|
||||||
|
getProcessorBaseSpeed(processorType) {
|
||||||
|
const progress = this.getProcessingProgress(processorType);
|
||||||
|
if (!progress) {
|
||||||
|
return this.getBeltBaseSpeed();
|
||||||
|
}
|
||||||
|
return globalConfig.beltSpeedItemsPerSecond / (progress + 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user