66import exogenesis .entities .part .EffectSpawnPart ;
77import exogenesis .type .bullet .*;
88import exogenesis .type .bullet .vanilla .*;
9+ import exogenesis .world .blocks .ExoIronDome ;
910import exogenesis .world .draw .DrawLoopPart ;
1011import exogenesis .world .meta .ExoEnv ;
12+ import exogenesis .world .power .LightningRod ;
1113import exogenesis .world .turrets .SpeedupTurret ;
1214import exogenesis .graphics .ExoPal ;
1315import arc .util .Tmp ;
3032import mindustry .gen .*;
3133import mindustry .graphics .*;
3234import mindustry .world .*;
35+ import mindustry .world .blocks .defense .BaseShield ;
3336import mindustry .world .blocks .defense .RegenProjector ;
3437import mindustry .world .blocks .defense .Wall ;
3538import mindustry .world .blocks .defense .turrets .*;
4447import mindustry .world .blocks .distribution .*;
4548import mindustry .world .consumers .ConsumeLiquid ;
4649import mindustry .world .draw .*;
50+ import mindustry .world .meta .BuildVisibility ;
4751import mindustry .world .meta .Env ;
4852
4953import static arc .graphics .g2d .Draw .*;
@@ -66,7 +70,7 @@ public class ExoVanstarBlocks{
6670 // Drills
6771 pulsarDrill , pulsarWallDrill , smallWallGrinder , wallGrinder , pulseImpactDrill , quaryDrill ,
6872 // Defence
69- medicusProjector ,
73+ medicusProjector , arielRestrictor , stormGuard ,
7074 //cores
7175 coreBelief , coreHope , coreReliance ,
7276 //walls
@@ -663,7 +667,23 @@ public static void load(){
663667 glowIntensity = 0.2f ;
664668 alpha = 0.7f ;
665669 }},
666- new DrawDefault ()
670+ new DrawDefault (),
671+ new DrawFlame (Color .valueOf ("ffa665" )){{
672+ flameX = 5 ;
673+ flameY = 4 ;
674+ flameRadius = 1.5f ;
675+ }},
676+ new DrawFlame (Color .valueOf ("ffa665" )){{
677+ flameX = 5 ;
678+ flameY = 0 ;
679+ flameRadius = 1.5f ;
680+ }},
681+ new DrawFlame (Color .valueOf ("ffa665" )){{
682+ flameX = 5 ;
683+ flameY = -4 ;
684+ flameRadius = 1.5f ;
685+
686+ }}
667687 );
668688 ambientSound = Sounds .smelter ;
669689 ambientSoundVolume = 0.07f ;
@@ -681,12 +701,32 @@ public static void load(){
681701 size = 3 ;
682702 hasPower = hasItems = true ;
683703 drawer = new DrawMulti (new DrawDefault (),
684- new DrawFlame (Color .valueOf ("ffc099" ))
704+ new DrawFlame (Color .valueOf ("8dde8f" )){{
705+ flameX = 4 ;
706+ flameY = 4 ;
707+ flameRadius = 1.5f ;
708+ }},
709+ new DrawFlame (Color .valueOf ("8dde8f" )){{
710+ flameX = -4 ;
711+ flameY = 4 ;
712+ flameRadius = 1.5f ;
713+ }},
714+ new DrawFlame (Color .valueOf ("8dde8f" )){{
715+ flameX = 4 ;
716+ flameY = -4 ;
717+ flameRadius = 1.5f ;
718+ }},
719+ new DrawFlame (Color .valueOf ("8dde8f" )){{
720+ flameX = -4 ;
721+ flameY = -4 ;
722+ flameRadius = 1.5f ;
723+
724+ }}
685725 );
686726 ambientSound = Sounds .smelter ;
687727 ambientSoundVolume = 0.07f ;
688728
689- consumeItems (with (ExoItems .gold , 1 , ExoItems .cobolt , 3 ));
729+ consumeItems (with (ExoItems .gold , 2 , ExoItems .empyreanPlating , 1 ));
690730 consumePower (0.60f );
691731 }};
692732 osmiumBlastForge = new GenericCrafter ("osmium-blast-forge" ){{
@@ -727,6 +767,44 @@ public static void load(){
727767 consumeItems (with (ExoItems .ferricPowder , 10 , ExoItems .cobolt , 5 , ExoItems .exoSilicon , 3 ));
728768 consumePower (0.60f );
729769 }};
770+ gigavoltForge = new GenericCrafter ("alpha-forge" ){{
771+ requirements (Category .crafting , with (ExoItems .oltuxium , 100 , ExoItems .cobolt , 100 , ExoItems .exoSilicon , 160 , ExoItems .osmium , 180 , ExoItems .iron , 140 ));
772+ craftEffect = ExoFx .empyreanStarHitSmall ;
773+ envEnabled = ExoEnv .stormWorld | Env .terrestrial ;
774+ outputItem = new ItemStack (ExoItems .vanstariumAlloy , 1 );
775+ craftTime = 160f ;
776+ size = 3 ;
777+ hasPower = hasItems = true ;
778+ drawer = new DrawMulti (new DrawDefault (),
779+ new DrawFlame (Color .valueOf ("ffd75d" )),
780+ new DrawFlame (Color .valueOf ("ffd75d" )){{
781+ flameX = 7 ;
782+ flameY = 0 ;
783+ flameRadius = 1.5f ;
784+ }},
785+ new DrawFlame (Color .valueOf ("ffd75d" )){{
786+ flameX = -7 ;
787+ flameY = 0 ;
788+ flameRadius = 1.5f ;
789+ }},
790+ new DrawFlame (Color .valueOf ("ffd75d" )){{
791+ flameX = 0 ;
792+ flameY = 7 ;
793+ flameRadius = 1.5f ;
794+ }},
795+ new DrawFlame (Color .valueOf ("ffd75d" )){{
796+ flameX = 0 ;
797+ flameY = -7 ;
798+ flameRadius = 1.5f ;
799+
800+ }}
801+ );
802+ ambientSound = Sounds .smelter ;
803+ ambientSoundVolume = 0.07f ;
804+
805+ consumeItems (with (ExoItems .magnetite , 3 , ExoItems .oltuxium , 2 , ExoItems .cobolt , 2 , ExoItems .exoSilicon , 1 ));
806+ consumePower (2.60f );
807+ }};
730808 //walls
731809 coboltWall = new Wall ("cobolt-wall" ){{
732810 requirements (Category .defense , with (ExoItems .cobolt , 6 ));
@@ -2139,7 +2217,6 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
21392217 colors = new Color []{ExoPal .empyreanPeridot .cpy ().a (0.3f ), ExoPal .empyreanPeridot , Color .white };
21402218 }};
21412219 }};
2142-
21432220 //tier 3
21442221 /*
21452222 aeon = new PowerTurret("aeon"){{
@@ -3884,6 +3961,24 @@ ExoItems.thermoCore, new BasicBulletType(0f, 1) {{
38843961 consumePower (2.2f );
38853962 }};
38863963 //Defence
3964+ stormGuard = new LightningRod ("storm-guard" ){{
3965+ requirements (Category .effect , with (ExoItems .oltuxium , 65 , ExoItems .cobolt , 80 , ExoItems .litusiumAlloy , 50 ));
3966+ envEnabled = ExoEnv .stormWorld | Env .terrestrial ;
3967+ size = 2 ;
3968+ sides = 8 ;
3969+ shieldRotation = 22.5f ;
3970+ radius = 120 ;
3971+ }};
3972+ arielRestrictor = new ExoIronDome ("ariel-restrictor" ){{
3973+ requirements (Category .effect , with (ExoItems .oltuxium , 65 , ExoItems .cobolt , 80 , ExoItems .peridotite , 50 ));
3974+ envEnabled = ExoEnv .stormWorld | Env .terrestrial ;
3975+ size = 3 ;
3976+ sides = 0 ;
3977+ radius = 68.7f ;
3978+ shieldHealth = 2700f ;
3979+ cooldownBrokenBase = 2.35f ;
3980+ consumePower (25f );
3981+ }};
38873982 medicusProjector = new RegenProjector ("medicus-projector" ){{
38883983 requirements (Category .effect , with (ExoItems .oltuxium , 65 , ExoItems .cobolt , 80 , ExoItems .peridotite , 50 ));
38893984 size = 2 ;
0 commit comments