@@ -6453,30 +6453,16 @@ public void draw(Bullet b){
64536453 mirror = false ;
64546454 moveRot = 360 ;
64556455 under = true ;
6456+ heatProgress = PartProgress .time .loop (200 ).add (-0.2f ).add (p -> Mathf .sin (9f , 0.2f ));
64566457 progress = PartProgress .time .loop (330f );
64576458 outlineLayerOffset = 0.02f ;
6458- children .add (
6459- new RegionPart ("-glow" ) {{
6460- mirror = false ;
6461- color = colorTo = Pal .heal ;
6462- blending = Blending .additive ;
6463- outline = false ;
6464- progress = PartProgress .time .loop (200 ).add (-0.2f ).add (p -> Mathf .sin (9f , 0.2f ));
6465- }});
64666459 layer = Layer .flyingUnit -0.04f ;
64676460 }},
64686461 new RegionPart ("-body2" ){{
64696462 mirror = false ;
64706463 moveRot = -360 ;
64716464 under = true ;
6472- children .add (
6473- new RegionPart ("-glow" ) {{
6474- mirror = false ;
6475- color = colorTo = Pal .heal ;
6476- blending = Blending .additive ;
6477- outline = false ;
6478- progress = PartProgress .time .loop (200 ).add (-0.2f ).add (p -> Mathf .sin (9f , 0.2f ));
6479- }});
6465+ heatProgress = PartProgress .time .loop (200 ).add (-0.2f ).add (p -> Mathf .sin (9f , 0.2f ));
64806466 progress = PartProgress .time .loop (280f );
64816467 outlineLayerOffset = 0.02f ;
64826468 layer = Layer .flyingUnit -0.03f ;
@@ -6485,14 +6471,7 @@ public void draw(Bullet b){
64856471 mirror = false ;
64866472 moveRot = 360 ;
64876473 under = true ;
6488- children .add (
6489- new RegionPart ("-glow" ) {{
6490- mirror = false ;
6491- color = colorTo = Pal .heal ;
6492- blending = Blending .additive ;
6493- outline = false ;
6494- progress = PartProgress .time .loop (200 ).add (-0.2f ).add (p -> Mathf .sin (9f , 0.2f ));
6495- }});
6474+ heatProgress = PartProgress .time .loop (200 ).add (-0.2f ).add (p -> Mathf .sin (9f , 0.2f ));
64966475 progress = PartProgress .time .loop (280f );
64976476 outlineLayerOffset = 0.02f ;
64986477 layer = Layer .flyingUnit -0.03f ;
@@ -6501,37 +6480,140 @@ public void draw(Bullet b){
65016480 mirror = false ;
65026481 moveRot = 360 ;
65036482 under = true ;
6504- children .add (
6505- new RegionPart ("entena-glow" ) {{
6506- mirror = false ;
6507- color = colorTo = Pal .heal ;
6508- blending = Blending .additive ;
6509- outline = false ;
6510- progress = PartProgress .time .loop (200 ).add (-0.2f ).add (p -> Mathf .sin (9f , 0.2f ));
6511- }});
6483+ heatProgress = PartProgress .time .loop (200 ).add (-0.2f ).add (p -> Mathf .sin (9f , 0.2f ));
65126484 outlineLayerOffset = 0.01f ;
65136485 layer = Layer .flyingUnit -0.02f ;
65146486 progress = PartProgress .time .loop (320f );
65156487 }},
65166488 new RegionPart ("-rotator" ){{
65176489 mirror = false ;
65186490 moveRot = -360 ;
6519-
65206491 under = true ;
6521- children .add (
6522- new RegionPart ("-glow" ) {{
6523- mirror = false ;
6524- color = colorTo = Pal .heal ;
6525- blending = Blending .additive ;
6526- outline = false ;
6527- progress = PartProgress .time .loop (200 ).add (-0.2f ).add (p -> Mathf .sin (9f , 0.2f ));
6528- }});
6492+ heatProgress = PartProgress .time .loop (200 ).add (-0.2f ).add (p -> Mathf .sin (9f , 0.2f ));
65296493 outlineLayerOffset = 0.01f ;
65306494 layer = Layer .flyingUnit -0.02f ;
65316495 progress = PartProgress .time .loop (250f );
65326496 }}
65336497
65346498 );
6499+ weapons .add (new Weapon ("exogenesis-helios-orbital-weapon" ) {{
6500+ top = false ;
6501+ x = 0f ;
6502+ y = 0f ;
6503+ rotate = true ;
6504+ mirror = false ;
6505+ rotateSpeed = 0.3f ;
6506+ shootY = 0f ;
6507+ shootStatus = StatusEffects .burning ;
6508+ shootStatusDuration = 2 ;
6509+ shake = 2f ;
6510+ reload = 170 ;
6511+ continuous = true ;
6512+ alwaysContinuous = true ;
6513+ shootSound = Sounds .laserbeam ;
6514+ parts .addAll (
6515+ new RegionPart ("-bit1" ){{
6516+ mirror = true ;
6517+ moveRot = -360 ;
6518+ rotation = -90 ;
6519+ under = false ;
6520+ progress = PartProgress .time .loop (100f );
6521+ layer = Layer .flyingUnit -1 ;
6522+
6523+ }},
6524+ new RegionPart ("-bit1" ){{
6525+ mirror = true ;
6526+ moveRot = 360 ;
6527+ under = false ;
6528+ progress = PartProgress .time .loop (100f );
6529+ layer = Layer .flyingUnit -1 ;
6530+
6531+ }}
6532+ );
6533+ bullet = new ExoPointLaserBulletType (){{
6534+ hitColor = trailColor = Pal .heal ;
6535+ color = Pal .heal ;
6536+ laserSize = 3 ;
6537+ lifetime = 45 ;
6538+ maxRange = 100f ;
6539+ splashDamageRadius = 60 ;
6540+ splashDamage = 10 ;
6541+ beamEffectInterval = 2 ;
6542+ beamEffect = new MultiEffect (
6543+ new ParticleEffect (){{
6544+ particles = 1 ;
6545+ length = 36 ;
6546+ lifetime = 80 ;
6547+ interp = Interp .circleOut ;
6548+ sizeInterp = Interp .pow5In ;
6549+ layer = 99 ;
6550+ sizeFrom = 7 ;
6551+ sizeTo = 1 ;
6552+ colorFrom = Pal .gray ;
6553+ colorTo = Pal .gray .a (0.75f );
6554+ }},
6555+ new ParticleEffect (){{
6556+ particles = 2 ;
6557+ length = 50 ;
6558+ lifetime = 60 ;
6559+ interp = Interp .circleOut ;
6560+ sizeInterp = Interp .pow5In ;
6561+ sizeFrom = 4 ;
6562+ sizeTo = 1 ;
6563+ layer = 99 ;
6564+ colorFrom = Pal .lightishGray ;
6565+ colorTo = Pal .gray .a (0.4f );
6566+ }},
6567+ new ParticleEffect (){{
6568+ particles = 2 ;
6569+ length = 44 ;
6570+ lifetime = 47 ;
6571+ interp = Interp .circleOut ;
6572+ sizeInterp = Interp .pow5In ;
6573+ layer = 99 ;
6574+ sizeFrom = 5 ;
6575+ sizeTo = 1 ;
6576+ colorFrom = Pal .lightishGray ;
6577+ colorTo = Pal .gray .a (0.4f );
6578+ }},
6579+ ExoFx .randLifeSparkCone ,
6580+ //other
6581+ new ParticleEffect (){{
6582+ particles = 2 ;
6583+ length = 50 ;
6584+ lifetime = 22 ;
6585+ interp = Interp .circleOut ;
6586+ sizeFrom = 3 ;
6587+ sizeTo = 0.5f ;
6588+ lightColor = Pal .heal ;
6589+ colorFrom = Color .white ;
6590+ colorTo = Pal .heal ;
6591+ }}
6592+ );
6593+ incendChance = 0.5f ;
6594+ incendAmount = 10 ;
6595+ incendSpread = 6 ;
6596+ shake = 1.7f ;
6597+ oscMag = 0.1f ;
6598+ trailWidth = 5 ;
6599+ trailLength = 8 ;
6600+ hitSize = 15 ;
6601+ intervalBullets = 5 ;
6602+ bulletInterval = 15 ;
6603+ intervalBullet = new LightningBulletType (){{
6604+ lightningColor = hitColor = Pal .heal ;
6605+ damage = 14f ;
6606+ lightningLength = 7 ;
6607+ lightningLengthRand = 17 ;
6608+ }};
6609+
6610+ buildingDamageMultiplier = 2.5f ;
6611+ damage = 55 ;
6612+ hitEffect = ExoFx .randLifeSparkExo1 ;
6613+ smokeEffect = Fx .colorSparkBig ;
6614+ }};
6615+ }});
6616+ /*
65356617 weapons.add(new Weapon("exogenesis-helios-orbital-weapon") {{
65366618 top = false;
65376619 y = 0f;
@@ -6610,6 +6692,7 @@ public void draw(Bullet b){
66106692 despawnEffect = hitEffect = new MultiEffect(ExoFx.odinNukeStar, ExoFx.heliosNukeExplosion, ExoFx.odinNukeShockWave, Fx.massiveExplosion);
66116693 }};
66126694 }});
6695+ */
66136696 }};
66146697
66156698 notodoris = new UnitType ("notodoris" ) {{
0 commit comments