Core: Acropolis
This commit is contained in:
BIN
core/assets-raw/sprites/blocks/storage/core-acropolis-team.png
Normal file
BIN
core/assets-raw/sprites/blocks/storage/core-acropolis-team.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3.6 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.3 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.3 KiB |
BIN
core/assets-raw/sprites/blocks/storage/core-acropolis.png
Normal file
BIN
core/assets-raw/sprites/blocks/storage/core-acropolis.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3.7 KiB |
@@ -434,3 +434,4 @@
|
|||||||
63274=reinforced-bridge-conduit|block-reinforced-bridge-conduit-ui
|
63274=reinforced-bridge-conduit|block-reinforced-bridge-conduit-ui
|
||||||
63273=core-aegis|block-core-aegis-ui
|
63273=core-aegis|block-core-aegis-ui
|
||||||
63272=core-citadel|block-core-citadel-ui
|
63272=core-citadel|block-core-citadel-ui
|
||||||
|
63271=core-acropolis|block-core-acropolis-ui
|
||||||
|
|||||||
Binary file not shown.
@@ -95,7 +95,7 @@ public class Blocks implements ContentList{
|
|||||||
//storage
|
//storage
|
||||||
coreShard, coreFoundation, coreNucleus, vault, container, unloader,
|
coreShard, coreFoundation, coreNucleus, vault, container, unloader,
|
||||||
//storage - erekir
|
//storage - erekir
|
||||||
coreBastion, coreAegis, coreCitadel,
|
coreBastion, coreAegis, coreCitadel, coreAcropolis,
|
||||||
|
|
||||||
//turrets
|
//turrets
|
||||||
duo, scatter, scorch, hail, arc, wave, lancer, swarmer, salvo, fuse, ripple, cyclone, foreshadow, spectre, meltdown, segment, parallax, tsunami,
|
duo, scatter, scorch, hail, arc, wave, lancer, swarmer, salvo, fuse, ripple, cyclone, foreshadow, spectre, meltdown, segment, parallax, tsunami,
|
||||||
@@ -1841,7 +1841,7 @@ public class Blocks implements ContentList{
|
|||||||
//TODO cost
|
//TODO cost
|
||||||
requirements(Category.effect, with(Items.beryllium, 7000, Items.graphite, 7000, Items.tungsten, 5000, Items.carbide, 5000));
|
requirements(Category.effect, with(Items.beryllium, 7000, Items.graphite, 7000, Items.tungsten, 5000, Items.carbide, 5000));
|
||||||
|
|
||||||
unitType = UnitTypes.gamma;
|
unitType = UnitTypes.evoke;
|
||||||
health = 14000;
|
health = 14000;
|
||||||
itemCapacity = 11000;
|
itemCapacity = 11000;
|
||||||
size = 5;
|
size = 5;
|
||||||
@@ -1851,6 +1851,20 @@ public class Blocks implements ContentList{
|
|||||||
researchCostMultiplier = 0.11f;
|
researchCostMultiplier = 0.11f;
|
||||||
}};
|
}};
|
||||||
|
|
||||||
|
coreAcropolis = new CoreBlock("core-acropolis"){{
|
||||||
|
//TODO cost
|
||||||
|
requirements(Category.effect, with(Items.beryllium, 11000, Items.graphite, 11000, Items.tungsten, 9000, Items.carbide, 10000));
|
||||||
|
|
||||||
|
unitType = UnitTypes.evoke;
|
||||||
|
health = 22000;
|
||||||
|
itemCapacity = 16000;
|
||||||
|
size = 6;
|
||||||
|
thrusterLength = 48/4f;
|
||||||
|
|
||||||
|
unitCapModifier = 40;
|
||||||
|
researchCostMultiplier = 0.11f;
|
||||||
|
}};
|
||||||
|
|
||||||
vault = new StorageBlock("vault"){{
|
vault = new StorageBlock("vault"){{
|
||||||
requirements(Category.effect, with(Items.titanium, 250, Items.thorium, 125));
|
requirements(Category.effect, with(Items.titanium, 250, Items.thorium, 125));
|
||||||
size = 3;
|
size = 3;
|
||||||
|
|||||||
@@ -2434,16 +2434,12 @@ public class UnitTypes implements ContentList{
|
|||||||
commandLimit = 5;
|
commandLimit = 5;
|
||||||
engineSize = 0;
|
engineSize = 0;
|
||||||
|
|
||||||
//TODO ugly definition...
|
setEnginesMirror(
|
||||||
engines = new UnitEngine[]{
|
|
||||||
new UnitEngine(21 / 4f, 19 / 4f, 2.2f, 45f),
|
new UnitEngine(21 / 4f, 19 / 4f, 2.2f, 45f),
|
||||||
new UnitEngine(-21 / 4f, 19 / 4f, 2.2f, 135f),
|
new UnitEngine(23 / 4f, -22 / 4f, 2.2f, 315f)
|
||||||
|
);
|
||||||
|
|
||||||
new UnitEngine(23 / 4f, -22 / 4f, 2.2f, 315f),
|
weapons.add(new Weapon(){{
|
||||||
new UnitEngine(-23 / 4f, -22 / 4f, 2.2f, 225f)
|
|
||||||
};
|
|
||||||
|
|
||||||
weapons.add(new Weapon(""){{
|
|
||||||
reload = 55f;
|
reload = 55f;
|
||||||
x = 0f;
|
x = 0f;
|
||||||
y = 1f;
|
y = 1f;
|
||||||
|
|||||||
@@ -121,7 +121,7 @@ public class UnitType extends UnlockableContent{
|
|||||||
public boolean canDrown = true, naval = false;
|
public boolean canDrown = true, naval = false;
|
||||||
public float drownTimeMultiplier = 1f;
|
public float drownTimeMultiplier = 1f;
|
||||||
public float engineOffset = 5f, engineSize = 2.5f;
|
public float engineOffset = 5f, engineSize = 2.5f;
|
||||||
public UnitEngine[] engines = {};
|
public Seq<UnitEngine> engines = new Seq<>();
|
||||||
public float strafePenalty = 0.5f;
|
public float strafePenalty = 0.5f;
|
||||||
public float hitSize = 6f;
|
public float hitSize = 6f;
|
||||||
public float itemOffsetY = 3f;
|
public float itemOffsetY = 3f;
|
||||||
@@ -607,6 +607,19 @@ public class UnitType extends UnlockableContent{
|
|||||||
return ContentType.unit;
|
return ContentType.unit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Sets up engines, mirroring the contents of the specified array. */
|
||||||
|
public void setEnginesMirror(UnitEngine... array){
|
||||||
|
for(var base : array){
|
||||||
|
engines.add(base);
|
||||||
|
|
||||||
|
var engine = base.copy();
|
||||||
|
engine.x *= -1;
|
||||||
|
engine.rotation = 180f - engine.rotation;
|
||||||
|
if(engine.rotation < 0) engine.rotation += 360f;
|
||||||
|
engines.add(engine);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//region drawing
|
//region drawing
|
||||||
|
|
||||||
public void draw(Unit unit){
|
public void draw(Unit unit){
|
||||||
@@ -657,7 +670,7 @@ public class UnitType extends UnlockableContent{
|
|||||||
if(drawBody) drawOutline(unit);
|
if(drawBody) drawOutline(unit);
|
||||||
drawWeaponOutlines(unit);
|
drawWeaponOutlines(unit);
|
||||||
if(engineSize > 0) drawEngine(unit);
|
if(engineSize > 0) drawEngine(unit);
|
||||||
if(engines.length > 0) drawEngines(unit);
|
if(engines.size > 0) drawEngines(unit);
|
||||||
if(drawBody) drawBody(unit);
|
if(drawBody) drawBody(unit);
|
||||||
if(drawCell) drawCell(unit);
|
if(drawCell) drawCell(unit);
|
||||||
drawWeapons(unit);
|
drawWeapons(unit);
|
||||||
@@ -1047,7 +1060,7 @@ public class UnitType extends UnlockableContent{
|
|||||||
|
|
||||||
//endregion
|
//endregion
|
||||||
|
|
||||||
public static class UnitEngine{
|
public static class UnitEngine implements Cloneable{
|
||||||
public float x, y, radius, rotation;
|
public float x, y, radius, rotation;
|
||||||
|
|
||||||
public UnitEngine(float x, float y, float radius, float rotation){
|
public UnitEngine(float x, float y, float radius, float rotation){
|
||||||
@@ -1059,6 +1072,14 @@ public class UnitType extends UnlockableContent{
|
|||||||
|
|
||||||
public UnitEngine(){
|
public UnitEngine(){
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public UnitEngine copy(){
|
||||||
|
try{
|
||||||
|
return (UnitEngine)clone();
|
||||||
|
}catch(CloneNotSupportedException awful){
|
||||||
|
throw new RuntimeException("fantastic", awful);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -24,4 +24,4 @@ android.useAndroidX=true
|
|||||||
#used for slow jitpack builds; TODO see if this actually works
|
#used for slow jitpack builds; TODO see if this actually works
|
||||||
org.gradle.internal.http.socketTimeout=100000
|
org.gradle.internal.http.socketTimeout=100000
|
||||||
org.gradle.internal.http.connectionTimeout=100000
|
org.gradle.internal.http.connectionTimeout=100000
|
||||||
archash=5e7ddf887d6632c9ca7bd3fa1ef9fef748a3a84e
|
archash=b0c234f0017ca4a7f28a70246e132e58401a7cde
|
||||||
|
|||||||
Reference in New Issue
Block a user