@@ -970,6 +970,9 @@ public static void load(){
970970 shootType = new ExoPointLaserBulletType (){{
971971 hitColor = trailColor = ExoPal .empyreanIndigo ;
972972 color = ExoPal .empyreanIndigo ;
973+ addDamageMultiplier (
974+ ExoDamageTypes .pierce , 1f
975+ );
973976 laserSize = 1 ;
974977 sprite = "exogenesis-focal-point-laser" ;
975978 beamEffect = Fx .none ;
@@ -1230,6 +1233,9 @@ public static void load(){
12301233 shootType = new ExoPointLaserBulletType (){{
12311234 hitColor = trailColor = ExoPal .empyreanIndigo ;
12321235 color = Color .white ;
1236+ addDamageMultiplier (
1237+ ExoDamageTypes .pierce , 1f
1238+ );
12331239 sprite = "exogenesis-prism-laser" ;
12341240 beamEffect = ExoFx .hitMeltColor ;
12351241 oscMag = 0.1f ;
@@ -1287,15 +1293,15 @@ ExoItems.iron, new BasicBulletType(0f, 0) {{
12871293 spawnUnit = new MissileUnitType ("glory-ironhead-missile" ) {{
12881294 speed = 5.6f ;
12891295 maxRange = 16f ;
1290- lifetime = 140f ;
1296+ lifetime = 130f ;
12911297 outlineColor = ExoPal .empyreanOutline ;
12921298 engineColor = trailColor = Pal .lightishOrange ;
12931299 engineLayer = Layer .effect ;
12941300 engineSize = 3.4f ;
12951301 engineOffset = 12f ;
1296- rotateSpeed = 0.65f ;
1302+ rotateSpeed = 0.45f ;
12971303 trailLength = 8 ;
1298- missileAccelTime = 30f ;
1304+ missileAccelTime = 50f ;
12991305 lowAltitude = false ;
13001306
13011307 deathSound = Sounds .explosion ;
@@ -1323,7 +1329,7 @@ ExoItems.iron, new BasicBulletType(0f, 0) {{
13231329 knockback = 60 ;
13241330 collidesAir = true ;
13251331 splashDamage = 150 ;
1326- splashDamageRadius = 10 ;
1332+ splashDamageRadius = 20 ;
13271333 buildingDamageMultiplier = 0.3f ;
13281334
13291335 ammoMultiplier = 1f ;
@@ -1432,13 +1438,13 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
14321438 spawnUnit = new MissileUnitType ("glory-slowdown-missile" ) {{
14331439 speed = 7.6f ;
14341440 maxRange = 16f ;
1435- lifetime = 140f ;
1441+ lifetime = 110f ;
14361442 outlineColor = ExoPal .empyreanOutline ;
14371443 engineColor = trailColor = ExoPal .empyreanPeridot ;
14381444 engineLayer = Layer .effect ;
14391445 engineSize = 3.1f ;
14401446 engineOffset = 12f ;
1441- rotateSpeed = 2.35f ;
1447+ rotateSpeed = 2.75f ;
14421448 trailLength = 8 ;
14431449 missileAccelTime = 20f ;
14441450 lowAltitude = false ;
@@ -1474,7 +1480,8 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
14741480
14751481 ammoMultiplier = 1f ;
14761482 fragLifeMin = 1f ;
1477- fragBullets = 6 ;
1483+ fragVelocityMin = 1 ;
1484+ fragBullets = 8 ;
14781485 fragRandomSpread = 0 ;
14791486 fragSpread = 60 ;
14801487 fragBullet = new ExoBasicBulletType (6 , 10 ){{
@@ -1749,9 +1756,13 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
17491756 }}
17501757 );
17511758 }};
1752- shootType = new ArtilleryBulletType (){{
1759+ shootType = new ExoArtilleryBulletType (){{
17531760 hitEffect = new MultiEffect (Fx .titanExplosion , ExoFx .empyreanExplosion , Fx .flakExplosionBig );
17541761 despawnEffect = Fx .none ;
1762+ addDamageMultiplier (
1763+ explosive , 0.8f ,
1764+ energy , 0.2f
1765+ );
17551766 speed = 4.5f ;
17561767 damage = 50 ;
17571768 sprite = "shell" ;
@@ -1905,7 +1916,7 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
19051916 coolant = consume (new ConsumeLiquid (ExoLiquids .ichorium , 0.45f ));
19061917 consumePower (27f );
19071918 drawer = new DrawTurret ("elecian-" );
1908- shootType = new BasicBulletType (0f , 1 ){{
1919+ shootType = new BasicBulletType (0f , 0 ){{
19091920 shootEffect = Fx .shootBig ;
19101921 hitColor = ExoPal .empyrean ;
19111922 smokeEffect = Fx .shootSmokeMissile ;
@@ -1935,8 +1946,13 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
19351946 deathExplosionEffect = shootEffect ;
19361947 shootOnDeath = true ;
19371948 shake = 2f ;
1938- bullet = new ExplosionBulletType ( 35f , 45f ){{
1949+ bullet = new ExoExplosionBulletType ( ){{
19391950 hitColor = ExoPal .empyrean ;
1951+ splashDamage = 35 ;
1952+ splashDamageRadius = 45 ;
1953+ addDamageMultiplier (
1954+ explosive , 1f
1955+ );
19401956 shootEffect = new MultiEffect (ExoFx .coloredHitLarge , ExoFx .colorBombSmall );
19411957 collidesGround = true ;
19421958 collidesTiles = false ;
@@ -1987,6 +2003,10 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
19872003 shootType = new ArrowBulletType (12f , 155 ){{
19882004 lifetime = 49f ;
19892005 collidesGround = collidesTiles = false ;
2006+ addDamageMultiplier (
2007+ ExoDamageTypes .pierce , 0.5f ,
2008+ kinetic , 0.5f
2009+ );
19902010 width = 6 ;
19912011 height = 16 ;
19922012 drag = -0.02f ;
@@ -2031,7 +2051,7 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
20312051 randomEffectRot = 6f ;
20322052 effectChance = 0.1f ;
20332053 }},
2034- new RegionPart ("-plate-side " ){{
2054+ new RegionPart ("-plates-sides " ){{
20352055 progress = PartProgress .recoil .curve (Interp .bounceIn );
20362056 moves .add (new PartMove (PartProgress .smoothReload , 0f , -5f , 0f ));
20372057 mirror = true ;
@@ -2051,7 +2071,11 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
20512071 );
20522072 }};
20532073 shootType = new FancyLaserBulletType (){{
2054- damage = 275f ;
2074+ damage = 175f ;
2075+ addDamageMultiplier (
2076+ radiation , 0.3f ,
2077+ energy , 0.7f
2078+ );
20552079 lifetime = 125 ;
20562080 largeHit = true ;
20572081 boltNum = 5 ;
@@ -2065,16 +2089,25 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
20652089 lightningAngle = 70 ;
20662090 lightningAngleRand = 1 ;
20672091 lightningDelay = 0.8f ;
2068- lightningType = new LaserBulletType (){{
2092+ lightningType = new ExoLaserBulletType (){{
20692093 damage = 45f ;
20702094 sideWidth = 0f ;
20712095 lifetime = 70 ;
2096+ addDamageMultiplier (
2097+ radiation , 0.3f ,
2098+ energy , 0.7f
2099+ );
20722100 lightningSpacing = 35f ;
20732101 lightningLength = 2 ;
20742102 lightningAngleRand = 0f ;
20752103 lightningDelay = 0.8f ;
2076- lightningType = new ExplosionBulletType ( 50f , 65 ){{
2104+ lightningType = new ExoExplosionBulletType ( ){{
20772105 scaledSplashDamage = true ;
2106+ addDamageMultiplier (
2107+ explosive , 1f
2108+ );
2109+ splashDamage = 50 ;
2110+ splashDamageRadius = 65 ;
20782111 hitColor = ExoPal .empyreanPeridot ;
20792112 status = StatusEffects .slow ;
20802113 statusDuration = 100 ;
@@ -2108,6 +2141,7 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
21082141 }};
21092142
21102143 //tier 3
2144+ /*
21112145 aeon = new PowerTurret("aeon"){{
21122146 requirements(Category.turret, with(ExoItems.cobolt, 500, ExoItems.exoSilicon, 200, ExoItems.osmium, 200, ExoItems.vastanium, 200, ExoItems.neodymium, 320, ExoItems.peridotite, 250, ExoItems.vanstariumAlloy, 200, ExoItems.empyreanPlating, 150, ExoItems.litusiumAlloy, 150));
21132147 researchCostMultiplier = 0.7f;
@@ -2186,6 +2220,7 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
21862220 status = StatusEffects.melting;
21872221 }};
21882222 }};
2223+ */
21892224 grandeur = new ContinuousTurret ("grandeur" ){{
21902225 requirements (Category .turret , with (ExoItems .cobolt , 350 , ExoItems .exoSilicon , 280 , ExoItems .osmium , 200 , ExoItems .neodymium , 320 , ExoItems .ameythystGeode , 250 , ExoItems .iron , 170 , ExoItems .empyreanPlating , 200 , ExoItems .litusiumAlloy , 150 , ExoItems .vastanium , 170 , ExoItems .vanstariumAlloy , 180 ));
21912226 researchCostMultiplier = 0.7f ;
@@ -2291,9 +2326,12 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
22912326 }}
22922327 );
22932328 }};
2294- shootType = new ContinuousLaserBulletType (){{
2329+ shootType = new ExoContinuousLaserBulletType (){{
22952330 hitColor = ExoPal .empyreanIndigoDark ;
22962331 damage = 75f ;
2332+ addDamageMultiplier (
2333+ energy , 1f
2334+ );
22972335 length = 670f ;
22982336 hitEffect = new MultiEffect (
22992337 new ParticleEffect (){{
@@ -2430,11 +2468,15 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
24302468 });
24312469 }};
24322470 */
2433- shootType = new BasicBulletType (10f , 137 ){{
2471+ shootType = new ExoBasicBulletType (10f , 137 ){{
24342472 lifetime = 45f ;
24352473 backColor = lightColor = lightningColor = trailColor = hitColor = ExoPal .empyreanblue ;
2474+ addDamageMultiplier (
2475+ kinetic , 0.7f ,
2476+ energy , 0.3f
2477+ );
24362478 impact = true ;
2437- knockback = 17f ;
2479+ knockback = 27f ;
24382480 drag = 0.017f ;
24392481 sprite = "circle-bullet" ;
24402482 hitSize = 12f ;
@@ -2448,8 +2490,11 @@ ExoItems.peridotite, new BasicBulletType(0f, 0) {{
24482490 shrinkY = -2.48f ;
24492491 shrinkInterp = Interp .reverse ;
24502492 pierce = true ;
2451- intervalBullet = new LightningBulletType (){{
2493+ intervalBullet = new ExoLightningBulletType (){{
24522494 damage = 26 ;
2495+ addDamageMultiplier (
2496+ energy , 1f
2497+ );
24532498 lightningColor = ExoPal .empyreanblue ;
24542499 lightningLength = 3 ;
24552500 lightningLengthRand = 7 ;
@@ -3212,6 +3257,10 @@ ExoItems.thermoCore, new BasicBulletType(0f, 1) {{
32123257 }};
32133258 shootType = new DestructionBulletType (1f , 160 ){{
32143259 size /= 2.2f ;
3260+ addDamageMultiplier (
3261+ explosive , 0.3f ,
3262+ energy , 0.7f
3263+ );
32153264 trailWidth = 9.5f ;
32163265 trailLength = 57 ;
32173266 spreadEffect = slopeEffect = Fx .none ;
@@ -3240,8 +3289,11 @@ ExoItems.thermoCore, new BasicBulletType(0f, 1) {{
32403289 homingPower = 0.01f ;
32413290 trailRotation = true ;
32423291 trailInterval = 7f ;
3243- intervalBullet = new LightningBulletType (){{
3292+ intervalBullet = new ExoLightningBulletType (){{
32443293 damage = 25 ;
3294+ addDamageMultiplier (
3295+ energy , 1f
3296+ );
32453297 ammoMultiplier = 1f ;
32463298 lightningColor = ExoPal .empyrean ;
32473299 lightningLength = 5 ;
@@ -3256,8 +3308,12 @@ ExoItems.thermoCore, new BasicBulletType(0f, 1) {{
32563308 fragVelocityMin = 0.4f ;
32573309 fragLifeMin = 0f ;
32583310 fragBullets = 15 ;
3259- fragBullet = new BasicBulletType (4f , 70 ){{
3311+ fragBullet = new ExoBasicBulletType (4f , 70 ){{
32603312 width = height = 1f ;
3313+ addDamageMultiplier (
3314+ explosive , 0.3f ,
3315+ energy , 0.7f
3316+ );
32613317 parts .addAll (
32623318 new FlarePart (){{
32633319 progress = PartProgress .reload ;
@@ -3558,6 +3614,9 @@ ExoItems.thermoCore, new BasicBulletType(0f, 1) {{
35583614 shootType = new ExoPointLaserBulletType (){{
35593615 hitColor = trailColor = ExoPal .empyreanPinkDark ;
35603616 color = Color .white ;
3617+ addDamageMultiplier (
3618+ thermal , 1f
3619+ );
35613620 laserSize = 3 ;
35623621 lifetime = 45 ;
35633622 beamEffectInterval = 2 ;
@@ -3714,6 +3773,10 @@ ExoItems.thermoCore, new BasicBulletType(0f, 1) {{
37143773 }};
37153774 shootType = new FancyLaserBulletType (){{
37163775 damage = 275f ;
3776+ addDamageMultiplier (
3777+ graviton , 0.9f ,
3778+ energy , 0.1f
3779+ );
37173780 chargeEffect = ExoChargeFx .demiurgeCharge ;
37183781 lifetime = 45 ;
37193782 sideWidth = 0f ;
@@ -3774,10 +3837,14 @@ ExoItems.thermoCore, new BasicBulletType(0f, 1) {{
37743837 );
37753838 }
37763839 }};
3777- shootType = new BasicBulletType (19 , 370 ){{
3840+ shootType = new ExoBasicBulletType (19 , 370 ){{
37783841 lifetime = 20f ;
37793842 splashDamageRadius = 40 ;
37803843 splashDamage = 60 ;
3844+ addDamageMultiplier (
3845+ explosive , 0.3f ,
3846+ energy , 0.7f
3847+ );
37813848 status = StatusEffects .unmoving ;
37823849 statusDuration = 1 ;
37833850 width = 14 ;
@@ -3802,6 +3869,7 @@ ExoItems.thermoCore, new BasicBulletType(0f, 1) {{
38023869 hitEffect = new MultiEffect (ExoFx .empyreanStarHitLarge , ExoFx .empyreanExplosionSplash , Fx .flakExplosionBig );
38033870 }};
38043871 }};
3872+ //Units
38053873 empyreanFactory = new UnitFactory ("empyrean-factory" ){{
38063874 researchCostMultiplier = 0.5f ;
38073875 envEnabled = ExoEnv .stormWorld | Env .terrestrial ;
0 commit comments