From 2bb417dfd3a4162618c8b6a7fddc0ea2cc942a58 Mon Sep 17 00:00:00 2001 From: Anuken Date: Wed, 16 Feb 2022 20:38:12 -0500 Subject: [PATCH] Stell unit --- .../src/main/resources/classids.properties | 1 + .../src/main/resources/revisions/stell/0.json | 1 + .../blocks/units/command-center-team.png | Bin 511 -> 0 bytes .../sprites/blocks/units/command-center.png | Bin 347 -> 0 bytes core/assets-raw/sprites/units/stell-cell.png | Bin 0 -> 303 bytes .../assets-raw/sprites/units/stell-treads.png | Bin 0 -> 271 bytes .../assets-raw/sprites/units/stell-weapon.png | Bin 0 -> 711 bytes core/assets-raw/sprites/units/stell.png | Bin 0 -> 1059 bytes core/assets/icons/icons.properties | 1 + core/assets/logicids.dat | Bin 4207 -> 4190 bytes core/src/mindustry/content/Blocks.java | 8 ++-- core/src/mindustry/content/UnitTypes.java | 42 +++++++++++++++++- .../blocks/defense/turrets/BaseTurret.java | 1 + 13 files changed, 49 insertions(+), 5 deletions(-) create mode 100644 annotations/src/main/resources/revisions/stell/0.json delete mode 100644 core/assets-raw/sprites/blocks/units/command-center-team.png delete mode 100644 core/assets-raw/sprites/blocks/units/command-center.png create mode 100644 core/assets-raw/sprites/units/stell-cell.png create mode 100644 core/assets-raw/sprites/units/stell-treads.png create mode 100644 core/assets-raw/sprites/units/stell-weapon.png create mode 100644 core/assets-raw/sprites/units/stell.png diff --git a/annotations/src/main/resources/classids.properties b/annotations/src/main/resources/classids.properties index 6dd36e7b71..ed0e1deade 100644 --- a/annotations/src/main/resources/classids.properties +++ b/annotations/src/main/resources/classids.properties @@ -39,6 +39,7 @@ quasar=32 risso=20 scuttler=35 spiroct=21 +stell=43 timed=38 timedDef=37 toxopid=33 diff --git a/annotations/src/main/resources/revisions/stell/0.json b/annotations/src/main/resources/revisions/stell/0.json new file mode 100644 index 0000000000..545bb6c8ae --- /dev/null +++ b/annotations/src/main/resources/revisions/stell/0.json @@ -0,0 +1 @@ +{fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]} \ No newline at end of file diff --git a/core/assets-raw/sprites/blocks/units/command-center-team.png b/core/assets-raw/sprites/blocks/units/command-center-team.png deleted file mode 100644 index b9d27f73c97e409300f7a7841c3298d0f4aee854..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 511 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sBugD~Uq{1quc4O2W_978JN-p)SQd&q&uRXFOVmPO$beksLX z2kQ_=UB>LWSA{f<%{CsM@xJ`0j1u?%GZn|&zC5-lYn#&abxn{?vhJqjR#o1F)}ve4 z?&NPjnqdEXZ`S>&V_FlV8$_qAVVq|Az>4Q+!tz9cx3Q}&gnYss-gaLVQr_k>&)_~& zw$BZ#%0o-p_9P!tpQOH~y0PGi;R!BpsRIyPZ#h5y+`+>iPt32Y+%``|FMWe~$@Yj7 z&-q_+ag;}{h+U&*60Oj~dFcsfE^o#?7T-@U^O)9bI3TU?lI=OaNv+DcY=^bI)7CUh zC}(goa-NXaSfJ*?t}#nW;26u*4|@TFZ#jHXe&$Xy(#UC+4r72Q;U#J*w|xkdT!lvI6-A0X`wFc?AtKW-ZyU>i|%I7?A!ws1K-)v%n*=n1O-sFbFdq&tH)O6x`zJ z;uzv_{OwgoK4wJ@)(hu(8>Aon<-d7rmIag7_+6I7eM zINo9RE)UKx%-_Ds88S@z%rb{@6@yy9VYQ@&YZhC&-BW9HOzvo1Q0@!=(!qYB?G;0$ z%w?ttJ(<29$4U;eivQt06`$YxK;__Db@oTIE|)eQF?D~<)g>r*<73yKiw}2tsIsaF zXRu!4n7HNmzQ;cvdOC4#6ZAPbC1$slgJ^?T=>_iT@okEeb=TYhdEV32&t;ucLK6UF CgmJR~ diff --git a/core/assets-raw/sprites/units/stell-cell.png b/core/assets-raw/sprites/units/stell-cell.png new file mode 100644 index 0000000000000000000000000000000000000000..4483672996dd8aae93f3c167b02663d3796bf103 GIT binary patch literal 303 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D$|UV6GXhE&XX zdn1~!$v~j>Ven(W65$R1r}#dIdKG+CX|2$U9<~49J-lWce_`?fs)vCG9K}7EeTHAN z_Pf8ZJz#XARAzQ^Uhe+z>*uolH;QFt|5lz;ReEPqP!;#Cva?M;g?8{9F8(0U6w9{*Z$o7etU0LM)Y*O@<;g%FbTE=tQn7(e<)u`S(*$p#gIYQL0JBP{K8dJnG+eJ8je9t wn)QR>ABSn=O9_yPAdMgmN7w}fC#L-K-l!7ve)8-4KuPx%fk{L`RCt{2nK5n@F&Ks4M!5tM<gi zqfl(YArfhuOo_xT2u1Vv3?D#z*_`fE}jP0H8#cPjkz;PT$$aHpkJDr{0=3ZyB zrTnlQL3IeS0Q!h2Ly!cpiI6G;dH_R26d_OpC?UWOffm50&*NebUb3wiY7bbg>POK= z7xXb8C9pU@%euyv2Sl?#D3TIQ-BZW|z_#R5a3@sXT(2#+I6p)6?785H?vT9*<;ZVR zb||y}PA21#{l1A%SSM_&G}In&G8vCj@&|`+v#!-Q*Hn1`pf+y2+JARHkB6ckkKd1g z=F3hv5PrM-N`F3S0IC0S3JXCIfNT)VmG4`2D3So$gsSBn)pFjePHE^}tZgw9i`RQc z$@(@03)M1RoC0zKr1)Y$}j07FC+Ay5NI3B3H!-nCQr*dfpYnCw0jvcK(Ty?1m! z>c{uOI+I=2Q`KhpYgRy*ySl)<3NKrb3 zqKyraH`F0W4@cL@=awmn>?_b$tgRaTzihtMW(ue$Mi!H7d(41$!eK=`1qr|AvR z@IAlnoj6Y5&w*}bmQqtZxcfgCZVJRlAL z=sqM-o(LJ#EwOkU2#L@Cy5yPLPx&-AP12RCt{2TD?viK@c8LUIK~IX)J|@Adw40QkayH=uoPNN8kw}L}k$-Q3eo> zpg;)^0g@Z8jFd-67pF+p%+1Zr&g`y@BKE7!yE{MMcXNBYdj_besHmu@sIX#ud^#H+ zpUxI(vy2!4E8ZaZ_s6{tQG2h=GGbtu2TJN{!Mrxhh(Tc*lu}w6yaJStgRxpN;Qxp! zz*8si)OeBWU^;C&ZT)`FWc%&?Xa)fA=F7QhF3O1|A*%wogtT^yK%QPNB9?}z0H5{` z*yLh?wSJDUCPHc~DR&H204w=^zsHs$mss!ST#U!{No7ytrHUX5;33albH6q6(iqKW z2@za#fJUCSS;%khZoua5MyFj8L5nBl7=uZG$>jx1E-%bZt>n3D$;LC=d-8QvK=W|l z`kguhbA-7z3uq2B#~4Hbjt&plcXO@?8d0wZR`L=TfJg%63@WFhbXS0sD7Rhxn|Rz$oP0c1%#VcV zBr)9Dne|@2>a^oK$SrR%q)Lc^BQGtRIr7cJeRN--cH-TYBtq=SJAe}*?CCk*G4gXC zgONx+KodcH1TcB(FhD9fn&|fUzGIJnbA8+6cAK-{Aa>2;@E&w2(^M!;lkzmjH z;rfEDM4pRX?7M&jj|lWGO7>bG=R=B_a!i)A4zP&u`B%Ap7WGw%JV3@mNE5+I{`%@{ z#d>-Ze3m2+;CKs2pfk8N8A{v|D>a@bvS}S)O)8bVCzdx});hqOm=(DKj2KxMZtcvxrRTL-MvRJz dii(N~fIn<4otsJ20k{AF002ovPDHLkV1m{b@xTB8 literal 0 HcmV?d00001 diff --git a/core/assets/icons/icons.properties b/core/assets/icons/icons.properties index d99a3ce968..42c465dcf0 100755 --- a/core/assets/icons/icons.properties +++ b/core/assets/icons/icons.properties @@ -543,3 +543,4 @@ 63160=ore-wall-thorium|block-ore-wall-thorium-ui 63159=core-zone|block-core-zone-ui 63158=fabricator|block-fabricator-ui +63157=stell|unit-stell-ui diff --git a/core/assets/logicids.dat b/core/assets/logicids.dat index a503134147da8db85801d76f551aaa266e3e1a76..c913b981062bb2518430d59f729b3405dc369c6a 100644 GIT binary patch delta 35 rcmaE_a8H4W;o(LmU!KkBJdTWvMw?giHZ!uZ7MG;vf delta 52 zcmcbo@Lqw5;n7AWUmkI>q{QOPWZlH#;?&%voYW%S-29Z%oYc*JJWh;^hMOnyHZyLP I=67ZU0Oz_9LjV8( diff --git a/core/src/mindustry/content/Blocks.java b/core/src/mindustry/content/Blocks.java index 8c717ced4b..389038924f 100644 --- a/core/src/mindustry/content/Blocks.java +++ b/core/src/mindustry/content/Blocks.java @@ -2603,7 +2603,7 @@ public class Blocks{ //TODO should this be higher? buildCostMultiplier = 0.75f; - unitCapModifier = 2; + unitCapModifier = 4; researchCostMultiplier = 0.07f; }}; @@ -2617,7 +2617,7 @@ public class Blocks{ thrusterLength = 40/4f; armor = 10f; - unitCapModifier = 4; + unitCapModifier = 6; researchCostMultipliers.put(Items.silicon, 0.4f); researchCostMultiplier = 0.14f; }}; @@ -2633,7 +2633,7 @@ public class Blocks{ thrusterLength = 48/4f; armor = 15f; - unitCapModifier = 6; + unitCapModifier = 8; researchCostMultipliers.put(Items.silicon, 0.3f); researchCostMultiplier = 0.2f; }}; @@ -3603,7 +3603,7 @@ public class Blocks{ requirements(Category.units, with(Items.silicon, 230, Items.oxide, 50, Items.beryllium, 230)); size = 3; configurable = false; - plans.add(new UnitPlan(UnitTypes.dagger, 60f * 60f, with(Items.oxide, 15f, Items.silicon, 50f))); + plans.add(new UnitPlan(UnitTypes.stell, 60f * 60f, with(Items.oxide, 15f, Items.silicon, 50f))); consumePower(2f); }}; diff --git a/core/src/mindustry/content/UnitTypes.java b/core/src/mindustry/content/UnitTypes.java index 537cd8db5a..8ae8068708 100644 --- a/core/src/mindustry/content/UnitTypes.java +++ b/core/src/mindustry/content/UnitTypes.java @@ -73,7 +73,7 @@ public class UnitTypes{ public static @EntityDef({Unitc.class, BuildingTetherc.class, Payloadc.class}) UnitType manifold, assemblyDrone, effectDrone; //tank - public static @EntityDef({Unitc.class, Tankc.class}) UnitType vanquish, conquer; + public static @EntityDef({Unitc.class, Tankc.class}) UnitType stell, vanquish, conquer; //endregion @@ -2422,6 +2422,46 @@ public class UnitTypes{ //endregion //region erekir - tank + stell = new TankUnitType("stell"){{ + hitSize = 11f; + treadPullOffset = 3; + speed = 0.75f; + rotateSpeed = 3.5f; + health = 800; + armor = 5f; + areaDamage = 5f; + treadRects = new Rect[]{new Rect(12, 7, 14, 51)}; + + weapons.add(new Weapon("stell-weapon"){{ + layerOffset = 0.0001f; + reload = 50f; + shootY = 4.5f; + recoil = 1f; + rotate = true; + rotateSpeed = 1.7f; + mirror = false; + x = 0f; + y = -0.75f; + heatColor = Color.valueOf("f9350f"); + cooldownTime = 30f; + + bullet = new BasicBulletType(4f, 40){{ + sprite = "missile-large"; + smokeEffect = Fx.shootBigSmoke; + shootEffect = Fx.shootBigColor; + width = 5f; + height = 7f; + lifetime = 40f; + hitSize = 4f; + hitColor = backColor = trailColor = Color.valueOf("feb380"); + frontColor = Color.white; + trailWidth = 1.7f; + trailLength = 5; + despawnEffect = hitEffect = Fx.hitBulletColor; + }}; + }}); + }}; + vanquish = new TankUnitType("vanquish"){{ hitSize = 28f; treadPullOffset = 4; diff --git a/core/src/mindustry/world/blocks/defense/turrets/BaseTurret.java b/core/src/mindustry/world/blocks/defense/turrets/BaseTurret.java index fce450e8b3..530ea47040 100644 --- a/core/src/mindustry/world/blocks/defense/turrets/BaseTurret.java +++ b/core/src/mindustry/world/blocks/defense/turrets/BaseTurret.java @@ -43,6 +43,7 @@ public class BaseTurret extends Block{ if(coolant != null){ coolant.update = false; coolant.booster = true; + coolant.optional = true; } placeOverlapRange = Math.max(placeOverlapRange, range + placeOverlapMargin);