diff --git a/core/assets-raw/sprites/units/incite-cell.png b/core/assets-raw/sprites/units/incite-cell.png new file mode 100644 index 0000000000..2eecb72f3f Binary files /dev/null and b/core/assets-raw/sprites/units/incite-cell.png differ diff --git a/core/assets-raw/sprites/units/incite.png b/core/assets-raw/sprites/units/incite.png index b6c2aeeeaa..0f25f7c0ac 100644 Binary files a/core/assets-raw/sprites/units/incite.png and b/core/assets-raw/sprites/units/incite.png differ diff --git a/core/assets-raw/sprites/units/weapons/incite-weapon.png b/core/assets-raw/sprites/units/weapons/incite-weapon.png new file mode 100644 index 0000000000..26d09e9784 Binary files /dev/null and b/core/assets-raw/sprites/units/weapons/incite-weapon.png differ diff --git a/core/assets/icons/icons.properties b/core/assets/icons/icons.properties index 104337ba18..6a5aa83cc5 100755 --- a/core/assets/icons/icons.properties +++ b/core/assets/icons/icons.properties @@ -435,3 +435,4 @@ 63271=core-acropolis|block-core-acropolis-ui 63270=heat-reactor|block-heat-reactor-ui 63269=core-bastion|block-core-bastion-ui +63268=incite|unit-incite-ui diff --git a/core/assets/logicids.dat b/core/assets/logicids.dat index 2f1b489b21..2b25fe8faa 100644 Binary files a/core/assets/logicids.dat and b/core/assets/logicids.dat differ diff --git a/core/src/mindustry/content/Blocks.java b/core/src/mindustry/content/Blocks.java index 71bed3a426..834476ca8b 100644 --- a/core/src/mindustry/content/Blocks.java +++ b/core/src/mindustry/content/Blocks.java @@ -1840,7 +1840,7 @@ public class Blocks implements ContentList{ //TODO cost requirements(Category.effect, with(Items.beryllium, 7000, Items.graphite, 7000, Items.tungsten, 5000, Items.carbide, 5000)); - unitType = UnitTypes.evoke; + unitType = UnitTypes.incite; health = 14000; itemCapacity = 11000; size = 5; diff --git a/core/src/mindustry/content/UnitTypes.java b/core/src/mindustry/content/UnitTypes.java index 1a04d1cee3..1e8707e999 100644 --- a/core/src/mindustry/content/UnitTypes.java +++ b/core/src/mindustry/content/UnitTypes.java @@ -40,7 +40,7 @@ public class UnitTypes implements ContentList{ //air public static @EntityDef({Unitc.class}) UnitType flare, eclipse, horizon, zenith, antumbra, - evoke, incite; //elicit, incite? + evoke; //elicit, incite? //air, legacy public static @EntityDef(value = {Unitc.class}, legacy = true) UnitType mono; @@ -49,7 +49,8 @@ public class UnitTypes implements ContentList{ public static @EntityDef(value = {Unitc.class}, legacy = true) UnitType poly; //air + payload - public static @EntityDef({Unitc.class, Payloadc.class}) UnitType mega; + public static @EntityDef({Unitc.class, Payloadc.class}) UnitType mega, + incite; //air + payload, legacy public static @EntityDef(value = {Unitc.class, Payloadc.class}, legacy = true) UnitType quad; @@ -2330,7 +2331,6 @@ public class UnitTypes implements ContentList{ defaultController = BuilderAI::new; isCounted = false; - lowAltitude = true; flying = true; mineSpeed = 7f; mineTier = 1; @@ -2470,6 +2470,61 @@ public class UnitTypes implements ContentList{ }}); }}; + incite = new UnitType("incite"){{ + defaultController = BuilderAI::new; + isCounted = false; + envDisabled = 0; + + lowAltitude = false; + flying = true; + targetAir = false; + mineSpeed = 8f; + mineTier = 2; + buildSpeed = 1.4f; + drag = 0.06f; + speed = 2.6f; + rotateSpeed = 6f; + accel = 0.11f; + itemCapacity = 70; + health = 600f; + armor = 2f; + hitSize = 18f; + commandLimit = 7; + buildBeamOffset = 10f; + engineSize = 0; + payloadCapacity = Mathf.sqr(2f) * tilePayload; + + setEnginesMirror( + new UnitEngine(34 / 4f, 30 / 4f, 3f, 45f), + new UnitEngine(35 / 4f, -38 / 4f, 3f, 315f) + ); + + weapons.add(new Weapon("incite-weapon"){{ + reload = 35f; + x = 4f; + y = 6.25f; + shootY = 5.75f; + recoil = 2f; + top = false; + layerOffset = -0.01f; + rotate = false; + + bullet = new BasicBulletType(5f, 15){{ + width = 7f; + height = 12f; + shootEffect = Fx.sparkShoot; + smokeEffect = Fx.shootBigSmoke; + pierce = true; + pierceBuilding = true; + hitColor = backColor = trailColor = Pal.bulletYellowBack; + frontColor = Color.white; + trailWidth = 1.5f; + trailLength = 7; + hitEffect = despawnEffect = Fx.hitBulletColor; + }}; + }}); + }}; + //endregion //region internal