Added cool new reconstructors™️
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 763 B After Width: | Height: | Size: 757 B |
Before Width: | Height: | Size: 862 KiB After Width: | Height: | Size: 865 KiB |
Before Width: | Height: | Size: 125 KiB After Width: | Height: | Size: 125 KiB |
Before Width: | Height: | Size: 278 KiB After Width: | Height: | Size: 279 KiB |
Before Width: | Height: | Size: 926 KiB After Width: | Height: | Size: 915 KiB |
@ -77,7 +77,9 @@ public class Blocks implements ContentList{
|
||||
duo, scatter, scorch, hail, arc, wave, lancer, swarmer, salvo, fuse, ripple, cyclone, spectre, meltdown, segment,
|
||||
|
||||
//units
|
||||
groundFactory, airFactory, navalFactory, basicReconstructor, advancedReconstructor, repairPoint,
|
||||
groundFactory, airFactory, navalFactory,
|
||||
reconstructorBasis, reconstructorMorphism, reconstructorFunctor, reconstructorPrime,
|
||||
repairPoint,
|
||||
|
||||
//campaign
|
||||
launchPad, launchPadLarge, coreSilo, dataProcessor,
|
||||
@ -1755,7 +1757,7 @@ public class Blocks implements ContentList{
|
||||
consumes.power(1.2f);
|
||||
}};
|
||||
|
||||
basicReconstructor = new Reconstructor("basic-reconstructor"){{
|
||||
reconstructorBasis = new Reconstructor("reconstructor-basis"){{
|
||||
requirements(Category.units, ItemStack.with(Items.copper, 50, Items.lead, 120, Items.silicon, 230));
|
||||
|
||||
size = 3;
|
||||
@ -1773,7 +1775,7 @@ public class Blocks implements ContentList{
|
||||
};
|
||||
}};
|
||||
|
||||
advancedReconstructor = new Reconstructor("advanced-reconstructor"){{
|
||||
reconstructorMorphism = new Reconstructor("reconstructor-morphism"){{
|
||||
requirements(Category.units, ItemStack.with(Items.copper, 50, Items.lead, 120, Items.silicon, 230));
|
||||
|
||||
size = 5;
|
||||
@ -1789,6 +1791,35 @@ public class Blocks implements ContentList{
|
||||
};
|
||||
}};
|
||||
|
||||
//TODO finish these
|
||||
reconstructorFunctor = new Reconstructor("reconstructor-functor"){{
|
||||
requirements(Category.units, ItemStack.with(Items.copper, 50, Items.lead, 120, Items.silicon, 230));
|
||||
|
||||
size = 7;
|
||||
consumes.power(6f);
|
||||
consumes.items(ItemStack.with(Items.silicon, 60, Items.titanium, 60));
|
||||
itemCapacity = 80;
|
||||
|
||||
constructTime = 60f * 15f;
|
||||
|
||||
upgrades = new UnitType[][]{
|
||||
};
|
||||
}};
|
||||
|
||||
reconstructorPrime = new Reconstructor("reconstructor-prime"){{
|
||||
requirements(Category.units, ItemStack.with(Items.copper, 50, Items.lead, 120, Items.silicon, 230));
|
||||
|
||||
size = 9;
|
||||
consumes.power(6f);
|
||||
consumes.items(ItemStack.with(Items.silicon, 60, Items.titanium, 60));
|
||||
itemCapacity = 80;
|
||||
|
||||
constructTime = 60f * 15f;
|
||||
|
||||
upgrades = new UnitType[][]{
|
||||
};
|
||||
}};
|
||||
|
||||
repairPoint = new RepairPoint("repair-point"){{
|
||||
requirements(Category.units, ItemStack.with(Items.lead, 15, Items.copper, 15, Items.silicon, 15));
|
||||
repairSpeed = 0.5f;
|
||||
|
@ -1,3 +1,3 @@
|
||||
org.gradle.daemon=true
|
||||
org.gradle.jvmargs=-Xms256m -Xmx1024m
|
||||
archash=
|
||||
archash=687070d8d8e81d8d89156062eabf017fde9408ed
|
||||
|
@ -4,6 +4,7 @@ sourceSets.main.java.srcDirs = ["src/"]
|
||||
import arc.struct.*
|
||||
import arc.graphics.*
|
||||
import arc.packer.*
|
||||
import arc.util.Tmp
|
||||
|
||||
import javax.imageio.ImageIO
|
||||
import java.awt.*
|
||||
@ -261,6 +262,35 @@ task swapColors(){
|
||||
}
|
||||
}
|
||||
|
||||
task genPalette(){
|
||||
doLast{
|
||||
def total = 0
|
||||
def size = 32
|
||||
def outImage = new BufferedImage(size, size, BufferedImage.TYPE_INT_ARGB)
|
||||
def colorsUsed = new IntSet()
|
||||
|
||||
fileTree(dir: '../core/assets-raw/sprites/blocks', include: "**/*.png").visit{ file ->
|
||||
if(file.isDirectory()) return
|
||||
|
||||
def img = ImageIO.read(file.file)
|
||||
for(x in (0..img.getWidth() - 1)){
|
||||
for(y in (0..img.getHeight() - 1)){
|
||||
def c = img.getRGB(x, y)
|
||||
|
||||
if(Tmp.c1.argb8888(c).a > 0.999f && colorsUsed.add(c)){
|
||||
outImage.setRGB((int)(total / size), total % size, c)
|
||||
total ++
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ImageIO.write(outImage, "png", new File("palette.png"))
|
||||
println "Found $total colors."
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
task antialiasImages(){
|
||||
doLast{
|
||||
for(def img : project.getProperty("images").split(",")){
|
||||
|