mirror of
https://github.com/goatcorp/Dalamud.git
synced 2025-12-12 10:17:22 +01:00
Add proper level checking to everything.
This commit is contained in:
parent
4ea27ef1c5
commit
42c325cb4d
2 changed files with 73 additions and 79 deletions
|
|
@ -175,14 +175,11 @@ namespace XIVLauncher.Dalamud
|
|||
[CustomComboInfo("One-button Black Magic", "Replaces Verfire with the following priority: Scorch > Verflare > Dual/Swiftcast Verthunder > Verfire proc > Opener Verthunder > Jolt.", 35)]
|
||||
RedMageBlackMagicFeature = 1 << 47,
|
||||
|
||||
[CustomComboInfo("White Magic AoE", "Replaces Veraero 2 with Impact when Dualcast or Swiftcast are active.", 35)]
|
||||
RedMageWhiteAoECombo = 1 << 48,
|
||||
|
||||
[CustomComboInfo("White Magic AoE", "Replaces Verthunder 2 with Impact when Dualcast or Swiftcast are active.", 35)]
|
||||
RedMageBlackAoECombo = 1 << 49,
|
||||
[CustomComboInfo("Red Mage AoE Combo", "Replaces Veraero/thunder 2 with Impact when Dualcast or Swiftcast are active.", 35)]
|
||||
RedMageAoECombo = 1 << 48,
|
||||
|
||||
[CustomComboInfo("Redoublement combo", "Replaces Redoublement with its combo chain, following enchantment rules.", 35)]
|
||||
RedMageMeleeCombo = 1 << 50
|
||||
RedMageMeleeCombo = 1 << 49
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -110,8 +110,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.DragoonCoerthanTormentCombo)) {
|
||||
if (actionID == 16477) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 86) return 7397;
|
||||
if (lastMove == 7397) return 16477;
|
||||
if (lastMove == 86 && level >= 62) return 7397;
|
||||
if (lastMove == 7397 && level >= 72) return 16477;
|
||||
}
|
||||
return 86;
|
||||
}
|
||||
|
|
@ -122,12 +122,12 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.DragoonChaosThrustCombo)) {
|
||||
if (actionID == 88) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 75 || lastMove == 16479) return 87;
|
||||
if (lastMove == 87) return 88;
|
||||
if ((lastMove == 75 || lastMove == 16479) && level >= 18) return 87;
|
||||
if (lastMove == 87 && level >= 50) return 88;
|
||||
}
|
||||
if (SearchBuffArray(802)) return 3554;
|
||||
if (SearchBuffArray(803)) return 3556;
|
||||
if (SearchBuffArray(1863)) return 16479;
|
||||
if (SearchBuffArray(802) && level >= 56) return 3554;
|
||||
if (SearchBuffArray(803) && level >= 58) return 3556;
|
||||
if (SearchBuffArray(1863) && level >= 76) return 16479;
|
||||
|
||||
return 75;
|
||||
}
|
||||
|
|
@ -138,12 +138,12 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.DragoonFullThrustCombo)) {
|
||||
if (actionID == 84) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 75 || lastMove == 16479) return 78;
|
||||
if (lastMove == 78) return 84;
|
||||
if ((lastMove == 75 || lastMove == 16479) && level >= 4) return 78;
|
||||
if (lastMove == 78 && level >= 26) return 84;
|
||||
}
|
||||
if (SearchBuffArray(802)) return 3554;
|
||||
if (SearchBuffArray(803)) return 3556;
|
||||
if (SearchBuffArray(1863)) return 16479;
|
||||
if (SearchBuffArray(802) && level >= 56) return 3554;
|
||||
if (SearchBuffArray(803) && level >= 58) return 3556;
|
||||
if (SearchBuffArray(1863) && level >= 76) return 16479;
|
||||
|
||||
return 75;
|
||||
}
|
||||
|
|
@ -155,8 +155,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.DarkSouleaterCombo)) {
|
||||
if (actionID == 3632) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 3617) return 3623;
|
||||
if (lastMove == 3623) return 3632;
|
||||
if (lastMove == 3617 && level >= 2) return 3623;
|
||||
if (lastMove == 3623 && level >= 26) return 3632;
|
||||
}
|
||||
|
||||
return 3617;
|
||||
|
|
@ -167,7 +167,7 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.DarkStalwartSoulCombo)) {
|
||||
if (actionID == 16468) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 3621) return 16468;
|
||||
if (lastMove == 3621 && level >= 72) return 16468;
|
||||
}
|
||||
|
||||
return 3621;
|
||||
|
|
@ -180,8 +180,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.PaladinGoringBladeCombo)) {
|
||||
if (actionID == 3538) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 9) return 15;
|
||||
if (lastMove == 15) return 3538;
|
||||
if (lastMove == 9 && level >= 4) return 15;
|
||||
if (lastMove == 15 && level >= 54) return 3538;
|
||||
}
|
||||
|
||||
return 9;
|
||||
|
|
@ -192,8 +192,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.PaladinRoyalAuthorityCombo)) {
|
||||
if (actionID == 3539) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 9) return 15;
|
||||
if (lastMove == 15) return 3539;
|
||||
if (lastMove == 9 && level >= 4) return 15;
|
||||
if (lastMove == 15 && level >= 60) return 3539;
|
||||
}
|
||||
|
||||
return 9;
|
||||
|
|
@ -204,7 +204,7 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.PaladinProminenceCombo)) {
|
||||
if (actionID == 16457) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 7381) return 16457;
|
||||
if (lastMove == 7381 && level >= 40) return 16457;
|
||||
}
|
||||
|
||||
return 7381;
|
||||
|
|
@ -217,8 +217,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.WarriorStormsPathCombo)) {
|
||||
if (actionID == 42) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 31) return 37;
|
||||
if (lastMove == 37) return 42;
|
||||
if (lastMove == 31 && level >= 4) return 37;
|
||||
if (lastMove == 37 && level >= 26) return 42;
|
||||
}
|
||||
|
||||
return 31;
|
||||
|
|
@ -229,8 +229,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.WarriorStormsEyeCombo)) {
|
||||
if (actionID == 45) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 31) return 37;
|
||||
if (lastMove == 37) return 45;
|
||||
if (lastMove == 31 && level >= 4) return 37;
|
||||
if (lastMove == 37 && level >= 50) return 45;
|
||||
}
|
||||
return 31;
|
||||
}
|
||||
|
|
@ -240,7 +240,7 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.WarriorMythrilTempestCombo)) {
|
||||
if (actionID == 16462) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 41) return 16462;
|
||||
if (lastMove == 41 && level >= 40) return 16462;
|
||||
}
|
||||
return 41;
|
||||
}
|
||||
|
|
@ -253,7 +253,7 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (actionID == 7480) {
|
||||
if (SearchBuffArray(1233)) return 7480;
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 7477) return 7480;
|
||||
if (lastMove == 7477 && level >= 50) return 7480;
|
||||
}
|
||||
return 7477;
|
||||
}
|
||||
|
|
@ -264,8 +264,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (actionID == 7481) {
|
||||
if (SearchBuffArray(1233)) return 7481;
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 7477) return 7478;
|
||||
if (lastMove == 7478) return 7481;
|
||||
if (lastMove == 7477 && level >= 4) return 7478;
|
||||
if (lastMove == 7478 && level >= 30) return 7481;
|
||||
}
|
||||
return 7477;
|
||||
}
|
||||
|
|
@ -276,8 +276,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (actionID == 7482) {
|
||||
if (SearchBuffArray(1233)) return 7482;
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 7477) return 7479;
|
||||
if (lastMove == 7479) return 7482;
|
||||
if (lastMove == 7477 && level >= 18) return 7479;
|
||||
if (lastMove == 7479 && level >= 40) return 7482;
|
||||
}
|
||||
return 7477;
|
||||
}
|
||||
|
|
@ -288,7 +288,7 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (actionID == 7484) {
|
||||
if (SearchBuffArray(1233)) return 7484;
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 7483) return 7484;
|
||||
if (lastMove == 7483 && level >= 35) return 7484;
|
||||
}
|
||||
return 7483;
|
||||
}
|
||||
|
|
@ -299,7 +299,7 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (actionID == 7485) {
|
||||
if (SearchBuffArray(1233)) return 7485;
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 7483) return 7485;
|
||||
if (lastMove == 7483 && level >= 45) return 7485;
|
||||
}
|
||||
return 7483;
|
||||
}
|
||||
|
|
@ -311,7 +311,7 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.NinjaShadowFangCombo)) {
|
||||
if (actionID == 2257) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 2240) return 2257;
|
||||
if (lastMove == 2240 && level >= 30) return 2257;
|
||||
}
|
||||
return 2240;
|
||||
}
|
||||
|
|
@ -321,8 +321,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.NinjaArmorCrushCombo)) {
|
||||
if (actionID == 3563) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 2240) return 2242;
|
||||
if (lastMove == 2242) return 3563;
|
||||
if (lastMove == 2240 && level >= 4) return 2242;
|
||||
if (lastMove == 2242 && level >= 54) return 3563;
|
||||
}
|
||||
return 2240;
|
||||
}
|
||||
|
|
@ -332,8 +332,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.NinjaAeolianEdgeCombo)) {
|
||||
if (actionID == 2255) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 2240) return 2242;
|
||||
if (lastMove == 2242) return 2255;
|
||||
if (lastMove == 2240 && level >= 4) return 2242;
|
||||
if (lastMove == 2242 && level >= 26) return 2255;
|
||||
}
|
||||
return 2240;
|
||||
}
|
||||
|
|
@ -343,7 +343,7 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.NinjaHakkeMujinsatsuCombo)) {
|
||||
if (actionID == 16488) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 2254) return 16488;
|
||||
if (lastMove == 2254 && level >= 52) return 16488;
|
||||
}
|
||||
return 2254;
|
||||
}
|
||||
|
|
@ -355,8 +355,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.GunbreakerSolidBarrelCombo)) {
|
||||
if (actionID == 16145) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 16137) return 16139;
|
||||
if (lastMove == 16139) return 16145;
|
||||
if (lastMove == 16137 && level >= 4) return 16139;
|
||||
if (lastMove == 16139 && level >= 26) return 16145;
|
||||
}
|
||||
return 16137;
|
||||
}
|
||||
|
|
@ -377,7 +377,7 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.GunbreakerDemonSlaughterCombo)) {
|
||||
if (actionID == 16149) {
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 16141) return 16149;
|
||||
if (lastMove == 16141 && level >= 40) return 16149;
|
||||
}
|
||||
return 16141;
|
||||
}
|
||||
|
|
@ -392,8 +392,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (actionID == 7413) {
|
||||
if (this.dalamud.ClientState.JobGauges.Get<MCHGauge>().IsOverheated() && level >= 35) return 7410;
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 2866) return 7412;
|
||||
if (lastMove == 2868) return 7413;
|
||||
if (lastMove == 2866 && level >= 2) return 7412;
|
||||
if (lastMove == 2868 && level >= 26) return 7413;
|
||||
}
|
||||
return 7411;
|
||||
}
|
||||
|
|
@ -415,8 +415,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (actionID == 3575) {
|
||||
BLMGauge jobInfo = this.dalamud.ClientState.JobGauges.Get<BLMGauge>();
|
||||
if (jobInfo.IsEnoActive) {
|
||||
if (jobInfo.InUmbralIce()) return 3576;
|
||||
return 3577;
|
||||
if (jobInfo.InUmbralIce() && level >= 58) return 3576;
|
||||
if (level >= 60) return 3577;
|
||||
}
|
||||
return 3575;
|
||||
}
|
||||
|
|
@ -472,7 +472,7 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (gauge.IsPhoenixReady()) return 16516;
|
||||
return 7429;
|
||||
}
|
||||
return 3582;
|
||||
if (level >= 60) return 3582;
|
||||
}
|
||||
else {
|
||||
if (gauge.IsBahamutReady()) return 7427;
|
||||
|
|
@ -579,7 +579,7 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (SearchBuffArray(1815)) return 15992;
|
||||
if (SearchBuffArray(1814)) return 15991;
|
||||
if (comboTime > 0) {
|
||||
if (lastMove == 15989) return 15990;
|
||||
if (lastMove == 15989 && level >= 2) return 15990;
|
||||
}
|
||||
return 15989;
|
||||
}
|
||||
|
|
@ -655,7 +655,7 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (level >= 70) return 7409;
|
||||
return 98;
|
||||
}
|
||||
if (level > 76) return 16495;
|
||||
if (level >= 76) return 16495;
|
||||
return 97;
|
||||
}
|
||||
}
|
||||
|
|
@ -678,9 +678,9 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
else return 74;
|
||||
}
|
||||
else {
|
||||
if (SearchBuffArray(107)) return 74;
|
||||
if (SearchBuffArray(108)) return 61;
|
||||
if (SearchBuffArray(109)) return 56;
|
||||
if (SearchBuffArray(107) && level >= 50) return 74;
|
||||
if (SearchBuffArray(108) && level >= 18) return 61;
|
||||
if (SearchBuffArray(109) && level >= 6) return 56;
|
||||
return 74;
|
||||
}
|
||||
}
|
||||
|
|
@ -702,8 +702,8 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
}
|
||||
else {
|
||||
if (SearchBuffArray(107)) return 53;
|
||||
if (SearchBuffArray(108)) return 54;
|
||||
if (SearchBuffArray(109)) return 66;
|
||||
if (SearchBuffArray(108) && level >= 4) return 54;
|
||||
if (SearchBuffArray(109) && level >= 30) return 66;
|
||||
return 53;
|
||||
}
|
||||
}
|
||||
|
|
@ -728,9 +728,9 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (SearchBuffArray(107)) return 62;
|
||||
if (SearchBuffArray(108)) {
|
||||
if (!SearchBuffArray(101)) return 61;
|
||||
return 16473;
|
||||
if (level >= 45) return 16473;
|
||||
}
|
||||
if (SearchBuffArray(109)) return 70;
|
||||
if (SearchBuffArray(109) && level >= 30) return 70;
|
||||
return 62;
|
||||
}
|
||||
}
|
||||
|
|
@ -743,12 +743,12 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
// Impact is not the first available spell to allow for precast openers.
|
||||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.RedMageWhiteMagicFeature)) {
|
||||
if (actionID == 7511) {
|
||||
if ((lastMove == 7526 || lastMove == 7525) && level == 80) return 16530;
|
||||
if (lastMove == 7529) return 7526;
|
||||
if (SearchBuffArray(1249) || SearchBuffArray(167)) return 7507;
|
||||
if (SearchBuffArray(1235)) return 7511;
|
||||
if ((lastMove == 7526 || lastMove == 7525) && level >= 80) return 16530;
|
||||
if (lastMove == 7529 && level >= 70) return 7526;
|
||||
if ((SearchBuffArray(1249) || SearchBuffArray(167)) && level >= 10) return 7507;
|
||||
if (SearchBuffArray(1235) && level >= 30) return 7511;
|
||||
RDMGauge gauge = this.dalamud.ClientState.JobGauges.Get<RDMGauge>();
|
||||
if (gauge.BlackGauge == 0 && gauge.WhiteGauge == 0) return 7507;
|
||||
if ((gauge.BlackGauge == 0 && gauge.WhiteGauge == 0) && level >= 10) return 7507;
|
||||
if (level >= 62) return 7524;
|
||||
return 7503;
|
||||
}
|
||||
|
|
@ -759,27 +759,24 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
// Impact is not the first available spell to allow for precast openers.
|
||||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.RedMageBlackMagicFeature)) {
|
||||
if (actionID == 7510) {
|
||||
if ((lastMove == 7526 || lastMove == 7525) && level == 80) return 16530;
|
||||
if (lastMove == 7529) return 7525;
|
||||
if (SearchBuffArray(1249) || SearchBuffArray(167)) return 7505;
|
||||
if (SearchBuffArray(1234)) return 7510;
|
||||
if ((lastMove == 7526 || lastMove == 7525) && level >= 80) return 16530;
|
||||
if (lastMove == 7529 && level >= 68) return 7525;
|
||||
if ((SearchBuffArray(1249) || SearchBuffArray(167)) && level >= 4) return 7505;
|
||||
if (SearchBuffArray(1234) && level >= 26) return 7510;
|
||||
RDMGauge gauge = this.dalamud.ClientState.JobGauges.Get<RDMGauge>();
|
||||
if (gauge.BlackGauge == 0 && gauge.WhiteGauge == 0) return 7505;
|
||||
if ((gauge.BlackGauge == 0 && gauge.WhiteGauge == 0) && level >= 4) return 7505;
|
||||
if (level >= 62) return 7524;
|
||||
return 7503;
|
||||
}
|
||||
}
|
||||
|
||||
// Replace Veraero 2 with Impact when Dualcast is active
|
||||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.RedMageWhiteAoECombo)) {
|
||||
// Replace Veraero/thunder 2 with Impact when Dualcast is active
|
||||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.RedMageAoECombo)) {
|
||||
if (actionID == 16525) {
|
||||
if (level >= 66 && (SearchBuffArray(1249) || SearchBuffArray(167))) return 16526;
|
||||
return 16525;
|
||||
}
|
||||
}
|
||||
|
||||
// Replace Verthunder 2 with Impact when Dualcast is active
|
||||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.RedMageBlackAoECombo)) {
|
||||
if (actionID == 16524) {
|
||||
if (level >= 66 && (SearchBuffArray(1249) || SearchBuffArray(167))) return 16526;
|
||||
return 16524;
|
||||
|
|
@ -790,11 +787,11 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
if (this.dalamud.Configuration.ComboPresets.HasFlag(CustomComboPreset.RedMageMeleeCombo)) {
|
||||
if (actionID == 7516) {
|
||||
RDMGauge gauge = this.dalamud.ClientState.JobGauges.Get<RDMGauge>();
|
||||
if (lastMove == 7504 || lastMove == 7527) {
|
||||
if ((lastMove == 7504 || lastMove == 7527) && level >= 35) {
|
||||
if (gauge.BlackGauge >= 25 && gauge.WhiteGauge >= 25) return 7528;
|
||||
return 7512;
|
||||
}
|
||||
if (lastMove == 7512) {
|
||||
if (lastMove == 7512 && level >= 50) {
|
||||
if (gauge.BlackGauge >= 25 && gauge.WhiteGauge >= 25) return 7529;
|
||||
return 7516;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue