├── content ├── blocks │ ├── environment │ │ └── boostwater.hjson │ ├── production │ │ ├── always-source.hjson │ │ ├── multi-cultivator.hjson │ │ ├── atmospheric-cooler.hjson │ │ ├── multi-blast-mixer.hjson │ │ ├── multi-pyratite-mixer.hjson │ │ └── activationmatter-weaver.hjson │ ├── walls │ │ ├── iron-wall-large.hjson │ │ └── iron-wall.hjson │ ├── turrets │ │ └── plast-salvo.hjson │ ├── storage │ │ ├── titanium-unloader.hjson │ │ └── coredvalut.hjson │ ├── logic │ │ ├── pressed-memory-cell.hjson │ │ ├── message-bank.hjson │ │ ├── testdisplay.hjson │ │ └── power-processor.hjson │ ├── distribution │ │ ├── conveyors │ │ │ ├── iron-conveyor.hjson │ │ │ ├── impact-conveyor.hjson │ │ │ └── floating-conveyor.hjson │ │ ├── titanium-payload-router.hjson │ │ ├── titanium-payload-conveyor.hjson │ │ ├── hyper-driver.hjson │ │ └── impact-driver.hjson │ ├── liquid │ │ ├── hyper-pulse-conduit.hjson │ │ ├── plated-hyper-conduit.hjson │ │ ├── power-pump.hjson │ │ └── floating-pump.hjson │ ├── defense │ │ ├── floating-mine.hjson │ │ ├── multi-projector.hjson │ │ ├── overdriver.hjson │ │ ├── mend-dome.hjson │ │ └── impact-projector.hjson │ ├── titaniumlaunchpad.hjson │ ├── drills │ │ ├── slag-extractor.hjson │ │ ├── cryofluid-extractor.hjson │ │ └── titanium-drill.hjson │ └── units │ │ ├── heavy-factory.hjson │ │ ├── electric-factory.hjson │ │ ├── heavy-additive-reconstructor.hjson │ │ ├── spored-additive-reconstructor.hjson │ │ ├── electric-additive-reconstructor.hjson │ │ ├── test2-factory.hjson │ │ ├── spored-factory.hjson │ │ ├── heavy-multiplicative-reconstructor.hjson │ │ ├── electric-multiplicative-reconstructor.hjson │ │ └── spored-multiplicative-reconstructor.hjson ├── items │ ├── activation-matter.hjson │ └── iron.hjson └── units │ ├── testunit4.hjson │ ├── spored │ ├── sporedflare.hjson │ ├── sporedmace.hjson │ ├── sporeddagger.hjson │ ├── sporedhorizon.hjson │ ├── sporedzenith.hjson │ └── sporedfortress.hjson │ ├── heavy │ ├── heavyflare.hjson │ ├── heavydagger.hjson │ ├── heavyfortress.hjson │ ├── heavyhorizon.hjson │ ├── heavyzenith.hjson │ └── heavymace.hjson │ ├── electric │ ├── electricmace.hjson │ ├── electricdagger.hjson │ ├── electrichorizon.hjson │ ├── electriczenith.hjson │ ├── electricflare.hjson │ └── electricfortress.hjson │ ├── testunit1.hjson │ └── testunit3.hjson ├── icon.png ├── maps ├── iceBreak.msav ├── centralBase.msav ├── desertCanyon.msav ├── polarOutpost.msav ├── sporeErosion.msav ├── saltirekLanding.msav ├── antarcticaSurvival.msav └── saltirekArchipelago.msav ├── sprites ├── blocks │ ├── defense │ │ ├── desktop.ini │ │ ├── mend-dome.png │ │ ├── overdriver.png │ │ ├── floating-mine.png │ │ ├── mend-dome-top.png │ │ ├── impact-projector.png │ │ ├── multi-projector.png │ │ ├── overdriver-top.png │ │ ├── impact-projector-top.png │ │ └── multi-projector-top.png │ ├── turrets │ │ ├── test.png │ │ ├── plast-salvo.png │ │ └── plast-salvo-heat.png │ ├── walls │ │ ├── iron-wall.png │ │ └── iron-wall-large.png │ ├── campaign │ │ ├── launchpod.png │ │ ├── titaniumlaunchpad.png │ │ └── titaniumlaunchpad-light.png │ ├── environment │ │ ├── iron1.png │ │ ├── iron2.png │ │ ├── iron3.png │ │ └── boostwater1.png │ ├── liquid │ │ ├── power-pump.png │ │ ├── floating-pump.png │ │ ├── power-pump-liquid.png │ │ ├── floating-pump-liquid.png │ │ ├── plated-hyper-conduit-cap.png │ │ ├── hyper-pulse-conduit-top-0.png │ │ ├── hyper-pulse-conduit-top-1.png │ │ ├── hyper-pulse-conduit-top-2.png │ │ ├── hyper-pulse-conduit-top-3.png │ │ ├── hyper-pulse-conduit-top-4.png │ │ ├── plated-hyper-conduit-top-0.png │ │ ├── plated-hyper-conduit-top-1.png │ │ ├── plated-hyper-conduit-top-2.png │ │ ├── plated-hyper-conduit-top-3.png │ │ └── plated-hyper-conduit-top-4.png │ ├── logic │ │ ├── message-bank.png │ │ ├── testdisplay.png │ │ ├── power-processor.png │ │ └── pressed-memory-cell.png │ ├── storage │ │ ├── coredvalut.png │ │ ├── coredvalut-team.png │ │ ├── titanium-unloader.png │ │ └── titanium-unloader-center.png │ ├── units │ │ ├── heavy-factory.png │ │ ├── test2-factory.png │ │ ├── spored-factory.png │ │ ├── electric-factory.png │ │ ├── heavy-additive-reconstructor.png │ │ ├── spored-additive-reconstructor.png │ │ ├── electric-additive-reconstructor.png │ │ ├── heavy-additive-reconstructor-top.png │ │ ├── spored-additive-reconstructor-top.png │ │ ├── electric-additive-reconstructor-top.png │ │ ├── heavy-multiplicative-reconstructor.png │ │ ├── spored-multiplicative-reconstructor.png │ │ ├── electric-multiplicative-reconstructor.png │ │ ├── heavy-multiplicative-reconstructor-top.png │ │ ├── spored-multiplicative-reconstructor-top.png │ │ └── electric-multiplicative-reconstructor-top.png │ ├── drills │ │ ├── slag-extractor.png │ │ ├── titanium-drill.png │ │ ├── cryofluid-extractor.png │ │ ├── slag-extractor-top.png │ │ ├── titanium-drill-rim.png │ │ ├── titanium-drill-top.png │ │ ├── slag-extractor-liquid.png │ │ ├── slag-extractor-rotator.png │ │ ├── titanium-drill-rotator.png │ │ ├── cryofluid-extractor-top.png │ │ ├── cryofluid-extractor-liquid.png │ │ └── cryofluid-extractor-rotator.png │ ├── production │ │ ├── always-source.png │ │ ├── blocks-forge.png │ │ ├── multi-blast-mixer.png │ │ ├── multi-cultivator.png │ │ ├── multi-cultivator-top.png │ │ ├── multi-pyratite-mixer.png │ │ ├── activationmatter-weaver.png │ │ ├── atmospheric-cooler-top.png │ │ ├── multi-cultivator-frame0.png │ │ ├── multi-cultivator-frame1.png │ │ ├── multi-cultivator-frame2.png │ │ ├── multi-cultivator-liquid.png │ │ ├── atmospheric-cooler-bottom.png │ │ ├── atmospheric-cooler-liquid.png │ │ ├── atmospheric-cooler-rotator.png │ │ ├── activationmatter-weaver-bottom.png │ │ └── activationmatter-weaver-weave.png │ └── distribution │ │ ├── blocks-loader.png │ │ ├── hyper-driver.png │ │ ├── impact-driver.png │ │ ├── blocks-unloader.png │ │ ├── hyper-driver-base.png │ │ ├── impact-driver-base.png │ │ ├── conveyors │ │ ├── iron-conveyor.png │ │ ├── impact-conveyor.png │ │ ├── floating-conveyor.png │ │ ├── iron-conveyor-0-0.png │ │ ├── iron-conveyor-0-1.png │ │ ├── iron-conveyor-0-2.png │ │ ├── iron-conveyor-0-3.png │ │ ├── iron-conveyor-1-0.png │ │ ├── iron-conveyor-1-1.png │ │ ├── iron-conveyor-1-2.png │ │ ├── iron-conveyor-1-3.png │ │ ├── iron-conveyor-2-0.png │ │ ├── iron-conveyor-2-1.png │ │ ├── iron-conveyor-2-2.png │ │ ├── iron-conveyor-2-3.png │ │ ├── iron-conveyor-3-0.png │ │ ├── iron-conveyor-3-1.png │ │ ├── iron-conveyor-3-2.png │ │ ├── iron-conveyor-4-0.png │ │ ├── iron-conveyor-4-1.png │ │ ├── iron-conveyor-4-2.png │ │ ├── iron-conveyor-4-3.png │ │ ├── floating-conveyor-0-0.png │ │ ├── floating-conveyor-0-1.png │ │ ├── floating-conveyor-0-2.png │ │ ├── floating-conveyor-0-3.png │ │ ├── floating-conveyor-1-0.png │ │ ├── floating-conveyor-1-1.png │ │ ├── floating-conveyor-1-2.png │ │ ├── floating-conveyor-1-3.png │ │ ├── floating-conveyor-2-0.png │ │ ├── floating-conveyor-2-1.png │ │ ├── floating-conveyor-2-2.png │ │ ├── floating-conveyor-2-3.png │ │ ├── floating-conveyor-3-0.png │ │ ├── floating-conveyor-3-1.png │ │ ├── floating-conveyor-3-2.png │ │ ├── floating-conveyor-3-3.png │ │ ├── floating-conveyor-4-0.png │ │ ├── floating-conveyor-4-1.png │ │ ├── floating-conveyor-4-2.png │ │ ├── floating-conveyor-4-3.png │ │ ├── impact-conveyor-0-0.png │ │ ├── impact-conveyor-0-1.png │ │ ├── impact-conveyor-0-2.png │ │ ├── impact-conveyor-0-3.png │ │ ├── impact-conveyor-1-0.png │ │ ├── impact-conveyor-1-1.png │ │ ├── impact-conveyor-1-2.png │ │ ├── impact-conveyor-1-3.png │ │ ├── impact-conveyor-2-0.png │ │ ├── impact-conveyor-2-1.png │ │ ├── impact-conveyor-2-2.png │ │ ├── impact-conveyor-2-3.png │ │ ├── impact-conveyor-3-0.png │ │ ├── impact-conveyor-3-1.png │ │ ├── impact-conveyor-3-2.png │ │ ├── impact-conveyor-3-3.png │ │ ├── impact-conveyor-4-0.png │ │ ├── impact-conveyor-4-1.png │ │ ├── impact-conveyor-4-2.png │ │ └── impact-conveyor-4-3.png │ │ ├── titanium-payload-router.png │ │ ├── titanium-payload-conveyor.png │ │ ├── titanium-payload-router-edge.png │ │ ├── titanium-payload-router-icon.png │ │ ├── titanium-payload-router-over.png │ │ ├── titanium-payload-router-top.png │ │ ├── titanium-payload-conveyor-edge.png │ │ ├── titanium-payload-conveyor-icon.png │ │ └── titanium-payload-conveyor-top.png ├── items │ ├── iron.png │ └── activation-matter.png └── units │ ├── testunit1.png │ ├── testunit3.png │ ├── testunit4.png │ ├── weapons │ ├── none.png │ ├── test22.png │ ├── testbeam3.png │ ├── testgun3.png │ ├── testmissile1.png │ ├── testrailgun1.png │ ├── testrailgun2.png │ ├── testshotgun1.png │ ├── testpointgun1.png │ ├── heavy │ │ ├── heavy-small-gun1.png │ │ ├── heavy-middle-gun1.png │ │ └── heavy-middle-artillery1.png │ ├── spored │ │ ├── spored-small-gun1.png │ │ └── spored-small-beam1.png │ └── electric │ │ ├── electric-small-gun1.png │ │ ├── electric-middle-laser1.png │ │ └── electric-small-shotgun1.png │ ├── heavy │ ├── heavymace.png │ ├── heavydagger.png │ ├── heavyflare.png │ ├── heavyzenith.png │ ├── heavyfortress.png │ ├── heavyhorizon.png │ ├── heavymace-base.png │ ├── heavymace-cell.png │ ├── heavymace-leg.png │ ├── heavydagger-base.png │ ├── heavydagger-leg.png │ ├── heavyzenith-cell.png │ ├── heavyfortress-base.png │ ├── heavyfortress-cell.png │ ├── heavyfortress-leg.png │ └── heavyhorizon-cell.png │ ├── testunit1-cell.png │ ├── testunit3-base.png │ ├── testunit3-cell.png │ ├── testunit3-foot.png │ ├── testunit3-leg.png │ ├── testunit4-cell.png │ ├── spored │ ├── sporedmace.png │ ├── sporeddagger.png │ ├── sporedflare.png │ ├── sporedhorizon.png │ ├── sporedzenith.png │ ├── sporedfortress.png │ ├── sporedmace-base.png │ ├── sporedmace-cell.png │ ├── sporedmace-leg.png │ ├── sporeddagger-base.png │ ├── sporeddagger-leg.png │ ├── sporedfortress-leg.png │ ├── sporedhorizon-cell.png │ ├── sporedzenith-cell.png │ ├── sporedfortress-base.png │ └── sporedfortress-cell.png │ ├── testunit3-joint-base.png │ └── electric │ ├── electricflare.png │ ├── electricmace.png │ ├── electricdagger.png │ ├── electricfortress.png │ ├── electrichorizon.png │ ├── electricmace-leg.png │ ├── electriczenith.png │ ├── electricdagger-leg.png │ ├── electricmace-base.png │ ├── electricmace-cell.png │ ├── electricdagger-base.png │ ├── electricfortress-base.png │ ├── electricfortress-cell.png │ ├── electricfortress-leg.png │ ├── electrichorizon-cell.png │ └── electriczenith-cell.png ├── schmatics └── logicwiki.msch ├── README.md ├── scripts ├── blocks │ ├── titanium-launch-pad.js │ ├── multi-cultivator.js │ ├── coredvalut.js │ ├── activationmatter-weaver.js │ ├── atmospheric-cooler.js │ ├── boostwater.js │ ├── impact-projector.js │ ├── plastsalvo.js │ └── multi-projector.js ├── main.js ├── experiment │ └── oregen.js ├── campaign │ └── planet.js └── units │ └── testunit4.js ├── mod.hjson └── bundles ├── bundle_ko.properties └── bundle.properties /content/blocks/environment/boostwater.hjson: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /content/items/activation-matter.hjson: -------------------------------------------------------------------------------- 1 | color: a3ddf5 -------------------------------------------------------------------------------- /icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/icon.png -------------------------------------------------------------------------------- /maps/iceBreak.msav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/maps/iceBreak.msav -------------------------------------------------------------------------------- /sprites/blocks/defense/desktop.ini: -------------------------------------------------------------------------------- 1 | [ViewState] 2 | Mode= 3 | Vid= 4 | FolderType=Pictures 5 | -------------------------------------------------------------------------------- /maps/centralBase.msav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/maps/centralBase.msav -------------------------------------------------------------------------------- /maps/desertCanyon.msav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/maps/desertCanyon.msav -------------------------------------------------------------------------------- /maps/polarOutpost.msav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/maps/polarOutpost.msav -------------------------------------------------------------------------------- /maps/sporeErosion.msav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/maps/sporeErosion.msav -------------------------------------------------------------------------------- /sprites/items/iron.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/items/iron.png -------------------------------------------------------------------------------- /maps/saltirekLanding.msav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/maps/saltirekLanding.msav -------------------------------------------------------------------------------- /schmatics/logicwiki.msch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/schmatics/logicwiki.msch -------------------------------------------------------------------------------- /maps/antarcticaSurvival.msav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/maps/antarcticaSurvival.msav -------------------------------------------------------------------------------- /sprites/units/testunit1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/testunit1.png -------------------------------------------------------------------------------- /sprites/units/testunit3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/testunit3.png -------------------------------------------------------------------------------- /sprites/units/testunit4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/testunit4.png -------------------------------------------------------------------------------- /maps/saltirekArchipelago.msav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/maps/saltirekArchipelago.msav -------------------------------------------------------------------------------- /sprites/units/weapons/none.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/none.png -------------------------------------------------------------------------------- /sprites/blocks/turrets/test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/turrets/test.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavymace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavymace.png -------------------------------------------------------------------------------- /sprites/units/testunit1-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/testunit1-cell.png -------------------------------------------------------------------------------- /sprites/units/testunit3-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/testunit3-base.png -------------------------------------------------------------------------------- /sprites/units/testunit3-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/testunit3-cell.png -------------------------------------------------------------------------------- /sprites/units/testunit3-foot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/testunit3-foot.png -------------------------------------------------------------------------------- /sprites/units/testunit3-leg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/testunit3-leg.png -------------------------------------------------------------------------------- /sprites/units/testunit4-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/testunit4-cell.png -------------------------------------------------------------------------------- /sprites/units/weapons/test22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/test22.png -------------------------------------------------------------------------------- /sprites/blocks/walls/iron-wall.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/walls/iron-wall.png -------------------------------------------------------------------------------- /sprites/items/activation-matter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/items/activation-matter.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavydagger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavydagger.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavyflare.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavyflare.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavyzenith.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavyzenith.png -------------------------------------------------------------------------------- /sprites/units/spored/sporedmace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporedmace.png -------------------------------------------------------------------------------- /sprites/units/weapons/testbeam3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/testbeam3.png -------------------------------------------------------------------------------- /sprites/units/weapons/testgun3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/testgun3.png -------------------------------------------------------------------------------- /sprites/blocks/campaign/launchpod.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/campaign/launchpod.png -------------------------------------------------------------------------------- /sprites/blocks/defense/mend-dome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/defense/mend-dome.png -------------------------------------------------------------------------------- /sprites/blocks/defense/overdriver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/defense/overdriver.png -------------------------------------------------------------------------------- /sprites/blocks/environment/iron1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/environment/iron1.png -------------------------------------------------------------------------------- /sprites/blocks/environment/iron2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/environment/iron2.png -------------------------------------------------------------------------------- /sprites/blocks/environment/iron3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/environment/iron3.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/power-pump.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/power-pump.png -------------------------------------------------------------------------------- /sprites/blocks/logic/message-bank.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/logic/message-bank.png -------------------------------------------------------------------------------- /sprites/blocks/logic/testdisplay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/logic/testdisplay.png -------------------------------------------------------------------------------- /sprites/blocks/storage/coredvalut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/storage/coredvalut.png -------------------------------------------------------------------------------- /sprites/blocks/turrets/plast-salvo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/turrets/plast-salvo.png -------------------------------------------------------------------------------- /sprites/blocks/units/heavy-factory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/heavy-factory.png -------------------------------------------------------------------------------- /sprites/blocks/units/test2-factory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/test2-factory.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavyfortress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavyfortress.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavyhorizon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavyhorizon.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavymace-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavymace-base.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavymace-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavymace-cell.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavymace-leg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavymace-leg.png -------------------------------------------------------------------------------- /sprites/units/spored/sporeddagger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporeddagger.png -------------------------------------------------------------------------------- /sprites/units/spored/sporedflare.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporedflare.png -------------------------------------------------------------------------------- /sprites/units/spored/sporedhorizon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporedhorizon.png -------------------------------------------------------------------------------- /sprites/units/spored/sporedzenith.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporedzenith.png -------------------------------------------------------------------------------- /sprites/units/testunit3-joint-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/testunit3-joint-base.png -------------------------------------------------------------------------------- /sprites/units/weapons/testmissile1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/testmissile1.png -------------------------------------------------------------------------------- /sprites/units/weapons/testrailgun1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/testrailgun1.png -------------------------------------------------------------------------------- /sprites/units/weapons/testrailgun2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/testrailgun2.png -------------------------------------------------------------------------------- /sprites/units/weapons/testshotgun1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/testshotgun1.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ExampleMod 2 | ![hh](https://user-images.githubusercontent.com/60801210/96339191-04840380-10ce-11eb-8f70-93f437919b18.jpg) 3 | -------------------------------------------------------------------------------- /sprites/blocks/defense/floating-mine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/defense/floating-mine.png -------------------------------------------------------------------------------- /sprites/blocks/defense/mend-dome-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/defense/mend-dome-top.png -------------------------------------------------------------------------------- /sprites/blocks/drills/slag-extractor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/drills/slag-extractor.png -------------------------------------------------------------------------------- /sprites/blocks/drills/titanium-drill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/drills/titanium-drill.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/floating-pump.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/floating-pump.png -------------------------------------------------------------------------------- /sprites/blocks/logic/power-processor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/logic/power-processor.png -------------------------------------------------------------------------------- /sprites/blocks/units/spored-factory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/spored-factory.png -------------------------------------------------------------------------------- /sprites/blocks/walls/iron-wall-large.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/walls/iron-wall-large.png -------------------------------------------------------------------------------- /sprites/units/electric/electricflare.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electricflare.png -------------------------------------------------------------------------------- /sprites/units/electric/electricmace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electricmace.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavydagger-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavydagger-base.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavydagger-leg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavydagger-leg.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavyzenith-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavyzenith-cell.png -------------------------------------------------------------------------------- /sprites/units/spored/sporedfortress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporedfortress.png -------------------------------------------------------------------------------- /sprites/units/spored/sporedmace-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporedmace-base.png -------------------------------------------------------------------------------- /sprites/units/spored/sporedmace-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporedmace-cell.png -------------------------------------------------------------------------------- /sprites/units/spored/sporedmace-leg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporedmace-leg.png -------------------------------------------------------------------------------- /sprites/units/weapons/testpointgun1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/testpointgun1.png -------------------------------------------------------------------------------- /sprites/blocks/defense/impact-projector.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/defense/impact-projector.png -------------------------------------------------------------------------------- /sprites/blocks/defense/multi-projector.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/defense/multi-projector.png -------------------------------------------------------------------------------- /sprites/blocks/defense/overdriver-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/defense/overdriver-top.png -------------------------------------------------------------------------------- /sprites/blocks/environment/boostwater1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/environment/boostwater1.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/power-pump-liquid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/power-pump-liquid.png -------------------------------------------------------------------------------- /sprites/blocks/production/always-source.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/always-source.png -------------------------------------------------------------------------------- /sprites/blocks/production/blocks-forge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/blocks-forge.png -------------------------------------------------------------------------------- /sprites/blocks/storage/coredvalut-team.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/storage/coredvalut-team.png -------------------------------------------------------------------------------- /sprites/blocks/turrets/plast-salvo-heat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/turrets/plast-salvo-heat.png -------------------------------------------------------------------------------- /sprites/blocks/units/electric-factory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/electric-factory.png -------------------------------------------------------------------------------- /sprites/units/electric/electricdagger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electricdagger.png -------------------------------------------------------------------------------- /sprites/units/electric/electricfortress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electricfortress.png -------------------------------------------------------------------------------- /sprites/units/electric/electrichorizon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electrichorizon.png -------------------------------------------------------------------------------- /sprites/units/electric/electricmace-leg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electricmace-leg.png -------------------------------------------------------------------------------- /sprites/units/electric/electriczenith.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electriczenith.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavyfortress-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavyfortress-base.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavyfortress-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavyfortress-cell.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavyfortress-leg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavyfortress-leg.png -------------------------------------------------------------------------------- /sprites/units/heavy/heavyhorizon-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/heavy/heavyhorizon-cell.png -------------------------------------------------------------------------------- /sprites/units/spored/sporeddagger-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporeddagger-base.png -------------------------------------------------------------------------------- /sprites/units/spored/sporeddagger-leg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporeddagger-leg.png -------------------------------------------------------------------------------- /sprites/units/spored/sporedfortress-leg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporedfortress-leg.png -------------------------------------------------------------------------------- /sprites/units/spored/sporedhorizon-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporedhorizon-cell.png -------------------------------------------------------------------------------- /sprites/units/spored/sporedzenith-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporedzenith-cell.png -------------------------------------------------------------------------------- /sprites/blocks/campaign/titaniumlaunchpad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/campaign/titaniumlaunchpad.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/blocks-loader.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/blocks-loader.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/hyper-driver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/hyper-driver.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/impact-driver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/impact-driver.png -------------------------------------------------------------------------------- /sprites/blocks/drills/cryofluid-extractor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/drills/cryofluid-extractor.png -------------------------------------------------------------------------------- /sprites/blocks/drills/slag-extractor-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/drills/slag-extractor-top.png -------------------------------------------------------------------------------- /sprites/blocks/drills/titanium-drill-rim.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/drills/titanium-drill-rim.png -------------------------------------------------------------------------------- /sprites/blocks/drills/titanium-drill-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/drills/titanium-drill-top.png -------------------------------------------------------------------------------- /sprites/blocks/logic/pressed-memory-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/logic/pressed-memory-cell.png -------------------------------------------------------------------------------- /sprites/blocks/storage/titanium-unloader.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/storage/titanium-unloader.png -------------------------------------------------------------------------------- /sprites/units/electric/electricdagger-leg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electricdagger-leg.png -------------------------------------------------------------------------------- /sprites/units/electric/electricmace-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electricmace-base.png -------------------------------------------------------------------------------- /sprites/units/electric/electricmace-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electricmace-cell.png -------------------------------------------------------------------------------- /sprites/units/spored/sporedfortress-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporedfortress-base.png -------------------------------------------------------------------------------- /sprites/units/spored/sporedfortress-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/spored/sporedfortress-cell.png -------------------------------------------------------------------------------- /sprites/blocks/defense/impact-projector-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/defense/impact-projector-top.png -------------------------------------------------------------------------------- /sprites/blocks/defense/multi-projector-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/defense/multi-projector-top.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/blocks-unloader.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/blocks-unloader.png -------------------------------------------------------------------------------- /sprites/blocks/drills/slag-extractor-liquid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/drills/slag-extractor-liquid.png -------------------------------------------------------------------------------- /sprites/blocks/drills/slag-extractor-rotator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/drills/slag-extractor-rotator.png -------------------------------------------------------------------------------- /sprites/blocks/drills/titanium-drill-rotator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/drills/titanium-drill-rotator.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/floating-pump-liquid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/floating-pump-liquid.png -------------------------------------------------------------------------------- /sprites/blocks/production/multi-blast-mixer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/multi-blast-mixer.png -------------------------------------------------------------------------------- /sprites/blocks/production/multi-cultivator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/multi-cultivator.png -------------------------------------------------------------------------------- /sprites/units/electric/electricdagger-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electricdagger-base.png -------------------------------------------------------------------------------- /sprites/units/electric/electricfortress-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electricfortress-base.png -------------------------------------------------------------------------------- /sprites/units/electric/electricfortress-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electricfortress-cell.png -------------------------------------------------------------------------------- /sprites/units/electric/electricfortress-leg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electricfortress-leg.png -------------------------------------------------------------------------------- /sprites/units/electric/electrichorizon-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electrichorizon-cell.png -------------------------------------------------------------------------------- /sprites/units/electric/electriczenith-cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/electric/electriczenith-cell.png -------------------------------------------------------------------------------- /sprites/units/weapons/heavy/heavy-small-gun1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/heavy/heavy-small-gun1.png -------------------------------------------------------------------------------- /content/blocks/production/always-source.hjson: -------------------------------------------------------------------------------- 1 | type: ItemSource 2 | 3 | 4 | category: distribution 5 | buildVisibility: shown 6 | alwaysUnlocked: true 7 | -------------------------------------------------------------------------------- /scripts/blocks/titanium-launch-pad.js: -------------------------------------------------------------------------------- 1 | const titaniumLaunchPad = extend(LaunchPad, "titaniumlaunchpad", {}); 2 | titaniumLaunchPad.alwaysUnlocked = true; 3 | -------------------------------------------------------------------------------- /sprites/blocks/distribution/hyper-driver-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/hyper-driver-base.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/impact-driver-base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/impact-driver-base.png -------------------------------------------------------------------------------- /sprites/blocks/drills/cryofluid-extractor-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/drills/cryofluid-extractor-top.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/plated-hyper-conduit-cap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/plated-hyper-conduit-cap.png -------------------------------------------------------------------------------- /sprites/blocks/production/multi-cultivator-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/multi-cultivator-top.png -------------------------------------------------------------------------------- /sprites/blocks/production/multi-pyratite-mixer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/multi-pyratite-mixer.png -------------------------------------------------------------------------------- /sprites/units/weapons/heavy/heavy-middle-gun1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/heavy/heavy-middle-gun1.png -------------------------------------------------------------------------------- /sprites/units/weapons/spored/spored-small-gun1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/spored/spored-small-gun1.png -------------------------------------------------------------------------------- /sprites/blocks/campaign/titaniumlaunchpad-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/campaign/titaniumlaunchpad-light.png -------------------------------------------------------------------------------- /sprites/blocks/drills/cryofluid-extractor-liquid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/drills/cryofluid-extractor-liquid.png -------------------------------------------------------------------------------- /sprites/blocks/drills/cryofluid-extractor-rotator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/drills/cryofluid-extractor-rotator.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/hyper-pulse-conduit-top-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/hyper-pulse-conduit-top-0.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/hyper-pulse-conduit-top-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/hyper-pulse-conduit-top-1.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/hyper-pulse-conduit-top-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/hyper-pulse-conduit-top-2.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/hyper-pulse-conduit-top-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/hyper-pulse-conduit-top-3.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/hyper-pulse-conduit-top-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/hyper-pulse-conduit-top-4.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/plated-hyper-conduit-top-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/plated-hyper-conduit-top-0.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/plated-hyper-conduit-top-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/plated-hyper-conduit-top-1.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/plated-hyper-conduit-top-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/plated-hyper-conduit-top-2.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/plated-hyper-conduit-top-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/plated-hyper-conduit-top-3.png -------------------------------------------------------------------------------- /sprites/blocks/liquid/plated-hyper-conduit-top-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/liquid/plated-hyper-conduit-top-4.png -------------------------------------------------------------------------------- /sprites/blocks/production/activationmatter-weaver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/activationmatter-weaver.png -------------------------------------------------------------------------------- /sprites/blocks/production/atmospheric-cooler-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/atmospheric-cooler-top.png -------------------------------------------------------------------------------- /sprites/blocks/production/multi-cultivator-frame0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/multi-cultivator-frame0.png -------------------------------------------------------------------------------- /sprites/blocks/production/multi-cultivator-frame1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/multi-cultivator-frame1.png -------------------------------------------------------------------------------- /sprites/blocks/production/multi-cultivator-frame2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/multi-cultivator-frame2.png -------------------------------------------------------------------------------- /sprites/blocks/production/multi-cultivator-liquid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/multi-cultivator-liquid.png -------------------------------------------------------------------------------- /sprites/blocks/storage/titanium-unloader-center.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/storage/titanium-unloader-center.png -------------------------------------------------------------------------------- /sprites/blocks/units/heavy-additive-reconstructor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/heavy-additive-reconstructor.png -------------------------------------------------------------------------------- /sprites/units/weapons/spored/spored-small-beam1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/spored/spored-small-beam1.png -------------------------------------------------------------------------------- /scripts/blocks/multi-cultivator.js: -------------------------------------------------------------------------------- 1 | const multiCultivator = extendContent(GenericCrafter,"multi-cultivator",{}); 2 | multiCultivator.drawer = new DrawAnimation(); 3 | -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/titanium-payload-router.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/titanium-payload-router.png -------------------------------------------------------------------------------- /sprites/blocks/production/atmospheric-cooler-bottom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/atmospheric-cooler-bottom.png -------------------------------------------------------------------------------- /sprites/blocks/production/atmospheric-cooler-liquid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/atmospheric-cooler-liquid.png -------------------------------------------------------------------------------- /sprites/blocks/units/spored-additive-reconstructor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/spored-additive-reconstructor.png -------------------------------------------------------------------------------- /sprites/units/weapons/electric/electric-small-gun1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/electric/electric-small-gun1.png -------------------------------------------------------------------------------- /sprites/units/weapons/heavy/heavy-middle-artillery1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/heavy/heavy-middle-artillery1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/titanium-payload-conveyor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/titanium-payload-conveyor.png -------------------------------------------------------------------------------- /sprites/blocks/production/atmospheric-cooler-rotator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/atmospheric-cooler-rotator.png -------------------------------------------------------------------------------- /sprites/blocks/units/electric-additive-reconstructor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/electric-additive-reconstructor.png -------------------------------------------------------------------------------- /sprites/blocks/units/heavy-additive-reconstructor-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/heavy-additive-reconstructor-top.png -------------------------------------------------------------------------------- /sprites/blocks/units/spored-additive-reconstructor-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/spored-additive-reconstructor-top.png -------------------------------------------------------------------------------- /sprites/units/weapons/electric/electric-middle-laser1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/electric/electric-middle-laser1.png -------------------------------------------------------------------------------- /sprites/units/weapons/electric/electric-small-shotgun1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/units/weapons/electric/electric-small-shotgun1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-0-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-0-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-0-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-0-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-0-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-0-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-0-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-0-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-1-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-1-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-1-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-1-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-1-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-1-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-1-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-1-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-2-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-2-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-2-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-2-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-2-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-2-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-2-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-2-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-3-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-3-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-3-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-3-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-3-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-3-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-4-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-4-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-4-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-4-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-4-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-4-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/iron-conveyor-4-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/iron-conveyor-4-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/titanium-payload-router-edge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/titanium-payload-router-edge.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/titanium-payload-router-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/titanium-payload-router-icon.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/titanium-payload-router-over.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/titanium-payload-router-over.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/titanium-payload-router-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/titanium-payload-router-top.png -------------------------------------------------------------------------------- /sprites/blocks/production/activationmatter-weaver-bottom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/activationmatter-weaver-bottom.png -------------------------------------------------------------------------------- /sprites/blocks/production/activationmatter-weaver-weave.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/production/activationmatter-weaver-weave.png -------------------------------------------------------------------------------- /sprites/blocks/units/electric-additive-reconstructor-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/electric-additive-reconstructor-top.png -------------------------------------------------------------------------------- /sprites/blocks/units/heavy-multiplicative-reconstructor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/heavy-multiplicative-reconstructor.png -------------------------------------------------------------------------------- /sprites/blocks/units/spored-multiplicative-reconstructor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/spored-multiplicative-reconstructor.png -------------------------------------------------------------------------------- /content/blocks/walls/iron-wall-large.hjson: -------------------------------------------------------------------------------- 1 | type: Wall 2 | 3 | health: 1400 4 | 5 | requirements: [ 6 | iron/24 7 | ] 8 | size: 2 9 | solid: false 10 | category: defense -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-0-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-0-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-0-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-0-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-0-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-0-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-0-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-0-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-1-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-1-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-1-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-1-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-1-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-1-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-1-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-1-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-2-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-2-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-2-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-2-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-2-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-2-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-2-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-2-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-3-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-3-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-3-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-3-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-3-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-3-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-3-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-3-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-4-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-4-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-4-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-4-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-4-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-4-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/floating-conveyor-4-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/floating-conveyor-4-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-0-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-0-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-0-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-0-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-0-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-0-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-0-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-0-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-1-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-1-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-1-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-1-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-1-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-1-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-1-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-1-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-2-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-2-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-2-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-2-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-2-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-2-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-2-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-2-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-3-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-3-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-3-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-3-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-3-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-3-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-3-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-3-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-4-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-4-0.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-4-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-4-1.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-4-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-4-2.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/conveyors/impact-conveyor-4-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/conveyors/impact-conveyor-4-3.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/titanium-payload-conveyor-edge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/titanium-payload-conveyor-edge.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/titanium-payload-conveyor-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/titanium-payload-conveyor-icon.png -------------------------------------------------------------------------------- /sprites/blocks/distribution/titanium-payload-conveyor-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/distribution/titanium-payload-conveyor-top.png -------------------------------------------------------------------------------- /sprites/blocks/units/electric-multiplicative-reconstructor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/electric-multiplicative-reconstructor.png -------------------------------------------------------------------------------- /sprites/blocks/units/heavy-multiplicative-reconstructor-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/heavy-multiplicative-reconstructor-top.png -------------------------------------------------------------------------------- /content/blocks/walls/iron-wall.hjson: -------------------------------------------------------------------------------- 1 | type: Wall 2 | 3 | health: 350 4 | 5 | requirements: [ 6 | iron/6 7 | ] 8 | size: 1 9 | solid: false 10 | category: defense 11 | 12 | -------------------------------------------------------------------------------- /sprites/blocks/units/spored-multiplicative-reconstructor-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/spored-multiplicative-reconstructor-top.png -------------------------------------------------------------------------------- /sprites/blocks/units/electric-multiplicative-reconstructor-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sharlottes/ExampleMod/HEAD/sprites/blocks/units/electric-multiplicative-reconstructor-top.png -------------------------------------------------------------------------------- /content/blocks/turrets/plast-salvo.hjson: -------------------------------------------------------------------------------- 1 | requirements: [ 2 | copper/350 3 | graphite/150 4 | titanium/100 5 | thorium/80 6 | silicon/120 7 | ] 8 | size: 2 9 | range: 150 10 | health: 2480 11 | category: turret 12 | research: duo 13 | -------------------------------------------------------------------------------- /content/blocks/storage/titanium-unloader.hjson: -------------------------------------------------------------------------------- 1 | type: Unloader 2 | 3 | size: 1 4 | health: 400 5 | 6 | requirements: [ 7 | titanium/100 8 | silicon/50 9 | lead/50 10 | ] 11 | speed: 5 12 | 13 | category: effect 14 | research: unloader 15 | group: transportation -------------------------------------------------------------------------------- /content/blocks/logic/pressed-memory-cell.hjson: -------------------------------------------------------------------------------- 1 | type: MemoryBlock 2 | 3 | health: 200 4 | 5 | requirements: [ 6 | graphite/50 7 | lead/30 8 | silicon/40 9 | ] 10 | 11 | memoryCapacity: 256 12 | 13 | category: logic 14 | research: message 15 | 16 | solid: false -------------------------------------------------------------------------------- /mod.hjson: -------------------------------------------------------------------------------- 1 | name: testmod 2 | displayName: Example Mod 3 | description: Various blocks, some units, and the block scan pages, etc.... there's a variety of content! \n download and star Sharustry, the second mod please! 4 | author: Sharlotte 5 | version: 1.4.9 6 | minGameVersion: 130 7 | -------------------------------------------------------------------------------- /content/blocks/distribution/conveyors/iron-conveyor.hjson: -------------------------------------------------------------------------------- 1 | type: Conveyor 2 | 3 | health: 200 4 | 5 | hasItems: true 6 | itemCapacity: 6 7 | 8 | speed: 0.0825 9 | displayedSpeed: 11 10 | 11 | requirements: [ 12 | copper/3 13 | iron/1 14 | ] 15 | 16 | category: distribution 17 | research: conveyor -------------------------------------------------------------------------------- /content/blocks/liquid/hyper-pulse-conduit.hjson: -------------------------------------------------------------------------------- 1 | type: Conduit 2 | 3 | liquidCapacity: 25 4 | liquidPressure: 1.25 5 | health: 150 6 | displayFlow: true 7 | 8 | requirements: [ 9 | titanium/4 10 | metaglass/2 11 | lead/2 12 | ] 13 | 14 | category: liquid 15 | research: pulse-conduit 16 | -------------------------------------------------------------------------------- /content/blocks/logic/message-bank.hjson: -------------------------------------------------------------------------------- 1 | type: MessageBlock 2 | 3 | size: 2 4 | health: 400 5 | 6 | requirements: [ 7 | graphite/100 8 | silicon/100 9 | phase-fabric/25 10 | thorium/5 11 | ] 12 | 13 | maxTextLength: 500 14 | maxNewlines: 50 15 | 16 | category: logic 17 | research: message -------------------------------------------------------------------------------- /content/blocks/storage/coredvalut.hjson: -------------------------------------------------------------------------------- 1 | size: 3 2 | health: 2000 3 | itemCapacity: 6500 4 | 5 | requirements: [ 6 | copper/2500 7 | lead/1500 8 | silicon/500 9 | ] 10 | 11 | buildVisibility: shown 12 | category: effect 13 | research: core-shard 14 | 15 | unitType: mega 16 | unitCapModifier: 12 17 | -------------------------------------------------------------------------------- /content/blocks/distribution/titanium-payload-router.hjson: -------------------------------------------------------------------------------- 1 | type: PayloadRouter 2 | 3 | moveTime: 120 4 | size: 7 5 | payloadLimit: 7 6 | requirements: [ 7 | graphite/40 8 | copper/50 9 | titanium/25 10 | ] 11 | 12 | canOverdrive: false 13 | 14 | category: distribution 15 | research: payload-router 16 | -------------------------------------------------------------------------------- /content/blocks/liquid/plated-hyper-conduit.hjson: -------------------------------------------------------------------------------- 1 | type: Conduit 2 | 3 | liquidCapacity: 25 4 | liquidPressure: 1.25 5 | health: 300 6 | displayFlow: true 7 | 8 | requirements: [ 9 | titanium/4 10 | metaglass/2 11 | thorium/3 12 | plastanium/2 13 | ] 14 | 15 | category: liquid 16 | research: plated-conduit 17 | -------------------------------------------------------------------------------- /content/items/iron.hjson: -------------------------------------------------------------------------------- 1 | name: iron 2 | color: b0bac0 3 | 4 | research: { 5 | parent:titanium 6 | requirements: 7 | [ 8 | {item: graphite, amount: 8000}, 9 | {item: copper, amount: 15000}, 10 | {item: lead, amount: 15000}, 11 | {item: titanium, amount: 5000} 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /content/blocks/distribution/titanium-payload-conveyor.hjson: -------------------------------------------------------------------------------- 1 | type: PayloadConveyor 2 | 3 | moveTime: 120 4 | size: 7 5 | payloadLimit: 7 6 | requirements: [ 7 | graphite/30 8 | copper/50 9 | titanium/20 10 | ] 11 | 12 | canOverdrive: false 13 | 14 | category: distribution 15 | research: payload-conveyor 16 | -------------------------------------------------------------------------------- /content/units/testunit4.hjson: -------------------------------------------------------------------------------- 1 | 2 | mineTier: 2 3 | health: 9000 4 | armor: 5 5 | speed: 0.4 6 | accel: 0.06 7 | drag: 0.017 8 | range: 160 9 | lowAltitude: true 10 | flying: true 11 | engineOffset: 10.5 12 | rotateShooting: false 13 | hitSize: 32 14 | engineSize: 3 15 | payloadCapacity: 500 16 | buildSpeed: 2.5 17 | research: test2-factory 18 | -------------------------------------------------------------------------------- /content/blocks/defense/floating-mine.hjson: -------------------------------------------------------------------------------- 1 | type: ShockMine 2 | 3 | size: 2 4 | requirements: [ 5 | lead/30 6 | silicon/25 7 | metaglass/12 8 | ] 9 | 10 | hasShadow: false 11 | placeableLiquid: true 12 | health: 50 13 | damage: 50 14 | tileDamage: 50 15 | tendrils: 10 16 | length: 25 17 | cooldown: 30 18 | 19 | category: effect 20 | research: wave 21 | -------------------------------------------------------------------------------- /content/blocks/titaniumlaunchpad.hjson: -------------------------------------------------------------------------------- 1 | 2 | 3 | size: 5 4 | itemCapacity: 500 5 | hasPower: true 6 | 7 | requirements: [ 8 | titanium/500 9 | silicon/300 10 | lead/500 11 | scrap/1000 12 | graphite/350 13 | ] 14 | 15 | consumes: { 16 | power: 10 17 | } 18 | 19 | lightColor: 87ceeb 20 | buildVisibility: hidden 21 | category: effect 22 | -------------------------------------------------------------------------------- /content/blocks/distribution/conveyors/impact-conveyor.hjson: -------------------------------------------------------------------------------- 1 | type: ArmoredConveyor 2 | 3 | health: 100 4 | 5 | hasItems: true 6 | itemCapacity: 8 7 | 8 | speed: 0.08 9 | displayedSpeed: 11 10 | 11 | requirements: [ 12 | copper/2 13 | iron/1 14 | blast-compound/1 15 | ] 16 | 17 | category: distribution 18 | research: armored-conveyor 19 | 20 | baseExplosiveness: 20 -------------------------------------------------------------------------------- /content/blocks/distribution/conveyors/floating-conveyor.hjson: -------------------------------------------------------------------------------- 1 | type: Conveyor 2 | 3 | health: 250 4 | hasItems: true 5 | itemCapacity: 4 6 | speed: 0.06 7 | displayedSpeed: 9 8 | displayFlow: true 9 | 10 | requirements: [ 11 | copper/3 12 | graphite/2 13 | metaglass/1 14 | ] 15 | 16 | requiresWater: true 17 | placeableLiquid: true 18 | 19 | category: distribution 20 | research: titanium-conveyor 21 | -------------------------------------------------------------------------------- /content/blocks/liquid/power-pump.hjson: -------------------------------------------------------------------------------- 1 | type: Pump 2 | 3 | size: 3 4 | hasPower: true 5 | hasItems: true 6 | hasLiquids: true 7 | itemCapacity: 16 8 | liquidCapacity: 100 9 | 10 | requirements: [ 11 | copper/150 12 | metaglass/300 13 | silicon/100 14 | titanium/120 15 | thorium/80 16 | surge-alloy/40 17 | ] 18 | 19 | consumes: { 20 | power: 2.5 21 | } 22 | pumpAmount: 0.3 23 | category: liquid 24 | research: thermal-pump 25 | -------------------------------------------------------------------------------- /content/blocks/logic/testdisplay.hjson: -------------------------------------------------------------------------------- 1 | type: LogicDisplay 2 | 3 | requirements: [ 4 | silicon/10 5 | titanium/15 6 | lead/30 7 | ] 8 | 9 | consumes: { 10 | items: { 11 | items: [ 12 | { 13 | item: activation-matter 14 | amount: 10 15 | } 16 | ] 17 | } 18 | } 19 | displaySize: 256 20 | size: 8 21 | health: 400 22 | 23 | category: logic 24 | research: large-logic-display -------------------------------------------------------------------------------- /content/blocks/liquid/floating-pump.hjson: -------------------------------------------------------------------------------- 1 | type: Pump 2 | 3 | size: 3 4 | hasPower: true 5 | hasItems: true 6 | hasLiquids: true 7 | liquidCapacity: 80 8 | 9 | requirements: [ 10 | copper/150 11 | lead/150 12 | metaglass/100 13 | silicon/50 14 | titanium/70 15 | thorium/20 16 | ] 17 | 18 | consumes: { 19 | power: 2 20 | } 21 | pumpAmount: 0.25 22 | category: liquid 23 | research: thermal-pump 24 | 25 | placeableLiquid: true 26 | -------------------------------------------------------------------------------- /content/blocks/drills/slag-extractor.hjson: -------------------------------------------------------------------------------- 1 | type: SolidPump 2 | 3 | health: 500 4 | size: 2 5 | hasPower: true 6 | hasLiquids: true 7 | liquidCapacity: 30 8 | 9 | requirements: [ 10 | copper/85 11 | graphite/70 12 | lead/85 13 | metaglass/70 14 | ] 15 | consumes: { 16 | power: 2 17 | } 18 | 19 | pumpAmount: 0.15 20 | rotateSpeed: 1.5 21 | result: slag 22 | baseEfficiency: 0.5 23 | attribute: heat 24 | 25 | 26 | category: production 27 | research: water-extractor -------------------------------------------------------------------------------- /content/blocks/production/multi-cultivator.hjson: -------------------------------------------------------------------------------- 1 | 2 | 3 | health: 350 4 | size: 2 5 | 6 | hasItems: true 7 | hasPower: true 8 | itemCapacity: 20 9 | liquidCapacity: 100 10 | 11 | requirements: [ 12 | lead/65 13 | titanium/40 14 | metaglass/50 15 | ] 16 | 17 | consumes: { 18 | power: 1.8 19 | liquid: { 20 | liquid: water 21 | amount: 0.6 22 | } 23 | } 24 | outputItem: spore-pod/2 25 | 26 | craftTime: 90 27 | craftEffect: steam 28 | 29 | category: production 30 | research: cultivator -------------------------------------------------------------------------------- /content/blocks/defense/multi-projector.hjson: -------------------------------------------------------------------------------- 1 | 2 | 3 | requirements: [ 4 | lead/200 5 | copper/200 6 | silicon/230 7 | titanium/150 8 | ] 9 | 10 | size: 3 11 | hasItems: true 12 | hasLiquids: true 13 | hasPower: true 14 | 15 | consumes: { 16 | power: 6.5 17 | } 18 | phaseUseTime: 300 19 | phaseShieldBoost: 0 20 | radius: 64 21 | shieldHealth: 700 22 | cooldownNormal: 1.75 23 | cooldownLiquid: 1.5 24 | cooldownBrokenBase: 0.35 25 | 26 | category: effect 27 | research: force-projector 28 | -------------------------------------------------------------------------------- /content/blocks/production/atmospheric-cooler.hjson: -------------------------------------------------------------------------------- 1 | health: 1500 2 | size: 4 3 | 4 | hasItems: true 5 | hasLiquids: true 6 | hasPower: true 7 | itemCapacity: 20 8 | liquidCapacity: 200 9 | 10 | requirements: [ 11 | lead/150 12 | metaglass/130 13 | titanium/120 14 | silicon/100 15 | ] 16 | 17 | consumes: { 18 | items:{items:[titanium/4]} 19 | power: 20 20 | } 21 | outputLiquid : { 22 | liquid: cryofluid 23 | amount: 70 24 | } 25 | craftTime: 150 26 | 27 | category: crafting 28 | -------------------------------------------------------------------------------- /content/blocks/production/multi-blast-mixer.hjson: -------------------------------------------------------------------------------- 1 | type: GenericCrafter 2 | 3 | health: 380 4 | size: 3 5 | 6 | hasItems: true 7 | hasPower: true 8 | itemCapacity: 20 9 | 10 | requirements: [ 11 | lead/130 12 | titanium/40 13 | thorium/25 14 | ] 15 | 16 | consumes: { 17 | power: 0.6 18 | items: { 19 | items: [ 20 | pyratite/2 21 | spore-pod/3 22 | ] 23 | } 24 | } 25 | outputItem: blast-compound/2 26 | 27 | craftTime: 40 28 | craftEffect: blastExplosion 29 | 30 | category: crafting 31 | research: blast-mixer -------------------------------------------------------------------------------- /content/blocks/production/multi-pyratite-mixer.hjson: -------------------------------------------------------------------------------- 1 | type: GenericCrafter 2 | 3 | health: 380 4 | size: 3 5 | 6 | hasItems: true 7 | hasPower: true 8 | itemCapacity: 20 9 | 10 | requirements: [ 11 | copper/125 12 | graphite/80 13 | titanium/40 14 | ] 15 | 16 | consumes: { 17 | power: 0.45 18 | items: { 19 | items: [ 20 | sand/3 21 | coal/2 22 | scrap/3 23 | ] 24 | } 25 | } 26 | outputItem: pyratite/2 27 | 28 | craftTime: 39.6 29 | craftEffect: melting 30 | 31 | category: crafting 32 | research: pyratite-mixer -------------------------------------------------------------------------------- /scripts/blocks/coredvalut.js: -------------------------------------------------------------------------------- 1 | const coredvalut = extendContent(CoreBlock, "coredvalut", { 2 | canReplace(other){ 3 | return this.super$canReplace(other) || ((other instanceof StorageBlock || other instanceof CoreBlock) && coredvalut.size >= other.size); 4 | }, 5 | canPlaceOn(tile, team){ 6 | if(tile == null) return false; 7 | var core = team.core(); 8 | if(core == null || (!Vars.state.rules.infiniteResources && !core.items.has(coredvalut.requirements))) return false; 9 | return true; 10 | } 11 | }); 12 | -------------------------------------------------------------------------------- /content/blocks/defense/overdriver.hjson: -------------------------------------------------------------------------------- 1 | type: OverdriveProjector 2 | 3 | requirements: [ 4 | lead/70 5 | copper/50 6 | silicon/20 7 | ] 8 | 9 | size: 1 10 | reload: 240 11 | range: 40 12 | useTime: 90 13 | 14 | hasPower: true 15 | hasItems: true 16 | 17 | consumes: { 18 | items: { 19 | items: [ 20 | { 21 | item: silicon 22 | amount: 2 23 | } 24 | ] 25 | booster: true 26 | optional: true 27 | } 28 | power: 0.5 29 | } 30 | 31 | speedBoost: 1.25 32 | speedBoostPhase: 0.25 33 | 34 | category: effect 35 | research: mender 36 | -------------------------------------------------------------------------------- /content/blocks/distribution/hyper-driver.hjson: -------------------------------------------------------------------------------- 1 | type: MassDriver 2 | 3 | size: 3 4 | health: 1500 5 | itemCapacity: 200 6 | liquidCapacity: 25 7 | 8 | requirements: [ 9 | titanium/250 10 | silicon/150 11 | graphite/150 12 | lead/250 13 | thorium/100 14 | ] 15 | consumes: { 16 | power: 5 17 | liquid: { 18 | liquid: water 19 | amount: 0.25 20 | } 21 | } 22 | 23 | range: 600 24 | rotateSpeed: 0.08 25 | translation: 10 26 | minDistribute: 30 27 | knockback: 5 28 | reloadTime: 320 29 | bulletSpeed: 10 30 | bulletLifetime: 500 31 | shake: 3 32 | 33 | category: distribution 34 | research: mass-driver -------------------------------------------------------------------------------- /content/blocks/distribution/impact-driver.hjson: -------------------------------------------------------------------------------- 1 | type: MassDriver 2 | 3 | size: 3 4 | health: 2000 5 | itemCapacity: 300 6 | liquidCapacity: 50 7 | 8 | requirements: [ 9 | titanium/250 10 | silicon/150 11 | blast-compound/75 12 | lead/250 13 | thorium/100 14 | ] 15 | consumes: { 16 | power: 7 17 | liquid: { 18 | liquid: slag 19 | amount: 0.4 20 | } 21 | } 22 | 23 | range: 1000 24 | rotateSpeed: 0.02 25 | translation: 8.5 26 | minDistribute: 50 27 | knockback: 5 28 | reloadTime: 240 29 | bulletSpeed: 2.25 30 | bulletLifetime: 500 31 | shake: 7 32 | 33 | category: distribution 34 | research: mass-driver -------------------------------------------------------------------------------- /content/units/spored/sporedflare.hjson: -------------------------------------------------------------------------------- 1 | type: flying 2 | speed: 3 3 | accel: 0.08 4 | drag: 0.01 5 | health: 90 6 | engineOffset: 5.5 7 | range: 140 8 | weapons: [ 9 | { 10 | name: none 11 | y: 0 12 | x: 2 13 | reload: 10 14 | ejectEffect: casing1 15 | shootSound: shoot 16 | shots: 3 17 | spacing: 2 18 | bullet: { 19 | type: BasicBulletType 20 | damage: 5 21 | speed: 3 22 | width: 7 23 | height: 9 24 | frontColor: bf92f9 25 | backColor: 6d56bf 26 | status: sapped 27 | inaccuracy: 3 28 | lifetime: 90 29 | sprite: bullet 30 | } 31 | } 32 | ] 33 | research: spored-factory 34 | -------------------------------------------------------------------------------- /content/blocks/units/heavy-factory.hjson: -------------------------------------------------------------------------------- 1 | type: UnitFactory 2 | 3 | health: 500 4 | size: 3 5 | itemCapacity: 30 6 | 7 | requirements: [ 8 | copper/120 9 | lead/240 10 | silicon/160 11 | graphite/120 12 | ] 13 | 14 | plans: [ 15 | { 16 | unit: heavydagger 17 | requirements: [ 18 | silicon/25 19 | ] 20 | time: 1000 21 | }, 22 | { 23 | unit: heavyflare 24 | requirements: [ 25 | silicon/25 26 | titanium/12 27 | ] 28 | time: 1200 29 | } 30 | ] 31 | 32 | 33 | category: units 34 | 35 | consumes: { 36 | power: 2 37 | } 38 | 39 | research: command-center 40 | -------------------------------------------------------------------------------- /scripts/blocks/activationmatter-weaver.js: -------------------------------------------------------------------------------- 1 | const activationMatterColor = Color.valueOf("a3ddf5"); 2 | const activationMatterWeaver = extendContent(GenericCrafter, "activationmatter-weaver", {}); 3 | 4 | 5 | const weaverOut = new Effect (60, e => { //아이템 생성 그래픽 효과 6 | Draw.color(activationMatterColor); 7 | Lines.stroke(e.fout() * 2); 8 | Lines.circle(e.x, e.y, 7 + e.fin() * 8); 9 | 10 | Angles.randLenVectors(e.id, 20, 4 + 20 * e.fin(), (x, y) => { 11 | Lines.lineAngle(e.x + x, e.y + y, Mathf.angle(x, y), e.fslope() * 4 + 1); 12 | }); 13 | }); 14 | 15 | 16 | activationMatterWeaver.drawer = new DrawWeave(); 17 | activationMatterWeaver.craftEffect = weaverOut; -------------------------------------------------------------------------------- /content/units/heavy/heavyflare.hjson: -------------------------------------------------------------------------------- 1 | type: flying 2 | speed: 2.75 3 | accel: 0.08 4 | drag: 0.01 5 | health: 150 6 | engineOffset: 5.5 7 | range: 140 8 | armor: 1 9 | weapons: [ 10 | { 11 | name: none 12 | y: 0 13 | x: 2 14 | reload: 12 15 | ejectEffect: casing1 16 | shootSound: shoot 17 | bullet: { 18 | speed: 2 19 | damage: 10 20 | width: 7 21 | height: 9 22 | lifetime: 60 23 | shootEffect: shootSmall 24 | smokeEffect: shootSmallSmoke 25 | incendAmount: 1 26 | incendSpread: 2 27 | frontColor: f8ad42 28 | backColor: f68021 29 | status: burning 30 | } 31 | } 32 | ] 33 | research: heavy-factory 34 | -------------------------------------------------------------------------------- /content/blocks/logic/power-processor.hjson: -------------------------------------------------------------------------------- 1 | type: LogicBlock 2 | size: 3 3 | health: 600 4 | 5 | hasLiquids: true 6 | hasPower: true 7 | 8 | requirements: [ 9 | lead/1000 10 | silicon/350 11 | metaglass/300 12 | graphite/300 13 | thorium/400 14 | surge-alloy/150 15 | ] 16 | 17 | consumes: { 18 | items: { 19 | items: [ 20 | { 21 | item: activation-matter 22 | amount: 10 23 | } 24 | ] 25 | } 26 | liquid: { 27 | liquid: cryofluid 28 | amount: 0.08 29 | } 30 | power: 50 31 | } 32 | 33 | instructionsPerTick: 40 34 | range: 800 35 | 36 | category: logic 37 | research: hyper-processor 38 | -------------------------------------------------------------------------------- /content/blocks/drills/cryofluid-extractor.hjson: -------------------------------------------------------------------------------- 1 | type: Fracker 2 | 3 | health: 1000 4 | size: 3 5 | hasPower: true 6 | hasLiquids: true 7 | liquidCapacity: 50 8 | 9 | requirements: [ 10 | copper/200 11 | graphite/175 12 | lead/150 13 | metaglass/70 14 | titanium/100 15 | thorium/115 16 | silicon/90 17 | ] 18 | consumes: { 19 | power: 5 20 | items: { 21 | items: [ 22 | titanium/2 23 | ] 24 | } 25 | } 26 | itemUseTime: 60 27 | pumpAmount: 0.2 28 | rotateSpeed: 1.6 29 | result: cryofluid 30 | baseEfficiency: 0.5 31 | attribute: water 32 | updateEffect: pulverize 33 | updateEffectChance: 0.4 34 | 35 | category: production 36 | research: water-extractor 37 | -------------------------------------------------------------------------------- /content/units/spored/sporedmace.hjson: -------------------------------------------------------------------------------- 1 | type: mech 2 | speed: 0.4 3 | health: 600 4 | armor: 6 5 | targetAir: false 6 | range: 56 7 | weapons: [ 8 | { 9 | name: spored-small-beam1 10 | reload: 9 11 | top: false 12 | shots: 3 13 | spacing: 2 14 | alternate: true 15 | mirror: true 16 | bullet: { 17 | type: SapBulletType 18 | sapStrength: 0.6 19 | length: 40 20 | damage: 25 21 | width: 0.4 22 | lifetime: 30 23 | shootEffect: shootSmall 24 | hitColor: bf92f9 25 | color: bf92f9 26 | } 27 | } 28 | ] 29 | research: spored-additive-reconstructor 30 | -------------------------------------------------------------------------------- /content/units/spored/sporeddagger.hjson: -------------------------------------------------------------------------------- 1 | type: mech 2 | speed: 0.45 3 | health: 300 4 | armor: 1 5 | weapons: [ 6 | { 7 | name: spored-small-gun1 8 | reload: 15 9 | x: 4 10 | y: 2 11 | top: false 12 | shots: 2 13 | spacing: 2 14 | ejectEffect: casing1 15 | bullet: { 16 | type: BasicBulletType 17 | damage: 9 18 | speed: 2.5 19 | width: 8 20 | height: 14 21 | frontColor: bf92f9 22 | backColor: 6d56bf 23 | status: sapped 24 | inaccuracy: 5 25 | lifetime: 40 26 | sprite: bullet 27 | } 28 | } 29 | ] 30 | research: spored-factory 31 | -------------------------------------------------------------------------------- /content/blocks/units/electric-factory.hjson: -------------------------------------------------------------------------------- 1 | type: UnitFactory 2 | 3 | health: 500 4 | size: 3 5 | itemCapacity: 30 6 | 7 | requirements: [ 8 | copper/100 9 | lead/250 10 | silicon/200 11 | metaglass/140 12 | ] 13 | 14 | plans: [ 15 | { 16 | unit: electricdagger 17 | requirements: [ 18 | silicon/20 19 | lead/20 20 | ] 21 | time: 1200 22 | }, 23 | { 24 | unit: electricflare 25 | requirements: [ 26 | silicon/20 27 | lead/20 28 | titanium/10 29 | ] 30 | time: 1400 31 | } 32 | ] 33 | 34 | category: units 35 | 36 | consumes: { 37 | power: 2.5 38 | } 39 | 40 | research: command-center 41 | -------------------------------------------------------------------------------- /content/blocks/units/heavy-additive-reconstructor.hjson: -------------------------------------------------------------------------------- 1 | type: Reconstructor 2 | 3 | health: 500 4 | size: 3 5 | itemCapacity: 20 6 | constructTime: 700 7 | 8 | requirements: [ 9 | copper/320 10 | lead/240 11 | silicon/180 12 | ] 13 | 14 | upgrades: [ 15 | [heavydagger, heavymace], 16 | [heavyflare, heavyhorizon] 17 | ] 18 | 19 | consumes: { 20 | items: { 21 | items: [ 22 | { 23 | item: lead 24 | amount: 40 25 | }, 26 | { 27 | item: graphite 28 | amount: 40 29 | }, 30 | silicon/30 31 | ] 32 | } 33 | power: 2.5 34 | } 35 | 36 | category: units 37 | research: heavy-factory 38 | -------------------------------------------------------------------------------- /content/blocks/units/spored-additive-reconstructor.hjson: -------------------------------------------------------------------------------- 1 | type: Reconstructor 2 | 3 | health: 500 4 | size: 3 5 | itemCapacity: 20 6 | constructTime: 800 7 | 8 | requirements: [ 9 | copper/320 10 | lead/240 11 | silicon/180 12 | ] 13 | 14 | upgrades: [ 15 | [sporeddagger, sporedmace], 16 | [sporedflare, sporedhorizon] 17 | ] 18 | 19 | consumes: { 20 | items: { 21 | items: [ 22 | { 23 | item: lead 24 | amount: 45 25 | }, 26 | { 27 | item: spore-pod 28 | amount: 20 29 | }, 30 | silicon/35 31 | ] 32 | } 33 | power: 2 34 | } 35 | category: units 36 | research: spored-factory 37 | -------------------------------------------------------------------------------- /content/blocks/units/electric-additive-reconstructor.hjson: -------------------------------------------------------------------------------- 1 | type: Reconstructor 2 | 3 | health: 500 4 | size: 3 5 | itemCapacity: 50 6 | constructTime: 900 7 | 8 | requirements: [ 9 | copper/350 10 | lead/260 11 | silicon/200 12 | ] 13 | 14 | upgrades: [ 15 | [electricdagger, electricmace], 16 | [electricflare, electrichorizon] 17 | ] 18 | 19 | consumes: { 20 | items: { 21 | items: [ 22 | { 23 | item: lead 24 | amount: 50 25 | }, 26 | { 27 | item: metaglass 28 | amount: 50 29 | }, 30 | silicon/40 31 | ] 32 | } 33 | power: 3 34 | } 35 | 36 | category: units 37 | research: electric-factory 38 | -------------------------------------------------------------------------------- /content/units/electric/electricmace.hjson: -------------------------------------------------------------------------------- 1 | type: mech 2 | speed: 0.45 3 | health: 300 4 | range: 48 5 | armor: 3 6 | weapons: [ 7 | { 8 | name: electric-small-shotgun1 9 | top: true 10 | shake: 1.5 11 | shootY: 5 12 | reload: 45 13 | shots: 2 14 | inaccuracy: 35 15 | shotDelay: 0.75 16 | spacing: 0 17 | recoil: 1.5 18 | ejectEffect: none 19 | shootSound: spark 20 | bullet: { 21 | type: LightningBulletType 22 | damage: 15 23 | lightningLength: 8 24 | lightningLengthRand: 7 25 | lightningColor: f3e979 26 | lightning: 3 27 | } 28 | } 29 | ] 30 | research: electric-additive-reconstructor 31 | -------------------------------------------------------------------------------- /content/blocks/units/test2-factory.hjson: -------------------------------------------------------------------------------- 1 | type: UnitFactory 2 | name: test 3 | 4 | health: 500 5 | size: 3 6 | 7 | requirements: [ 8 | silicon/10 9 | copper/5 10 | lead/5 11 | ] 12 | 13 | plans: [ 14 | { 15 | unit: testunit3 16 | requirements: [ 17 | copper/3 18 | silicon/5 19 | lead/10 20 | titanium/15 21 | ] 22 | time: 150 23 | }, 24 | { 25 | unit: testunit4 26 | requirements: [ 27 | lead/10 28 | ] 29 | time: 100 30 | }, 31 | { 32 | unit: testunit1 33 | requirements: [ 34 | titanium/10 35 | ] 36 | time: 100 37 | } 38 | ] 39 | 40 | category: units 41 | research: core-shard 42 | -------------------------------------------------------------------------------- /content/blocks/drills/titanium-drill.hjson: -------------------------------------------------------------------------------- 1 | type: Drill 2 | 3 | size: 3 4 | health: 700 5 | hasItems: true 6 | hasLiquids: true 7 | hasPower: true 8 | itemCapacity: 20 9 | liquidCapacity: 30 10 | 11 | requirements: [ 12 | copper/200 13 | graphite/100 14 | silicon/150 15 | titanium/200 16 | thorium/120 17 | ] 18 | consumes: { 19 | liquid: { 20 | liquid: cryofluid 21 | amount: 0.3 22 | booster: true 23 | optional: true 24 | } 25 | power: 5 26 | } 27 | 28 | drawMineItem: true 29 | rotateSpeed: 2.25 30 | liquidBoostIntensity: 2.0 31 | drawRim: true 32 | heatColor: 87ceeb 33 | drillTime: 180 34 | tier: 6 35 | updateEffect: pulverizeMedium 36 | drillEffect: mineBig 37 | 38 | category: production 39 | research: blast-drill 40 | -------------------------------------------------------------------------------- /content/blocks/units/spored-factory.hjson: -------------------------------------------------------------------------------- 1 | type: UnitFactory 2 | 3 | health: 550 4 | size: 3 5 | itemCapacity: 30 6 | 7 | requirements: [ 8 | copper/140 9 | lead/260 10 | silicon/180 11 | spore-pod/50 12 | ] 13 | 14 | plans: [ 15 | { 16 | unit: sporeddagger 17 | requirements: [ 18 | silicon/15 19 | lead/20 20 | spore-pod/5 21 | ] 22 | time: 1100 23 | }, 24 | { 25 | unit: sporedflare 26 | requirements: [ 27 | silicon/15 28 | lead/20 29 | spore-pod/5 30 | titanium/10 31 | ] 32 | time: 1300 33 | } 34 | ] 35 | 36 | category: units 37 | 38 | consumes: { 39 | power: 1.5 40 | } 41 | 42 | research: command-center 43 | -------------------------------------------------------------------------------- /content/units/heavy/heavydagger.hjson: -------------------------------------------------------------------------------- 1 | type: mech 2 | speed: 0.45 3 | health: 350 4 | armor: 2 5 | weapons: [ 6 | { 7 | name: heavy-small-gun1 8 | reload: 9 9 | x: 4 10 | y: 2 11 | top: false 12 | ejectEffect: casing1 13 | bullet: { 14 | type: BasicBulletType 15 | damage: 11 16 | speed: 3.2 17 | width: 10 18 | height: 12 19 | frontColor: f8ad42 20 | backColor: f68021 21 | status: burning 22 | inaccuracy: 3 23 | lifetime: 60 24 | sprite: bullet 25 | incendAmount: 2 26 | incendSpread: 4 27 | splashDamageRadius: 12 28 | splashDamage: 4 29 | } 30 | } 31 | ] 32 | research: heavy-factory 33 | -------------------------------------------------------------------------------- /content/blocks/defense/mend-dome.hjson: -------------------------------------------------------------------------------- 1 | type: MendProjector 2 | 3 | requirements: [ 4 | lead/250 5 | titanium/100 6 | silicon/150 7 | plastanium/100 8 | phase-fabric/150 9 | ] 10 | 11 | size: 3 12 | reload: 240 13 | range: 160 14 | healPercent: 25 15 | useTime: 90 16 | health: 800 17 | 18 | hasPower: true 19 | hasItems: true 20 | hasLiquids: true 21 | itemCapacity: 15 22 | liquidCapacity: 20 23 | 24 | consumes: { 25 | items: { 26 | items: [ 27 | { 28 | item: silicon 29 | amount: 2 30 | }, 31 | { 32 | item: phase-fabric 33 | amount: 1 34 | } 35 | ] 36 | } 37 | liquid: { 38 | liquid: cryofluid 39 | amount: 0.2 40 | } 41 | power: 12 42 | } 43 | 44 | category: effect 45 | research: mend-projector -------------------------------------------------------------------------------- /content/blocks/defense/impact-projector.hjson: -------------------------------------------------------------------------------- 1 | 2 | 3 | requirements: [ 4 | lead/200 5 | copper/200 6 | silicon/230 7 | titanium/150 8 | ] 9 | 10 | size: 3 11 | hasItems: true 12 | hasLiquids: true 13 | hasPower: true 14 | 15 | consumes: { 16 | items: { 17 | items: [ 18 | { 19 | item: phase-fabric 20 | amount: 2 21 | }, 22 | { 23 | item: blast-compound 24 | amount: 1 25 | } 26 | ] 27 | booster: true 28 | optional: true 29 | } 30 | power: 6.5 31 | } 32 | phaseUseTime: 300 33 | phaseShieldBoost: 750 34 | radius: 136 35 | shieldHealth: 1000 36 | cooldownNormal: 2.25 37 | cooldownLiquid: 1.75 38 | cooldownBrokenBase: 0.75 39 | 40 | category: effect 41 | research: force-projector 42 | 43 | baseExplosiveness: 100 44 | -------------------------------------------------------------------------------- /content/units/heavy/heavyfortress.hjson: -------------------------------------------------------------------------------- 1 | type: mech 2 | speed: 0.5 3 | health: 600 4 | range: 80 5 | rotateSpeed: 2.7 6 | weapons: [ 7 | { 8 | name: heavy-middle-gun1 9 | reload: 8 10 | x: 9 11 | y: 2 12 | top: true 13 | ejectEffect: casing1 14 | bullet: standardIncendiary 15 | }, 16 | { 17 | name: heavy-middle-artillery1 18 | reload: 60 19 | shots: 2 20 | spacing: 5 21 | shake: 2 22 | inaccuracy: 10 23 | velocityRnd: 0.3 24 | x: 0 25 | y: -5 26 | rotate: true 27 | rotateSpeed: 10 28 | top: true 29 | ejectEffect: casing1 30 | bullet: artilleryExplosive 31 | alternate: false 32 | mirror: false 33 | shootSound: artillery 34 | } 35 | ] 36 | research: heavy-multiplicative-reconstructor 37 | -------------------------------------------------------------------------------- /scripts/main.js: -------------------------------------------------------------------------------- 1 | //units 2 | require("units/testunit4"); 3 | //blocks 4 | require("blocks/activationmatter-weaver"); 5 | require("blocks/atmospheric-cooler"); 6 | require("blocks/impact-projector"); 7 | require("blocks/multi-projector"); 8 | require("blocks/multi-cultivator"); 9 | require("blocks/coredvalut"); 10 | require("blocks/boostwater"); 11 | require("blocks/plastsalvo"); 12 | require("blocks/titanium-launch-pad"); 13 | //experiement 14 | require("experiment/oregen"); 15 | //units 16 | require("units/testunit4"); 17 | print("Example Mod Load Complete!"); 18 | 19 | //campaign 20 | //require("campaign/planet"); 21 | //why did anuke remove planet list..? 22 | 23 | 24 | 25 | 26 | 27 | 28 | /* 29 | credit(){ 30 | younggam: "answering tons of question", 31 | deltaNedas: "refer to routorio, rtfm", 32 | sk7725: "answering tons of question, refer to testers" 33 | } 34 | */ 35 | -------------------------------------------------------------------------------- /content/units/spored/sporedhorizon.hjson: -------------------------------------------------------------------------------- 1 | type: flying 2 | health: 500 3 | speed: 2.25 4 | accel: 0.08 5 | drag: 0.016 6 | hitSize: 9 7 | targetAir: false 8 | engineOffset: 7.8 9 | range: 140 10 | faceTarget: false 11 | armor: 5 12 | 13 | weapons: [ 14 | { 15 | name: none 16 | minShootVelocity: 0.75 17 | x: 3 18 | shootY: 0 19 | reload: 10 20 | shootCone: 180 21 | ejectEffect: none 22 | inaccuracy: 15 23 | ignoreRotation: true 24 | shootSound: none 25 | shots: 2 26 | bullet: { 27 | type: BombBulletType 28 | splashDamageRadius: 25 29 | damage: 14 30 | width: 10 31 | height: 14 32 | hitEffect: flakExplosion 33 | shootEffect: none 34 | smokeEffect: none 35 | frontColor: bf92f9 36 | backColor: 6d56bf 37 | status: sapped 38 | } 39 | } 40 | ] 41 | research: spored-additive-reconstructor 42 | -------------------------------------------------------------------------------- /content/blocks/units/heavy-multiplicative-reconstructor.hjson: -------------------------------------------------------------------------------- 1 | type: Reconstructor 2 | 3 | health: 500 4 | size: 5 5 | itemCapacity: 30 6 | liquidCapacity: 50 7 | constructTime: 300 8 | 9 | requirements: [ 10 | lead/1300 11 | silicon/900 12 | titanium/600 13 | thorium/1300 14 | graphite/500 15 | ] 16 | 17 | upgrades: [ 18 | [heavymace, heavyfortress], 19 | [heavyhorizon, heavyzenith] 20 | ] 21 | 22 | consumes: { 23 | items: { 24 | items: [ 25 | { 26 | item: titanium 27 | amount: 180 28 | }, 29 | { 30 | item: graphite 31 | amount: 80 32 | }, 33 | silicon/220 34 | ] 35 | } 36 | liquid: { 37 | liquid: water 38 | amount: 0.5 39 | } 40 | power: 6.5 41 | } 42 | category: units 43 | research: heavy-additive-reconstructor 44 | -------------------------------------------------------------------------------- /content/units/heavy/heavyhorizon.hjson: -------------------------------------------------------------------------------- 1 | type: flying 2 | health: 600 3 | speed: 1.75 4 | accel: 0.08 5 | drag: 0.016 6 | hitSize: 9 7 | targetAir: false 8 | engineOffset: 7.8 9 | range: 140 10 | faceTarget: false 11 | armor: 6 12 | 13 | weapons: [ 14 | { 15 | name: none 16 | minShootVelocity: 0.75 17 | x: 3 18 | shootY: 0 19 | reload: 13 20 | shootCone: 180 21 | ejectEffect: none 22 | inaccuracy: 15 23 | ignoreRotation: true 24 | shootSound: none 25 | bullet: { 26 | type: BombBulletType 27 | splashDamageRadius: 30 28 | damage: 28 29 | width: 10 30 | height: 14 31 | hitEffect: flakExplosion 32 | shootEffect: none 33 | smokeEffect: none 34 | frontColor: f8ad42 35 | backColor: f68021 36 | status: burning 37 | incendAmount: 2 38 | incendSpread: 3 39 | } 40 | } 41 | ] 42 | research: heavy-additive-reconstructor 43 | -------------------------------------------------------------------------------- /content/blocks/units/electric-multiplicative-reconstructor.hjson: -------------------------------------------------------------------------------- 1 | type: Reconstructor 2 | 3 | health: 500 4 | size: 5 5 | itemCapacity: 30 6 | liquidCapacity: 50 7 | constructTime: 300 8 | 9 | requirements: [ 10 | lead/1500 11 | silicon/1000 12 | titanium/800 13 | thorium/1500 14 | metaglass/500 15 | ] 16 | 17 | upgrades: [ 18 | [electricmace, electricfortress], 19 | [electrichorizon, electriczenith] 20 | ] 21 | 22 | consumes: { 23 | items: { 24 | items: [ 25 | { 26 | item: titanium 27 | amount: 200 28 | }, 29 | { 30 | item: metaglass 31 | amount: 100 32 | }, 33 | silicon/250 34 | ] 35 | } 36 | liquid: { 37 | liquid: water 38 | amount: 0.5 39 | } 40 | power: 7 41 | } 42 | category: units 43 | research: electric-additive-reconstructor 44 | -------------------------------------------------------------------------------- /content/blocks/units/spored-multiplicative-reconstructor.hjson: -------------------------------------------------------------------------------- 1 | type: Reconstructor 2 | 3 | health: 500 4 | size: 5 5 | itemCapacity: 30 6 | liquidCapacity: 50 7 | constructTime: 300 8 | 9 | requirements: [ 10 | lead/1400 11 | silicon/1000 12 | titanium/700 13 | thorium/1400 14 | spore-pod/240 15 | ] 16 | 17 | upgrades: [ 18 | [sporedmace, sporedfortress], 19 | [sporedhorizon, sporedzenith] 20 | ] 21 | alwaysUnlocked: true 22 | consumes: { 23 | items: { 24 | items: [ 25 | { 26 | item: titanium 27 | amount: 190 28 | }, 29 | { 30 | item: spore-pod 31 | amount: 50 32 | }, 33 | silicon/250 34 | ] 35 | } 36 | liquid: { 37 | liquid: water 38 | amount: 0.5 39 | } 40 | power: 6 41 | } 42 | category: units 43 | research: spored-additive-reconstructor 44 | -------------------------------------------------------------------------------- /content/blocks/production/activationmatter-weaver.hjson: -------------------------------------------------------------------------------- 1 | health: 500 2 | size: 2 3 | 4 | hasItems: true 5 | hasLiquids: true 6 | hasPower: true 7 | itemCapacity: 150 8 | liquidCapacity: 150 9 | 10 | requirements: [ 11 | copper/130 12 | lead/130 13 | graphite/250 14 | silicon/200 15 | titanium/140 16 | thorium/125 17 | surge-alloy/75 18 | phase-fabric/50 19 | ] 20 | 21 | consumes: { 22 | items: { 23 | items: [ 24 | { 25 | item: surge-alloy 26 | amount: 2 27 | }, 28 | { 29 | item: phase-fabric 30 | amount: 3 31 | }, 32 | metaglass/7 33 | titanium/8 34 | ] 35 | } 36 | liquid: { 37 | liquid: cryofluid 38 | amount: 0.7 39 | } 40 | power: 20 41 | } 42 | outputItem: activation-matter/1 43 | craftTime: 90 44 | 45 | category: crafting 46 | research: alloy-smelter 47 | -------------------------------------------------------------------------------- /content/units/electric/electricdagger.hjson: -------------------------------------------------------------------------------- 1 | type: mech 2 | speed: 0.45 3 | health: 250 4 | weapons: [ 5 | { 6 | name: electric-small-gun1 7 | top: false 8 | x: 4 9 | y: 2 10 | reload: 15 11 | bullet: { 12 | type: BasicBulletType 13 | damage: 12 14 | speed: 4.25 15 | width: 6 16 | height: 8 17 | frontColor: f3e979 18 | backColor: f3e97966 19 | lifetime: 35 20 | sprite: bullet 21 | lightningColor: f3e979 22 | lightning: 2 23 | lightningLength: 5 24 | lightningLengthRand: 7 25 | lightningDamage: 5 26 | } 27 | } 28 | ] 29 | 30 | research: { 31 | parent: electric-factory 32 | requirements: 33 | [ 34 | {item: surge-alloy, amount: 6000}, 35 | {item: plastanium, amount: 50000}, 36 | {item: silicon, amount: 100000} 37 | ] 38 | } 39 | -------------------------------------------------------------------------------- /content/units/electric/electrichorizon.hjson: -------------------------------------------------------------------------------- 1 | type: flying 2 | health: 450 3 | speed: 2.5 4 | accel: 0.08 5 | drag: 0.016 6 | hitSize: 9 7 | targetAir: false 8 | engineOffset: 7.8 9 | range: 140 10 | faceTarget: false 11 | armor: 4 12 | 13 | weapons: [ 14 | { 15 | name: none 16 | minShootVelocity: 0.75 17 | x: 3 18 | shootY: 0 19 | reload: 13 20 | shootCone: 180 21 | ejectEffect: none 22 | inaccuracy: 15 23 | ignoreRotation: true 24 | shootSound: none 25 | bullet: { 26 | type: BombBulletType 27 | splashDamageRadius: 28 28 | damage: 27 29 | width: 10 30 | height: 14 31 | hitEffect: flakExplosion 32 | shootEffect: none 33 | smokeEffect: none 34 | frontColor: f3e979 35 | backColor: f3e97966 36 | lightningColor: f3e979 37 | lightning: 4 38 | lightningLength: 4 39 | lightningLengthRand: 3 40 | lightningDamage: 4 41 | } 42 | } 43 | ] 44 | research: electric-additive-reconstructor 45 | -------------------------------------------------------------------------------- /content/units/heavy/heavyzenith.hjson: -------------------------------------------------------------------------------- 1 | type: flying 2 | health: 1000 3 | speed: 1.5 4 | accel: 0.04 5 | drag: 0.016 6 | range: 140 7 | hitSize: 20 8 | lowAltitude: true 9 | armor: 8 10 | 11 | engineOffset: 12 12 | engineSize: 3 13 | 14 | weapons: [ 15 | { 16 | name: zenith-missiles 17 | reload: 40 18 | x: 7 19 | rotate: true 20 | shake: 1 21 | shots: 2 22 | inaccuracy: 5 23 | velocityRnd: 0.2 24 | bullet: { 25 | type: MissileBulletType 26 | speed: 3 27 | damage: 12 28 | width: 8 29 | height: 8 30 | shrinkY: 0 31 | drag: -0.003 32 | homingRange: 60 33 | keepVelocity: false 34 | splashDamageRadius: 25 35 | splashDamage: 10 36 | lifetime: 60 37 | trailColor: d06b53 38 | backColor: d06b53 39 | frontColor: d06b53 40 | hitEffect: blastExplosion 41 | despawnEffect: blastExplosion 42 | weaveScale: 6 43 | weaveMag: 1 44 | } 45 | } 46 | ] 47 | research: heavy-multiplicative-reconstructor 48 | -------------------------------------------------------------------------------- /content/units/spored/sporedzenith.hjson: -------------------------------------------------------------------------------- 1 | type: flying 2 | health: 850 3 | speed: 1.6 4 | accel: 0.04 5 | drag: 0.016 6 | range: 140 7 | hitSize: 20 8 | lowAltitude: true 9 | armor: 7 10 | 11 | engineOffset: 12 12 | engineSize: 3 13 | 14 | weapons: [ 15 | { 16 | name: zenith-missiles 17 | reload: 40 18 | x: 7 19 | rotate: true 20 | shake: 1 21 | shots: 2 22 | inaccuracy: 5 23 | velocityRnd: 0.2 24 | bullet: { 25 | type: MissileBulletType 26 | speed: 3 27 | damage: 12 28 | width: 8 29 | height: 8 30 | shrinkY: 0 31 | drag: -0.003 32 | homingRange: 60 33 | keepVelocity: false 34 | splashDamageRadius: 25 35 | splashDamage: 10 36 | lifetime: 60 37 | trailColor: d06b53 38 | backColor: d06b53 39 | frontColor: d06b53 40 | hitEffect: blastExplosion 41 | despawnEffect: blastExplosion 42 | weaveScale: 6 43 | weaveMag: 1 44 | } 45 | } 46 | ] 47 | research: spored-multiplicative-reconstructor 48 | -------------------------------------------------------------------------------- /content/units/electric/electriczenith.hjson: -------------------------------------------------------------------------------- 1 | type: flying 2 | health: 800 3 | speed: 1.85 4 | accel: 0.04 5 | drag: 0.016 6 | range: 140 7 | hitSize: 20 8 | lowAltitude: true 9 | armor: 5 10 | 11 | engineOffset: 12 12 | engineSize: 3 13 | 14 | weapons: [ 15 | { 16 | name: zenith-missiles 17 | reload: 40 18 | x: 7 19 | rotate: true 20 | shake: 1 21 | shots: 2 22 | inaccuracy: 5 23 | velocityRnd: 0.2 24 | bullet: { 25 | type: MissileBulletType 26 | speed: 3 27 | damage: 12 28 | width: 8 29 | height: 8 30 | shrinkY: 0 31 | drag: -0.003 32 | homingRange: 60 33 | keepVelocity: false 34 | splashDamageRadius: 25 35 | splashDamage: 10 36 | lifetime: 60 37 | trailColor: d06b53 38 | backColor: d06b53 39 | frontColor: d06b53 40 | hitEffect: blastExplosion 41 | despawnEffect: blastExplosion 42 | weaveScale: 6 43 | weaveMag: 1 44 | } 45 | } 46 | ] 47 | research: electric-multiplicative-reconstructor 48 | -------------------------------------------------------------------------------- /content/units/heavy/heavymace.hjson: -------------------------------------------------------------------------------- 1 | type: mech 2 | speed: 0.4 3 | health: 600 4 | armor: 6 5 | targetAir: false 6 | range: 40 7 | weapons: [ 8 | { 9 | name: heavy-middle-gun1 10 | reload: 75 11 | top: false 12 | ejectEffect: casing1 13 | shake: 1.25 14 | recoil: 2 15 | spacing: 5 16 | inaccuracy: 10 17 | velocityRnd: 0.3 18 | alternate: true 19 | mirror: true 20 | shootSound: artillery 21 | bullet: { 22 | type: ArtilleryBulletType 23 | damage: 8 24 | speed: 2 25 | width: 14 26 | height: 14 27 | frontColor: fff8e8 28 | backColor: f9c27a 29 | collides: true 30 | collidesTiles: true 31 | lifetime: 110 32 | splashDamageRadius: 24 33 | splashDamage: 38 34 | homingRange: 40 35 | homingPower: 1 36 | trailColor: f9c27a 37 | hitEffect: blastExplosion 38 | despawnEffect: blastExplosion 39 | } 40 | } 41 | ] 42 | research: heavy-additive-reconstructor 43 | -------------------------------------------------------------------------------- /content/units/electric/electricflare.hjson: -------------------------------------------------------------------------------- 1 | type: flying 2 | speed: 3.5 3 | accel: 0.08 4 | drag: 0.01 5 | health: 85 6 | engineOffset: 5.5 7 | range: 140 8 | weapons: [ 9 | { 10 | name: none 11 | y: 0 12 | x: 2 13 | reload: 14 14 | ejectEffect: casing1 15 | shootSound: shoot 16 | bullet: { 17 | type: BasicBulletType 18 | damage: 9 19 | speed: 2.75 20 | width: 6 21 | height: 8 22 | frontColor: f3e979 23 | backColor: f3e97966 24 | lifetime: 45 25 | sprite: bullet 26 | lightningColor: f3e979 27 | lightning: 2 28 | lightningLength: 4 29 | lightningLengthRand: 3 30 | lightningDamage: 4 31 | } 32 | }, 33 | { 34 | name: none 35 | y: 0 36 | x: 2 37 | reload: 12 38 | ejectEffect: none 39 | shootSound: shoot 40 | bullet: { 41 | type: LightningBulletType 42 | damage: 3 43 | lightningLength: 4 44 | lightningLengthRand: 6 45 | lightningColor: f3e979 46 | lightning: 3 47 | } 48 | } 49 | ] 50 | research: { 51 | parent: electric-factory 52 | requirements: 53 | [ 54 | {item: surge-alloy, amount: 6000}, 55 | {item: plastanium, amount: 50000}, 56 | {item: silicon, amount: 100000} 57 | ] 58 | } 59 | -------------------------------------------------------------------------------- /content/units/electric/electricfortress.hjson: -------------------------------------------------------------------------------- 1 | type: mech 2 | speed: 0.3 3 | health: 500 4 | range: 120 5 | rotateSpeed: 2.85 6 | weapons: [ 7 | { 8 | name: electric-small-shotgun1 9 | top: true 10 | shake: 2.2 11 | shootY: 5 12 | x: 9 13 | y: 2 14 | reload: 30 15 | shots: 2 16 | inaccuracy: 35 17 | shotDelay: 0.5 18 | spacing: 0 19 | recoil: 2.5 20 | ejectEffect: none 21 | shootSound: spark 22 | bullet: { 23 | type: LightningBulletType 24 | damage: 15 25 | lightningLength: 7 26 | lightningLengthRand: 7 27 | lightningColor: f3e979 28 | } 29 | }, 30 | { 31 | name: electric-middle-laser1 32 | top: true 33 | shake: 2 34 | shootY: 4 35 | x: 6 36 | y: -2 37 | reload: 90 38 | recoil: 4 39 | shootSound: laser 40 | bullet: { 41 | type: LaserBulletType 42 | damage: 50 43 | recoil: 1 44 | sideAngle: 45 45 | sideWidth: 1 46 | sideLength: 70 47 | colors: [f3e979,66f3e979,ffffff] 48 | } 49 | } 50 | ] 51 | 52 | research: electric-multiplicative-reconstructor 53 | -------------------------------------------------------------------------------- /scripts/blocks/atmospheric-cooler.js: -------------------------------------------------------------------------------- 1 | const rotateBlock = extend(DrawMixer, { 2 | draw(entity){ 3 | const rotation = entity.block.rotate ? entity.rotdeg() : 0; 4 | 5 | Draw.rect(this.bottom, entity.x, entity.y, rotation); 6 | /* 7 | if(entity.liquids.total() > 0.001){ 8 | Draw.color(entity.block.outputLiquid.liquid.color); 9 | Draw.alpha(entity.liquids.get(entity.block.outputLiquid.liquid) / entity.block.liquidCapacity); 10 | Draw.rect(this.liquid, entity.x, entity.y, rotation); 11 | Draw.color(); 12 | } 13 | */ 14 | Draw.rect(this.rotator, entity.x, entity.y, entity.totalProgress * 6); 15 | Draw.rect(this.top, entity.x, entity.y, rotation); 16 | }, 17 | load(block){ 18 | this.rotator = Core.atlas.find(block.name + "-rotator"); 19 | //this.liquid = Core.atlas.find(block.name + "-liquid"); 20 | this.top = Core.atlas.find(block.name + "-top"); 21 | this.bottom = Core.atlas.find(block.name + "-bottom"); 22 | }, 23 | icons(block){ 24 | return [ 25 | this.bottom, 26 | this.rotator, 27 | this.top 28 | ]; 29 | } 30 | }); 31 | 32 | const atmosphericCooler = extendContent(GenericCrafter, "atmospheric-cooler", {}); 33 | atmosphericCooler.drawer = rotateBlock; -------------------------------------------------------------------------------- /content/units/spored/sporedfortress.hjson: -------------------------------------------------------------------------------- 1 | type: mech 2 | speed: 0.4 3 | health: 550 4 | range: 80 5 | rotateSpeed: 2.7 6 | weapons: [ 7 | { 8 | name: spored-small-gun1 9 | reload: 10 10 | x: 9 11 | y: 2 12 | top: false 13 | shots: 4 14 | spacing: 3 15 | ejectEffect: casing1 16 | bullet: { 17 | type: BasicBulletType 18 | damage: 14 19 | speed: 3 20 | width: 6 21 | height: 16 22 | frontColor: bf92f9 23 | backColor: 6d56bf 24 | status: sapped 25 | inaccuracy: 5 26 | lifetime: 60 27 | sprite: bullet 28 | } 29 | }, 30 | { 31 | name: spored-small-gun1 32 | reload: 15 33 | x: 7 34 | y: 1 35 | top: false 36 | shots: 4 37 | spacing: 3 38 | ejectEffect: casing1 39 | bullet: { 40 | type: BasicBulletType 41 | damage: 14 42 | speed: 3 43 | width: 6 44 | height: 16 45 | frontColor: bf92f9 46 | backColor: 6d56bf 47 | status: sapped 48 | inaccuracy: 5 49 | lifetime: 60 50 | sprite: bullet 51 | } 52 | } 53 | ] 54 | research: spored-multiplicative-reconstructor 55 | -------------------------------------------------------------------------------- /scripts/blocks/boostwater.js: -------------------------------------------------------------------------------- 1 | const boosteffect = new Effect(50, e => { 2 | Draw.color(Liquids.cryofluid.color, Color.white.cpy().mul(0.25, 0.25, 1, e.fout()), e.fout() / 6 + Mathf.randomSeedRange(e.id, 0.1)); 3 | 4 | Fill.square(e.x, e.y, e.fslope() * 2, 45); 5 | }); 6 | const run1 = () => { 7 | booststatus.opposite(StatusEffects.unmoving); 8 | booststatus.trans(StatusEffects.burning, ((unit, time, newTime, result) => { 9 | unit.damagePierce(8); 10 | Fx.burning.at(unit.x() + Mathf.range(unit.bounds() / 2), unit.y() + Mathf.range(unit.bounds() / 2)); 11 | result.set(this, Math.min(time + newTime, 300)); 12 | })); 13 | booststatus.trans(StatusEffects.shocked, ((unit, time, newTime, result) => { 14 | unit.damagePierce(14); 15 | if(unit.team == Vars.state.rules.waveTeam){ 16 | Events.fire(Trigger.shock); 17 | } 18 | result.set(this, time); 19 | })); 20 | booststatus.trans(StatusEffects.blasted, ((unit, time, newTime, result) => { 21 | unit.damagePierce(18); 22 | result.set(this, time); 23 | })); 24 | booststatus.trans(StatusEffects.tarred, ((unit, time, newTime, result) => { 25 | result.set(this, Math.min(time + newTime / 2, 140)) 26 | })); 27 | booststatus.trans(StatusEffects.overdrive, ((unit, time, newTime, result) => { 28 | booststatus.speedMultiplier = 2.5; 29 | booststatus.damageMultiplier = 2.5; 30 | booststatus.reloadMultiplier = 2.5; 31 | result.set(this, time); 32 | })); 33 | booststatus.trans(StatusEffects.overclock, ((unit, time, newTime, result) => { 34 | booststatus.speedMultiplier = 3; 35 | booststatus.damageMultiplier = 3; 36 | booststatus.reloadMultiplier = 3; 37 | result.set(this, time); 38 | })); 39 | }; 40 | 41 | const booststatus = new JavaAdapter(StatusEffect, {}, "booststatus"); 42 | booststatus.speedMultiplier = 2; 43 | booststatus.reloadMultiplier = 2; 44 | booststatus.damageMultiplier = 2; 45 | booststatus.effectChange = 0.25; 46 | booststatus.effect = boosteffect; 47 | 48 | const boostwater = extendContent(Floor, "boostwater", {}); 49 | 50 | boostwater.status = booststatus; 51 | boostwater.statusDuration = 180; 52 | boostwater.cacheLayer = CacheLayer.water; 53 | boostwater.initblock = run1; 54 | 55 | boostwater.variants = 1; 56 | boostwater.liquidDrop = Liquids.water; 57 | boostwater.isLiquid = true; 58 | -------------------------------------------------------------------------------- /scripts/experiment/oregen.js: -------------------------------------------------------------------------------- 1 | //json version doesnt work at the time of the development of this 2 | //thanks for sk 3 | 4 | const createIconsC = (packer, block) => { //람다함수 정의, createIconsC 라는 변수는 packer, block 라는 매개변수를 가지고 {...} 실행문을 실행할 함수로써 정의됨. 5 | for(var i = 0; i < block.variants; i++){ //block.variants 만큼 반복, 기본값이 3이므로 여기선 3번 반복 6 | var image = new Pixmap(32, 32);//image 객체 선언. Pixmap(32, 32) 7 | // NativePixmap(32, 32, Format.rgba8888.toPixmapFormap()). 하양색으로 전환, 채우기 8 | //32를 nativeData 의 2번째([1]) 와 3번째([2]), Format.rgba8888.toPixmapFormap() 는 4번째 ([3]) 9 | //생각을 포기하고 대충 느낌상 픽셀단위 32는 1타일이니깐.. 1*1 이미지일려나 10 | //+수정, 키엘좌 왈 8이 1블록(타일)이라 했다. 그러므로 1칸인 것 11 | var shadow = Core.atlas.getPixmap(block.name + (i + 1));// Core 객체의 atlas 객체의 getPixmap 반환값을 shadow 객체 선언. 코어에서 이름+(i+1)을 가진 Pixmap 찾기.. 12 | 13 | 14 | var offset = image.getWidth() / Vars.tilesize - 1;//image 객체의 getWidth()의 반환값/ Vars 객체의 tilesize 값 - 1를 offset 변수로 선언 15 | //image.getWidth() 는 Pixmap(32, 32)의 너비. Vars.tilesize 는 일반적으로 8이므로, 16 | //결과적으로, image 의 너비/8 -1 를 가짐. 17 | //추정값: 3 18 | var color = new Color();//color 객체 선언. 모든 구성요소가 0으로 설정된 새 색상을 생성. 19 | 20 | 21 | for(var x = 0; x < image.getWidth(); x++){//Pixmap(32, 32)의 너비만큼 반복함. 추정값: 32 22 | //29번 반복하는걸 32번 반복함. 29*32 23 | for(var y = offset; y < image.getHeight(); y++){//29번 반복함 24 | shadow.getPixel(x, y - offset, color);//shadow 객체의 getPixel 메소드 실행. x와 y-(이미지의 오프셋) 좌표 위치의 색을 shadow 에 set 함. 25 | 26 | if(color.a > 0.001){//만약 color 객체의 a(투명도)가 0.001보다 클 경우. 즉, 투명도가 있을 경우. 27 | color.set(0, 0, 0, 0.3);//color 객체의 set 메소드 실행. 색의 투명도를 0.3(=헥스코드 4d) 로 바꾼다. 28 | image.draw(x, y, color);//image 객체의 draw 메소드 실행. 29 | 30 | 31 | //요약, (0,3) 부터 (32, 32) 까지 정해진 색을 찍음, 투명도가 있으면 30% 투명하게 찍음. 32 | }; 33 | }; 34 | }; 35 | //1번째 스프라이트가 그려질 때, 그 앞의 2번째 스프라이트를 그리는 그림자 용도로 추정 36 | image.draw(shadow); 37 | 38 | packer.add(MultiPacker.PageType.environment, block.name + (i + 1), image); 39 | packer.add(MultiPacker.PageType.editor, "editor-" + block.name + (i + 1), image); 40 | 41 | if(i == 0){ 42 | packer.add(MultiPacker.PageType.editor, "editor-block-" + block.name + "-full", image); 43 | packer.add(MultiPacker.PageType.main, "block-" + block.name + "-full", image); 44 | }; 45 | } 46 | }; 47 | 48 | 49 | 50 | //콘텐츠 확장 51 | const ironOre = extendContent(OreBlock, "iron", { 52 | init(){ 53 | this.itemDrop = Vars.content.getByName(ContentType.item, "testmod-iron"); 54 | this.super$init(); 55 | }, 56 | createIcons(packer){ 57 | createIconsC(packer, this);//위의 함수 실행. 58 | } 59 | }); 60 | 61 | //광물 생성 매개변수 62 | ironOre.oreScale = 25.105874; 63 | ironOre.oreThreshold = 0.873; 64 | ironOre.oreDefault = true; 65 | 66 | ironOre.cost = 2; 67 | ironOre.hardness = 5; -------------------------------------------------------------------------------- /content/units/testunit1.hjson: -------------------------------------------------------------------------------- 1 | type: payload 2 | mineTier: 5 3 | speed: 0.4 4 | health: 45000 5 | armor: 20 6 | accel: 0.05 7 | drag: 0.045 8 | lowAltitude: true 9 | flying: true 10 | engineOffset: 4 11 | rotateShooting: flase 12 | hitSize: 48 13 | engineSize: 7.5 14 | payloadCapacity: 1000 15 | buildSpeed: 5 16 | destructibleWreck: false 17 | 18 | weapons: [ 19 | { 20 | name: testlaserr 21 | mirror: false 22 | top: false 23 | shake: 4 24 | shootY: 20 25 | x: 0 26 | y: 5 27 | 28 | firstShotDelay: 99 29 | 30 | reload: 320 31 | recoil: 0 32 | shootSound: laser 33 | continuous: true 34 | cooldownTime: 200 35 | 36 | bullet: { 37 | type: ContinuousLaserBulletType 38 | length: 150 39 | hitEffect: hitMeltHeal 40 | drawSize: 420 41 | lifetime: 160 42 | shake: 1 43 | despawnEffect: smokeCloud 44 | smokeEffect: none 45 | 46 | shootEffect: greenLaserChargeSmall 47 | 48 | incendChance: 0.05 49 | incendSpread: 5 50 | incendAmount: 1 51 | } 52 | 53 | shootStatus: slow 54 | shootStatusDuration: 180 55 | }, 56 | { 57 | name: testrailgun2 58 | x: 15 59 | y: 0 60 | reload: 110 61 | rotate: true 62 | rotateSpeed: 1.4 63 | shootY: 15 64 | recoil: 12 65 | shake: 10 66 | cooldownTime: 30 67 | mirror: true 68 | bullet: { 69 | type: RailBulletType 70 | damage: 2000 71 | speed: 50 72 | lifetime: 6 73 | hitShake: 6 74 | hitColor: 98ffa9 75 | hitEffect: healWave 76 | shootEffect: massiveExplosion 77 | smokeEffect: smokeCloud 78 | despawnEffect: greenBomb 79 | 80 | splashDamageRadius: 40 81 | splashDamage: 500 82 | 83 | fragBullets: 10 84 | fragLifeMin: 0.3 85 | fragVelocityMin: 0.1 86 | fragVelocityMax: 0.6 87 | fragBullet: { 88 | type: BasicBulletType 89 | sprite: large-bomb 90 | width: 30 91 | height: 30 92 | 93 | maxRange: 30 94 | backColor: 98ffa9 95 | frontColor: ffffff 96 | mixColorTo: ffffff 97 | despawnShake: 4 98 | collidesAir: false 99 | lifetime: 80 100 | despawnEffect: greenBomb 101 | hitEffect: massiveExplosion 102 | keepVelocity: false 103 | spin: 2 104 | shrinkX: 0.7 105 | shrinkY: 0.7 106 | speed: 3.5 107 | collides: false 108 | splashDamage: 240 109 | splashDamageRadius: 115 110 | 111 | } 112 | } 113 | } 114 | ] 115 | 116 | research: test2-factory 117 | -------------------------------------------------------------------------------- /scripts/blocks/impact-projector.js: -------------------------------------------------------------------------------- 1 | const impactProjector = new JavaAdapter(ForceProjector, { 2 | drawPlace(x, y, rotation, valid){ 3 | Draw.color(Vars.player.team().color.cpy().mul(1, 0.75, 0.25, 1)); 4 | Lines.stroke(1); 5 | Lines.circle(x * Vars.tilesize + this.offset, y * Vars.tilesize + this.offset, this.radius); 6 | 7 | Draw.color(Vars.player.team().color.cpy().mul(1, 0.25, 0.25, 1)); 8 | Lines.stroke(1); 9 | Lines.circle(x * Vars.tilesize + this.offset, y * Vars.tilesize + this.offset, this.radius + this.phaseRadiusBoost); 10 | Draw.color(); 11 | } 12 | }, "impact-projector"); 13 | 14 | var consLiq = impactProjector.consumes.add(new ConsumeLiquidFilter(liquid => liquid.temperature <= 1 && liquid.flammability < 1.3, 0.5)).boost(); 15 | consLiq.update = false; 16 | 17 | impactProjector.buildType = () => extendContent(ForceProjector.ForceBuild, impactProjector, { 18 | updateTile(){ 19 | const customConsumer = trait => { 20 | if(trait.team != this.paramEntity.team && trait.type.absorbable && Mathf.dst(this.paramEntity.x, this.paramEntity.y, trait.x, trait.y) <= this.realRadius()){ 21 | trait.absorb(); 22 | Fx.absorb.at(trait); 23 | this.paramEntity.hit = 1; 24 | this.paramEntity.buildup += trait.damage * this.paramEntity.warmup; 25 | } 26 | }; 27 | var phaseValid = impactProjector.consumes.get(ConsumeType.item).valid(this); 28 | this.phaseHeat = Mathf.lerpDelta(this.phaseHeat, Mathf.num(phaseValid), 0.1); 29 | if(phaseValid && !this.broken && this.timer.get(impactProjector.timerUse, impactProjector.phaseUseTime) && this.efficiency() > 0){ 30 | this.consume(); 31 | } 32 | 33 | this.radscl = Mathf.lerpDelta(this.radscl, this.broken ? 0 : this.warmup, 0.05); 34 | 35 | if(Mathf.chanceDelta(this.buildup / this.shieldHealth * 0.1)){ 36 | Fx.reactorsmoke.at(this.x + Mathf.range(Vars.tilesize / 2), this.y + Mathf.range(Vars.tilesize / 2)); 37 | } 38 | 39 | this.warmup = Mathf.lerpDelta(this.warmup, this.efficiency(), 0.1); 40 | 41 | if(this.buildup > 0){ 42 | var scale = !this.broken ? impactProjector.cooldownNormal : impactProjector.cooldownBrokenBase; 43 | var cons = impactProjector.consumes.get(ConsumeType.liquid); 44 | if(cons.valid(this)){ 45 | cons.update(this); 46 | scale *= (impactProjector.cooldownLiquid * (1 + (this.liquids.current().temperature - 0.4) * 0.9)); 47 | } 48 | 49 | this.buildup -= this.delta() * scale; 50 | } 51 | 52 | if(this.broken && this.buildup <= 0){ 53 | this.broken = false; 54 | } 55 | 56 | if(this.buildup >= impactProjector.shieldHealth + impactProjector.phaseShieldBoost && !this.broken){ 57 | this.broken = true; 58 | this.buildup = impactProjector.shieldHealth; 59 | Fx.shieldBreak.at(this.x, this.y, this.realRadius(), this.team.color.cpy()); 60 | } 61 | 62 | if(this.hit > 0){ 63 | this.hit -= 1 / 5 * Time.delta; 64 | } 65 | 66 | var realRadius = this.realRadius(); 67 | 68 | if(realRadius > 0 && !this.broken){ 69 | this.paramEntity = this; 70 | Groups.bullet.intersect(this.x - realRadius, this.y - realRadius, realRadius * 2, realRadius * 2, customConsumer); 71 | } 72 | }, 73 | drawShield(){ 74 | if(!this.broken){ 75 | var radius = this.realRadius(); 76 | 77 | var flash = 10 * (this.phaseHeat - 0.46); 78 | flash += flash * Time.delta; 79 | 80 | Draw.color(this.team.color.cpy(), this.team.color.cpy().mul(1, 0.25, 0.25, 1), Mathf.absin(flash, 9, 1)); 81 | 82 | Draw.z(Layer.shields); 83 | if(Core.settings.getBool("animatedshields")){ 84 | Fill.poly(this.x, this.y, 40, radius); 85 | }else{ 86 | Lines.stroke(1.5); 87 | Draw.alpha(0.09 + Mathf.clamp(0.08 * this.hit)); 88 | Fill.circle(this.x, this.y, radius); 89 | Draw.alpha(1); 90 | Lines.circle(this.x, this.y, radius); 91 | Draw.reset(); 92 | } 93 | } 94 | Draw.reset(); 95 | } 96 | }); 97 | -------------------------------------------------------------------------------- /content/units/testunit3.hjson: -------------------------------------------------------------------------------- 1 | type: legs 2 | drag: 0.1 3 | speed: 0.5 4 | health: 30000 5 | hitSize: 21 6 | armor: 13 7 | range: 240 8 | rotateSpeed: 1.9 9 | immunities: [burning, melting] 10 | legCount: 8 11 | legLength: 75 12 | legPairOffset: 3 13 | legMoveSpace: 0.8 14 | legBaseOffset: 8 15 | legExtension: -20 16 | landShake: 1 17 | legSpeed: 0.19 18 | legLengthScl: 0.93 19 | rippleScale: 3 20 | hovering: true 21 | 22 | legSplashDamage: 80 23 | legSplashRange: 60 24 | 25 | buildSpeed: 0.75 26 | 27 | allowLegStep: true 28 | visualElevation: 0.95 29 | groundLayer: 75 30 | 31 | weapons: [ 32 | { 33 | name: testbeam3 34 | top: true 35 | shake: 2 36 | shootY: 4 37 | reload: 30 38 | recoil: 1 39 | shootSound: laser 40 | x: 10 41 | y: -5 42 | bullet: { 43 | type: LaserBulletType 44 | damage: 30 45 | width: 30 46 | length: 60 47 | recoil: 1 48 | sideAngle: 45 49 | sideWidth: 1 50 | sideLength: 20 51 | colors: [7457ce66, 7457ce, ffffff] 52 | lightningSpacing: 45 53 | lightningDelay: 1.1 54 | lightningLengthRand: 15 55 | lightningColor: bf92f9 56 | lightningAngleRand: 40 57 | lightningDamage: 20 58 | } 59 | }, 60 | { 61 | name: testgun3 62 | reload: 8 63 | x: 14 64 | y: 3 65 | top: true 66 | bullet: { 67 | type: BasicBulletType 68 | backColor: 6d56bf 69 | frontColor: bf92f9 70 | mixColorFrom: bf92f9 71 | mixColorTo: 6d56bf 72 | damage: 15 73 | speed: 2.5 74 | width: 7 75 | height: 9 76 | lifetime: 60 77 | shootEffect: shootSmall 78 | smokeEffect: shootSmallSmoke 79 | } 80 | }, 81 | { 82 | name: testgun3 83 | reload: 14 84 | x: 12 85 | y: 2 86 | bullet: { 87 | type: BasicBulletType 88 | backColor: 6d56bf 89 | frontColor: bf92f9 90 | mixColorFrom: bf92f9 91 | mixColorTo: 6d56bf 92 | damage: 25 93 | speed: 2.5 94 | width: 10 95 | height: 12 96 | lifetime: 60 97 | shootEffect: shootSmall 98 | smokeEffect: shootSmallSmoke 99 | } 100 | }, 101 | { 102 | name: testrailgun1 103 | top: true 104 | shake: 5 105 | mirror: false 106 | alternate: false 107 | rotate: true 108 | rotateSpeed: 5 109 | reload: 300 110 | shots: 1 111 | recoil: 8 112 | x: 0 113 | y: -10 114 | shootSound: laserbig 115 | bullet: { 116 | type: RailBulletType 117 | shootEffect: railShoot 118 | speed: 70 119 | lifetime: 6 120 | damage: 1500 121 | hitEffect: mssiveExplosion 122 | smokeEffect: shootBig2 123 | pierceDamageFactor: 0.75 124 | hitEffect: sapExplosion 125 | updateEffect: sapExplosion 126 | pierceEffect: railTrail 127 | status: sapped 128 | statusDuration: 600 129 | fragBullets: 10 130 | fragVelocityMin: 0.15 131 | fragVelocityMax: 0.5 132 | hitColor: bf92f9 133 | fragBullet: { 134 | type: ArtilleryBulletType 135 | damage: 50 136 | speed: 3 137 | hitEffect: sapExplosion 138 | knockback: 0.8 139 | lifetime: 80 140 | width: 25 141 | height: 25 142 | collidesTiles: true 143 | collides: true 144 | ammoMultiplier: 4 145 | splashDamageRadius: 90 146 | splashDamage: 75 147 | backColor: 6d56bf 148 | frontColor: bf92f9 149 | lightningColor: bf92f9 150 | lightning: 5 151 | lightningLength: 20 152 | smokeEffect: shootBigSmoke2 153 | hitShake: 20 154 | 155 | status: sapped 156 | statusDuration: 600 157 | fragLifeMin: 0.3 158 | fragBullets: 9 159 | 160 | fragBullet: { 161 | type: ArtilleryBulletType 162 | speed: 2.3 163 | damage: 30 164 | hitEffect: sapExplosion 165 | knockback: 0.8 166 | lifetime: 90 167 | width: 20 168 | height: 20 169 | collidesTiles: false 170 | splashDamageRadius: 80 171 | splashDamage: 40 172 | backColor: 6d56bf 173 | frontColor: bf92f9 174 | lightningColor: bf92f9 175 | lightning: 2 176 | lightningLength: 5 177 | smokeEffect: shootBigSmoke2 178 | hitShake: 5 179 | 180 | status: sapped 181 | statusDuration: 600 182 | } 183 | } 184 | } 185 | 186 | } 187 | ] 188 | 189 | research: test2-factory 190 | -------------------------------------------------------------------------------- /bundles/bundle_ko.properties: -------------------------------------------------------------------------------- 1 | mod.testmod.displayName = 예시 모드 2 | mod.testmod.description = 다양한 블록들, 약간의 유닛들, 그리고 모든 블록을 스캔한 페이지 등등.. 어쨋든 다양한 콘텐츠들이 있습니다! 3 | 4 | block.testmod-titaniumlaunchpad.name = 티타늄 출격패드 5 | block.testmod-titaniumlaunchpad.description = 더 많은 아이템들을 더 자주 출격합니다. 6 | block.testmod-titaniumlaunchpad.details = 사실, 제가 알기론 이 블록은 망가졌습니다. 7 | 8 | block.testmod-floating-mine.name = 부유 기뢰 9 | block.testmod-floating-mine.description = 물 위를 지나가는 유닛들 전용 지뢰입니다. 10 | block.testmod-floating-mine.details = 이름 지을려고 나무위키랑 위키피디아 뒤지다가 딱 어울리는 이름을 발견해서 참 다행이에요. 11 | block.testmod-impact-projector.name = 충격 보호막 프로젝터 12 | block.testmod-impact-projector.description = 더 넓은 범위, 더 견고해진 보호막 hp, 더 비싸진 가속 비용, 그리고 모든 액체를 냉각제로 쓸 수 있습니다! 13 | block.testmod-impact-projector.details = 적에게 파괴되면 아군에게도 폭발 데미지를 입히는 민폐 프로젝터. 사실 그래서 중장갑 계열중 죽으면 큰일나는 유닛이기도 함. 14 | block.testmod-multi-projector.name = 다중 보호막 프로젝터 15 | block.testmod-multi-projector.description = 보호막 hp가 약해지고, 가속이 사라졌지만, 모든 액체를 냉각제로 쓸 수 있고, 좀 더 넓어졌으며, 보호막을 무려 3개나 더 드립니다! 16 | block.testmod-multi-projector.details = 17 | block.testmod-overdriver.name = 오버드라이버 18 | block.testmod-overdriver.description = 소형 과부하 프로젝터입니다. 19 | block.testmod-overdriver.details = 20 | block.testmod-mend-dome.name = 대형 수리 프로젝터 21 | block.testmod-mend-dome.description = 대형 수리 프로젝터입니다. 22 | block.testmod-mend-dome.details = 23 | 24 | block.testmod-hyper-driver.name = 하이퍼 드라이버 25 | block.testmod-hyper-driver.description = 26 | block.testmod-impact-driver.name = 충격 드라이버 27 | block.testmod-impact-driver.description = 28 | block.testmod-floating-conveyor.name = 수상 컨베이어 29 | block.testmod-floating-conveyor.description = 30 | block.testmod-impact-conveyor.name = 충격 컨베이어 31 | block.testmod-impact-conveyor.description = 32 | block.testmod-iron-conveyor.name = 철 컨베아어 33 | block.testmod-iron-conveyor.description = 34 | block.testmod-titanium-payload-conveyor.name = 티타늄 매스 컨베이어 35 | block.testmod-titanium-payload-conveyor.description = 36 | block.testmod-titanium-payload-router.name = 티타늄 화물 분배기 37 | block.testmod-titanium-payload-router.description = 38 | 39 | block.testmod-slag-extractor.name = 광재 추출기 40 | block.testmod-slag-extractor.description = 41 | block.testmod-cryofluid-extractor.name = 냉수 추출기 42 | block.testmod-cryofluid-extractor.description = 43 | block.testmod-titanium-drill.name = 티타늄 드릴 44 | block.testmod-titanium-drill.description = 45 | 46 | block.testmod-boostwater.name = 가속 물 47 | block.testmod-boostwater.description = 48 | 49 | block.testmod-hyper-pulse-conduit.name = 하이퍼 펄스 파이프 50 | block.testmod-plated-hyper-conduit.name = 도금된 하이퍼 파이프 51 | block.testmod-power-pump.name = 파워 펌프 52 | block.testmod-floating-pump.name = 수상 펌프 53 | 54 | block.testmod-message-bank.name = 메시지 뱅크 55 | block.testmod-power-processor.name = 전기 프로세서 56 | block.testmod-pressed-memory-cell.name = 압축된 메모리 블록 57 | block.testmod-testdisplay.name = 실험용 디스플레이 58 | 59 | block.testmod-blocks-forge.name = 블록 포지 60 | block.testmod-atmospheric-cooler.name = 대기 냉각기 61 | block.testmod-activationmatter-weaver.name = 활성체 합성기 62 | block.testmod-multi-blast-mixer.name = 다중 폭발물 혼합기 63 | block.testmod-multi-pyratite-mixer.name = 다중 파이라타이트 혼합기 64 | block.testmod-multi-cultivator.name = 다중 온실 65 | block.testmod-always-source.name = 아이템 소오스 66 | 67 | block.testmod-coredvalut.name = 코어화 창고 68 | block.testmod-titanium-unloader.name = 티타늄 언로더 69 | 70 | block.testmod-electric-factory.name = 전기 공장 71 | block.testmod-electric-additive-reconstructor.name = 전기 T2 재구성기 72 | block.testmod-electric-multiplicative-reconstructor.name = 전기 T3 재구성기 73 | block.testmod-heavy-factory.name = 중장갑 공장 74 | block.testmod-heavy-additive-reconstructor.name = 중장갑 T2 재구성기 75 | block.testmod-heavy-multiplicative-reconstructor.name = 중장갑 T3 재구성기 76 | block.testmod-spored-factory.name = 포자 공장 77 | block.testmod-spored-additive-reconstructor.name = 포자 T2 재구성기 78 | block.testmod-spored-multiplicative-reconstructor.name = 포자 T3 재구성기 79 | 80 | block.testmod-plast-salvo.name = 강화 살보 81 | block.testmod-plast-salvo.description = 82 | block.testmod-plast-salvo.details = 83 | block.testmod-iron-wall.name = 철벽 84 | block.testmod-iron-wall.description = 철로 만들어진 벽입니다. 85 | block.testmod-iron-wall.details = 사실 유닛이 지나갈 수 있는 트롤벽입니다. 86 | block.testmod-iron-wall-large.name = 큰 철벽 87 | block.testmod-iron-wall-large.description = 더 큰 철벽 88 | block.testmod-iron-wall-large.details = 이걸 가지고 다니면 철벽인이 되죠. 솔로들을 위한 최고의 패키지! 89 | 90 | item.testmod-iron.name = 철 91 | item.testmod-iron.description = 일부 컨베이어나 철벽 건설에 사용됩니다. 92 | item.testmod-iron.details = ???: 아이언맨은 뒤졌어! 93 | item.testmod-activation-matter.name = 활성체 94 | item.testmod-activation-matter.description = 일부 건물들을 활성화하는데 사용됩니다. 95 | item.testmod-activation-matter.details = 절대 블록을 이 아이템으로 가득 채우지 마십시오. 생산계열 블록의 경우엔 나올 아이템들이 자리가 없어서 못나오는 사태가 벌어질 수 있습니다. 96 | 97 | unit.testmod-electricdagger.name = 전격 대거 98 | unit.testmod-electricmace.name = 전격 메이스 99 | unit.testmod-electricfortress.name = 전격 포트리스 100 | unit.testmod-heavydagger.name = 중장갑 대거 101 | unit.testmod-heavymace.name = 중장갑 메이스 102 | unit.testmod-heavyfortress.name = 중장갑 포트리스 103 | unit.testmod-sporeddagger.name = 포자 대거 104 | unit.testmod-sporedmace.name = 포자 메이스 105 | unit.testmod-sporedfortress.name = 포자 포트리스 106 | unit.testmod-electricflare.name = 전격 플레어 107 | unit.testmod-electrichorizon.name = 전격 호라이즌 108 | unit.testmod-electriczenith.name = 전격 제니스 109 | unit.testmod-heavyflare.name = 중장갑 플레어 110 | unit.testmod-heavyhorizon.name = 중장갑 호라이즌 111 | unit.testmod-heavyzenith.name = 중장갑 제니스 112 | unit.testmod-sporedflare.name = 포자 플레어 113 | unit.testmod-sporedhorizon.name = 포자 호라이즌 114 | unit.testmod-sporedzenith.name = 포자 제니스 115 | 116 | vanila.title = 바닐라 117 | block.title = 블록 118 | unit.title = 유닛 119 | item.title = 아이템 120 | liquid.title = 액체 121 | sector.title = 지역 122 | planet.title = 행성 123 | weather.title = 날씨 124 | 125 | block.mod.title = 기타 126 | 127 | bar.servShield1 = 보조 보호막 1 128 | bar.servShield2 = 보조 보호막 2 129 | bar.servShield3 = 보조 보호막 3 130 | -------------------------------------------------------------------------------- /scripts/campaign/planet.js: -------------------------------------------------------------------------------- 1 | Events.on(ClientLoadEvent, () => { 2 | const sirius = new Planet("sirius", Planets.sun, 0, 0.5); 3 | sirius.mesh = new SunMesh( 4 | sirius, 4, 5 | 5, 0.3, 1.7, 1.2, 1, 6 | 1.3, 7 | Pal.lancerLaser, 8 | Pal.lancerLaser.cpy().lerp(Color.white, 0.2), 9 | Pal.lancerLaser.cpy().lerp(Color.white, 0.4), 10 | Pal.lancerLaser.cpy().lerp(Color.white, 0.6), 11 | Pal.lancerLaser.cpy().lerp(Color.white, 0.8), 12 | Color.white 13 | ); 14 | 15 | sirius.orbitRadius = 8; 16 | sirius.orbitTime = 60; 17 | sirius.rotateTime = 30; 18 | sirius.bloom = true; 19 | sirius.accessible = true; 20 | sirius.hasAtmosphere = true; 21 | sirius.atmosphereColor = Pal.lancerLaser; 22 | sirius.atmosphereRadIn = 0.05; 23 | sirius.atmosphereRadOut = 0.3; 24 | sirius.localizedName = "Sirius"; 25 | 26 | const cornal = new Planet("cornal", Planets.sun, 0, 0.3); 27 | cornal.mesh = new SunMesh( 28 | cornal, 4, 29 | 5, 0.3, 1.7, 1.2, 1, 30 | 1.3, 31 | Pal.heal, 32 | Pal.heal.cpy().lerp(Color.white, 0.2), 33 | Pal.heal.cpy().lerp(Color.white, 0.3), 34 | Pal.heal.cpy().lerp(Color.white, 0.4), 35 | Pal.heal.cpy().lerp(Color.white, 0.5) 36 | ); 37 | 38 | cornal.orbitRadius = 12; 39 | cornal.orbitTime = 60; 40 | cornal.rotateTime = 30; 41 | cornal.bloom = true; 42 | cornal.accessible = true; 43 | cornal.hasAtmosphere = true; 44 | cornal.atmosphereColor = Pal.heal; 45 | cornal.atmosphereRadIn = 0.001; 46 | cornal.atmosphereRadOut = 0.3; 47 | cornal.localizedName = "Cornal"; 48 | 49 | const slagia = new Planet("slagia", cornal, 0, 0.2); 50 | slagia.mesh = new SunMesh( 51 | slagia, 4, 52 | 5, 0.3, 1.7, 1.2, 1, 53 | 1.3, 54 | Liquids.slag.color, 55 | Liquids.slag.color.cpy().lerp(Color.white, 0.2), 56 | Liquids.slag.color.cpy().lerp(Color.white, 0.3), 57 | Liquids.slag.color.cpy().lerp(Color.white, 0.4), 58 | Liquids.slag.color.cpy().lerp(Color.white, 0.5) 59 | ); 60 | //slagia.mesh = new PlanetMesh(slagia, new MeshBuilder(1, 0.5), Shaders.slag); 61 | slagia.orbitRadius = 4; 62 | slagia.orbitTime = 60; 63 | slagia.rotateTime = 30; 64 | slagia.bloom = true; 65 | slagia.accessible = true; 66 | slagia.hasAtmosphere = true; 67 | slagia.atmosphereColor = Liquids.slag.color; 68 | slagia.atmosphereRadIn = 0.1; 69 | slagia.atmosphereRadOut = 0.3; 70 | slagia.localizedName = "Slagia"; 71 | 72 | 73 | var arrs = [ 74 | [Blocks.water, Blocks.darksandWater, Blocks.darksand, Blocks.darksand, Blocks.darksand, Blocks.darksand, Blocks.sand, Blocks.sand, Blocks.sand, Blocks.sand, Blocks.darksandWater, Blocks.stone, Blocks.stone], 75 | [Blocks.water, Blocks.darksandWater, Blocks.darksand, Blocks.darksand, Blocks.sand, Blocks.sand, Blocks.sand, Blocks.sand, Blocks.sand, Blocks.darksandWater, Blocks.stone, Blocks.stone, Blocks.stone], 76 | [Blocks.water, Blocks.darksandWater, Blocks.darksand, Blocks.sand, Blocks.salt, Blocks.sand, Blocks.sand, Blocks.sand, Blocks.sand, Blocks.darksandWater, Blocks.stone, Blocks.stone, Blocks.stone], 77 | [Blocks.water, Blocks.sandWater, Blocks.sand, Blocks.salt, Blocks.salt, Blocks.salt, Blocks.sand, Blocks.stone, Blocks.stone, Blocks.stone, Blocks.snow, Blocks.iceSnow, Blocks.ice], 78 | [Blocks.deepwater, Blocks.water, Blocks.sandWater, Blocks.sand, Blocks.salt, Blocks.sand, Blocks.sand, Blocks.basalt, Blocks.snow, Blocks.snow, Blocks.snow, Blocks.snow, Blocks.ice], 79 | [Blocks.deepwater, Blocks.water, Blocks.sandWater, Blocks.sand, Blocks.sand, Blocks.sand, Blocks.grass, Blocks.iceSnow, Blocks.snow, Blocks.snow, Blocks.ice, Blocks.snow, Blocks.ice], 80 | [Blocks.deepwater, Blocks.sandWater, Blocks.sand, Blocks.sand, Blocks.grass, Blocks.grass, Blocks.snow, Blocks.basalt, Blocks.basalt, Blocks.basalt, Blocks.ice, Blocks.snow, Blocks.ice], 81 | [Blocks.water, Blocks.darksandWater, Blocks.darksand, Blocks.darksand, Blocks.basalt, Blocks.grass, Blocks.basalt, Blocks.hotrock, Blocks.basalt, Blocks.ice, Blocks.snow, Blocks.ice, Blocks.ice], 82 | [Blocks.darksandWater, Blocks.darksand, Blocks.darksand, Blocks.darksand, Blocks.grass, Blocks.dirt, Blocks.snow, Blocks.basalt, Blocks.basalt, Blocks.ice, Blocks.snow, Blocks.ice, Blocks.ice], 83 | [Blocks.darksandWater, Blocks.darksand, Blocks.darksand, Blocks.dirt, Blocks.ice, Blocks.ice, Blocks.snow, Blocks.snow, Blocks.snow, Blocks.snow, Blocks.ice, Blocks.ice, Blocks.ice], 84 | [Blocks.water, Blocks.darksandWater, Blocks.darksand, Blocks.mud, Blocks.mud, Blocks.ice, Blocks.ice, Blocks.snow, Blocks.snow, Blocks.ice, Blocks.ice, Blocks.ice, Blocks.ice], 85 | [Blocks.darksandWater, Blocks.darksandWater, Blocks.darksand, Blocks.dirt, Blocks.grass, Blocks.dirt, Blocks.iceSnow, Blocks.snow, Blocks.ice, Blocks.ice, Blocks.ice, Blocks.ice, Blocks.ice], 86 | [Blocks.darksandWater, Blocks.darksand, Blocks.snow, Blocks.ice, Blocks.iceSnow, Blocks.snow, Blocks.snow, Blocks.snow, Blocks.ice, Blocks.ice, Blocks.ice, Blocks.ice, Blocks.ice] 87 | ]; 88 | const grasiaGenerator = extend(SerpuloPlanetGenerator, { 89 | getBlock(p){ 90 | this.arr = arrs; 91 | this.super$getBlock(p); 92 | } 93 | }); 94 | grasiaGenerator.arr = arrs; 95 | const grasia = new Planet("grasia", cornal, 4, 0.8); 96 | grasia.generator = grasiaGenerator; 97 | grasia.mesh = new HexMesh(grasia, 8); 98 | grasia.orbitRadius = 7; 99 | grasia.orbitTime = 1.5 * 60; 100 | grasia.rotateTime = 60; 101 | grasia.bloom = true; 102 | grasia.accessible = true; 103 | grasia.hasAtmosphere = true; 104 | grasia.atmosphereColor = Blocks.grass.mapColor.cpy().mul(Pal.heal); 105 | grasia.atmosphereRadIn = 0.075; 106 | grasia.atmosphereRadOut = 0.3; 107 | grasia.startSector = 1; 108 | grasia.localizedName = "Grasia"; 109 | 110 | Planets.sun.accessible = true; 111 | Planets.sun.localizedName = "[coral]Sun" 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | const antarcticaSurvival = new SectorPreset("antarcticaSurvival", grasia, 1); 122 | antarcticaSurvival.captureWave = 60; 123 | antarcticaSurvival.localizedName = "Antarctica Survival"; 124 | antarcticaSurvival.difficulty = 6; 125 | antarcticaSurvival.alwaysUnlocked = true; 126 | 127 | const centralBase = new SectorPreset("centralBase", grasia, 6); 128 | centralBase.captureWave = 55; 129 | centralBase.localizedName = "Centeral Base"; 130 | centralBase.difficulty = 6; 131 | centralBase.alwaysUnlocked = true; 132 | 133 | 134 | const desertCanyon = new SectorPreset("desertCanyon", grasia, 7); 135 | desertCanyon.captureWave = 40; 136 | desertCanyon.localizedName = "Desert Canyon"; 137 | desertCanyon.difficulty = 5; 138 | desertCanyon.alwaysUnlocked = true; 139 | 140 | const iceBreak = new SectorPreset("iceBreak", grasia, 2); 141 | iceBreak.localizedName = "Ice Break"; 142 | iceBreak.difficulty = 8; 143 | iceBreak.alwaysUnlocked = true; 144 | 145 | const polarOutpost = new SectorPreset("polarOutpost", grasia, 3); 146 | polarOutpost.localizedName = "Polar Outpost"; 147 | polarOutpost.difficulty = 5; 148 | polarOutpost.alwaysUnlocked = true; 149 | 150 | const saltirekArchipelago = new SectorPreset("saltirekArchipelago", grasia, 4); 151 | saltirekArchipelago.localizedName = "Saltirek Archipelago"; 152 | saltirekArchipelago.difficulty = 5; 153 | saltirekArchipelago.alwaysUnlocked = true; 154 | 155 | const saltirekLanding = new SectorPreset("saltirekLanding", grasia, 5); 156 | saltirekLanding.localizedName = "Saltirek Landing"; 157 | saltirekLanding.difficulty = 7; 158 | saltirekLanding.alwaysUnlocked = true; 159 | 160 | const sporeErosion = new SectorPreset("sporeErosion", grasia, 8); 161 | sporeErosion.localizedName = "Spore Erosion"; 162 | sporeErosion.difficulty = 8; 163 | sporeErosion.alwaysUnlocked = true; 164 | 165 | }); 166 | -------------------------------------------------------------------------------- /scripts/units/testunit4.js: -------------------------------------------------------------------------------- 1 | //변수 정의 2 | //어빌리티 3 | const healColor = Color.valueOf("98ffa9"); 4 | const healerColor = Color.valueOf("db401c"); 5 | const spawnUnit = Vars.content.getByName(ContentType.unit, "arkyid"); 6 | const spawnUnit2 = Vars.content.getByName(ContentType.unit, "reign"); 7 | const spawnUnit3 = Vars.content.getByName(ContentType.unit, "corvus"); 8 | const unitSpawn1 = new UnitSpawnAbility(spawnUnit3, 15 * 60, 0, 0); 9 | const healField1 = new RepairFieldAbility(50, 2 * 60, 20 * 8); 10 | //엔티티 11 | const testunit4Entity = prov(() => extend(PayloadUnit, {})); 12 | EntityMapping.nameMap.put("testunit4", testunit4Entity); 13 | const testunit4 = extend(UnitType, "testunit4", {}); 14 | testunit4.constructor = testunit4Entity; 15 | //탄환 16 | const testFragBullet1 = new BombBulletType(15, 24); 17 | const testFragBullet2 = new BasicBulletType(3, 20, "large-bomb"); 18 | const testBullet1 = new MissileBulletType(3, 35); 19 | const testBullet2 = new LightningBulletType(); 20 | const testBullet3 = new PointBulletType(); 21 | //무기 22 | const testWeapon1 = new Weapon("testmod-testmissile1"); 23 | const testWeapon2 = new Weapon("testmod-testmissile1"); 24 | const testWeapon3 = new Weapon("testmod-testshotgun1"); 25 | const testWeapon4 = new Weapon("testmod-testpointgun1"); 26 | //그래픽 효과 27 | const mendSpawn = new Effect (120, e => { //유닛 소환 그래픽 효과 28 | if(!(e.data instanceof UnitType)) { 29 | return; 30 | } 31 | Draw.color(healColor); 32 | Draw.alpha(e.fin()); 33 | 34 | var scl = 1 + e.fout() * 2; 35 | 36 | var unit = e.data(); 37 | var region = unit.icon(Cicon.full); 38 | 39 | Draw.rect(region, e.x, e.y, region.width * Draw.scl * scl, region.height * Draw.scl * scl, 180); 40 | }); 41 | const healIn = new Effect (60, e => { //유닛 치료 그래픽 효과 42 | Draw.color(e.color); 43 | 44 | e.scaled(8, e2 => { 45 | Draw.stroke(e2.fout() * 4); 46 | Lines.circle(e2.x, e2.y, 4 + e2.fin() * 27); 47 | }); 48 | 49 | Draw.stroke(e.fout() * 2); 50 | 51 | Angles.randLenVectors(e.id, 30, 4 + 40 * e.fin(), (x, y) => { 52 | Draw.lineAngle(e.x + x, e.y + y, Mathf.angle(x, y), e.fin() * 4 + 1); 53 | }); 54 | Draw.color(Pal.heal); 55 | Lines.stroke(e.fout() * 2); 56 | Lines.circle(e.x, e.y, 4 + e.finpow() * 65); 57 | 58 | Draw.color(Pal.heal); 59 | for(i = 0; i < 4; i++){ 60 | Drawf.tri(e.x, e.y, 6, 100 * e.fout(), i*90); 61 | }; 62 | 63 | Draw.color(); 64 | for(i = 0; i < 4; i++){ 65 | Drawf.tri(e.x, e.y, 3, 35 * e.fout(), i*90); 66 | }; 67 | }); 68 | 69 | 70 | 71 | //실행문 72 | //그래픽 효과 73 | unitSpawn1.spawnEffect = mendSpawn; 74 | healField1.healEffect = healIn; 75 | 76 | //어빌리티 77 | testunit4.abilities.add(new JavaAdapter(RepairFieldAbility, {}, 50, 2 * 60, 20 * 8)); 78 | testunit4.abilities.add(new ForceFieldAbility(15*8, 0.5, 550, 2 * 60)); 79 | testunit4.abilities.add(new UnitSpawnAbility(spawnUnit2, 5 * 60, 18, 7)); 80 | testunit4.abilities.add(new UnitSpawnAbility(spawnUnit2, 5 * 60, -18, 7)); 81 | testunit4.abilities.add(new UnitSpawnAbility(spawnUnit, 7 * 60, 18, -7)); 82 | testunit4.abilities.add(new UnitSpawnAbility(spawnUnit, 7 * 60, -18, -7)); 83 | testunit4.abilities.add(new UnitSpawnAbility(spawnUnit3, 10 * 60, 0, 0)); 84 | testunit4.weapons.add(testWeapon1); 85 | testunit4.weapons.add(testWeapon2); 86 | testunit4.weapons.add(testWeapon3); 87 | testunit4.weapons.add(testWeapon4); 88 | //무기 89 | 90 | testWeapon1.reload = 60; 91 | testWeapon1.shake = 1; 92 | testWeapon1.shots = 2; 93 | testWeapon1.inaccuracy = 5; 94 | testWeapon1.velocityRnd = 0.2; 95 | testWeapon1.x = 5; 96 | testWeapon1.y = 8; 97 | testWeapon1.rotate = true; 98 | testWeapon1.top = true; 99 | testWeapon1.shootSound = Sounds.missile; 100 | testWeapon1.bullet = testBullet1; 101 | 102 | testWeapon2.reload = 45; 103 | testWeapon2.shake = 1; 104 | testWeapon2.shots = 2; 105 | testWeapon2.inaccuracy = 5; 106 | testWeapon2.velocityRnd = 0.2; 107 | testWeapon2.x = 3; 108 | testWeapon2.y = 4; 109 | testWeapon2.rotate = true; 110 | testWeapon2.top = true; 111 | testWeapon2.shootSound = Sounds.missile; 112 | testWeapon2.bullet = testBullet1; 113 | 114 | testWeapon3.reload = 40; 115 | testWeapon3.shootY = 2.5; 116 | testWeapon3.shake = 2.2; 117 | testWeapon3.shots = 3; 118 | testWeapon3.inaccuracy = 35; 119 | testWeapon3.shotDelay = 0.5; 120 | testWeapon3.spacing = 0; 121 | testWeapon3.recoil = 2.5; 122 | testWeapon3.x = 20; 123 | testWeapon3.y = 0; 124 | testWeapon3.rotate = false; 125 | testWeapon3.top = true; 126 | testWeapon3.ejectEffect = Fx.none; 127 | testWeapon3.shootSound = Sounds.spark; 128 | testWeapon3.bullet = testBullet2; 129 | 130 | testWeapon4.mirror = true; 131 | testWeapon4.top = true; 132 | testWeapon4.rotateSpeed = 2.5; 133 | testWeapon4.rotate = true; 134 | testWeapon4.reload = 360; 135 | testWeapon4.recoil = 5; 136 | testWeapon4.shake = 4; 137 | testWeapon4.cooldownTime = 0.009; 138 | testWeapon4.shots = 1; 139 | testWeapon4.shootCone = 2; 140 | testWeapon4.shootSound = Sounds.laser; 141 | testWeapon4.shootStatus = StatusEffects.slow; 142 | testWeapon4.shootStatusDuration = 120; 143 | testWeapon4.firstShotDelay = 80; 144 | testWeapon4.x = 17; 145 | testWeapon4.y = -8; 146 | testWeapon4.bullet = testBullet3; 147 | testWeapon4.alternate = false; 148 | 149 | //탄환 150 | testBullet1.drag = -0.003; 151 | testBullet1.homingRange = 20 * 8; 152 | testBullet1.keepVelocity = false; 153 | testBullet1.splashDamageRadius = 2.5 * 8; 154 | testBullet1.splashDamage = 10; 155 | testBullet1.lifetime = 60; 156 | testBullet1.trailColor = Color.valueOf("62ae7f"); 157 | testBullet1.backColor = Color.valueOf("62ae7f"); 158 | testBullet1.frontColor = healColor; 159 | testBullet1.mixColorFrom = healColor; 160 | testBullet1.mixColorTo = healerColor; 161 | testBullet1.hitColor = healColor; 162 | testBullet1.hitEffect = Fx.healWave; 163 | testBullet1.despawnEffect = Fx.healWave; 164 | testBullet1.shootEffect = Fx.shootHeal; 165 | testBullet1.weaveScale = 6; 166 | testBullet1.weaveMag = 1; 167 | testBullet1.puddles = 8; 168 | testBullet1.puddleRange = 8; 169 | testBullet1.puddleAmount = 10; 170 | testBullet1.puddleLiquid = Liquids.oil; 171 | testBullet1.fragBullets = 3; 172 | testBullet1.fragBullet = testFragBullet1; 173 | 174 | testBullet2.damage = 20; 175 | testBullet2.lightningLength = 9; 176 | testBullet2.lightningLengthRand = 7; 177 | testBullet2.shootEffect = Fx.shootHeal; 178 | testBullet2.lightningColor = healColor; 179 | testBullet2.hitColor = healColor; 180 | 181 | testBullet3.trailSpacing = 20; 182 | testBullet3.damage = 1500; 183 | //testBullet3.tileDamageMultiplier = 0.75; 184 | testBullet3.speed = 750; 185 | testBullet3.lifetime = 150; 186 | testBullet3.hitShake = 6; 187 | testBullet3.shootEffect = Fx.greenLaserCharge; 188 | testBullet3.hitEffect = Fx.healWave; 189 | testBullet3.hitColor = healColor; 190 | testBullet3.smokeEffect = Fx.smokeCloud; 191 | testBullet3.trailEffect = Fx.heal; 192 | testBullet3.despawnEffect = Fx.greenBomb; 193 | testBullet3.splashDamage = 500; 194 | testBullet3.splashDamageRadius = 16; 195 | testBullet3.fragBullets = 5; 196 | testBullet3.fragLifeMin = 0.3; 197 | testBullet3.fragVelocityMax = 0.5; 198 | testBullet3.fragVelocityMin = 0.15; 199 | testBullet3.fragBullet = testFragBullet2; 200 | 201 | testFragBullet1.width = 10; 202 | testFragBullet1.height = 14; 203 | testFragBullet1.hitEffect = Fx.explosion; 204 | testFragBullet1.damage = 30; 205 | testFragBullet1.hitColor = healerColor; 206 | testFragBullet1.backColor = healerColor; 207 | testFragBullet1.frontColor = healerColor; 208 | testFragBullet1.speed = 2; 209 | testFragBullet1.lightning = 2; 210 | testFragBullet1.lightningColor = healerColor; 211 | testFragBullet1.lightningLength = 4; 212 | testFragBullet1.incendAmount = 4; 213 | testFragBullet1.incendSpread = 15; 214 | testFragBullet1.incendChance = 1; 215 | 216 | testFragBullet2.width = 30; 217 | testFragBullet2.height = 30; 218 | testFragBullet2.maxRange = 30; 219 | testFragBullet2.backColor = healColor; 220 | testFragBullet2.despawnShake = 4; 221 | testFragBullet2.collidesAir = true; 222 | testFragBullet2.lifetime = 70; 223 | testFragBullet2.despawnEffect = Fx.greenBomb; 224 | testFragBullet2.hitEffect = Fx.massiveExplosion; 225 | testFragBullet2.keepVelocity = false; 226 | testFragBullet2.spin = 2; 227 | testFragBullet2.shrinkX = 0.7; 228 | testFragBullet2.shrinkY = 0.7; 229 | testFragBullet2.collides = false; 230 | testFragBullet2.splashDamage = 240; 231 | testFragBullet2.splashDamageRadius = 115; 232 | -------------------------------------------------------------------------------- /bundles/bundle.properties: -------------------------------------------------------------------------------- 1 | mod.testmod.displayName = Example Mod 2 | mod.testmod.description = Various blocks, some units, and the block scan pages, etc.... there's a variety of content! 3 | 4 | block.testmod-titaniumlaunchpad.name = Titanium Launchpad 5 | block.testmod-titaniumlaunchpad.description = Launches more resources more often. 6 | block.testmod-titaniumlaunchpad.details = Actually, this is broken as i know. 7 | 8 | block.testmod-floating-mine.name = Floating Mine 9 | block.testmod-floating-mine.description = Mine for wavermove/leg units. 10 | block.testmod-floating-mine.details = I was searching through NamuWiki and Wikipedia to name it, but I'm glad I found the perfect name. 11 | block.testmod-impact-projector.name = Impact Projector 12 | block.testmod-impact-projector.description = Bigger radius, more shield hp, more expensive phase boost requirement, and .. you can use all liquids. 13 | block.testmod-impact-projector.details = A projectile that would damage our troops if destroyed by the enemy. In fact, it's a unit that will be in trouble if it dies in heavy series. 14 | block.testmod-multi-projector.name = Multi Projector 15 | block.testmod-multi-projector.description = Big radius, low shield hp, no phase boost but you get +3 shields. 16 | block.testmod-multi-projector.details = Actually, shield hp is not weaker too much. 17 | block.testmod-overdriver.name = overdriver 18 | block.testmod-overdriver.description = small overdrive projector 19 | block.testmod-overdriver.details = do not spam this. just do not. that effects nothing, do not be stupit. 20 | block.testmod-mend-dome.name = mend dome 21 | block.testmod-mend-dome.description = big mend projector 22 | block.testmod-mend-dome.details = it's OP. just OP 23 | 24 | block.testmod-hyper-driver.name = hyper driver 25 | block.testmod-impact-driver.name = impact driver 26 | block.testmod-floating-conveyor.name = floating conveyor 27 | block.testmod-impact-conveyor.name = impact conveyor 28 | block.testmod-iron-conveyor.name = iron conveyor 29 | block.testmod-titanium-payload-conveyor.name = titanium payload conveyor 30 | block.testmod-titanium-payload-router.name = titanium payload router 31 | 32 | block.testmod-slag-extractor.name = slag extractor 33 | block.testmod-cryofluid-extractor.name = cryofluid extractor 34 | block.testmod-titanium-drill.name = titanium drill 35 | 36 | block.testmod-boostwater.name = boost water 37 | 38 | block.testmod-hyper-pulse-conduit.name = hyper pulse conduit 39 | block.testmod-plated-hyper-conduit.name = plated hyper conduit 40 | block.testmod-power-pump.name = power pump 41 | block.testmod-floating-pump.name = floating pump 42 | 43 | block.testmod-message-bank.name = message bank 44 | block.testmod-power-processor.name = power processor 45 | block.testmod-pressed-memory-cell.name = pressed memory cell 46 | block.testmod-testdisplay.name = test display 47 | 48 | block.testmod-atmospheric-cooler.name = atmospheric cooler 49 | block.testmod-activationmatter-weaver.name = activationmatter weaver 50 | block.testmod-multi-blast-mixer.name = multi blast mixer 51 | block.testmod-multi-pyratite-mixer.name = multi pyratite mixer 52 | block.testmod-multi-cultivator.name = multi cultivator 53 | block.testmod-always-source.name = always source 54 | 55 | block.testmod-coredvalut.name = cored valut 56 | block.testmod-coredvalut.description = replace this on storage blocks to be core. 57 | block.testmod-coredvalut.details = haha, come here valut! be the core..! 58 | block.testmod-titanium-unloader.name = titanium unloader 59 | 60 | block.testmod-electric-factory.name = electric factory 61 | block.testmod-electric-additive-reconstructor.name = electric T2 reconstructor 62 | block.testmod-electric-multiplicative-reconstructor.name = electric T3 reconstructor 63 | block.testmod-heavy-factory.name = heavy factory 64 | block.testmod-heavy-additive-reconstructor.name = heavy T2 reconstructor 65 | block.testmod-heavy-multiplicative-reconstructor.name = heavy T3 reconstructor 66 | block.testmod-spored-factory.name = spored factory 67 | block.testmod-spored-additive-reconstructor.name = spored T2 reconstructor 68 | block.testmod-spored-multiplicative-reconstructor.name = spored T3 reconstructor 69 | 70 | block.testmod-plast-salvo.name = plast salvo 71 | block.testmod-overdriver.description = Small Overdrive Projector 72 | block.testmod-overdriver.details = Do not spam this. just do not. That affects nothing, do not be stupid. 73 | block.testmod-mend-dome.name = Mend Dome 74 | block.testmod-mend-dome.description = Bigger mend projector. 75 | block.testmod-mend-dome.details = it's OP. Just OP 76 | 77 | block.testmod-hyper-driver.name = Hyper Driver 78 | block.testmod-impact-driver.name = Impact Driver 79 | block.testmod-floating-conveyor.name = Floating Conveyor 80 | block.testmod-impact-conveyor.name = Impact Conveyor 81 | block.testmod-iron-conveyor.name = Iron Conveyor 82 | block.testmod-titanium-payload-conveyor.name = Titanium Payload Conveyor 83 | block.testmod-titanium-payload-router.name = Titanium Payload Router 84 | 85 | block.testmod-slag-extractor.name = Slag Extractor 86 | block.testmod-cryofluid-extractor.name = Cryofluid Extractor 87 | block.testmod-titanium-drill.name = Titanium Drill 88 | 89 | block.testmod-boostwater.name = Boost Water 90 | 91 | block.testmod-hyper-pulse-conduit.name = Hyper Pulse Conduit 92 | block.testmod-plated-hyper-conduit.name = Plated Hyper Conduit 93 | block.testmod-power-pump.name = Power Pump 94 | 95 | block.testmod-message-bank.name = Message Bank 96 | block.testmod-power-processor.name = Power Processor 97 | block.testmod-pressed-memory-cell.name = Pressed Memory Cell 98 | block.testmod-testdisplay.name = Test Display 99 | 100 | block.testmod-atmospheric-cooler.name = Atmospheric Cooler 101 | block.testmod-activationmatter-weaver.name = Activation Matter Weaver 102 | block.testmod-multi-blast-mixer.name = Multi Blast Mixer 103 | block.testmod-multi-pyratite-mixer.name = Multi Pyratite Mixer 104 | block.testmod-multi-cultivator.name = Multi Cultivator 105 | block.testmod-always-source.name = Always Source 106 | 107 | block.testmod-coredvalut.name = Cored Vault 108 | block.testmod-coredvalut.description = Replace this on storage blocks to be core. 109 | block.testmod-coredvalut.details = Haha, come here vault! Be the core..! 110 | block.testmod-titanium-unloader.name = Titanium Unloader 111 | 112 | block.testmod-electric-factory.name = Electric Factory 113 | block.testmod-electric-additive-reconstructor.name = Electric T2 Reconstructor 114 | block.testmod-electric-multiplicative-reconstructor.name = Electric T3 Reconstructor 115 | block.testmod-heavy-factory.name = Heavy Factory 116 | block.testmod-heavy-additive-reconstructor.name = Heavy T2 Reconstructor 117 | block.testmod-heavy-multiplicative-reconstructor.name = Heavy T3 Reconstructor 118 | block.testmod-spored-factory.name = Spored Factory 119 | block.testmod-spored-additive-reconstructor.name = Spored T2 Reconstructor 120 | block.testmod-spored-multiplicative-reconstructor.name = Spored T3 Reconstructor 121 | 122 | block.testmod-plast-salvo.name = Plast Salvo 123 | block.testmod-plast-salvo.description = 124 | block.testmod-plast-salvo.details = 125 | block.testmod-iron-wall.name = Iron Wall 126 | block.testmod-iron-wall.description = 127 | block.testmod-iron-wall.details = 128 | block.testmod-iron-wall-large.name = Large Iron Wall 129 | block.testmod-iron-wall-large.description = 130 | block.testmod-iron-wall-large.details = 131 | 132 | item.testmod-iron.name = Iron 133 | item.testmod-iron.description = Used for building some conveyors, iron wall.. etc 134 | item.testmod-iron.details = Iron Man died. 135 | item.testmod-activation-matter.name = Activation Matter 136 | item.testmod-activation-matter.description = Used for active some buildings. 137 | item.testmod-activation-matter.details = Do not full blocks with this. That will cause blocking output item. 138 | 139 | unit.testmod-electricdagger.name = Electric Dagger 140 | unit.testmod-electricmace.name = Electric Mace 141 | unit.testmod-electricfortress.name = Electric Fortress 142 | unit.testmod-heavydagger.name = Heavy Dagger 143 | unit.testmod-heavymace.name = Heavy Mace 144 | unit.testmod-heavyfortress.name = Heavy Fortress 145 | unit.testmod-sporeddagger.name = Spored Dagger 146 | unit.testmod-sporedmace.name = Spored Mace 147 | unit.testmod-sporedfortress.name = Spored Fortress 148 | unit.testmod-electricflare.name = Electric Flare 149 | unit.testmod-electrichorizon.name = Electric Horizon 150 | unit.testmod-electriczenith.name = Electric Zenith 151 | unit.testmod-heavyflare.name = Heavy Flare 152 | unit.testmod-heavyhorizon.name = Heavy Horizon 153 | unit.testmod-heavyzenith.name = Heavy Zenith 154 | unit.testmod-sporedflare.name = Spored Flare 155 | unit.testmod-sporedhorizon.name = Spored Horizon 156 | unit.testmod-sporedzenith.name = Spored Zenith 157 | 158 | vanila.title = vanila 159 | block.title = blocks 160 | unit.title = units 161 | item.title = items 162 | liquid.title = liquids 163 | sector.title = sectors 164 | planet.title = planets 165 | weather.title = weather 166 | 167 | block.mod.title = modded block 168 | 169 | bar.servShield1 = Serve Shield 1 170 | bar.servShield2 = Serve Shield 2 171 | bar.servShield3 = Serve Shield 3 172 | -------------------------------------------------------------------------------- /scripts/blocks/plastsalvo.js: -------------------------------------------------------------------------------- 1 | const plastChargeBegin = new Effect(60, e => { 2 | Draw.color(e.color); 3 | Fill.circle(e.x, e.y, e.fin() * 3); 4 | 5 | Draw.color(); 6 | Fill.circle(e.x, e.y, e.fin() * 2); 7 | }); 8 | const plastCharge = new Effect(38, e => { 9 | Draw.color(e.color); 10 | 11 | Angles.randLenVectors(e.id, e.id % 3 + 1, 1 + 20 * e.fout(), e.rotation, 120, (x, y) => Drawf.tri(e.x + x, e.y + y, e.fslope() * 3 + 1, e.fslope() * 3 + 1, Mathf.angle(x, y))); 12 | }); 13 | const phaseHit = new Effect(12, e => { 14 | Draw.color(Items.phaseFabric.color); 15 | Lines.stroke(2 * e.fout()); 16 | Lines.circle(e.x, e.y, 5 * e.fout()); 17 | }); 18 | 19 | const plastMissile = new JavaAdapter(MissileBulletType, {}, 3.7, 15); 20 | plastMissile.width = 8; 21 | plastMissile.height = 8; 22 | plastMissile.shrinkY = 0; 23 | plastMissile.drag = 0.01; 24 | plastMissile.homingPower = 0.1; 25 | plastMissile.splashDamage = 30; 26 | plastMissile.splashDamageRadius = 4 * 8; 27 | plastMissile.ammoMultiplier = 2; 28 | plastMissile.fragBullet = Bullets.fragPlasticFrag; 29 | plastMissile.fragBullets = 10; 30 | plastMissile.backColor = Pal.plastaniumBack; 31 | plastMissile.frontColor = Pal.plastaniumFront; 32 | plastMissile.trailColor = Pal.plastanium; 33 | plastMissile.hitEffect = Fx.plasticExplosion; 34 | plastMissile.despawnEffect = Fx.plasticExplosion; 35 | 36 | const phaseMissile = new JavaAdapter(MissileBulletType, { 37 | /* 38 | radscl: 0, 39 | warmup: 0, 40 | broken: false, 41 | buildup: 200, 42 | shieldHealth: 200, 43 | hit: 0, 44 | update(b){ //???: 선생님, 코드가 답이 없습니다. ??: 포기해. 45 | var ah; 46 | if(ah != 1){ 47 | ah = 1; 48 | this.radscl = 0; 49 | this.warmup = 0; 50 | this.broken = false; 51 | this.buildup = 200; 52 | this.hit = 0; 53 | } 54 | this.super$update(b); 55 | this.radscl = Mathf.lerpDelta(this.radscl, this.broken ? 0 : this.warmup, 0.05); 56 | this.warmup = Mathf.lerpDelta(this.warmup, 1, 0.1); 57 | 58 | if(this.buildup >= this.shieldHealth && !this.broken){ 59 | this.broken = true; 60 | this.buildup = this.shieldHealth; 61 | Fx.shieldBreak.at(b.x, b.y, this.realRadius(), b.team.color); 62 | } 63 | if(this.buildup > 0){ 64 | this.buildup -= Time.delta * 0.35; 65 | } 66 | if(this.hit > 0){ 67 | this.hit -= 1 / 5 * Time.delta; 68 | } 69 | 70 | const customConsumer = trait => { 71 | if(trait.team != b.team && trait.type.absorbable && Mathf.dst(b.x, b.y, trait.x, trait.y) <= this.realRadius()){ 72 | trait.absorb(); 73 | Fx.absorb.at(trait); 74 | this.hit = 1; 75 | this.buildup += trait.damage * this.warmup; 76 | } 77 | }; 78 | Groups.bullet.intersect(b.x - realRadius, b.y - realRadius, realRadius * 2, realRadius * 2, customConsumer); 79 | }, 80 | realRadius(){ 81 | return phaseMissile.sRadius * this.radscl; 82 | }, 83 | draw(b){ 84 | var height = this.height * ((1 - this.shrinkY) + this.shrinkY * b.fout()); 85 | var width = this.width * ((1 - this.shrinkX) + this.shrinkX * b.fout()); 86 | var offset = -90 + (this.spin != 0 ? Mathf.randomSeed(b.id, 360) + b.time * this.spin : 0); 87 | 88 | var mix = Tmp.c1.set(this.mixColorFrom).lerp(this.mixColorTo, b.fin()); 89 | 90 | Draw.mixcol(mix, mix.a); 91 | 92 | Draw.color(this.backColor); 93 | Draw.rect(this.backRegion, b.x, b.y, width, height, b.rotation() + offset); 94 | Draw.color(this.frontColor); 95 | Draw.rect(this.frontRegion, b.x, b.y, width, height, b.rotation() + offset); 96 | 97 | 98 | var radius = this.realRadius(); 99 | 100 | Draw.color(b.team.color, Color.white, Mathf.clamp(this.hit)); 101 | 102 | Draw.z(Layer.shields); 103 | if(Core.settings.getBool("animatedshields")){ 104 | Fill.poly(b.x, b.y, 40, radius); 105 | }else{ 106 | Lines.stroke(1.5); 107 | Draw.alpha(0.09 + Mathf.clamp(0.08 * this.hit)); 108 | Fill.circle(b.x, b.y, radius); 109 | Draw.alpha(1); 110 | Draw.z(Layer.effect); 111 | Lines.circle(b.x, b.y, radius); 112 | } 113 | 114 | Draw.reset(); 115 | } 116 | */ 117 | }, 3.7, 35); 118 | /* 119 | phaseMissile.broken = false; 120 | phaseMissile.shieldHealth = 200; 121 | phaseMissile.sRadius = 1.5 * 8; 122 | */ 123 | 124 | 125 | phaseMissile.width = 7; 126 | phaseMissile.height = 9; 127 | phaseMissile.shrinkY = 0; 128 | phaseMissile.drag = 0.01; 129 | phaseMissile.homingPower = 0.75; 130 | phaseMissile.splashDamage = 45; 131 | phaseMissile.splashDamageRadius = 4.5 * 8; 132 | phaseMissile.ammoMultiplier = 1; 133 | phaseMissile.backColor = Items.phaseFabric.color; 134 | phaseMissile.frontColor = Items.phaseFabric.color; 135 | phaseMissile.trailColor = Items.phaseFabric.color; 136 | phaseMissile.hitEffect = phaseHit; 137 | phaseMissile.despawnEffect = phaseHit; 138 | 139 | const standardSurgeFrag = extend(LightningBulletType, {}); 140 | standardSurgeFrag.lightningLength = 3.5 * 8 * 0.2; 141 | standardSurgeFrag.lightningLengthRand = 4; 142 | standardSurgeFrag.damage = 2; 143 | 144 | const standardSurge = new BasicBulletType(4.5, 50, "bullet"); 145 | standardSurge.width = 6; 146 | standardSurge.height = 17; 147 | standardSurge.shootEffect = Fx.shootBig; 148 | standardSurge.smokeEffect = Fx.shootBigSmoke; 149 | standardSurge.ammoMultiplier = 6; 150 | standardSurge.lifetime = 60; 151 | standardSurge.homingPower = 0.05; 152 | standardSurge.splashDamage = 60; 153 | standardSurge.splashDamageRadius = 3 * 8; 154 | standardSurge.lightning = 3; 155 | standardSurge.lightningLength = 7 * 8 * 0.2; 156 | standardSurge.lightningType = standardSurgeFrag; 157 | standardSurge.fragBullets = 2; 158 | standardSurge.fragBullet = standardSurgeFrag; 159 | 160 | const plastSalvo = extendContent(ItemTurret, "plast-salvo", {}); 161 | 162 | const plastSalvoBuild = () => extendContent(ItemTurret.ItemTurretBuild, plastSalvo, { 163 | shoot(ammo){ 164 | 165 | plastSalvo.tr.trns(this.rotation, plastSalvo.size * Vars.tilesize / 2); 166 | plastSalvo.chargeBeginEffect.at(this.x + plastSalvo.tr.x, this.y + plastSalvo.tr.y, this.rotation, ((ammo == Bullets.standardCopper || ammo == Bullets.standardDense) || (ammo == Bullets.standardHoming || ammo == Bullets.standardThorium)) ? Pal.bulletYellow : (ammo == Bullets.standardIncendiary ? Pal.lightishOrange : (ammo == plastMissile ? Pal.plastanium : (ammo == phaseMissile ? Items.phaseFabric.color : Pal.surge)))); 167 | 168 | for(var i = 0; i < plastSalvo.chargeEffects; i++){ 169 | Time.run(Mathf.random(plastSalvo.chargeMaxDelay), () => { 170 | if(!this.isValid()) return; 171 | plastSalvo.tr.trns(this.rotation, plastSalvo.size * Vars.tilesize / 2); 172 | plastSalvo.chargeEffect.at(this.x + plastSalvo.tr.x, this.y + plastSalvo.tr.y, this.rotation, ((ammo == Bullets.standardCopper || ammo == Bullets.standardDense) || (ammo == Bullets.standardHoming || ammo == Bullets.standardThorium)) ? Pal.bulletYellow : (ammo == Bullets.standardIncendiary ? Pal.lightishOrange : (ammo == plastMissile ? Pal.plastanium : (ammo == phaseMissile ? Items.phaseFabric.color : Pal.surge)))); 173 | }); 174 | } 175 | 176 | this.charging = true; 177 | 178 | for(var i = 0; i < plastSalvo.shots; i++){ 179 | Time.run(plastSalvo.burstSpacing * i, () => { 180 | Time.run(plastSalvo.chargeTime, () => { //burst charge go brrrrr 181 | if(!this.isValid() || !this.hasAmmo()) return; 182 | 183 | 184 | plastSalvo.tr.trns(this.rotation, plastSalvo.size * Vars.tilesize / 2.7, Mathf.range(plastSalvo.xRand)); 185 | this.bullet(ammo, this.rotation + Mathf.range(plastSalvo.inaccuracy)); 186 | this.effects(); 187 | this.useAmmo(); 188 | this.recoil = plastSalvo.recoilAmount; 189 | this.heat = 1; 190 | 191 | this.charging = false; 192 | }); 193 | }); 194 | } 195 | }, 196 | useAmmo(){ 197 | if(this.cheating()) return this.peekAmmo(); 198 | 199 | var entry = this.ammo.peek(); 200 | entry.amount -= plastSalvo.ammoPerShot; 201 | this.ejectEffects(); 202 | if(entry.amount <= 0) this.ammo.pop(); 203 | this.totalAmmo -= plastSalvo.ammoPerShot; 204 | this.totalAmmo = Math.max(this.totalAmmo, 0); 205 | return entry.type(); 206 | }, 207 | ejectEffects(){ 208 | if(!this.isValid()) return; 209 | 210 | var scl = (plastSalvo.shots == 2 && plastSalvo.alternate && this.shotCounter % 2 == 1 ? -1 : 1); 211 | if(this.peekAmmo() != plastMissile){ 212 | Fx.casing2.at(this.x - Angles.trnsx(this.rotation, plastSalvo.ammoEjectBack), this.y - Angles.trnsy(this.rotation, plastSalvo.ammoEjectBack), this.rotation * scl); 213 | } 214 | }, 215 | effects(){ 216 | var fshootEffect = plastSalvo.shootEffect == Fx.none ? this.peekAmmo().shootEffect : plastSalvo.shootEffect; 217 | var fsmokeEffect = plastSalvo.smokeEffect == Fx.none ? this.peekAmmo().smokeEffect : plastSalvo.smokeEffect; 218 | fshootEffect.at(this.x + plastSalvo.tr.x, this.y + plastSalvo.tr.y, this.rotation); 219 | fsmokeEffect.at(this.x + plastSalvo.tr.x, this.y + plastSalvo.tr.y, this.rotation); 220 | if(this.peekAmmo() == plastMissile || this.peekAmmo() == phaseMissile){ 221 | Sounds.missile.at(this.x + plastSalvo.tr.x, this.y + plastSalvo.tr.y, Mathf.random(0.9, 1.1)); 222 | }else{ 223 | Sounds.shootBig.at(this.x + plastSalvo.tr.x, this.y + plastSalvo.tr.y, Mathf.random(0.9, 1.1)); 224 | } 225 | 226 | if(plastSalvo.shootShake > 0){ 227 | Effect.shake(plastSalvo.shootShake, plastSalvo.shootShake, this); 228 | } 229 | 230 | this.recoil = plastSalvo.recoilAmount; 231 | } 232 | }); 233 | plastSalvo.chargeBeginEffect = plastChargeBegin; 234 | plastSalvo.chargeEffect = plastCharge; 235 | plastSalvo.chargeEffects = 10; 236 | plastSalvo.chargeMaxDelay = 30; 237 | plastSalvo.chargeTime = 30; 238 | 239 | plastSalvo.reloadTime = 38; 240 | plastSalvo.restitution = 0.03; 241 | plastSalvo.ammoEjectBack = 3; 242 | plastSalvo.cooldown = 0.03; 243 | plastSalvo.recoilAmount = 3; 244 | plastSalvo.shootShake = 1; 245 | plastSalvo.burstSpacing = 5; 246 | plastSalvo.shots = 4; 247 | plastSalvo.rotateSpeed = 10; 248 | plastSalvo.inaccuracy = 17; 249 | plastSalvo.shootCone = 35; 250 | plastSalvo.ammo( 251 | Items.copper, Bullets.standardCopper, 252 | Items.graphite, Bullets.standardDense, 253 | Items.pyratite, Bullets.standardIncendiary, 254 | Items.silicon, Bullets.standardHoming, 255 | Items.thorium, Bullets.standardThorium, 256 | Items.plastanium, plastMissile, 257 | Items.phaseFabric, phaseMissile, 258 | Items.surgeAlloy, standardSurge 259 | ); 260 | plastSalvo.buildType = plastSalvoBuild; 261 | -------------------------------------------------------------------------------- /scripts/blocks/multi-projector.js: -------------------------------------------------------------------------------- 1 | var multiProjector = new JavaAdapter(ForceProjector, { 2 | servRadius1: 48, 3 | servRadius2: 48, 4 | servRadius3: 48, 5 | drawPlace(x, y, rotation, valid){ 6 | Draw.color(Vars.player.team().color.cpy().mul(1, 0.75, 0.25, 1)); 7 | Lines.stroke(1); 8 | Lines.circle(x * Vars.tilesize + this.offset, y * Vars.tilesize + this.offset, this.radius); 9 | 10 | Draw.color(Vars.player.team().color.cpy().mul(1, 0.25, 0.25, 1)); 11 | Lines.stroke(1); 12 | Lines.circle(x * Vars.tilesize + this.offset, y * Vars.tilesize + this.offset, this.radius + this.phaseRadiusBoost); 13 | Draw.color(); 14 | }, 15 | setBars(){ 16 | this.super$setBars(); 17 | this.bars.add("shield", entity => new Bar("stat.shieldhealth", Pal.sap, () => entity.broken ? 0 : 1 - entity.buildup / (multiProjector.shieldHealth + multiProjector.phaseShieldBoost * entity.phaseHeat)).blink(Color.white)); 18 | this.bars.add("servShield1", entity => new Bar(() => Core.bundle.get("bar.servShield1"), () => Pal.sap, () => entity.servBroken1 ? 0 : 1 - entity.servBuildup1 / (multiProjector.shieldHealth + multiProjector.phaseShieldBoost * entity.phaseHeat)).blink(Color.white)); 19 | this.bars.add("servShield2", entity => new Bar(() => Core.bundle.get("bar.servShield2"), () => Pal.sap, () => entity.servBroken2 ? 0 : 1 - entity.servBuildup2 / (multiProjector.shieldHealth + multiProjector.phaseShieldBoost * entity.phaseHeat)).blink(Color.white)); 20 | this.bars.add("servShield3", entity => new Bar(() => Core.bundle.get("bar.servShield3"), () => Pal.sap, () => entity.servBroken3 ? 0 : 1 - entity.servBuildup3 / (multiProjector.shieldHealth + multiProjector.phaseShieldBoost * entity.phaseHeat)).blink(Color.white)); 21 | } 22 | }, "multi-projector"); 23 | 24 | var consLiq = multiProjector.consumes.add(new ConsumeLiquidFilter(liquid => liquid.temperature <= 1 && liquid.flammability < 1.3, 0.5)).boost(); 25 | consLiq.update = false; 26 | 27 | multiProjector.buildType = () => extendContent(ForceProjector.ForceBuild, multiProjector, { 28 | servX1: 0, 29 | servY1: 0, 30 | servHit1: this.hit, 31 | servBuildup1: this.buildup, 32 | servBroken1: this.broken, 33 | servX2: 0, 34 | servY2: 0, 35 | servHit2: this.hit, 36 | servBuildup2: this.buildup, 37 | servBroken2: this.broken, 38 | servX3: 0, 39 | servY3: 0, 40 | servHit3: this.hit, 41 | servBuildup3: this.buildup, 42 | servBroken3: this.broken, 43 | servRadscl1: this.radscl, 44 | servRadscl2: this.radscl, 45 | servRadscl3: this.radscl, 46 | created(){ 47 | this.super$created(); 48 | this.servHit1 = this.hit; 49 | this.servBuildup1 = this.buildup; 50 | this.servBroken1 = this.broken; 51 | this.servHit2 = this.hit; 52 | this.servBuildup2 = this.buildup; 53 | this.servBroken2 = this.broken; 54 | this.servHit3 = this.hit; 55 | this.servBuildup3 = this.buildup; 56 | this.servBroken3 = this.broken; 57 | this.servRadscl1 = this.radscl; 58 | this.servRadscl2 = this.radscl; 59 | this.servRadscl3 = this.radscl; 60 | for(var i = 0; i < 3; i++){ 61 | Tmp.v1.trns(120 + i * 120, multiProjector.radius); 62 | if(i == 0){ 63 | this.servX1 = this.x + Tmp.v1.x; 64 | this.servY1 = this.y + Tmp.v1.y; 65 | }else if(i == 1){ 66 | this.servX2 = this.x + Tmp.v1.x; 67 | this.servY2 = this.y + Tmp.v1.y; 68 | }else if(i == 2){ 69 | this.servX3 = this.x + Tmp.v1.x; 70 | this.servY3 = this.y + Tmp.v1.y; 71 | } 72 | } 73 | }, 74 | updateTile(){ 75 | for(var i = 0; i < 3; i++){ 76 | Tmp.v1.trns(120 + i * 120, this.realRadius()); 77 | if(i == 0){ 78 | this.servX1 = this.x + Tmp.v1.x; 79 | this.servY1 = this.y + Tmp.v1.y; 80 | }else if(i == 1){ 81 | this.servX2 = this.x + Tmp.v1.x; 82 | this.servY2 = this.y + Tmp.v1.y; 83 | }else if(i == 2){ 84 | this.servX3 = this.x + Tmp.v1.x; 85 | this.servY3 = this.y + Tmp.v1.y; 86 | } 87 | } 88 | const customConsumer = trait => { 89 | if(trait.team != this.paramEntity.team && trait.type.absorbable && Mathf.dst(this.paramEntity.x, this.paramEntity.y, trait.x, trait.y) <= this.realRadius()){ 90 | trait.absorb(); 91 | Fx.absorb.at(trait); 92 | this.paramEntity.hit = 1; 93 | this.paramEntity.buildup += trait.damage * this.paramEntity.warmup; 94 | } 95 | }; 96 | const servCustomConsumer1 = trait => { 97 | if(trait.team != this.paramEntity.team && trait.type.absorbable && Mathf.dst(this.servX1, this.servY1, trait.x, trait.y) <= this.servRealRadius1()){ 98 | trait.absorb(); 99 | Fx.absorb.at(trait); 100 | this.servHit1 = 1; 101 | this.servBuildup1 += trait.damage * this.paramEntity.warmup; 102 | } 103 | }; 104 | const servCustomConsumer2 = trait => { 105 | if(trait.team != this.paramEntity.team && trait.type.absorbable && Mathf.dst(this.servX2, this.servY2, trait.x, trait.y) <= this.servRealRadius2()){ 106 | trait.absorb(); 107 | Fx.absorb.at(trait); 108 | this.servHit2 = 1; 109 | this.servBuildup2 += trait.damage * this.paramEntity.warmup; 110 | } 111 | }; 112 | const servCustomConsumer3 = trait => { 113 | if(trait.team != this.paramEntity.team && trait.type.absorbable && Mathf.dst(this.servX3, this.servY3, trait.x, trait.y) <= this.servRealRadius3()){ 114 | trait.absorb(); 115 | Fx.absorb.at(trait); 116 | this.servHit3 = 1; 117 | this.servBuildup3 += trait.damage * this.paramEntity.warmup; 118 | } 119 | }; 120 | 121 | 122 | var phaseValid = false; 123 | this.phaseHeat = Mathf.lerpDelta(this.phaseHeat, Mathf.num(phaseValid), 0.1); 124 | if(phaseValid && !this.broken && this.timer.get(multiProjector.timerUse, multiProjector.phaseUseTime) && this.efficiency() > 0){ 125 | this.consume(); 126 | } 127 | 128 | this.radscl = Mathf.lerpDelta(this.radscl, this.broken ? 0 : this.warmup, 0.05); 129 | 130 | if(Mathf.chanceDelta(this.buildup / this.shieldHealth * 0.1)){ 131 | Fx.reactorsmoke.at(this.x + Mathf.range(Vars.tilesize / 2), this.y + Mathf.range(Vars.tilesize / 2)); 132 | } 133 | 134 | this.warmup = Mathf.lerpDelta(this.warmup, this.efficiency(), 0.1); 135 | 136 | if(this.buildup > 0){ 137 | var scale = !this.broken ? multiProjector.cooldownNormal : multiProjector.cooldownBrokenBase; 138 | var cons = multiProjector.consumes.get(ConsumeType.liquid); 139 | if(cons.valid(this)){ 140 | cons.update(this); 141 | scale *= (multiProjector.cooldownLiquid * (1 + (this.liquids.current().temperature - 0.4) * 0.9)); 142 | } 143 | 144 | this.buildup -= this.delta() * scale; 145 | } 146 | 147 | if(this.broken && this.buildup <= 0){ 148 | this.broken = false; 149 | } 150 | 151 | if(this.buildup >= multiProjector.shieldHealth + multiProjector.phaseShieldBoost && !this.broken){ 152 | this.broken = true; 153 | this.buildup = multiProjector.shieldHealth; 154 | Fx.shieldBreak.at(this.servX1, this.servX2, this.servRealRadius1(), this.team.color.cpy()); 155 | } 156 | 157 | if(this.hit > 0){ 158 | this.hit -= 1 / 5 * Time.delta; 159 | } 160 | 161 | var realRadius = this.realRadius(); 162 | 163 | if(realRadius > 0 && !this.broken){ 164 | this.paramEntity = this; 165 | Groups.bullet.intersect(this.x - realRadius, this.y - realRadius, realRadius * 2, realRadius * 2, customConsumer); 166 | } 167 | 168 | //--------------------------------------------------------------------------------------------------------------------------------------------------------------- 169 | this.servRadscl1 = Mathf.lerpDelta(this.servRadscl1, this.servBroken1 ? 0 : this.warmup, 0.05); 170 | if(this.servBuildup1 > 0){ 171 | var servScale1 = !this.servBroken1 ? multiProjector.cooldownNormal : multiProjector.cooldownBrokenBase; 172 | var servCons1 = multiProjector.consumes.get(ConsumeType.liquid); 173 | if(servCons1.valid(this)){ 174 | servCons1.update(this); 175 | servScale1 *= (multiProjector.cooldownLiquid * (1 + (this.liquids.current().temperature - 0.4) * 0.9)); 176 | } 177 | 178 | this.servBuildup1 -= this.delta() * servScale1; 179 | } 180 | 181 | if(this.servBroken1 && this.servBuildup1 <= 0){ 182 | this.servBroken1 = false; 183 | } 184 | 185 | if(this.servBuildup1 >= multiProjector.shieldHealth + multiProjector.phaseShieldBoost && !this.servBroken1){ 186 | this.servBroken1 = true; 187 | this.servBuildup1 = multiProjector.shieldHealth; 188 | Fx.shieldBreak.at(this.servX2, this.servY1, this.servRealRadius1(), this.team.color.cpy()); 189 | } 190 | 191 | if(this.servHit1 > 0){ 192 | this.servHit1 -= 1 / 5 * Time.delta; 193 | } 194 | 195 | var servRealRadius1 = this.servRealRadius1(); 196 | 197 | if(servRealRadius1 > 0 && !this.servBroken1){ 198 | //this.paramEntity = this; 199 | Groups.bullet.intersect(this.servX1 - servRealRadius1, this.servY1 - servRealRadius1, servRealRadius1 * 2, servRealRadius1 * 2, servCustomConsumer1); 200 | } 201 | 202 | //--------------------------------------------------------------------------------------------------------------------------------------------------------------- 203 | this.servRadscl2 = Mathf.lerpDelta(this.servRadscl2, this.servBroken2 ? 0 : this.warmup, 0.05); 204 | if(this.servBuildup2 > 0){ 205 | var servScale2 = !this.servBroken2 ? multiProjector.cooldownNormal : multiProjector.cooldownBrokenBase; 206 | var servCons2 = multiProjector.consumes.get(ConsumeType.liquid); 207 | if(servCons2.valid(this)){ 208 | servCons2.update(this); 209 | servScale2 *= (multiProjector.cooldownLiquid * (1 + (this.liquids.current().temperature - 0.4) * 0.9)); 210 | } 211 | 212 | this.servBuildup2 -= this.delta() * servScale2; 213 | } 214 | 215 | if(this.servBroken2 && this.servBuildup2 <= 0){ 216 | this.servBroken2 = false; 217 | } 218 | 219 | if(this.servBuildup2 >= multiProjector.shieldHealth + multiProjector.phaseShieldBoost && !this.servBroken2){ 220 | this.servBroken2 = true; 221 | this.servBuildup2 = multiProjector.shieldHealth; 222 | Fx.shieldBreak.at(this.servX2, this.servY2, this.servRealRadius2(), this.team.color.cpy()); 223 | } 224 | 225 | if(this.servHit2 > 0){ 226 | this.servHit2 -= 1 / 5 * Time.delta; 227 | } 228 | 229 | var servRealRadius2 = this.servRealRadius2(); 230 | 231 | if(servRealRadius2 > 0 && !this.servBroken2){ 232 | //this.paramEntity = this; 233 | Groups.bullet.intersect(this.servX2 - servRealRadius2, this.servY2 - servRealRadius2, servRealRadius2 * 2, servRealRadius2 * 2, servCustomConsumer2); 234 | } 235 | 236 | //--------------------------------------------------------------------------------------------------------------------------------------------------------------- 237 | this.servRadscl3 = Mathf.lerpDelta(this.servRadscl3, this.servBroken3 ? 0 : this.warmup, 0.05); 238 | if(this.servBuildup3 > 0){ 239 | var servScale3 = !this.servBroken3 ? multiProjector.cooldownNormal : multiProjector.cooldownBrokenBase; 240 | var servCons3 = multiProjector.consumes.get(ConsumeType.liquid); 241 | if(servCons3.valid(this)){ 242 | servCons3.update(this); 243 | servScale3 *= (multiProjector.cooldownLiquid * (1 + (this.liquids.current().temperature - 0.4) * 0.9)); 244 | } 245 | 246 | this.servBuildup3 -= this.delta() * servScale3; 247 | } 248 | 249 | if(this.servBroken3 && this.servBuildup3 <= 0){ 250 | this.servBroken3 = false; 251 | } 252 | 253 | if(this.servBuildup3 >= multiProjector.shieldHealth + multiProjector.phaseShieldBoost && !this.servBroken3){ 254 | this.servBroken3 = true; 255 | this.servBuildup3 = multiProjector.shieldHealth; 256 | Fx.shieldBreak.at(this.servX3, this.servY3, this.servRealRadius3(), this.team.color.cpy()); 257 | } 258 | 259 | if(this.servHit3 > 0){ 260 | this.servHit3 -= 1 / 5 * Time.delta; 261 | } 262 | 263 | var servRealRadius3 = this.servRealRadius3(); 264 | 265 | if(servRealRadius3 > 0 && !this.servBroken3){ 266 | //this.paramEntity = this; 267 | Groups.bullet.intersect(this.servX3 - servRealRadius3, this.servY3 - servRealRadius3, servRealRadius3 * 2, servRealRadius3 * 2, servCustomConsumer3); 268 | } 269 | }, 270 | realRadius(){ 271 | return (multiProjector.radius + this.phaseHeat + multiProjector.phaseRadiusBoost) * this.radscl; 272 | }, 273 | servRealRadius1(){ 274 | return (multiProjector.servRadius1 + this.phaseHeat + multiProjector.phaseRadiusBoost) * this.servRadscl1; 275 | }, 276 | servRealRadius2(){ 277 | return (multiProjector.servRadius2 + this.phaseHeat + multiProjector.phaseRadiusBoost) * this.servRadscl2; 278 | }, 279 | servRealRadius3(){ 280 | return (multiProjector.servRadius3 + this.phaseHeat + multiProjector.phaseRadiusBoost) * this.servRadscl3; 281 | }, 282 | drawShield(){ 283 | if(!this.broken){ 284 | var radius = this.realRadius(); 285 | 286 | 287 | 288 | Draw.color(Pal.lancerLaser.cpy().lerp(Pal.sapBullet, 0.5), Color.white, Mathf.clamp(this.hit)); 289 | 290 | Draw.z(Layer.shields); 291 | if(Core.settings.getBool("animatedshields")){ 292 | Fill.poly(this.x, this.y, 40, radius); 293 | }else{ 294 | Lines.stroke(1.5); 295 | Draw.alpha(0.09 + Mathf.clamp(0.08 * this.hit)); 296 | Fill.circle(this.x, this.y, radius); 297 | Draw.alpha(1); 298 | Draw.z(Layer.effect); 299 | Lines.circle(this.x, this.y, radius); 300 | Draw.reset(); 301 | } 302 | } 303 | 304 | if(!this.servBroken1){ 305 | var servRadius1 = this.servRealRadius1(); 306 | Draw.color(Pal.lancerLaser.cpy().lerp(Pal.sapBullet, 0.75), Color.white, Mathf.clamp(this.servHit1)); 307 | 308 | Draw.z(Layer.shields); 309 | if(Core.settings.getBool("animatedshields")){ 310 | Fill.poly(this.servX1, this.servY1, 40, servRadius1); 311 | }else{ 312 | Lines.stroke(1.5); 313 | Draw.alpha(0.09 + Mathf.clamp(0.08 * this.servHit1)); 314 | Fill.circle(this.servX1, this.servY1, servRadius1); 315 | Draw.alpha(1); 316 | Draw.z(Layer.effect); 317 | Lines.circle(this.servX1, this.servY1, servRadius1); 318 | Draw.reset(); 319 | } 320 | } 321 | 322 | if(!this.servBroken2){ 323 | var servRadius2 = this.servRealRadius2(); 324 | 325 | Draw.color(Pal.lancerLaser.cpy().lerp(Pal.sapBullet, 0.75), Color.white, Mathf.clamp(this.servHit2)); 326 | 327 | Draw.z(Layer.shields); 328 | if(Core.settings.getBool("animatedshields")){ 329 | Fill.poly(this.servX2, this.servY2, 40, servRadius2); 330 | }else{ 331 | Lines.stroke(1.5); 332 | Draw.alpha(0.09 + Mathf.clamp(0.08 * this.servHit2)); 333 | Fill.circle(this.servX2, this.servY2, servRadius2); 334 | Draw.alpha(1); 335 | Draw.z(Layer.effect); 336 | Lines.circle(this.servX2, this.servY2, servRadius2); 337 | Draw.reset(); 338 | } 339 | } 340 | 341 | if(!this.servBroken3){ 342 | var servRadius3 = this.servRealRadius3(); 343 | 344 | Draw.color(Pal.lancerLaser.cpy().lerp(Pal.sapBullet, 0.75), Color.white, Mathf.clamp(this.servHit3)); 345 | 346 | Draw.z(Layer.shields); 347 | if(Core.settings.getBool("animatedshields")){ 348 | Fill.poly(this.servX3, this.servY3, 40, servRadius3); 349 | }else{ 350 | Lines.stroke(1.5); 351 | Draw.alpha(0.09 + Mathf.clamp(0.08 * this.servHit3)); 352 | Fill.circle(this.servX3, this.servY3, servRadius3); 353 | Draw.alpha(1); 354 | Draw.z(Layer.effect); 355 | Lines.circle(this.servX3, this.servY3, servRadius3); 356 | Draw.reset(); 357 | } 358 | } 359 | Draw.reset(); 360 | } 361 | }); 362 | --------------------------------------------------------------------------------