BaseShield for testing

This commit is contained in:
Anuken
2022-02-07 13:04:02 -05:00
parent c1bd5ae9c7
commit f0a4753180
16 changed files with 101 additions and 51 deletions

View File

@@ -86,6 +86,8 @@ public class Blocks{
//defense - erekir
buildTower,
regenProjector, barrierProjector,
//campaign only
shieldProjector,
//transport
conveyor, titaniumConveyor, plastaniumConveyor, armoredConveyor, distributor, junction, itemBridge, phaseConveyor, sorter, invertedSorter, router,
@@ -1713,8 +1715,9 @@ public class Blocks{
}});
}};
//TODO implement
if(false)
barrierProjector = new DirectionalForceProjector("barrier-projector"){{
//TODO
requirements(Category.effect, with(Items.surgeAlloy, 100, Items.silicon, 125));
size = 3;
width = 50f;
@@ -1726,6 +1729,16 @@ public class Blocks{
consumes.power(4f);
}};
//TODO 5x5??
shieldProjector = new BaseShield("shield-projector"){{
category = Category.effect;
buildVisibility = BuildVisibility.editorOnly;
size = 3;
consumes.power(5f);
}};
//endregion
//region distribution
@@ -2231,7 +2244,7 @@ public class Blocks{
//TODO rename
chemicalCombustionChamber = new ConsumeGenerator("chemical-combustion-chamber"){{
requirements(Category.power, with(Items.graphite, 40, Items.tungsten, 40, Items.oxide, 40f, Items.silicon, 30));
powerProduction = 8f;
powerProduction = 9f;
consumes.liquids(LiquidStack.with(Liquids.ozone, 1f / 60f, Liquids.arkycite, 20f / 60f));
size = 3;
drawer = new DrawMulti(new DrawRegion("-bottom"), new DrawPistons(){{
@@ -2255,7 +2268,7 @@ public class Blocks{
pyrolysisGenerator = new ConsumeGenerator("pyrolysis-generator"){{
//TODO requirements
requirements(Category.power, with(Items.graphite, 50, Items.carbide, 50, Items.oxide, 60f, Items.silicon, 50));
powerProduction = 16f;
powerProduction = 18f;
drawer = new DrawMulti(new DrawRegion("-bottom"), new DrawPistons(){{
sinMag = 2.75f;

View File

@@ -1553,6 +1553,15 @@ public class Fx{
}
}),
circleColorSpark = new Effect(21f, e -> {
color(Color.white, e.color, e.fin());
stroke(e.fout() * 1.1f + 0.5f);
randLenVectors(e.id, 9, 27f * e.fin(), 9f, (x, y) -> {
lineAngle(e.x + x, e.y + y, Mathf.angle(x, y), e.fslope() * 5f + 0.5f);
});
}),
colorSpark = new Effect(21f, e -> {
color(Color.white, e.color, e.fin());
stroke(e.fout() * 1.1f + 0.5f);

View File

@@ -3185,54 +3185,51 @@ public class UnitTypes{
envDisabled = 0;
lowAltitude = false;
flying = true;
mineWalls = true;
targetAir = false;
mineFloor = false;
mineHardnessScaling = false;
mineSpeed = 5f;
flying = true;
mineSpeed = 4f;
mineTier = 4;
buildSpeed = 1.4f;
drag = 0.06f;
speed = 2.8f;
rotateSpeed = 5f;
accel = 0.11f;
buildSpeed = 1.1f;
drag = 0.08f;
speed = 6.5f;
rotateSpeed = 8f;
accel = 0.09f;
itemCapacity = 90;
health = 600f;
health = 500f;
armor = 2f;
hitSize = 18f;
buildBeamOffset = 10f;
engineSize = 0;
payloadCapacity = Mathf.sqr(2f) * tilePayload;
hitSize = 11f;
engineOffset = 15 / 4f;
engineSize = 4;
setEnginesMirror(
new UnitEngine(34 / 4f, 31 / 4f, 3f, 45f),
new UnitEngine(35 / 4f, -38 / 4f, 3f, 315f)
new UnitEngine(23 / 4f, 4 / 4f, 2.4f, 315f)
);
weapons.add(new Weapon("incite-weapon"){{
reload = 30f;
x = 4f;
y = 6.25f;
shootY = 5.75f;
recoil = 2f;
top = false;
layerOffset = -0.01f;
weapons.add(new RepairBeamWeapon(){{
reload = 25f;
x = 0f;
y = 6.5f;
rotate = false;
shootY = 0f;
beamWidth = 0.7f;
repairSpeed = 0.3f;
aimDst = 0f;
shootCone = 15f;
fractionRepair = true;
mirror = false;
bullet = new BasicBulletType(5f, 15){{
width = 7f;
height = 12f;
shootEffect = Fx.sparkShoot;
smokeEffect = Fx.shootBigSmoke;
pierceCap = 2;
pierce = true;
pierceBuilding = true;
hitColor = backColor = trailColor = Pal.bulletYellowBack;
frontColor = Color.white;
trailWidth = 1.5f;
trailLength = 7;
hitEffect = despawnEffect = Fx.hitBulletColor;
targetUnits = false;
targetBuildings = true;
autoTarget = false;
controllable = true;
laserColor = Pal.accent;
healColor = Pal.accent;
bullet = new BulletType(){{
maxRange = 60f;
}};
}});
}};