Skip to content

Commit

Permalink
Merge pull request #534 from FFXIV-CombatReborn/mergeWIP
Browse files Browse the repository at this point in the history
some arena tweaks
  • Loading branch information
CarnifexOptimus authored Jan 1, 2025
2 parents 9ed86f2 + ce89f5a commit 7972338
Show file tree
Hide file tree
Showing 6 changed files with 16 additions and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -135,12 +135,13 @@ public D091LindblumZaghnalStates(BossModule module) : base(module)
[ModuleInfo(BossModuleInfo.Maturity.Verified, Contributors = "The Combat Reborn Team (Malediktus)", GroupType = BossModuleInfo.GroupType.CFC, GroupID = 1008, NameID = 13623, SortOrder = 3)]
public class D091LindblumZaghnal(WorldState ws, Actor primary) : BossModule(ws, primary, arena.Center, arena)
{
private static readonly ArenaBoundsComplex arena = new([new Polygon(new(73, 277), 19.5f * CosPI.Pi40th, 40)], [new Rectangle(new(72, 297), 20, 1.1f),
private static readonly ArenaBoundsComplex arena = new([new Polygon(new(73, 277), 19.5f, 64)], [new Rectangle(new(72, 297), 20, 1.1f),
new Rectangle(new(72, 257), 20, 1.05f)]);

protected override void DrawEnemies(int pcSlot, Actor pc)
{
Arena.Actors(Enemies(OID.RawElectrope).Concat([PrimaryActor]));
Arena.Actor(PrimaryActor);
Arena.Actors(Enemies(OID.RawElectrope));
}

protected override void CalculateModuleAIHints(int slot, Actor actor, PartyRolesConfig.Assignment assignment, AIHints hints)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -84,18 +84,17 @@ private void SetArena(ArenaBoundsComplex bounds)
class Soulweave(BossModule module) : Components.GenericAOEs(module)
{
private static readonly AOEShapeDonut donut = new(28, 32);
private readonly List<AOEInstance> _aoes = [];
private readonly List<AOEInstance> _aoes = new(10);

public override IEnumerable<AOEInstance> ActiveAOEs(int slot, Actor actor)
{
var count = _aoes.Count;
if (count > 0)
if (count == 0)
yield break;
for (var i = 0; i < count; ++i)
{
for (var i = 0; i < count; ++i)
{
var aoe = _aoes[i];
yield return (aoe.Activation - _aoes[0].Activation).TotalSeconds <= 1.2 ? aoe with { Color = Colors.Danger } : aoe with { Risky = false };
}
var aoe = _aoes[i];
yield return (aoe.Activation - _aoes[0].Activation).TotalSeconds <= 1.2 ? aoe with { Color = Colors.Danger } : aoe with { Risky = false };
}
}

Expand Down Expand Up @@ -172,7 +171,7 @@ public D092OverseerKanilokkaStates(BossModule module) : base(module)
[ModuleInfo(BossModuleInfo.Maturity.Verified, Contributors = "The Combat Reborn Team (Malediktus)", GroupType = BossModuleInfo.GroupType.CFC, GroupID = 1008, NameID = 13634, SortOrder = 6)]
public class D092OverseerKanilokka(WorldState ws, Actor primary) : BossModule(ws, primary, StartingBounds.Center, StartingBounds)
{
private const int Edges = 60;
private const int Edges = 64;
public static readonly WPos ArenaCenter = new(116, -66);
public static readonly Polygon[] StartingPolygon = [new Polygon(ArenaCenter, 19.5f * CosPI.Pi60th, Edges)];
public static readonly Polygon[] TinyPolygon = [new Polygon(ArenaCenter, 5, Edges)];
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ public override void OnEventCast(Actor caster, ActorCastEvent spell)

class BoulderDance(BossModule module) : Components.GenericAOEs(module)
{
private readonly List<AOEInstance> _aoes = new(4);
private readonly List<AOEInstance> _aoes = new(6);
private static readonly AOEShapeCircle circle = new(7);

public override IEnumerable<AOEInstance> ActiveAOEs(int slot, Actor actor) => _aoes;
Expand Down Expand Up @@ -273,7 +273,7 @@ public D093LunipyatiStates(BossModule module) : base(module)
[ModuleInfo(BossModuleInfo.Maturity.Verified, Contributors = "The Combat Reborn Team (Malediktus)", GroupType = BossModuleInfo.GroupType.CFC, GroupID = 1008, NameID = 13610, SortOrder = 9)]
public class D093Lunipyati(WorldState ws, Actor primary) : BossModule(ws, primary, startingBounds.Center, startingBounds)
{
private const int Edges = 60;
private const int Edges = 64;
public static readonly WPos ArenaCenter = new(34, -710);
private static readonly WPos[] vertices = [new(34.15f, -738.36f), new(36.85f, -737.85f), new(39.44f, -736.92f), new(40.84f, -736.68f), new(41.75f, -736.22f),
new(42.39f, -735.99f), new(43.04f, -735.95f), new(43.74f, -735.84f), new(44.86f, -735.3f), new(46.17f, -735.07f),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@ public class M03SBruteBomber(WorldState ws, Actor primary) : BossModule(ws, prim
{
private static readonly WPos arenaCenter = new(100, 100);
public static readonly ArenaBoundsSquare DefaultBounds = new(15);
public static readonly ArenaBoundsComplex FuseFieldBounds = new([new Square(arenaCenter, 15)], [new Polygon(arenaCenter, 5, 60)]);
public static readonly ArenaBoundsComplex FuseFieldBounds = new([new Square(arenaCenter, 15)], [new Polygon(arenaCenter, 5, 80)]);
}
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ public class M04SWickedThunder(WorldState ws, Actor primary) : BossModule(ws, pr
public static readonly ArenaBoundsRect IonClusterBounds = new(5, 20);
public static readonly ArenaBoundsRect P2DefaultBounds = new(20, 15);
public static readonly ArenaBoundsComplex TransitionBounds = new([new Square(P1DefaultCenter, 20), new Rectangle(P2Center, 20, 15)]);
public static readonly ArenaBoundsCircle P2CircleBounds = new(15);
public static readonly ArenaBoundsCustom P2TowersBounds = new(20, P2DefaultBounds.Clipper.Union(new((ReadOnlySpan<WDir>)CurveApprox.Rect(new WDir(+15, 0), new(0, 1), 5, 15)), new((ReadOnlySpan<WDir>)CurveApprox.Rect(new WDir(-15, 0), new(0, 1), 5, 15))));
public static readonly ArenaBoundsComplex P2CircleBounds = new([new Polygon(P2Center, 15, 50, 3.6f.Degrees())]);
public static readonly ArenaBoundsComplex P2TowersBounds = new([new Rectangle(new(115, 100), 5, 15), new Rectangle(new(85, 100), 5, 15)]);

public Actor? BossP1() => PrimaryActor.IsDestroyed ? null : PrimaryActor;
public Actor? BossP2() => _bossP2;
Expand Down
2 changes: 1 addition & 1 deletion BossMod/Modules/Dawntrail/Unreal/Un1Byakko/Intermission.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ public override void OnActorEAnim(Actor actor, uint state)
}
}

class IntermissionOrbAratama(BossModule module) : Components.GenericAOEs(module, ActionID.MakeSpell(AID.IntermissionOrbAratama), "GTFO from puddle!")
class IntermissionOrbAratama(BossModule module) : Components.GenericAOEs(module, ActionID.MakeSpell(AID.IntermissionOrbAratama))
{
public readonly List<AOEInstance> AOEs = [];

Expand Down

0 comments on commit 7972338

Please sign in to comment.