Minor artwork update
BIN
res/logo.png
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 71 KiB After Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 87 KiB After Width: | Height: | Size: 34 KiB |
@ -431,6 +431,6 @@
|
|||||||
"format": "RGBA8888",
|
"format": "RGBA8888",
|
||||||
"size": {"w":121,"h":240},
|
"size": {"w":121,"h":240},
|
||||||
"scale": "0.1",
|
"scale": "0.1",
|
||||||
"smartupdate": "$TexturePacker:SmartUpdate:e1aa43844bd41a62665cbb0c503ebb65:4482f83c3403490091eed64b07ce6591:f159918d23e5952766c6d23ab52278c6$"
|
"smartupdate": "$TexturePacker:SmartUpdate:6f541b04fa898735b7720261181cc97b:b18d1c683463edcbb86f64fc0c0cfac0:f159918d23e5952766c6d23ab52278c6$"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
@ -431,6 +431,6 @@
|
|||||||
"format": "RGBA8888",
|
"format": "RGBA8888",
|
||||||
"size": {"w":1007,"h":1968},
|
"size": {"w":1007,"h":1968},
|
||||||
"scale": "1",
|
"scale": "1",
|
||||||
"smartupdate": "$TexturePacker:SmartUpdate:e1aa43844bd41a62665cbb0c503ebb65:4482f83c3403490091eed64b07ce6591:f159918d23e5952766c6d23ab52278c6$"
|
"smartupdate": "$TexturePacker:SmartUpdate:6f541b04fa898735b7720261181cc97b:b18d1c683463edcbb86f64fc0c0cfac0:f159918d23e5952766c6d23ab52278c6$"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Before Width: | Height: | Size: 400 KiB After Width: | Height: | Size: 390 KiB |
@ -431,6 +431,6 @@
|
|||||||
"format": "RGBA8888",
|
"format": "RGBA8888",
|
||||||
"size": {"w":591,"h":252},
|
"size": {"w":591,"h":252},
|
||||||
"scale": "0.25",
|
"scale": "0.25",
|
||||||
"smartupdate": "$TexturePacker:SmartUpdate:e1aa43844bd41a62665cbb0c503ebb65:4482f83c3403490091eed64b07ce6591:f159918d23e5952766c6d23ab52278c6$"
|
"smartupdate": "$TexturePacker:SmartUpdate:6f541b04fa898735b7720261181cc97b:b18d1c683463edcbb86f64fc0c0cfac0:f159918d23e5952766c6d23ab52278c6$"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Before Width: | Height: | Size: 87 KiB After Width: | Height: | Size: 85 KiB |
@ -431,6 +431,6 @@
|
|||||||
"format": "RGBA8888",
|
"format": "RGBA8888",
|
||||||
"size": {"w":1023,"h":509},
|
"size": {"w":1023,"h":509},
|
||||||
"scale": "0.5",
|
"scale": "0.5",
|
||||||
"smartupdate": "$TexturePacker:SmartUpdate:e1aa43844bd41a62665cbb0c503ebb65:4482f83c3403490091eed64b07ce6591:f159918d23e5952766c6d23ab52278c6$"
|
"smartupdate": "$TexturePacker:SmartUpdate:6f541b04fa898735b7720261181cc97b:b18d1c683463edcbb86f64fc0c0cfac0:f159918d23e5952766c6d23ab52278c6$"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Before Width: | Height: | Size: 204 KiB After Width: | Height: | Size: 198 KiB |
@ -431,6 +431,6 @@
|
|||||||
"format": "RGBA8888",
|
"format": "RGBA8888",
|
||||||
"size": {"w":1125,"h":999},
|
"size": {"w":1125,"h":999},
|
||||||
"scale": "0.75",
|
"scale": "0.75",
|
||||||
"smartupdate": "$TexturePacker:SmartUpdate:e1aa43844bd41a62665cbb0c503ebb65:4482f83c3403490091eed64b07ce6591:f159918d23e5952766c6d23ab52278c6$"
|
"smartupdate": "$TexturePacker:SmartUpdate:6f541b04fa898735b7720261181cc97b:b18d1c683463edcbb86f64fc0c0cfac0:f159918d23e5952766c6d23ab52278c6$"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Before Width: | Height: | Size: 413 KiB After Width: | Height: | Size: 402 KiB |
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 50 KiB |
@ -10,7 +10,7 @@
|
|||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: flex-start;
|
align-items: flex-start;
|
||||||
@include S(border-radius, 4px);
|
@include S(border-radius, 4px);
|
||||||
background: rgba(#333, 0.5);
|
background: rgba(#333, 0.9);
|
||||||
@include S(width, 200px);
|
@include S(width, 200px);
|
||||||
|
|
||||||
.buildingLabel {
|
.buildingLabel {
|
||||||
|
@ -59,7 +59,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
&.selected {
|
&.selected {
|
||||||
background: rgb(140, 229, 140) !important;
|
background: rgb(173, 221, 253) !important;
|
||||||
transform: scale(1.05);
|
transform: scale(1.05);
|
||||||
.keybinding {
|
.keybinding {
|
||||||
color: #111;
|
color: #111;
|
||||||
|
@ -25,12 +25,12 @@
|
|||||||
> .dialogInner {
|
> .dialogInner {
|
||||||
background: #fff;
|
background: #fff;
|
||||||
@include S(min-width, 500px);
|
@include S(min-width, 500px);
|
||||||
max-width: calc(100vw - #{D(50px)});
|
max-width: calc(100vw - #{D(40px)});
|
||||||
max-height: calc(100vh - #{D(50px)});
|
max-height: calc(100vh - #{D(40px)});
|
||||||
@include S(border-radius, 4px);
|
@include S(border-radius, 4px);
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
@include S(padding, 15px);
|
@include S(padding, 12px);
|
||||||
pointer-events: all;
|
pointer-events: all;
|
||||||
|
|
||||||
> .title {
|
> .title {
|
||||||
@ -38,6 +38,7 @@
|
|||||||
margin: 0;
|
margin: 0;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
display: grid;
|
display: grid;
|
||||||
|
align-items: center;
|
||||||
grid-template-columns: 1fr auto;
|
grid-template-columns: 1fr auto;
|
||||||
@include S(margin-bottom, 10px);
|
@include S(margin-bottom, 10px);
|
||||||
|
|
||||||
@ -45,7 +46,7 @@
|
|||||||
opacity: 0.7;
|
opacity: 0.7;
|
||||||
@include S(width, 20px);
|
@include S(width, 20px);
|
||||||
@include S(height, 20px);
|
@include S(height, 20px);
|
||||||
background: uiResource("icons/close.png") center center / 60% no-repeat;
|
background: uiResource("icons/close.png") center center / 80% no-repeat;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
pointer-events: all;
|
pointer-events: all;
|
||||||
transition: opacity 0.2s ease-in-out;
|
transition: opacity 0.2s ease-in-out;
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
@include S(border-radius, 3px);
|
@include S(border-radius, 3px);
|
||||||
@include S(margin-bottom, 4px);
|
@include S(margin-bottom, 4px);
|
||||||
@include S(padding, 5px, 10px);
|
@include S(padding, 5px, 10px);
|
||||||
@include S(grid-row-gap, 5px);
|
@include S(grid-row-gap, 1px);
|
||||||
@include S(height, 95px);
|
@include S(height, 85px);
|
||||||
grid-template-rows: #{D(20px)} auto;
|
grid-template-rows: #{D(20px)} auto;
|
||||||
|
|
||||||
&:last-child {
|
&:last-child {
|
||||||
@ -19,38 +19,40 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.title {
|
.title {
|
||||||
grid-column: 2 / 3;
|
grid-column: 1 / 3;
|
||||||
grid-row: 1 / 2;
|
grid-row: 1 / 2;
|
||||||
@include Heading;
|
@include PlainText;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
flex-direction: row-reverse;
|
||||||
|
justify-content: flex-end;
|
||||||
|
|
||||||
.tier {
|
.tier {
|
||||||
@include S(margin-left, 5px);
|
@include S(margin-right, 9px);
|
||||||
background: $colorGreenBright;
|
background: $colorGreenBright;
|
||||||
@include S(border-radius, 4px);
|
@include S(border-radius, 2px);
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
@include PlainText;
|
@include PlainText;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
|
text-align: center;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
@include S(margin-top, 1px);
|
@include S(width, 45px);
|
||||||
|
|
||||||
@include S(padding, 0px, 5px);
|
@include S(padding, 0px, 5px);
|
||||||
|
|
||||||
&[data-tier="0"] {
|
&[data-tier="0"] {
|
||||||
background-color: rgb(73, 186, 190);
|
background-color: rgb(73, 186, 190);
|
||||||
}
|
}
|
||||||
&[data-tier="1"] {
|
&[data-tier="1"] {
|
||||||
background-color: rgb(73, 94, 190);
|
background-color: rgb(88, 110, 207);
|
||||||
}
|
}
|
||||||
&[data-tier="2"] {
|
&[data-tier="2"] {
|
||||||
background-color: rgb(186, 73, 190);
|
background-color: rgb(189, 100, 192);
|
||||||
}
|
}
|
||||||
&[data-tier="3"] {
|
&[data-tier="3"] {
|
||||||
background-color: rgb(96, 190, 73);
|
background-color: rgb(117, 192, 98);
|
||||||
}
|
}
|
||||||
&[data-tier="4"] {
|
&[data-tier="4"] {
|
||||||
background-color: rgb(190, 91, 73);
|
background-color: rgb(243, 77, 48);
|
||||||
}
|
}
|
||||||
&[data-tier="5"] {
|
&[data-tier="5"] {
|
||||||
background-color: rgb(219, 184, 29);
|
background-color: rgb(219, 184, 29);
|
||||||
@ -64,13 +66,15 @@
|
|||||||
.icon {
|
.icon {
|
||||||
@include S(width, 40px);
|
@include S(width, 40px);
|
||||||
@include S(height, 40px);
|
@include S(height, 40px);
|
||||||
background: center center / contain no-repeat;
|
background: center center / 80% no-repeat;
|
||||||
align-self: center;
|
align-self: center;
|
||||||
justify-self: center;
|
justify-self: center;
|
||||||
grid-column: 1 / 2;
|
grid-column: 1 / 2;
|
||||||
grid-row: 1 / 4;
|
grid-row: 2 / 4;
|
||||||
@include S(margin-right, 20px);
|
@include S(margin-right, 30px);
|
||||||
opacity: 0.2;
|
@include S(margin-left, 10px);
|
||||||
|
opacity: 0.32;
|
||||||
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.description {
|
.description {
|
||||||
@ -87,7 +91,7 @@
|
|||||||
grid-row: 3 / 4;
|
grid-row: 3 / 4;
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-auto-flow: column;
|
grid-auto-flow: column;
|
||||||
@include S(grid-gap, 15px);
|
@include S(grid-gap, 9px);
|
||||||
justify-content: start;
|
justify-content: start;
|
||||||
|
|
||||||
.requirement {
|
.requirement {
|
||||||
@ -110,7 +114,7 @@
|
|||||||
|
|
||||||
@include S(line-height, 13px);
|
@include S(line-height, 13px);
|
||||||
@include S(border-radius, 2px);
|
@include S(border-radius, 2px);
|
||||||
@include S(padding, 0, 2px, 3px);
|
@include S(padding, 1px, 2px, 2px);
|
||||||
position: relative;
|
position: relative;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
@include S(min-width, 50px);
|
@include S(min-width, 50px);
|
||||||
@ -140,7 +144,7 @@
|
|||||||
button.buy {
|
button.buy {
|
||||||
grid-column: 3 / 4;
|
grid-column: 3 / 4;
|
||||||
grid-row: 3 / 4;
|
grid-row: 3 / 4;
|
||||||
align-self: end;
|
align-self: center;
|
||||||
justify-self: end;
|
justify-self: end;
|
||||||
// @include S(padding, 4px, 5px);
|
// @include S(padding, 4px, 5px);
|
||||||
// @include PlainText;
|
// @include PlainText;
|
||||||
|
@ -41,7 +41,7 @@
|
|||||||
.playButton {
|
.playButton {
|
||||||
@include SuperHeading;
|
@include SuperHeading;
|
||||||
@include S(width, 130px);
|
@include S(width, 130px);
|
||||||
@include S(padding, 15px, 20px, 10px);
|
@include S(padding, 15px, 20px);
|
||||||
letter-spacing: 0.3em !important;
|
letter-spacing: 0.3em !important;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
background-color: #55585a;
|
background-color: #55585a;
|
||||||
@ -64,12 +64,10 @@
|
|||||||
justify-content: center;
|
justify-content: center;
|
||||||
background: #fafafa;
|
background: #fafafa;
|
||||||
@include S(padding, 5px);
|
@include S(padding, 5px);
|
||||||
|
@include S(padding-left, 10px);
|
||||||
@include S(border-radius, 4px);
|
@include S(border-radius, 4px);
|
||||||
@include S(margin-left, 10px);
|
@include S(margin-left, 10px);
|
||||||
@include SuperSmallText();
|
@include SuperSmallText();
|
||||||
border: #{D(1px)} solid #44484a;
|
|
||||||
border-bottom: #{D(3px)} solid #44484a;
|
|
||||||
box-shadow: #{D(1px)} #{D(2px)} #{D(3px)} 0 rgba(0, 10, 20, 0.1);
|
|
||||||
|
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
@ -88,15 +86,15 @@
|
|||||||
|
|
||||||
.thirdpartyLogo {
|
.thirdpartyLogo {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
width: 100%;
|
width: 80%;
|
||||||
height: 100%;
|
height: 80%;
|
||||||
background: center center / 85% no-repeat;
|
background: center center / 80% no-repeat;
|
||||||
&.githubLogo {
|
&.githubLogo {
|
||||||
background-image: uiResource("main_menu/github.png");
|
background-image: uiResource("main_menu/github.png");
|
||||||
}
|
}
|
||||||
&.discordLogo {
|
&.discordLogo {
|
||||||
background-image: uiResource("main_menu/discord.png");
|
background-image: uiResource("main_menu/discord.png");
|
||||||
background-size: 100%;
|
background-size: 95%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -23,7 +23,7 @@ export const globalConfig = {
|
|||||||
physicsDeltaSeconds: 0,
|
physicsDeltaSeconds: 0,
|
||||||
|
|
||||||
// Update physics at N fps, independent of rendering
|
// Update physics at N fps, independent of rendering
|
||||||
physicsUpdateRate: 60,
|
physicsUpdateRate: 55,
|
||||||
|
|
||||||
// Map
|
// Map
|
||||||
mapChunkSize: 32,
|
mapChunkSize: 32,
|
||||||
@ -39,8 +39,8 @@ export const globalConfig = {
|
|||||||
undergroundBeltMaxTiles: 5,
|
undergroundBeltMaxTiles: 5,
|
||||||
|
|
||||||
buildingSpeeds: {
|
buildingSpeeds: {
|
||||||
cutter: 1 / 6,
|
cutter: 1 / 2,
|
||||||
rotater: 1 / 2,
|
rotater: 1 / 1,
|
||||||
painter: 1 / 3,
|
painter: 1 / 3,
|
||||||
mixer: 1 / 2,
|
mixer: 1 / 2,
|
||||||
stacker: 1 / 5,
|
stacker: 1 / 5,
|
||||||
@ -66,7 +66,7 @@ export const globalConfig = {
|
|||||||
|
|
||||||
debug: {
|
debug: {
|
||||||
/* dev:start */
|
/* dev:start */
|
||||||
fastGameEnter: false,
|
fastGameEnter: true,
|
||||||
noArtificialDelays: true,
|
noArtificialDelays: true,
|
||||||
disableSavegameWrite: false,
|
disableSavegameWrite: false,
|
||||||
showEntityBounds: false,
|
showEntityBounds: false,
|
||||||
|
@ -24,7 +24,7 @@ export class MetaBeltBaseBuilding extends MetaBuilding {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getDescription() {
|
getDescription() {
|
||||||
return "Transports items, hold and drag to place multiple, press 'R' to rotate.";
|
return "Transports items, hold and drag to place multiple.";
|
||||||
}
|
}
|
||||||
|
|
||||||
getPreviewSprite(rotationVariant) {
|
getPreviewSprite(rotationVariant) {
|
||||||
|
@ -18,7 +18,7 @@ export class MetaSplitterBuilding extends MetaBuilding {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getName() {
|
getName() {
|
||||||
return "Distribute";
|
return "Balancer";
|
||||||
}
|
}
|
||||||
|
|
||||||
getSilhouetteColor() {
|
getSilhouetteColor() {
|
||||||
@ -26,7 +26,7 @@ export class MetaSplitterBuilding extends MetaBuilding {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getDescription() {
|
getDescription() {
|
||||||
return "Accepts up to two inputs and evenly distributes them on the outputs. Can also be used to merge two inputs into one output.";
|
return "Multifunctional - Evenly distributes all inputs onto all outputs.";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -311,7 +311,7 @@ export class HubGoals extends BasicSerializableObject {
|
|||||||
case enumItemProcessorTypes.hub:
|
case enumItemProcessorTypes.hub:
|
||||||
return 1e30;
|
return 1e30;
|
||||||
case enumItemProcessorTypes.splitter:
|
case enumItemProcessorTypes.splitter:
|
||||||
return (2 / globalConfig.beltSpeedItemsPerSecond) * this.upgradeImprovements.processors;
|
return (2 / globalConfig.beltSpeedItemsPerSecond) * this.upgradeImprovements.belt;
|
||||||
case enumItemProcessorTypes.cutter:
|
case enumItemProcessorTypes.cutter:
|
||||||
case enumItemProcessorTypes.rotater:
|
case enumItemProcessorTypes.rotater:
|
||||||
case enumItemProcessorTypes.stacker:
|
case enumItemProcessorTypes.stacker:
|
||||||
|
@ -162,15 +162,21 @@ export class MapChunk {
|
|||||||
weights = {
|
weights = {
|
||||||
[enumSubShape.rect]: 100,
|
[enumSubShape.rect]: 100,
|
||||||
[enumSubShape.circle]: Math_round(50 + clamp(distanceToOriginInChunks * 2, 0, 50)),
|
[enumSubShape.circle]: Math_round(50 + clamp(distanceToOriginInChunks * 2, 0, 50)),
|
||||||
[enumSubShape.star]: Math_round(20 + clamp(distanceToOriginInChunks * 2, 0, 30)),
|
[enumSubShape.star]: Math_round(5 + clamp(distanceToOriginInChunks, 0, 30)),
|
||||||
[enumSubShape.windmill]: Math_round(5 + clamp(distanceToOriginInChunks * 2, 0, 20)),
|
[enumSubShape.windmill]: Math_round(3 + clamp(distanceToOriginInChunks / 2, 0, 20)),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (distanceToOriginInChunks < 5) {
|
||||||
|
// Initial chunks can not spawn the good stuff
|
||||||
|
weights[enumSubShape.star] = 0;
|
||||||
|
weights[enumSubShape.windmill] = 0;
|
||||||
|
}
|
||||||
|
|
||||||
if (distanceToOriginInChunks < 7) {
|
if (distanceToOriginInChunks < 7) {
|
||||||
// Initial chunk patches always have the same shape
|
// Initial chunk patches always have the same shape
|
||||||
const subShape = this.internalGenerateRandomSubShape(weights);
|
const subShape = this.internalGenerateRandomSubShape(weights);
|
||||||
subShapes = [subShape, subShape, subShape, subShape];
|
subShapes = [subShape, subShape, subShape, subShape];
|
||||||
} else if (distanceToOriginInChunks < 12) {
|
} else if (distanceToOriginInChunks < 17) {
|
||||||
// Later patches can also have mixed ones
|
// Later patches can also have mixed ones
|
||||||
const subShapeA = this.internalGenerateRandomSubShape(weights);
|
const subShapeA = this.internalGenerateRandomSubShape(weights);
|
||||||
const subShapeB = this.internalGenerateRandomSubShape(weights);
|
const subShapeB = this.internalGenerateRandomSubShape(weights);
|
||||||
|
@ -43,7 +43,7 @@ export const UPGRADES = {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
required: [{ shape: "RgRgSpSp:CwSwCwSw:Cr--Sw--", amount: 80000 }],
|
required: [{ shape: "RgRgSpSp:CwSwCwSw:Cr--Sw--", amount: 80000 }],
|
||||||
improvement: 8,
|
improvement: 4,
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
@ -66,7 +66,7 @@ export const UPGRADES = {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
required: [{ shape: "WyWgWyWg:CbCpCbCp:Rp----Rp", amount: 90000 }],
|
required: [{ shape: "WyWgWyWg:CbCpCbCp:Rp----Rp", amount: 90000 }],
|
||||||
improvement: 8,
|
improvement: 4,
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
@ -89,7 +89,7 @@ export const UPGRADES = {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
required: [{ shape: "WyWgWyWg:CbCpCbCp:Rp----Rp", amount: 90000 }],
|
required: [{ shape: "WyWgWyWg:CbCpCbCp:Rp----Rp", amount: 90000 }],
|
||||||
improvement: 8,
|
improvement: 4,
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
@ -112,169 +112,10 @@ export const UPGRADES = {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
required: [{ shape: "WyWgWyWg:CbCpCbCp:Rp----Rp", amount: 90000 }],
|
required: [{ shape: "WyWgWyWg:CbCpCbCp:Rp----Rp", amount: 90000 }],
|
||||||
improvement: 8,
|
improvement: 4,
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
// cutter: {
|
|
||||||
// label: "Cut Half",
|
|
||||||
// description: improvement => "Speed +" + Math.floor(improvement * 100.0) + "%",
|
|
||||||
// tiers: [
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "----CuCu", amount: 450 }],
|
|
||||||
// improvement: 1,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CpCpCpCp", amount: 12000 }],
|
|
||||||
// improvement: 2,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CwRrWbSp:WcWrCpCw", amount: 45000 }],
|
|
||||||
// improvement: 4,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CwRrWbSp:WcWrCpCw:WpWpWb--", amount: 100000 }],
|
|
||||||
// improvement: 8,
|
|
||||||
// },
|
|
||||||
// ],
|
|
||||||
// },
|
|
||||||
// splitter: {
|
|
||||||
// label: "Distribute",
|
|
||||||
// description: improvement => "Speed +" + Math.floor(improvement * 100.0) + "%",
|
|
||||||
// tiers: [
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CuCu----", amount: 350 }],
|
|
||||||
// improvement: 1,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CrCrCrCr", amount: 7000 }],
|
|
||||||
// improvement: 2,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "WyWyWyWy", amount: 30000 }],
|
|
||||||
// improvement: 4,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "WyWyWyWy:CwSpRgRc", amount: 100000 }],
|
|
||||||
// improvement: 8,
|
|
||||||
// },
|
|
||||||
// ],
|
|
||||||
// },
|
|
||||||
|
|
||||||
// rotater: {
|
|
||||||
// label: "Rotate",
|
|
||||||
// description: improvement => "Speed +" + Math.floor(improvement * 100.0) + "%",
|
|
||||||
// tiers: [
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "RuRu----", amount: 750 }],
|
|
||||||
// improvement: 1,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "ScScScSc", amount: 3000 }],
|
|
||||||
// improvement: 2,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "ScSpRwRw:Cw----Cw", amount: 15000 }],
|
|
||||||
// improvement: 4,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "ScSpRwRw:Cw----Cw:CpCpCpCp", amount: 80000 }],
|
|
||||||
// improvement: 8,
|
|
||||||
// },
|
|
||||||
// ],
|
|
||||||
// },
|
|
||||||
|
|
||||||
// underground_belt: {
|
|
||||||
// label: "Tunnel",
|
|
||||||
// description: improvement => "Speed +" + Math.floor(improvement * 100.0) + "%",
|
|
||||||
// tiers: [
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "--CuCu--", amount: 1000 }],
|
|
||||||
// improvement: 1,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "RbRb----", amount: 9000 }],
|
|
||||||
// improvement: 2,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "RbRb----:WpWpWpWp", amount: 25000 }],
|
|
||||||
// improvement: 4,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "RbRb----:WpWpWpWp:RwRwRpRp", amount: 100000 }],
|
|
||||||
// improvement: 8,
|
|
||||||
// },
|
|
||||||
// ],
|
|
||||||
// },
|
|
||||||
|
|
||||||
// painter: {
|
|
||||||
// label: "Dye",
|
|
||||||
// description: improvement => "Speed +" + Math.floor(improvement * 100.0) + "%",
|
|
||||||
// tiers: [
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "------Ru", amount: 4000 }],
|
|
||||||
// improvement: 1,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CcCcRgRg", amount: 15000 }],
|
|
||||||
// improvement: 2,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CcCcRgRg:WgWgWgWg", amount: 35000 }],
|
|
||||||
// improvement: 4,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CcCcRgRg:WgWgWgWg:CpRpCpRp", amount: 100000 }],
|
|
||||||
// improvement: 8,
|
|
||||||
// },
|
|
||||||
// ],
|
|
||||||
// },
|
|
||||||
|
|
||||||
// mixer: {
|
|
||||||
// label: "Mix Colors",
|
|
||||||
// description: improvement => "Speed +" + Math.floor(improvement * 100.0) + "%",
|
|
||||||
// tiers: [
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "RgRgRgRg:CcCcCcCc", amount: 11000 }],
|
|
||||||
// improvement: 1,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "WyWgWyWg:CbCpCbCp", amount: 15000 }],
|
|
||||||
// improvement: 2,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CcCcRgRg:WgWgWgWg:CpRpCpRp", amount: 45000 }],
|
|
||||||
// improvement: 4,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CcCcRgRg:WgWgWgWg:CpRpCpRp:CpCpCpCp", amount: 100000 }],
|
|
||||||
// improvement: 8,
|
|
||||||
// },
|
|
||||||
// ],
|
|
||||||
// },
|
|
||||||
// stacker: {
|
|
||||||
// label: "Combine",
|
|
||||||
// description: improvement => "Speed +" + Math.floor(improvement * 100.0) + "%",
|
|
||||||
// tiers: [
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CgCgRgRg", amount: 20000 }],
|
|
||||||
// improvement: 1,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CgCgRgRg:WpRpWpRp", amount: 50000 }],
|
|
||||||
// improvement: 2,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CgCgRgRg:WpRpWpRp:SpSwSpSw", amount: 70000 }],
|
|
||||||
// improvement: 4,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// required: [{ shape: "CgCgRgRg:WpRpWpRp:SpSwSpSw:CwCwCwCw", amount: 100000 }],
|
|
||||||
// improvement: 8,
|
|
||||||
// },
|
|
||||||
// ],
|
|
||||||
// },
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// Tiers need % of the previous tier as requirement too
|
// Tiers need % of the previous tier as requirement too
|
||||||
|