Skip to content

Commit 335d3af

Browse files
committed
2 parents 222d71b + 506984a commit 335d3af

File tree

3 files changed

+67
-4
lines changed

3 files changed

+67
-4
lines changed

Presets/Dawntrail/Raids/The Arcadion 12 Savage Phase 2.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,18 @@ Version 4 should have tether fixed and now both tethers are highlighted, but sti
2222
> [!Warning]
2323
>
2424
> Configuration required. You may reconfigure this script for ANY strat, however, it's not easy.
25+
> Supports only strats that autoresolve near/far (such as banana codex)
2526
2627
```
2728
https://github.com/PunishXIV/Splatoon/raw/refs/heads/main/SplatoonScripts/Duties/Dawntrail/M12S%20P2%20Clones%202.cs
2829
```
2930

30-
# 3
31+
# 3 Blood Mana
32+
33+
Will highlight which orbs have to be picked. There are million strats, so it will not resolve which one exactly is for you or if you are alpha/beta. You can add extra conditional elements for that, if you want.
34+
```
35+
~Lv2~{"Name":"M12S P2 Mana highlighter","Group":"M12S P2","ZoneLockH":[1327],"DCond":5,"UseTriggers":true,"Freezing":true,"FreezeFor":10.0,"Triggers":[{"Type":2,"Duration":1.0,"Match":"ActionEffect|46333","MatchDelay":1.0}],"ElementsL":[{"Name":"AOE close 1","type":1,"refActorDataID":19206,"refActorComparisonType":3,"onlyVisible":true,"LimitDistance":true,"DistanceSourceX":110.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"Conditional":true,"ConditionalReset":true,"Nodraw":true},{"Name":"AOE far 1","type":1,"offY":3.0,"radius":4.0,"Filled":false,"fillIntensity":0.5,"overlayVOffset":2.0,"overlayText":"Pick me!","refActorDataID":19206,"refActorComparisonType":3,"includeRotation":true,"onlyVisible":true,"tether":true,"LimitDistance":true,"LimitDistanceInvert":true,"DistanceSourceX":110.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"RotationOverride":true,"RotationOverridePoint":{"X":90.0,"Y":100.0}},{"Name":"Donut close 1","type":1,"refActorDataID":19207,"refActorComparisonType":3,"onlyVisible":true,"LimitDistance":true,"DistanceSourceX":110.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"Conditional":true,"ConditionalReset":true,"Nodraw":true},{"Name":"Donut far 1","type":1,"offY":3.0,"radius":4.0,"Filled":false,"fillIntensity":0.5,"overlayVOffset":2.0,"overlayText":"Pick me!","refActorDataID":19207,"refActorComparisonType":3,"includeRotation":true,"onlyVisible":true,"tether":true,"LimitDistance":true,"LimitDistanceInvert":true,"DistanceSourceX":110.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"RotationOverride":true,"RotationOverridePoint":{"X":90.0,"Y":100.0}},{"Name":"Blue fan close 1","type":1,"refActorDataID":19208,"refActorComparisonType":3,"onlyVisible":true,"LimitDistance":true,"DistanceSourceX":110.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"Conditional":true,"ConditionalReset":true,"Nodraw":true},{"Name":"Blue fan far 1","type":1,"offY":3.0,"radius":4.0,"Filled":false,"fillIntensity":0.5,"overlayVOffset":2.0,"overlayText":"Pick me!","refActorDataID":19208,"refActorComparisonType":3,"includeRotation":true,"onlyVisible":true,"tether":true,"LimitDistance":true,"LimitDistanceInvert":true,"DistanceSourceX":110.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"RotationOverride":true,"RotationOverridePoint":{"X":90.0,"Y":100.0}},{"Name":"red fan close 1","type":1,"refActorDataID":19209,"refActorComparisonType":3,"onlyVisible":true,"LimitDistance":true,"DistanceSourceX":110.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"Conditional":true,"ConditionalReset":true,"Nodraw":true},{"Name":"red fan far 1","type":1,"offY":3.0,"radius":4.0,"Filled":false,"fillIntensity":0.5,"overlayVOffset":2.0,"overlayText":"Pick me!","refActorDataID":19209,"refActorComparisonType":3,"includeRotation":true,"onlyVisible":true,"tether":true,"LimitDistance":true,"LimitDistanceInvert":true,"DistanceSourceX":110.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"RotationOverride":true,"RotationOverridePoint":{"X":90.0,"Y":100.0}},{"Name":"","Enabled":false},{"Name":"AOE close 1","type":1,"refActorDataID":19206,"refActorComparisonType":3,"onlyVisible":true,"LimitDistance":true,"DistanceSourceX":90.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"Conditional":true,"ConditionalReset":true,"Nodraw":true},{"Name":"AOE far 1","type":1,"offY":3.0,"radius":4.0,"Filled":false,"fillIntensity":0.5,"overlayVOffset":2.0,"overlayText":"Pick me!","refActorDataID":19206,"refActorComparisonType":3,"includeRotation":true,"onlyVisible":true,"tether":true,"LimitDistance":true,"LimitDistanceInvert":true,"DistanceSourceX":90.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"RotationOverride":true,"RotationOverridePoint":{"X":110.0,"Y":100.0}},{"Name":"Donut close 1","type":1,"refActorDataID":19207,"refActorComparisonType":3,"onlyVisible":true,"LimitDistance":true,"DistanceSourceX":90.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"Conditional":true,"ConditionalReset":true,"Nodraw":true},{"Name":"Donut far 1","type":1,"offY":3.0,"radius":4.0,"Filled":false,"fillIntensity":0.5,"overlayVOffset":2.0,"overlayText":"Pick me!","refActorDataID":19207,"refActorComparisonType":3,"includeRotation":true,"onlyVisible":true,"tether":true,"LimitDistance":true,"LimitDistanceInvert":true,"DistanceSourceX":90.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"RotationOverride":true,"RotationOverridePoint":{"X":110.0,"Y":100.0}},{"Name":"Blue fan close 1","type":1,"refActorDataID":19208,"refActorComparisonType":3,"onlyVisible":true,"LimitDistance":true,"DistanceSourceX":90.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"Conditional":true,"ConditionalReset":true,"Nodraw":true},{"Name":"Blue fan far 1","type":1,"offY":3.0,"radius":4.0,"Filled":false,"fillIntensity":0.5,"overlayVOffset":2.0,"overlayText":"Pick me!","refActorDataID":19208,"refActorComparisonType":3,"includeRotation":true,"onlyVisible":true,"tether":true,"LimitDistance":true,"LimitDistanceInvert":true,"DistanceSourceX":90.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"RotationOverride":true,"RotationOverridePoint":{"X":110.0,"Y":100.0}},{"Name":"red fan close 1","type":1,"refActorDataID":19209,"refActorComparisonType":3,"onlyVisible":true,"LimitDistance":true,"DistanceSourceX":90.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"Conditional":true,"ConditionalReset":true,"Nodraw":true},{"Name":"red fan far 1","type":1,"offY":3.0,"radius":4.0,"Filled":false,"fillIntensity":0.5,"overlayVOffset":2.0,"overlayText":"Pick me!","refActorDataID":19209,"refActorComparisonType":3,"includeRotation":true,"onlyVisible":true,"tether":true,"LimitDistance":true,"LimitDistanceInvert":true,"DistanceSourceX":90.0,"DistanceSourceY":100.0,"DistanceMax":10.0,"RotationOverride":true,"RotationOverridePoint":{"X":110.0,"Y":100.0}}]}
36+
```
3137

3238
Netherworld-far and Netherworld-near
3339
```

SplatoonScripts/Duties/Dawntrail/M11S Majestic Meteor.cs

Lines changed: 58 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ public class M11S_Majestic_Meteor : SplatoonScript
6565
private readonly List<Vector2> _mapEffectPositions = new();
6666

6767
private State _state = State.Idle;
68-
public override Metadata Metadata => new(5, "Garume");
68+
public override Metadata Metadata => new(6, "Garume");
6969
public override HashSet<uint>? ValidTerritories { get; } = [1325];
7070
private Config C => Controller.GetConfig<Config>();
7171

@@ -263,10 +263,45 @@ public override void OnUpdate()
263263
if (_state == State.TowerBait)
264264
{
265265
if (!isLine && !isNoLine) return;
266+
266267
var originalSideIsEast =
267268
_linePlayers.FirstOrDefault(x => x.Item1 == myId).Item2 == Direction.NorthEast ||
268269
_linePlayers.FirstOrDefault(x => x.Item1 == myId).Item2 == Direction.SouthEast;
269270
var same = isEast == originalSideIsEast;
271+
272+
if (C.RealtimeTowerBaitSecond && _gimmicCount == 1)
273+
{
274+
var dir = GetDirectionFromWorld(BasePlayer.Position);
275+
var tower = dir switch
276+
{
277+
Direction.NorthEast => TowerNE(),
278+
Direction.SouthEast => TowerSE(),
279+
Direction.SouthWest => TowerSW(),
280+
_ => TowerNW()
281+
};
282+
283+
var isNorthTower = dir is Direction.NorthEast or Direction.NorthWest;
284+
Vector2 stand;
285+
if (isLine)
286+
{
287+
if (same)
288+
{
289+
var offset = (tower.X > _center.X) ? -_towerStandOff : _towerStandOff;
290+
stand = tower with { X = tower.X + offset };
291+
}
292+
else
293+
{
294+
stand = tower with { Y = tower.Y + (isNorthTower ? _towerStandOff : -_towerStandOff) };
295+
}
296+
}
297+
else
298+
{
299+
stand = tower with { Y = tower.Y + (isNorthTower ? _towerStandOff : -_towerStandOff) };
300+
}
301+
302+
SetGuide(stand);
303+
return;
304+
}
270305

271306
if (C.TetherShouldGoNorth)
272307
{
@@ -554,6 +589,16 @@ private Vector2 MirrorXZ(Vector2 p)
554589
{
555590
return new Vector2(2f * _center.X - p.X, 2f * _center.Y - p.Y);
556591
}
592+
593+
private Direction GetDirectionFromWorld(Vector3 pos)
594+
{
595+
var isEast = pos.X > _center.X;
596+
var isSouth = pos.Z > _center.Y;
597+
if (isEast && !isSouth) return Direction.NorthEast;
598+
if (isEast && isSouth) return Direction.SouthEast;
599+
if (!isEast && isSouth) return Direction.SouthWest;
600+
return Direction.NorthWest;
601+
}
557602

558603
private Direction GetDirectionFromPosition(Vector2 pos)
559604
{
@@ -570,6 +615,17 @@ public override void OnSettingsDraw()
570615
{
571616
ImGuiEx.Text("■ 設定 / Settings");
572617
ImGui.Checkbox("Tether should go North", ref C.TetherShouldGoNorth);
618+
ImGui.Checkbox("2nd TowerBait: Realtime by direction", ref C.RealtimeTowerBaitSecond);
619+
ImGui.SameLine();
620+
ImGuiEx.HelpMarker("""
621+
2回目のTowerBaitのみ
622+
自分が今立っている方角(北東/南東/南西/北西)に応じて、ガイド先の塔をリアルタイムで切り替えます。
623+
1回目のTowerBaitは従来どおり(優先順位)です。
624+
625+
Second TowerBait only
626+
Switches the guided tower in real time based on your current direction (NE/SE/SW/NW).
627+
The first TowerBait remains unchanged (priority).
628+
""");
573629
ImGui.Checkbox("Show Final Tower bait (after Arcadian Crash cast)", ref C.ShowFinalTowerBait);
574630
ImGui.SameLine();
575631
ImGuiEx.HelpMarker("""
@@ -650,6 +706,7 @@ public class Config : IEzConfig
650706
public PriorityData PlayerData = new();
651707
public bool TetherShouldGoNorth;
652708
public bool ShowFinalTowerBait = true;
709+
public bool RealtimeTowerBaitSecond = false;
653710
}
654711

655712

SplatoonScripts/update.csv

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ SplatoonScriptsOfficial.Duties.Dawntrail@M6S_Taste_of_Thunder,1,https://github.c
3030
SplatoonScriptsOfficial.Duties.Dawntrail@R1S_Protean_Highlight,3,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/R1S Protean Highlight.cs
3131
SplatoonScriptsOfficial.Duties.Dawntrail@M9S_Vamp_Stomp,1,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/M9S Vamp Stomp.cs
3232
SplatoonScriptsOfficial.Duties.Dawntrail@M12S_Bloodshed,7,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/M12S Bloodshed.cs
33-
SplatoonScriptsOfficial.Duties.Dawntrail@M11S_Majestic_Meteor,5,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/M11S Majestic Meteor.cs
33+
SplatoonScriptsOfficial.Duties.Dawntrail@M11S_Majestic_Meteor,6,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/M11S Majestic Meteor.cs
3434
SplatoonScriptsOfficial.Duties.Dawntrail@M7S_Scatter_Seeds,1,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/M7S Scatter Seeds.cs
3535
SplatoonScriptsOfficial.Duties.Dawntrail@R2S_Venom_Love_Pair_Split,3,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/R2S Venom Love Pair Split.cs
3636
SplatoonScriptsOfficial.Duties.Dawntrail@R4S_Chain_Lightning,3,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/R4S Chain Lightning.cs
@@ -44,7 +44,7 @@ SplatoonScriptsOfficial.Duties.Dawntrail@M7S_Blow_Seeds,2,https://github.com/Pun
4444
SplatoonScriptsOfficial.Duties.Dawntrail@M12S_P2_Clones_1,1,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/M12S P2 Clones 1.cs
4545
SplatoonScriptsOfficial.Duties.Dawntrail@EX4_Roseblood_4,3,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/EX4 Roseblood 4.cs
4646
SplatoonScriptsOfficial.Duties.Dawntrail@R1S_Multiscript,3,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/R1S Multiscript.cs
47-
SplatoonScriptsOfficial.Duties.Dawntrail@M12S_P2_Clones_2,4,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/M12S P2 Clones 2.cs
47+
SplatoonScriptsOfficial.Duties.Dawntrail@M12S_P2_Clones_2,5,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/M12S P2 Clones 2.cs
4848
SplatoonScriptsOfficial.Duties.Dawntrail@M11S_Weapons,2,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/M11S Weapons.cs
4949
SplatoonScriptsOfficial.Duties.Dawntrail@M5S_Disco_Infernal,2,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/M5S Disco Infernal.cs
5050
SplatoonScriptsOfficial.Duties.Dawntrail@M8S_Lone_Wolfs_Lament,2,https://github.com/PunishXIV/Splatoon/raw/main/SplatoonScripts/Duties/Dawntrail/M8S Lone Wolfs Lament.cs

0 commit comments

Comments
 (0)