Skip to content

Commit

Permalink
DRS renumbering to add space for duel.
Browse files Browse the repository at this point in the history
  • Loading branch information
awgil committed Apr 1, 2024
1 parent 9f852bc commit 3c4bb48
Show file tree
Hide file tree
Showing 48 changed files with 74 additions and 75 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS2Dahu;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3Dahu;

class FallingRock : Components.LocationTargetedAOEs
{
Expand Down Expand Up @@ -31,9 +31,9 @@ class Burn : Components.BaitAwayIcon
}

[ModuleInfo(GroupType = BossModuleInfo.GroupType.CFC, GroupID = 761, NameID = 9751)]
public class DRS2 : BossModule
public class DRS3 : BossModule
{
public DRS2(WorldState ws, Actor primary) : base(ws, primary, new ArenaBoundsCircle(new(82, 138), 30)) { }
public DRS3(WorldState ws, Actor primary) : base(ws, primary, new ArenaBoundsCircle(new(82, 138), 30)) { }

protected override void DrawEnemies(int pcSlot, Actor pc)
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS2Dahu;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3Dahu;

public enum OID : uint
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS2Dahu;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3Dahu;

class DRS2States : StateMachineBuilder
class DRS3States : StateMachineBuilder
{
public DRS2States(BossModule module) : base(module)
public DRS3States(BossModule module) : base(module)
{
DeathPhase(0, SinglePhase);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS2Dahu;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3Dahu;

// these two abilities are very similar, only differ by activation delay and action id
class FeralHowlHystericAssault : Components.Knockback
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS2Dahu;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3Dahu;

class FirebreatheRotating : Components.GenericRotatingAOE
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS2Dahu;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3Dahu;

class Shockwave : Components.GenericAOEs
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS2Dahu;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3Dahu;

class SpitFlame : Components.UniformStackSpread
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3QueensGuard;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS4QueensGuard;

class AboveBoard : Components.GenericAOEs
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3QueensGuard;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS4QueensGuard;

class CoatOfArms : Components.DirectionalParry
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3QueensGuard;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS4QueensGuard;

class OptimalPlaySword : Components.SelfTargetedAOEs
{
Expand Down Expand Up @@ -48,7 +48,7 @@ public Fracture() : base(ActionID.MakeSpell(AID.Fracture)) { }
}

[ModuleInfo(PrimaryActorOID = (uint)OID.Knight, GroupType = BossModuleInfo.GroupType.CFC, GroupID = 761, NameID = 9838)]
public class DRS3 : BossModule
public class DRS4 : BossModule
{
private IReadOnlyList<Actor> _warrior;
private IReadOnlyList<Actor> _soldier;
Expand All @@ -62,7 +62,7 @@ public class DRS3 : BossModule
public IReadOnlyList<Actor> AuraSpheres;
public IReadOnlyList<Actor> SpiritualSpheres;

public DRS3(WorldState ws, Actor primary) : base(ws, primary, new ArenaBoundsCircle(new(244, -162), 25))
public DRS4(WorldState ws, Actor primary) : base(ws, primary, new ArenaBoundsCircle(new(244, -162), 25))
{
_warrior = Enemies(OID.Warrior);
_soldier = Enemies(OID.Soldier);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3QueensGuard;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS4QueensGuard;

public enum OID : uint
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3QueensGuard;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS4QueensGuard;

class DRS3States : StateMachineBuilder
class DRS4States : StateMachineBuilder
{
DRS3 _module;
DRS4 _module;

public DRS3States(DRS3 module) : base(module)
public DRS4States(DRS4 module) : base(module)
{
_module = module;
SimplePhase(0, Phase0, "P0: 4 guards")
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3QueensGuard;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS4QueensGuard;

class GreatBallOfFire : Components.GenericAOEs
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3QueensGuard;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS4QueensGuard;

class OptimalOffensiveSword : Components.ChargeAOEs
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3QueensGuard;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS4QueensGuard;

// TODO: improve hints (check player's class; for healers, hints for party members having incorrect buff)
class SpellforgeSteelstingHint : BossComponent
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS3QueensGuard;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS4QueensGuard;

class WindsOfWeight : Components.GenericAOEs
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS4Phantom;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS5Phantom;

class MaledictionOfAgony : Components.CastCounter
{
Expand All @@ -16,7 +16,7 @@ public MistyWraith() : base((uint)OID.MistyWraith) { }
}

[ModuleInfo(GroupType = BossModuleInfo.GroupType.CFC, GroupID = 761, NameID = 9755)]
public class DRS4 : BossModule
public class DRS5 : BossModule
{
public DRS4(WorldState ws, Actor primary) : base(ws, primary, new ArenaBoundsSquare(new(202, -370), 24)) { }
public DRS5(WorldState ws, Actor primary) : base(ws, primary, new ArenaBoundsSquare(new(202, -370), 24)) { }
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS4Phantom;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS5Phantom;

public enum OID : uint
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS4Phantom;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS5Phantom;

class DRS4States : StateMachineBuilder
class DRS5States : StateMachineBuilder
{
public DRS4States(BossModule module) : base(module)
public DRS5States(BossModule module) : base(module)
{
DeathPhase(0, SinglePhase);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS4Phantom;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS5Phantom;

// TODO: improve hints, currently they are not good... we probably don't need a fully generic implementation, since there are few possible patterns
class Miasma : Components.GenericAOEs
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS5TrinityAvowed;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6TrinityAvowed;

class AllegiantArsenal : Components.GenericAOEs
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS5TrinityAvowed;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6TrinityAvowed;

// note: instead of trying to figure out cone intersections and shit, we use the fact that clones are always positioned on grid and just check each cell
class BladeOfEntropy : TemperatureAOE
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS5TrinityAvowed;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6TrinityAvowed;

// aoe starts at cast and ends with envcontrol; it's not considered 'risky' when paired with quick march
class FlamesOfBozja : Components.GenericAOEs
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS5TrinityAvowed;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6TrinityAvowed;

class WrathOfBozja : Components.CastSharedTankbuster
{
Expand Down Expand Up @@ -32,7 +32,7 @@ class GleamingArrow : Components.SelfTargetedAOEs
}

[ModuleInfo(GroupType = BossModuleInfo.GroupType.CFC, GroupID = 761, NameID = 9853)]
public class DRS5 : BossModule
public class DRS6 : BossModule
{
public DRS5(WorldState ws, Actor primary) : base(ws, primary, new ArenaBoundsSquare(new(-272, -82), 25)) { }
public DRS6(WorldState ws, Actor primary) : base(ws, primary, new ArenaBoundsSquare(new(-272, -82), 25)) { }
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS5TrinityAvowed;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6TrinityAvowed;

public enum OID : uint
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS5TrinityAvowed;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6TrinityAvowed;

class DRS5States : StateMachineBuilder
class DRS6States : StateMachineBuilder
{
public DRS5States(BossModule module) : base(module)
public DRS6States(BossModule module) : base(module)
{
DeathPhase(0, SinglePhase)
.ActivateOnEnter<AllegiantArsenal>();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS5TrinityAvowed;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6TrinityAvowed;

class FreedomOfBozja : TemperatureAOE
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS5TrinityAvowed;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6TrinityAvowed;

abstract class TemperatureAOE : Components.GenericAOEs
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6StygimolochLord;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7StygimolochLord;

class AddPhaseArena : BossComponent
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6StygimolochLord;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7StygimolochLord;

class CrushingHoof : Components.GenericAOEs
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6StygimolochLord;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7StygimolochLord;

class FoeSplitter : Components.Cleave
{
Expand Down Expand Up @@ -37,13 +37,13 @@ public Electrocution() : base(ActionID.MakeSpell(AID.Electrocution), 3) { }

// TODO: ManaFlame component - show reflect hints
[ModuleInfo(GroupType = BossModuleInfo.GroupType.CFC, GroupID = 761, NameID = 9759)]
public class DRS6 : BossModule
public class DRS7 : BossModule
{
private IReadOnlyList<Actor> _monks;
private IReadOnlyList<Actor> _ballsEarth;
private IReadOnlyList<Actor> _ballsFire;

public DRS6(WorldState ws, Actor primary) : base(ws, primary, new ArenaBoundsCircle(new(-416, -184), 35))
public DRS7(WorldState ws, Actor primary) : base(ws, primary, new ArenaBoundsCircle(new(-416, -184), 35))
{
_monks = Enemies(OID.StygimolochMonk);
_ballsEarth = Enemies(OID.BallOfEarth);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6StygimolochLord;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7StygimolochLord;

public enum OID : uint
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6StygimolochLord;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7StygimolochLord;

class DRS6States : StateMachineBuilder
class DRS7States : StateMachineBuilder
{
public DRS6States(BossModule module) : base(module)
public DRS7States(BossModule module) : base(module)
{
SimplePhase(0, PhaseBeforeAdds, "Before adds")
.ActivateOnEnter<RapidBoltsAOE>()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6StygimolochLord;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7StygimolochLord;

class FatefulWords : Components.Knockback
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6StygimolochLord;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7StygimolochLord;

// TODO: generalize to 'baited puddles' component
class RapidBoltsBait : Components.UniformStackSpread
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS6StygimolochLord;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7StygimolochLord;

class ViciousSwipe : Components.Knockback
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7Queen;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS8Queen;

// note: this is exactly the same as queen's guard component
class AboveBoard : Components.GenericAOEs
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7Queen;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS8Queen;

abstract class Chess : Components.GenericAOEs
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7Queen;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS8Queen;

class NorthswainsGlow : Components.SelfTargetedAOEs
{
Expand Down Expand Up @@ -59,7 +59,7 @@ class OptimalPlayCone : Components.SelfTargetedAOEs
}

[ModuleInfo(GroupType = BossModuleInfo.GroupType.CFC, GroupID = 761, NameID = 9863)]
public class DRS7 : BossModule
public class DRS8 : BossModule
{
public DRS7(WorldState ws, Actor primary) : base(ws, primary, new ArenaBoundsCircle(new(-272, -415), 25)) { } // note: initially arena is square, but it quickly changes to circle
public DRS8(WorldState ws, Actor primary) : base(ws, primary, new ArenaBoundsCircle(new(-272, -415), 25)) { } // note: initially arena is square, but it quickly changes to circle
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7Queen;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS8Queen;

public enum OID : uint
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7Queen;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS8Queen;

class DRS7States : StateMachineBuilder
class DRS8States : StateMachineBuilder
{
public DRS7States(BossModule module) : base(module)
public DRS8States(BossModule module) : base(module)
{
SimplePhase(0, Phase1, "P1")
.Raw.Update = () => Module.PrimaryActor.IsDestroyed || Module.PrimaryActor.HP.Cur <= 1 || (Module.PrimaryActor.CastInfo?.IsSpell(AID.GodsSaveTheQueen) ?? false);
Expand Down Expand Up @@ -171,7 +171,6 @@ private void RelentlessPlay2(uint id, float delay)
ComponentCondition<UnluckyLotAetherialSphere>(id + 0x29, 0.5f, comp => comp.NumCasts > 0, "Sphere explosion")
.DeactivateOnExit<UnluckyLotAetherialSphere>();
ActorCastEnd(id + 0x2A, Module.Enemies(OID.QueensSoldier).FirstOrDefault, 1.7f);
ActorCastEnd(id + 0x2A, Module.Enemies(OID.QueensSoldier).FirstOrDefault, 1.7f);

CastMulti(id + 0x30, new[] { AID.JudgmentBladeR, AID.JudgmentBladeL }, 2.2f, 7)
.ActivateOnEnter<JudgmentBlade>()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7Queen;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS8Queen;

class FieryIcyPortent : Components.StayMove
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7Queen;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS8Queen;

class HeavensWrathAOE : Components.SelfTargetedAOEs
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7Queen;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS8Queen;

class JudgmentBlade : Components.GenericAOEs
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7Queen;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS8Queen;

// TODO: show reflect hints, show stay under dome hints
class MaelstromsBolt : Components.CastCounter
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS7Queen;
namespace BossMod.Shadowbringers.Foray.DelubrumReginae.DRS8Queen;

class TurretsTour : Components.GenericAOEs
{
Expand Down
Loading

0 comments on commit 3c4bb48

Please sign in to comment.