Unspoiled
BIN
core/assets-raw/sprites/blocks/attack/nuclear-warhead.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
core/assets-raw/sprites/blocks/drills/beam-drill-top.png
Normal file
After Width: | Height: | Size: 451 B |
BIN
core/assets-raw/sprites/blocks/drills/beam-drill.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
core/assets-raw/sprites/blocks/environment/beryl-wall1.png
Normal file
After Width: | Height: | Size: 518 B |
BIN
core/assets-raw/sprites/blocks/environment/beryl-wall2.png
Normal file
After Width: | Height: | Size: 518 B |
BIN
core/assets-raw/sprites/blocks/environment/bluemat1.png
Normal file
After Width: | Height: | Size: 241 B |
BIN
core/assets-raw/sprites/blocks/environment/bluemat2.png
Normal file
After Width: | Height: | Size: 281 B |
BIN
core/assets-raw/sprites/blocks/environment/bluemat3.png
Normal file
After Width: | Height: | Size: 210 B |
BIN
core/assets-raw/sprites/blocks/environment/carbon-wall-large.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
core/assets-raw/sprites/blocks/environment/carbon-wall1.png
Normal file
After Width: | Height: | Size: 621 B |
BIN
core/assets-raw/sprites/blocks/environment/carbon-wall2.png
Normal file
After Width: | Height: | Size: 569 B |
After Width: | Height: | Size: 716 B |
BIN
core/assets-raw/sprites/blocks/environment/coralchunk1.png
Normal file
After Width: | Height: | Size: 442 B |
BIN
core/assets-raw/sprites/blocks/environment/glowblob1.png
Normal file
After Width: | Height: | Size: 581 B |
BIN
core/assets-raw/sprites/blocks/environment/graphitic-stone1.png
Normal file
After Width: | Height: | Size: 432 B |
BIN
core/assets-raw/sprites/blocks/environment/graphitic-stone2.png
Normal file
After Width: | Height: | Size: 288 B |
BIN
core/assets-raw/sprites/blocks/environment/graphitic-stone3.png
Normal file
After Width: | Height: | Size: 264 B |
BIN
core/assets-raw/sprites/blocks/environment/graphitic-stone4.png
Normal file
After Width: | Height: | Size: 340 B |
After Width: | Height: | Size: 1.9 KiB |
BIN
core/assets-raw/sprites/blocks/environment/graphitic-wall1.png
Normal file
After Width: | Height: | Size: 794 B |
BIN
core/assets-raw/sprites/blocks/environment/graphitic-wall2.png
Normal file
After Width: | Height: | Size: 847 B |
BIN
core/assets-raw/sprites/blocks/environment/graphitic-wall3.png
Normal file
After Width: | Height: | Size: 706 B |
BIN
core/assets-raw/sprites/blocks/environment/pur-bush-bot.png
Normal file
After Width: | Height: | Size: 205 B |
BIN
core/assets-raw/sprites/blocks/environment/pur-bush.png
Normal file
After Width: | Height: | Size: 256 B |
BIN
core/assets-raw/sprites/blocks/environment/redmat1.png
Normal file
After Width: | Height: | Size: 239 B |
BIN
core/assets-raw/sprites/blocks/environment/redmat2.png
Normal file
After Width: | Height: | Size: 280 B |
BIN
core/assets-raw/sprites/blocks/environment/redmat3.png
Normal file
After Width: | Height: | Size: 209 B |
BIN
core/assets-raw/sprites/blocks/environment/redweed2.png
Normal file
After Width: | Height: | Size: 307 B |
BIN
core/assets-raw/sprites/blocks/environment/redweed3.png
Normal file
After Width: | Height: | Size: 417 B |
After Width: | Height: | Size: 1017 B |
BIN
core/assets-raw/sprites/blocks/environment/regolith-wall1.png
Normal file
After Width: | Height: | Size: 404 B |
BIN
core/assets-raw/sprites/blocks/environment/regolith-wall2.png
Normal file
After Width: | Height: | Size: 397 B |
BIN
core/assets-raw/sprites/blocks/environment/regolith1.png
Normal file
After Width: | Height: | Size: 205 B |
BIN
core/assets-raw/sprites/blocks/environment/regolith2.png
Normal file
After Width: | Height: | Size: 298 B |
BIN
core/assets-raw/sprites/blocks/environment/regolith3.png
Normal file
After Width: | Height: | Size: 242 B |
BIN
core/assets-raw/sprites/blocks/environment/rhyolite-crater1.png
Normal file
After Width: | Height: | Size: 759 B |
BIN
core/assets-raw/sprites/blocks/environment/rhyolite-crater2.png
Normal file
After Width: | Height: | Size: 728 B |
BIN
core/assets-raw/sprites/blocks/environment/rhyolite-crater3.png
Normal file
After Width: | Height: | Size: 750 B |
After Width: | Height: | Size: 1.1 KiB |
BIN
core/assets-raw/sprites/blocks/environment/rhyolite-wall1.png
Normal file
After Width: | Height: | Size: 435 B |
BIN
core/assets-raw/sprites/blocks/environment/rhyolite-wall2.png
Normal file
After Width: | Height: | Size: 404 B |
BIN
core/assets-raw/sprites/blocks/environment/rhyolite1.png
Normal file
After Width: | Height: | Size: 706 B |
BIN
core/assets-raw/sprites/blocks/environment/rhyolite2.png
Normal file
After Width: | Height: | Size: 650 B |
BIN
core/assets-raw/sprites/blocks/environment/rhyolite3.png
Normal file
After Width: | Height: | Size: 687 B |
BIN
core/assets-raw/sprites/blocks/environment/wall-beryllium1.png
Normal file
After Width: | Height: | Size: 346 B |
BIN
core/assets-raw/sprites/blocks/environment/wall-beryllium2.png
Normal file
After Width: | Height: | Size: 294 B |
BIN
core/assets-raw/sprites/blocks/environment/wall-beryllium3.png
Normal file
After Width: | Height: | Size: 296 B |
After Width: | Height: | Size: 717 B |
After Width: | Height: | Size: 366 B |
After Width: | Height: | Size: 336 B |
BIN
core/assets-raw/sprites/blocks/environment/yellow-stone1.png
Normal file
After Width: | Height: | Size: 222 B |
BIN
core/assets-raw/sprites/blocks/environment/yellow-stone2.png
Normal file
After Width: | Height: | Size: 276 B |
BIN
core/assets-raw/sprites/blocks/environment/yellow-stone3.png
Normal file
After Width: | Height: | Size: 215 B |
After Width: | Height: | Size: 159 B |
BIN
core/assets-raw/sprites/blocks/environment/yellowcoral.png
Normal file
After Width: | Height: | Size: 539 B |
BIN
core/assets-raw/sprites/blocks/payload/ballistic-silo.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
core/assets-raw/sprites/blocks/payload/warhead-assembler.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 307 B |
After Width: | Height: | Size: 383 B |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 307 B |
After Width: | Height: | Size: 467 B |
After Width: | Height: | Size: 442 B |
After Width: | Height: | Size: 1.7 KiB |
BIN
core/assets-raw/sprites/blocks/props/redweed1.png
Normal file
After Width: | Height: | Size: 551 B |
BIN
core/assets-raw/sprites/items/item-beryllium.png
Normal file
After Width: | Height: | Size: 386 B |
BIN
core/assets-raw/sprites/items/item-fissile-matter.png
Normal file
After Width: | Height: | Size: 400 B |
BIN
core/assets-raw/sprites/items/liquid-neoplasm.png
Normal file
After Width: | Height: | Size: 507 B |
@ -1045,11 +1045,14 @@ item.blast-compound.name = Blast Compound
|
||||
item.pyratite.name = Pyratite
|
||||
item.metaglass.name = Metaglass
|
||||
item.scrap.name = Scrap
|
||||
item.fissile-matter.name = Fissile Matter
|
||||
item.beryllium.name = Beryllium
|
||||
|
||||
liquid.water.name = Water
|
||||
liquid.slag.name = Slag
|
||||
liquid.oil.name = Oil
|
||||
liquid.cryofluid.name = Cryofluid
|
||||
liquid.neoplasm.name = Neoplasm
|
||||
|
||||
unit.dagger.name = Dagger
|
||||
unit.mace.name = Mace
|
||||
|
@ -334,12 +334,34 @@
|
||||
63399=blasted|status-blasted-ui
|
||||
63398=corroded|status-corroded-ui
|
||||
63397=disarmed|status-disarmed-ui
|
||||
63396=rhyolite|block-rhyolite-ui
|
||||
63395=rhyolite-crater|block-rhyolite-crater-ui
|
||||
63394=regolith|block-regolith-ui
|
||||
63393=yellow-stone|block-yellow-stone-ui
|
||||
63392=redmat|block-redmat-ui
|
||||
63391=bluemat|block-bluemat-ui
|
||||
63390=beryl-wall|block-beryl-wall-ui
|
||||
63389=redweed|block-redweed-ui
|
||||
63388=pur-bush|block-pur-bush-ui
|
||||
63387=yellowcoral|block-yellowcoral-ui
|
||||
63386=coralchunk|block-coralchunk-ui
|
||||
63385=duct|block-duct-ui
|
||||
63384=beam-drill|block-beam-drill-ui
|
||||
63383=beryllium|item-beryllium-ui
|
||||
63382=fissile-matter|item-fissile-matter-ui
|
||||
63381=neoplasm|liquid-neoplasm-ui
|
||||
63380=cell-synthesis-chamber|block-cell-synthesis-chamber-ui
|
||||
63379=nuclear-warhead|block-nuclear-warhead-ui
|
||||
63378=warhead-assembler|block-warhead-assembler-ui
|
||||
63377=ballistic-silo|block-ballistic-silo-ui
|
||||
63376=repair-turret|block-repair-turret-ui
|
||||
63375=payload-propulsion-tower|block-payload-propulsion-tower-ui
|
||||
63374=payload-incinerator|block-payload-incinerator-ui
|
||||
63373=payload-void|block-payload-void-ui
|
||||
63372=payload-source|block-payload-source-ui
|
||||
63371=regolith-wall|block-regolith-wall-ui
|
||||
63370=rhyolite-wall|block-rhyolite-wall-ui
|
||||
63369=yellow-stone-wall|block-yellow-stone-wall-ui
|
||||
63368=retusa|unit-retusa-ui
|
||||
63367=directional-item-bridge|block-directional-item-bridge-ui
|
||||
63366=duct-router|block-duct-router-ui
|
||||
@ -349,5 +371,10 @@
|
||||
63362=aegires|unit-aegires-ui
|
||||
63361=electrified|status-electrified-ui
|
||||
63360=navanax|unit-navanax-ui
|
||||
63359=wall-ore-beryllium|block-wall-ore-beryllium-ui
|
||||
63358=graphitic-stone|block-graphitic-stone-ui
|
||||
63357=graphitic-wall|block-graphitic-wall-ui
|
||||
63356=carbon-wall|block-carbon-wall-ui
|
||||
63355=silicon-arc-smelter|block-silicon-arc-smelter-ui
|
||||
63354=payload-launch-pad|block-payload-launch-pad-ui
|
||||
63353=silicon-arc-furnace|block-silicon-arc-furnace-ui
|
||||
|
BIN
core/assets/sprites/caustics.png
Normal file
After Width: | Height: | Size: 47 KiB |
BIN
core/assets/sprites/distortAlpha.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
core/assets/sprites/rays.png
Normal file
After Width: | Height: | Size: 19 KiB |
@ -37,8 +37,11 @@ public class Blocks implements ContentList{
|
||||
|
||||
//environment
|
||||
air, spawn, cliff, deepwater, water, taintedWater, tar, slag, stone, craters, charr, sand, darksand, dirt, mud, ice, snow, darksandTaintedWater, space,
|
||||
dacite,
|
||||
dacite, rhyolite, rhyoliteCrater, regolith, yellowStone, redmat, bluemat,
|
||||
stoneWall, dirtWall, sporeWall, iceWall, daciteWall, sporePine, snowPine, pine, shrubs, whiteTree, whiteTreeDead, sporeCluster,
|
||||
redweed, purbush, coralChunk, glowBlob, yellowCoral,
|
||||
regolithWall, yellowStoneWall, rhyoliteWall, carbonWall,
|
||||
graphiticStone,
|
||||
iceSnow, sandWater, darksandWater, duneWall, sandWall, moss, sporeMoss, shale, shaleWall, shaleBoulder, sandBoulder, daciteBoulder, boulder, snowBoulder, basaltBoulder, grass, salt,
|
||||
metalFloor, metalFloorDamaged, metalFloor2, metalFloor3, metalFloor5, basalt, magmarock, hotrock, snowWall, saltWall,
|
||||
darkPanel1, darkPanel2, darkPanel3, darkPanel4, darkPanel5, darkPanel6, darkMetal,
|
||||
@ -47,9 +50,14 @@ public class Blocks implements ContentList{
|
||||
//ores
|
||||
oreCopper, oreLead, oreScrap, oreCoal, oreTitanium, oreThorium,
|
||||
|
||||
//wall ores
|
||||
wallOreBeryl, graphiticWall,
|
||||
berylWall, //TODO remove?
|
||||
|
||||
//crafting
|
||||
siliconSmelter, siliconCrucible, kiln, graphitePress, plastaniumCompressor, multiPress, phaseWeaver, surgeSmelter, pyratiteMixer, blastMixer, cryofluidMixer,
|
||||
siliconSmelter, siliconCrucible, siliconArcFurnace, kiln, graphitePress, plastaniumCompressor, multiPress, phaseWeaver, surgeSmelter, pyratiteMixer, blastMixer, cryofluidMixer,
|
||||
melter, separator, disassembler, sporePress, pulverizer, incinerator, coalCentrifuge,
|
||||
cellSynthesisChamber,
|
||||
|
||||
//sandbox
|
||||
powerSource, powerVoid, itemSource, itemVoid, liquidSource, liquidVoid, payloadVoid, payloadSource, illuminator,
|
||||
@ -73,6 +81,7 @@ public class Blocks implements ContentList{
|
||||
|
||||
//production
|
||||
mechanicalDrill, pneumaticDrill, laserDrill, blastDrill, waterExtractor, oilExtractor, cultivator,
|
||||
beamDrill,
|
||||
|
||||
//storage
|
||||
coreShard, coreFoundation, coreNucleus, vault, container, unloader,
|
||||
@ -93,7 +102,10 @@ public class Blocks implements ContentList{
|
||||
message, switchBlock, microProcessor, logicProcessor, hyperProcessor, largeLogicDisplay, logicDisplay, memoryCell, memoryBank,
|
||||
|
||||
//campaign
|
||||
launchPad, interplanetaryAccelerator,
|
||||
launchPad, payloadLaunchPad, interplanetaryAccelerator,
|
||||
|
||||
//nuclear?
|
||||
nuclearWarhead, warheadAssembler, ballisticSilo, //TODO
|
||||
|
||||
//misc experimental
|
||||
blockForge, blockLoader, blockUnloader
|
||||
@ -278,6 +290,30 @@ public class Blocks implements ContentList{
|
||||
|
||||
dacite = new Floor("dacite");
|
||||
|
||||
rhyolite = new Floor("rhyolite"){{
|
||||
attributes.set(Attribute.water, -1f);
|
||||
}};
|
||||
|
||||
rhyoliteCrater = new Floor("rhyolite-crater"){{
|
||||
attributes.set(Attribute.water, -1f);
|
||||
blendGroup = rhyolite;
|
||||
}};
|
||||
|
||||
regolith = new Floor("regolith"){{
|
||||
attributes.set(Attribute.water, -1f);
|
||||
}};
|
||||
|
||||
yellowStone = new Floor("yellow-stone"){{
|
||||
attributes.set(Attribute.water, -1f);
|
||||
}};
|
||||
|
||||
graphiticStone = new Floor("graphitic-stone"){{
|
||||
variants = 4;
|
||||
}};
|
||||
|
||||
redmat = new Floor("redmat");
|
||||
bluemat = new Floor("bluemat");
|
||||
|
||||
grass = new Floor("grass"){{
|
||||
attributes.set(Attribute.water, 0.1f);
|
||||
}};
|
||||
@ -339,6 +375,26 @@ public class Blocks implements ContentList{
|
||||
basalt.asFloor().wall = darksandWater.asFloor().wall = darksandTaintedWater.asFloor().wall = this;
|
||||
}};
|
||||
|
||||
regolithWall = new StaticWall("regolith-wall"){{
|
||||
variants = 2;
|
||||
regolith.asFloor().wall = this;
|
||||
}};
|
||||
|
||||
yellowStoneWall = new StaticWall("yellow-stone-wall"){{
|
||||
variants = 2;
|
||||
yellowStone.asFloor().wall = this;
|
||||
}};
|
||||
|
||||
rhyoliteWall = new StaticWall("rhyolite-wall"){{
|
||||
variants = 2;
|
||||
rhyolite.asFloor().wall = rhyoliteCrater.asFloor().wall = this;
|
||||
}};
|
||||
|
||||
carbonWall = new StaticWall("carbon-wall"){{
|
||||
variants = 2;
|
||||
graphiticStone.asFloor().wall = this;
|
||||
}};
|
||||
|
||||
sandWall = new StaticWall("sand-wall"){{
|
||||
variants = 2;
|
||||
sandWater.asFloor().wall = water.asFloor().wall = deepwater.asFloor().wall = this;
|
||||
@ -372,6 +428,29 @@ public class Blocks implements ContentList{
|
||||
variants = 3;
|
||||
}};
|
||||
|
||||
redweed = new Seaweed("redweed"){{
|
||||
variants = 3;
|
||||
}};
|
||||
|
||||
purbush = new SeaBush("pur-bush"){{
|
||||
|
||||
}};
|
||||
|
||||
yellowCoral = new SeaBush("yellowcoral"){{
|
||||
lobesMin = 2;
|
||||
lobesMax = 3;
|
||||
magMax = 8f;
|
||||
magMin = 2f;
|
||||
origin = 0.3f;
|
||||
spread = 40f;
|
||||
sclMin = 60f;
|
||||
sclMax = 100f;
|
||||
}};
|
||||
|
||||
coralChunk = new StaticCoralWall("coralchunk"){{
|
||||
|
||||
}};
|
||||
|
||||
//glowBlob = new Prop("glowblob"){{
|
||||
// variants = 1;
|
||||
//}};
|
||||
@ -482,6 +561,20 @@ public class Blocks implements ContentList{
|
||||
oreScale = 25.380953f;
|
||||
}};
|
||||
|
||||
//endregion
|
||||
//region wall ore
|
||||
|
||||
wallOreBeryl = new WallOreBlock(Items.beryllium);
|
||||
|
||||
berylWall = new StaticWall("beryl-wall"){{
|
||||
itemDrop = Items.beryllium;
|
||||
}};
|
||||
|
||||
graphiticWall = new StaticWall("graphitic-wall"){{
|
||||
itemDrop = Items.graphite;
|
||||
variants = 3;
|
||||
}};
|
||||
|
||||
//endregion
|
||||
//region crafting
|
||||
|
||||
@ -544,6 +637,24 @@ public class Blocks implements ContentList{
|
||||
consumes.power(4f);
|
||||
}};
|
||||
|
||||
//TODO
|
||||
siliconArcFurnace = new GenericCrafter("silicon-arc-furnace"){{
|
||||
requirements(Category.crafting, with(Items.thorium, 200, Items.metaglass, 120, Items.beryllium, 40, Items.silicon, 80));
|
||||
craftEffect = Fx.none;
|
||||
outputItem = new ItemStack(Items.silicon, 5);
|
||||
craftTime = 40f;
|
||||
size = 3;
|
||||
hasPower = true;
|
||||
hasLiquids = false;
|
||||
envEnabled |= Env.space | Env.underwater;
|
||||
itemCapacity = 30;
|
||||
drawer = new DrawArcSmelter();
|
||||
|
||||
//TODO don't use sand?
|
||||
consumes.items(with(Items.graphite, 1, Items.sand, 4));
|
||||
consumes.power(6f);
|
||||
}};
|
||||
|
||||
kiln = new GenericCrafter("kiln"){{
|
||||
requirements(Category.crafting, with(Items.copper, 60, Items.graphite, 30, Items.lead, 30));
|
||||
craftEffect = Fx.smeltsmoke;
|
||||
@ -741,6 +852,35 @@ public class Blocks implements ContentList{
|
||||
consumes.power(0.50f);
|
||||
}};
|
||||
|
||||
cellSynthesisChamber = new LiquidConverter("cell-synthesis-chamber"){{
|
||||
//TODO booster mechanics?
|
||||
requirements(Category.crafting, with(Items.thorium, 100, Items.phaseFabric, 120, Items.titanium, 150, Items.surgeAlloy, 70));
|
||||
outputLiquid = new LiquidStack(Liquids.neoplasm, 0.4f);
|
||||
craftTime = 200f;
|
||||
size = 3;
|
||||
hasPower = true;
|
||||
hasItems = true;
|
||||
hasLiquids = true;
|
||||
rotate = false;
|
||||
solid = true;
|
||||
outputsLiquid = true;
|
||||
drawer = new DrawCells(){{
|
||||
color = Color.valueOf("9e172c");
|
||||
particleColorFrom = Color.valueOf("9e172c");
|
||||
particleColorTo = Color.valueOf("f98f4a");
|
||||
radius = 2.5f;
|
||||
lifetime = 1400f;
|
||||
recurrence = 2f;
|
||||
particles = 20;
|
||||
range = 3f;
|
||||
}};
|
||||
liquidCapacity = 30f;
|
||||
|
||||
consumes.power(2f);
|
||||
consumes.items(with(Items.sporePod, 3, Items.phaseFabric, 1));
|
||||
consumes.liquid(Liquids.water, 0.8f);
|
||||
}};
|
||||
|
||||
//endregion
|
||||
//region defense
|
||||
|
||||
@ -1033,17 +1173,17 @@ public class Blocks implements ContentList{
|
||||
//special transport blocks
|
||||
|
||||
duct = new Duct("duct"){{
|
||||
requirements(Category.distribution, BuildVisibility.debugOnly, with(Items.graphite, 5, Items.copper, 5));
|
||||
requirements(Category.distribution, with(Items.graphite, 5, Items.copper, 5));
|
||||
speed = 5f;
|
||||
}};
|
||||
|
||||
ductRouter = new DuctRouter("duct-router"){{
|
||||
requirements(Category.distribution, BuildVisibility.debugOnly, with(Items.graphite, 10, Items.copper, 5));
|
||||
requirements(Category.distribution, with(Items.graphite, 10, Items.copper, 5));
|
||||
speed = 5f;
|
||||
}};
|
||||
|
||||
ductBridge = new DuctBridge("duct-bridge"){{
|
||||
requirements(Category.distribution, BuildVisibility.debugOnly, with(Items.graphite, 20, Items.copper, 15));
|
||||
requirements(Category.distribution, with(Items.graphite, 20, Items.copper, 15));
|
||||
}};
|
||||
|
||||
//endregion
|
||||
@ -1356,6 +1496,14 @@ public class Blocks implements ContentList{
|
||||
consumes.liquid(Liquids.water, 0.15f);
|
||||
}};
|
||||
|
||||
beamDrill = new BeamDrill("beam-drill"){{
|
||||
requirements(Category.production, with(Items.copper, 150));
|
||||
consumes.power(0.2f);
|
||||
tier = 4;
|
||||
size = 2;
|
||||
range = 4;
|
||||
}};
|
||||
|
||||
//endregion
|
||||
//region storage
|
||||
|
||||
@ -2121,6 +2269,15 @@ public class Blocks implements ContentList{
|
||||
consumes.power(4f);
|
||||
}};
|
||||
|
||||
//TODO
|
||||
payloadLaunchPad = new PayloadLaunchPad("payload-launch-pad"){{
|
||||
requirements(Category.units, BuildVisibility.debugOnly, ItemStack.with(Items.titanium, 200, Items.silicon, 150, Items.lead, 250, Items.plastanium, 75));
|
||||
size = 5;
|
||||
launchTime = 60f;
|
||||
hasPower = true;
|
||||
consumes.power(7f);
|
||||
}};
|
||||
|
||||
interplanetaryAccelerator = new Accelerator("interplanetary-accelerator"){{
|
||||
requirements(Category.effect, BuildVisibility.campaignOnly, with(Items.copper, 16000, Items.silicon, 11000, Items.thorium, 13000, Items.titanium, 12000, Items.surgeAlloy, 6000, Items.phaseFabric, 5000));
|
||||
researchCostMultiplier = 0.1f;
|
||||
@ -2131,6 +2288,23 @@ public class Blocks implements ContentList{
|
||||
health = size * size * 80;
|
||||
}};
|
||||
|
||||
nuclearWarhead = new NuclearWarhead("nuclear-warhead"){{
|
||||
requirements(Category.crafting, BuildVisibility.debugOnly, with(Items.thorium, 40));
|
||||
size = 2;
|
||||
}};
|
||||
|
||||
warheadAssembler = new SingleBlockProducer("warhead-assembler"){{
|
||||
requirements(Category.crafting, BuildVisibility.debugOnly, with(Items.thorium, 100));
|
||||
result = nuclearWarhead;
|
||||
size = 3;
|
||||
buildSpeed = 0.3f;
|
||||
}};
|
||||
|
||||
ballisticSilo = new BallisticSilo("ballistic-silo"){{
|
||||
requirements(Category.crafting, BuildVisibility.debugOnly, with(Items.thorium, 100));
|
||||
size = 5;
|
||||
}};
|
||||
|
||||
//endregion campaign
|
||||
//region logic
|
||||
|
||||
|
@ -7,7 +7,8 @@ import mindustry.type.*;
|
||||
public class Items implements ContentList{
|
||||
public static Item
|
||||
scrap, copper, lead, graphite, coal, titanium, thorium, silicon, plastanium,
|
||||
phaseFabric, surgeAlloy, sporePod, sand, blastCompound, pyratite, metaglass;
|
||||
phaseFabric, surgeAlloy, sporePod, sand, blastCompound, pyratite, metaglass,
|
||||
beryllium, fissileMatter;
|
||||
|
||||
@Override
|
||||
public void load(){
|
||||
@ -91,5 +92,15 @@ public class Items implements ContentList{
|
||||
flammability = 1.4f;
|
||||
explosiveness = 0.4f;
|
||||
}};
|
||||
|
||||
beryllium = new Item("beryllium", Color.valueOf("3a8f64")){{
|
||||
hardness = 4;
|
||||
cost = 1.3f;
|
||||
}};
|
||||
|
||||
fissileMatter = new Item("fissile-matter", Color.valueOf("536631")){{
|
||||
hardness = 4;
|
||||
radioactivity = 1.5f;
|
||||
}};
|
||||
}
|
||||
}
|
||||
|
@ -5,7 +5,7 @@ import mindustry.ctype.*;
|
||||
import mindustry.type.*;
|
||||
|
||||
public class Liquids implements ContentList{
|
||||
public static Liquid water, slag, oil, cryofluid;
|
||||
public static Liquid water, slag, oil, cryofluid, neoplasm, rovazide;
|
||||
|
||||
@Override
|
||||
public void load(){
|
||||
@ -38,5 +38,17 @@ public class Liquids implements ContentList{
|
||||
effect = StatusEffects.freezing;
|
||||
lightColor = Color.valueOf("0097f5").a(0.2f);
|
||||
}};
|
||||
|
||||
neoplasm = new Liquid("neoplasm", Color.valueOf("e05438")){{
|
||||
heatCapacity = 0.4f;
|
||||
temperature = 0.54f;
|
||||
viscosity = 0.65f;
|
||||
flammability = 0.1f;
|
||||
}};
|
||||
|
||||
//rovazide = new Liquid("rovafuel", Color.valueOf("9dde68")){{
|
||||
// flammability = 1.5f;
|
||||
// explosiveness = 3f;
|
||||
//}};
|
||||
}
|
||||
}
|
||||
|
@ -9,6 +9,8 @@ import mindustry.type.*;
|
||||
public class Planets implements ContentList{
|
||||
public static Planet
|
||||
sun,
|
||||
erekir,
|
||||
tantros,
|
||||
serpulo;
|
||||
|
||||
@Override
|
||||
@ -30,6 +32,25 @@ public class Planets implements ContentList{
|
||||
);
|
||||
}};
|
||||
|
||||
erekir = new Planet("erekir", sun, 2, 1){{
|
||||
generator = new ErekirPlanetGenerator();
|
||||
meshLoader = () -> new HexMesh(this, 4);
|
||||
atmosphereColor = Color.valueOf("f07218");
|
||||
startSector = 10;
|
||||
atmosphereRadIn = 0.02f;
|
||||
atmosphereRadOut = 0.3f;
|
||||
tidalLock = true;
|
||||
}};
|
||||
|
||||
tantros = new Planet("tantros", sun, 2, 1){{
|
||||
generator = new TantrosPlanetGenerator();
|
||||
meshLoader = () -> new HexMesh(this, 4);
|
||||
atmosphereColor = Color.valueOf("3db899");
|
||||
startSector = 10;
|
||||
atmosphereRadIn = -0.01f;
|
||||
atmosphereRadOut = 0.3f;
|
||||
}};
|
||||
|
||||
serpulo = new Planet("serpulo", sun, 3, 1){{
|
||||
generator = new SerpuloPlanetGenerator();
|
||||
meshLoader = () -> new HexMesh(this, 6);
|
||||
|
@ -1,8 +1,95 @@
|
||||
package mindustry.graphics;
|
||||
|
||||
import arc.*;
|
||||
import arc.graphics.*;
|
||||
import arc.graphics.Texture.*;
|
||||
import arc.graphics.g2d.*;
|
||||
import arc.math.*;
|
||||
import arc.util.*;
|
||||
import mindustry.type.*;
|
||||
import mindustry.world.meta.*;
|
||||
|
||||
import static mindustry.Vars.*;
|
||||
|
||||
public class EnvRenderers{
|
||||
|
||||
public static void init(){
|
||||
|
||||
Color waterColor = Color.valueOf("353982");
|
||||
Rand rand = new Rand();
|
||||
|
||||
Core.assets.load("sprites/rays.png", Texture.class).loaded = t -> {
|
||||
((Texture)t).setFilter(TextureFilter.linear);
|
||||
};
|
||||
|
||||
renderer.addEnvRenderer(Env.underwater, () -> {
|
||||
Draw.draw(Layer.light + 1, () -> {
|
||||
Draw.color(waterColor, 0.4f);
|
||||
Fill.rect(Core.camera.position.x, Core.camera.position.y, Core.camera.width, Core.camera.height);
|
||||
Draw.reset();
|
||||
|
||||
Blending.additive.apply();
|
||||
Draw.blit(Shaders.caustics);
|
||||
Blending.normal.apply();
|
||||
});
|
||||
|
||||
Draw.z(Layer.light + 2);
|
||||
|
||||
int rays = 50;
|
||||
float timeScale = 2000f;
|
||||
rand.setSeed(0);
|
||||
|
||||
Draw.blend(Blending.additive);
|
||||
|
||||
float t = Time.time / timeScale;
|
||||
Texture tex = Core.assets.get("sprites/rays.png", Texture.class);
|
||||
|
||||
for(int i = 0; i < rays; i++){
|
||||
float offset = rand.random(0f, 1f);
|
||||
float time = t + offset;
|
||||
|
||||
int pos = (int)time;
|
||||
float life = time % 1f;
|
||||
float opacity = rand.random(0.2f, 0.7f) * Mathf.slope(life) * 0.7f;
|
||||
float x = (rand.random(0f, world.unitWidth()) + (pos % 100)*753) % world.unitWidth();
|
||||
float y = (rand.random(0f, world.unitHeight()) + (pos % 120)*453) % world.unitHeight();
|
||||
float rot = rand.range(7f);
|
||||
float sizeScale = 1f + rand.range(0.3f);
|
||||
|
||||
float topDst = (Core.camera.position.y + Core.camera.height/2f) - (y + tex.height/2f + tex.height*1.9f*sizeScale/2f);
|
||||
float invDst = topDst/1000f;
|
||||
opacity = Math.min(opacity, -invDst);
|
||||
|
||||
if(opacity > 0.01){
|
||||
Draw.alpha(opacity);
|
||||
Draw.rect(Draw.wrap(tex), x, y + tex.height/2f, tex.width*2*sizeScale, tex.height*2*sizeScale, rot);
|
||||
Draw.color();
|
||||
}
|
||||
}
|
||||
|
||||
Draw.blend();
|
||||
});
|
||||
|
||||
Core.assets.load("sprites/distortAlpha.png", Texture.class);
|
||||
|
||||
renderer.addEnvRenderer(Env.scorching, () -> {
|
||||
Texture tex = Core.assets.get("sprites/distortAlpha.png", Texture.class);
|
||||
if(tex.getMagFilter() != TextureFilter.linear){
|
||||
tex.setFilter(TextureFilter.linear);
|
||||
tex.setWrap(TextureWrap.repeat);
|
||||
}
|
||||
|
||||
//Draw.z(Layer.weather);
|
||||
Draw.z(layer);
|
||||
Weather.drawNoiseLayers(tex, scorchColor, scl, alpha, speed, 1f, 1f, 0f,
|
||||
layers, speedl, alphal, lscl, colorl);
|
||||
Draw.reset();
|
||||
});
|
||||
}
|
||||
|
||||
public static Color scorchColor = Color.scarlet;
|
||||
public static float scl = 1000f, lscl = 0.8f, alpha = 0.2f, speed = 0.4f, speedl = -1.3f, colorl = 0.9f, alphal = 0.7f;
|
||||
public static int layers = 4;
|
||||
public static float layer = Layer.weather - 1;
|
||||
|
||||
}
|
||||
|
181
core/src/mindustry/maps/planet/ErekirPlanetGenerator.java
Normal file
@ -0,0 +1,181 @@
|
||||
package mindustry.maps.planet;
|
||||
|
||||
import arc.graphics.*;
|
||||
import arc.math.*;
|
||||
import arc.math.geom.*;
|
||||
import arc.util.*;
|
||||
import arc.util.noise.*;
|
||||
import mindustry.*;
|
||||
import mindustry.ai.*;
|
||||
import mindustry.content.*;
|
||||
import mindustry.game.*;
|
||||
import mindustry.maps.generators.*;
|
||||
import mindustry.type.*;
|
||||
import mindustry.world.*;
|
||||
import mindustry.world.meta.*;
|
||||
|
||||
import static mindustry.Vars.*;
|
||||
|
||||
public class ErekirPlanetGenerator extends PlanetGenerator{
|
||||
RidgedPerlin rid = new RidgedPerlin(1, 2);
|
||||
RidgedPerlin crid = new RidgedPerlin(2, 3);
|
||||
|
||||
public float scl = 2f;
|
||||
public float heightScl = 1f, octaves = 8, persistence = 0.7f, heightPow = 3f, heightMult = 1.5f;
|
||||
|
||||
Block[][] arr = {
|
||||
{Blocks.regolith, Blocks.regolith, Blocks.yellowStone, Blocks.rhyolite, Blocks.basalt}
|
||||
};
|
||||
|
||||
{
|
||||
noise.setSeed(2);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void generateSector(Sector sector){
|
||||
//no bases right now
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getHeight(Vec3 position){
|
||||
return Mathf.pow(rawHeight(position), heightPow) * heightMult;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Color getColor(Vec3 position){
|
||||
Block block = getBlock(position);
|
||||
return Tmp.c1.set(block.mapColor).a(1f - block.albedo);
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getSizeScl(){
|
||||
return 2000;
|
||||
}
|
||||
|
||||
float rawHeight(Vec3 position){
|
||||
return (float)noise.octaveNoise3D(octaves, persistence, 1f/heightScl, 10f + position.x, 10f + position.y, 10f + position.z);
|
||||
}
|
||||
|
||||
float rawTemp(Vec3 position){
|
||||
return position.dst(0, 0, 1)*2.2f - (float)noise.octaveNoise3D(8, 0.54f, 1.4f, 10f + position.x, 10f + position.y, 10f + position.z) * 2.9f;
|
||||
}
|
||||
|
||||
Block getBlock(Vec3 position){
|
||||
float ice = rawTemp(position);
|
||||
|
||||
float height = rawHeight(position);
|
||||
Tmp.v31.set(position);
|
||||
position = Tmp.v33.set(position).scl(scl);
|
||||
float temp = (float)noise.octaveNoise3D(8, 0.6, 1f/2f, 10f + position.x, 10f + position.y + 99f, 10f + position.z);
|
||||
height *= 1.2f;
|
||||
height = Mathf.clamp(height);
|
||||
|
||||
Block result = arr[Mathf.clamp((int)(temp * arr.length), 0, arr[0].length - 1)][Mathf.clamp((int)(height * arr[0].length), 0, arr[0].length - 1)];
|
||||
|
||||
if(ice < 0.6){
|
||||
if(result == Blocks.rhyolite || result == Blocks.yellowStone || result == Blocks.regolith){
|
||||
return Blocks.ice;
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void genTile(Vec3 position, TileGen tile){
|
||||
tile.floor = getBlock(position);
|
||||
|
||||
if(tile.floor == Blocks.rhyolite && rand.chance(0.01)){
|
||||
tile.floor = Blocks.rhyoliteCrater;
|
||||
}
|
||||
|
||||
tile.block = tile.floor.asFloor().wall;
|
||||
|
||||
if(rid.getValue(position.x, position.y, position.z, 25) > 0.2){
|
||||
tile.block = Blocks.air;
|
||||
}
|
||||
|
||||
if(crid.getValue(position.x, position.y + 4f, position.z, 7f) > 0.7){
|
||||
tile.floor = Blocks.graphiticStone;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void generate(){
|
||||
float temp = rawTemp(sector.tile.v);
|
||||
|
||||
if(temp > 0.7){
|
||||
|
||||
pass((x, y) -> {
|
||||
if(floor != Blocks.ice){
|
||||
float noise = noise(x + 782, y, 7, 0.8f, 310f, 1f);
|
||||
if(noise > 0.67f){
|
||||
if(noise > 0.72f){
|
||||
floor = Blocks.slag;
|
||||
}else{
|
||||
floor = Blocks.yellowStone;
|
||||
}
|
||||
ore = Blocks.air;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
cells(4);
|
||||
|
||||
float length = width/3f;
|
||||
Vec2 trns = Tmp.v1.trns(rand.random(360f), length);
|
||||
int
|
||||
spawnX = (int)(trns.x + width/2f), spawnY = (int)(trns.y + height/2f),
|
||||
endX = (int)(-trns.x + width/2f), endY = (int)(-trns.y + height/2f);
|
||||
float maxd = Mathf.dst(width/2f, height/2f);
|
||||
|
||||
erase(spawnX, spawnY, 15);
|
||||
brush(pathfind(spawnX, spawnY, endX, endY, tile -> (tile.solid() ? 300f : 0f) + maxd - tile.dst(width/2f, height/2f)/10f, Astar.manhattan), 7);
|
||||
|
||||
distort(10f, 12f);
|
||||
distort(5f, 7f);
|
||||
|
||||
pass((x, y) -> {
|
||||
float max = 0;
|
||||
for(Point2 p : Geometry.d8){
|
||||
max = Math.max(max, world.getDarkness(x + p.x, y + p.y));
|
||||
}
|
||||
if(max > 0){
|
||||
block = floor.asFloor().wall;
|
||||
if(block == Blocks.air) block = Blocks.yellowStoneWall;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
inverseFloodFill(tiles.getn(spawnX, spawnY));
|
||||
|
||||
tiles.getn(endX, endY).setOverlay(Blocks.spawn);
|
||||
|
||||
tech(Blocks.darkPanel3, Blocks.darkPanel5, Blocks.darkMetal);
|
||||
|
||||
//ores
|
||||
pass((x, y) -> {
|
||||
|
||||
if(block != Blocks.air){
|
||||
boolean empty = false;
|
||||
for(Point2 p : Geometry.d8){
|
||||
Tile other = tiles.get(x + p.x, y + p.y);
|
||||
if(other != null && other.block() == Blocks.air){
|
||||
empty = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if(empty && noise(x + 78, y, 4, 0.7f, 35f, 1f) > 0.67f && block == Blocks.carbonWall){
|
||||
block = Blocks.graphiticWall;
|
||||
}else if(empty && noise(x + 782, y, 4, 0.8f, 40f, 1f) > 0.7f && block != Blocks.carbonWall){
|
||||
ore = Blocks.wallOreBeryl;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Vars.state.rules.environment = Env.scorching | Env.terrestrial;
|
||||
Schematics.placeLaunchLoadout(spawnX, spawnY);
|
||||
}
|
||||
}
|
111
core/src/mindustry/maps/planet/TantrosPlanetGenerator.java
Normal file
@ -0,0 +1,111 @@
|
||||
package mindustry.maps.planet;
|
||||
|
||||
import arc.graphics.*;
|
||||
import arc.math.*;
|
||||
import arc.math.geom.*;
|
||||
import arc.util.*;
|
||||
import mindustry.*;
|
||||
import mindustry.content.*;
|
||||
import mindustry.game.*;
|
||||
import mindustry.maps.generators.*;
|
||||
import mindustry.type.*;
|
||||
import mindustry.type.Weather.*;
|
||||
import mindustry.world.*;
|
||||
import mindustry.world.meta.*;
|
||||
|
||||
import static mindustry.Vars.*;
|
||||
|
||||
public class TantrosPlanetGenerator extends PlanetGenerator{
|
||||
Color c1 = Color.valueOf("5057a6"), c2 = Color.valueOf("272766"), out = new Color();
|
||||
|
||||
Block[][] arr = {
|
||||
{Blocks.redmat, Blocks.redmat, Blocks.darksand, Blocks.bluemat, Blocks.bluemat}
|
||||
};
|
||||
|
||||
{
|
||||
noise.setSeed(1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void generateSector(Sector sector){
|
||||
//no bases
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getHeight(Vec3 position){
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Color getColor(Vec3 position){
|
||||
float depth = (float)noise.octaveNoise3D(2, 0.56, 1.7f, position.x, position.y, position.z) / 2f;
|
||||
return c1.write(out).lerp(c2, Mathf.clamp(Mathf.round(depth, 0.15f))).a(0.6f);
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getSizeScl(){
|
||||
return 2000;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addWeather(Sector sector, Rules rules){
|
||||
rules.weather.and(new WeatherEntry(Weathers.suspendParticles)).peek().always = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void genTile(Vec3 position, TileGen tile){
|
||||
tile.floor = getBlock(position);
|
||||
|
||||
if(tile.floor == Blocks.redmat && rand.chance(0.1)){
|
||||
tile.block = Blocks.redweed;
|
||||
}
|
||||
|
||||
if(tile.floor == Blocks.bluemat && rand.chance(0.03)){
|
||||
tile.block = Blocks.purbush;
|
||||
}
|
||||
|
||||
if(tile.floor == Blocks.bluemat && rand.chance(0.002)){
|
||||
tile.block = Blocks.yellowCoral;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void generate(){
|
||||
pass((x, y) -> {
|
||||
float max = 0;
|
||||
for(Point2 p : Geometry.d8){
|
||||
max = Math.max(max, world.getDarkness(x + p.x, y + p.y));
|
||||
}
|
||||
if(max > 0){
|
||||
block = floor.asFloor().wall;
|
||||
}
|
||||
|
||||
if(noise(x, y, 40f, 1f) > 0.9){
|
||||
//block = Blocks.coralChunk;
|
||||
}
|
||||
});
|
||||
|
||||
Schematics.placeLaunchLoadout(width / 2, height / 2);
|
||||
|
||||
Vars.state.rules.environment = Env.underwater;
|
||||
|
||||
state.rules.canGameOver = false;
|
||||
}
|
||||
|
||||
float rawHeight(Vec3 position){
|
||||
return (float)noise.octaveNoise3D(8, 0.7f, 1f, position.x, position.y, position.z);
|
||||
}
|
||||
|
||||
Block getBlock(Vec3 position){
|
||||
float height = rawHeight(position);
|
||||
Tmp.v31.set(position);
|
||||
position = Tmp.v33.set(position).scl(2f);
|
||||
float temp = (float)noise.octaveNoise3D(8, 0.6, 1f/2f, position.x, position.y + 99f, position.z);
|
||||
height *= 1.2f;
|
||||
height = Mathf.clamp(height);
|
||||
|
||||
//float tar = (float)noise.octaveNoise3D(4, 0.55f, 1f/2f, position.x, position.y + 999f, position.z) * 0.3f + Tmp.v31.dst(0, 0, 1f) * 0.2f;
|
||||
|
||||
return arr[Mathf.clamp((int)(temp * arr.length), 0, arr[0].length - 1)][Mathf.clamp((int)(height * arr[0].length), 0, arr[0].length - 1)];
|
||||
}
|
||||
}
|
@ -1,8 +1,6 @@
|
||||
package mindustry.mod;
|
||||
|
||||
import arc.struct.*;
|
||||
import mindustry.world.blocks.environment.*;
|
||||
|
||||
/** Generated class. Maps simple class names to concrete classes. For use in JSON mods. */
|
||||
@SuppressWarnings("deprecation")
|
||||
public class ClassMap{
|
||||
@ -173,11 +171,11 @@ public class ClassMap{
|
||||
classes.put("OreBlock", mindustry.world.blocks.environment.OreBlock.class);
|
||||
classes.put("OverlayFloor", mindustry.world.blocks.environment.OverlayFloor.class);
|
||||
classes.put("Prop", mindustry.world.blocks.environment.Prop.class);
|
||||
classes.put("Bush", Bush.class);
|
||||
classes.put("WavingProp", WavingProp.class);
|
||||
classes.put("SeaBush", mindustry.world.blocks.environment.SeaBush.class);
|
||||
classes.put("Seaweed", mindustry.world.blocks.environment.Seaweed.class);
|
||||
classes.put("ShallowLiquid", mindustry.world.blocks.environment.ShallowLiquid.class);
|
||||
classes.put("SpawnBlock", mindustry.world.blocks.environment.SpawnBlock.class);
|
||||
classes.put("StaticClusterWall", StaticClusterWall.class);
|
||||
classes.put("StaticCoralWall", mindustry.world.blocks.environment.StaticCoralWall.class);
|
||||
classes.put("StaticTree", mindustry.world.blocks.environment.StaticTree.class);
|
||||
classes.put("StaticWall", mindustry.world.blocks.environment.StaticWall.class);
|
||||
classes.put("TreeBlock", mindustry.world.blocks.environment.TreeBlock.class);
|
||||
|
@ -6,7 +6,7 @@ import arc.util.*;
|
||||
import mindustry.annotations.Annotations.*;
|
||||
import mindustry.world.*;
|
||||
|
||||
public class Bush extends Prop{
|
||||
public class SeaBush extends Prop{
|
||||
public @Load(value = "@-bot", fallback = "@") TextureRegion botRegion;
|
||||
public @Load(value = "@-center") TextureRegion centerRegion;
|
||||
|
||||
@ -16,7 +16,7 @@ public class Bush extends Prop{
|
||||
|
||||
static Rand rand = new Rand();
|
||||
|
||||
public Bush(String name){
|
||||
public SeaBush(String name){
|
||||
super(name);
|
||||
variants = 0;
|
||||
}
|
@ -5,9 +5,9 @@ import arc.math.*;
|
||||
import arc.util.*;
|
||||
import mindustry.world.*;
|
||||
|
||||
public class WavingProp extends Prop{
|
||||
public class Seaweed extends Prop{
|
||||
|
||||
public WavingProp(String name){
|
||||
public Seaweed(String name){
|
||||
super(name);
|
||||
}
|
||||
|
@ -5,10 +5,10 @@ import arc.math.*;
|
||||
import mindustry.annotations.Annotations.*;
|
||||
import mindustry.world.*;
|
||||
|
||||
public class StaticClusterWall extends StaticWall{
|
||||
public class StaticCoralWall extends StaticWall{
|
||||
public @Load(value = "@-cluster#", length = 1) TextureRegion[] clusters;
|
||||
|
||||
public StaticClusterWall(String name){
|
||||
public StaticCoralWall(String name){
|
||||
super(name);
|
||||
variants = 1;
|
||||
}
|
@ -8,4 +8,4 @@ kapt.use.worker.api=true
|
||||
kapt.include.compile.classpath=false
|
||||
# I don't need to use the kotlin stdlib yet, so remove it to prevent extra bloat & method count issues
|
||||
kotlin.stdlib.default.dependency=false
|
||||
archash=5364d0187882a5e2f09850fe2505608dd7cf93f3
|
||||
archash=4db7abe679c53dbcef400b65da75247ffa6334d3
|
||||
|