Skip to content

Commit ac5c50c

Browse files
committed
aureus stuff
1 parent efb9c15 commit ac5c50c

4 files changed

Lines changed: 104 additions & 31 deletions

File tree

src/exogenesis/content/ExoVanstarBlocks.java

Lines changed: 89 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -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;

src/exogenesis/type/bullet/DestructionBulletType.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import arc.math.geom.Position;
1212
import arc.math.geom.Vec2;
1313
import arc.util.Time;
14+
import exogenesis.type.bullet.vanilla.ExoBasicBulletType;
1415
import exogenesis.util.feature.PositionLightning;
1516
import mindustry.content.Fx;
1617
import mindustry.entities.Damage;
@@ -27,7 +28,7 @@
2728
import static arc.graphics.g2d.Draw.color;
2829
import static arc.math.Angles.randLenVectors;
2930

30-
public class DestructionBulletType extends BasicBulletType{
31+
public class DestructionBulletType extends ExoBasicBulletType {
3132
public float hitSpacing = 10f;
3233
public float size = 30f;
3334
public float linkRange = 240f;

src/exogenesis/type/bullet/FancyLaserBulletType.java

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,23 +5,17 @@
55
import arc.graphics.g2d.Lines;
66
import arc.math.Mathf;
77
import arc.util.Tmp;
8+
import exogenesis.type.bullet.vanilla.ExoLaserBulletType;
89
import mindustry.entities.bullet.LaserBulletType;
910
import mindustry.gen.Bullet;
1011
import mindustry.graphics.Drawf;
1112
import exogenesis.util.feature.PositionLightning;
1213

13-
public class FancyLaserBulletType extends LaserBulletType {
14+
public class FancyLaserBulletType extends ExoLaserBulletType {
1415
public boolean drawLine = false;
1516
public int boltNum = 2;
1617
public float liWidth = PositionLightning.WIDTH - 1f;
1718

18-
public FancyLaserBulletType(float damage){
19-
super(damage);
20-
}
21-
22-
public FancyLaserBulletType(){
23-
this(1f);
24-
}
2519

2620
@Override
2721
public void init(Bullet b){

src/exogenesis/type/bullet/vanilla/ExoPointLaserBulletType.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,23 @@
22

33
import arc.graphics.g2d.Draw;
44
import arc.math.Mathf;
5+
import arc.struct.OrderedMap;
56
import arc.util.Time;
7+
import exogenesis.type.DamageType;
8+
import exogenesis.type.bullet.TypedBulletType;
69
import mindustry.entities.bullet.PointLaserBulletType;
710
import mindustry.gen.Bullet;
811
import mindustry.graphics.Drawf;
912

10-
public class ExoPointLaserBulletType extends PointLaserBulletType{
13+
public class ExoPointLaserBulletType extends PointLaserBulletType implements TypedBulletType {
1114
public float laserSize = 1f;
15+
public OrderedMap<DamageType, Float> damageMultiplier = new OrderedMap<>();
16+
17+
@Override
18+
public OrderedMap<DamageType, Float> typedDamageMultipliers() {
19+
return damageMultiplier;
20+
}
21+
1222
@Override
1323
public void draw(Bullet b){
1424
super.draw(b);

0 commit comments

Comments
 (0)