public override async Task <bool> ExecuteRotation(ExGatherTag tag) { if (tag.IsUnspoiled()) { await SingleMindAppraiseAndRebuff(tag); await AppraiseAndRebuff(tag); await Methodical(tag); await IncreaseChance(tag); } else { if (Core.Player.CurrentGP >= 600) { await SingleMindAppraiseAndRebuff(tag); await AppraiseAndRebuff(tag); await Methodical(tag); await IncreaseChance(tag); } else { await Impulsive(tag); await Impulsive(tag); await Instinctual(tag); } } return(true); }
public override async Task <bool> ExecuteRotation(ExGatherTag tag) { if (tag.IsUnspoiled()) { await SingleMindMethodical(tag); await SingleMindMethodical(tag); await DiscerningMethodical(tag); await IncreaseChance(tag); } else { #if RB_CN if (Core.Player.CurrentGP >= 600 && tag.GatherItem.Chance < 98) { #else if (Core.Player.CurrentGP >= 600) { #endif await SingleMindMethodical(tag); await SingleMindMethodical(tag); await DiscerningMethodical(tag); await IncreaseChance(tag); } else { await Impulsive(tag); await Impulsive(tag); await Instinctual(tag); } } return(true); } }
public override async Task<bool> ExecuteRotation(ExGatherTag tag) { if (tag.IsUnspoiled()) { await SingleMindMethodical(tag); await SingleMindMethodical(tag); await UtmostCaution(tag); await Methodical(tag); await UtmostCaution(tag); await Methodical(tag); } else { if (Core.Player.CurrentGP >= 600) { await SingleMindMethodical(tag); await SingleMindMethodical(tag); await UtmostCaution(tag); await Methodical(tag); await UtmostCaution(tag); await Methodical(tag); return true; } await Impulsive(tag); await Impulsive(tag); await Methodical(tag); } return true; }
public override async Task <bool> ExecuteRotation(ExGatherTag tag) { if (tag.IsUnspoiled()) { await SingleMindMethodical(tag); await SingleMindMethodical(tag); await UtmostCaution(tag); await Methodical(tag); await UtmostCaution(tag); await Methodical(tag); } else { if (Core.Player.CurrentGP >= 600) { await SingleMindMethodical(tag); await SingleMindMethodical(tag); await UtmostCaution(tag); await Methodical(tag); await UtmostCaution(tag); await Methodical(tag); return(true); } await Impulsive(tag); await Impulsive(tag); await Methodical(tag); } return(true); }
int IGetOverridePriority.GetOverridePriority(ExGatherTag tag) { if (tag.IsEphemeral() || tag.IsUnspoiled() || tag.CollectableItem != null) { return -1; } return 8000; }
protected virtual IGatheringRotation ResolveInternalGatheringRotation(ExGatherTag tag) { if (tag.IsUnspoiled()) { return(ExGatherTag.Rotations["Unspoiled"]); } return(ExGatherTag.Rotations["RegularNode"]); }
int IGetOverridePriority.GetOverridePriority(ExGatherTag tag) { if (tag.IsEphemeral() || tag.IsUnspoiled()) { return -1; } return 8000; }
int IGetOverridePriority.GetOverridePriority(ExGatherTag tag) { if (tag.IsUnspoiled() && tag.CollectableItem == null) { return(8000); } return(-1); }
protected virtual IGatheringRotation ResolveInternalGatheringRotation(ExGatherTag tag) { if (tag.IsUnspoiled()) { return ExGatherTag.Rotations["Unspoiled"]; } return ExGatherTag.Rotations["RegularNode"]; }
int IGetOverridePriority.GetOverridePriority(ExGatherTag tag) { if (tag.IsUnspoiled() && tag.CollectableItem == null) { return 8000; } return -1; }
public override async Task<bool> Prepare(ExGatherTag tag) { var unknownItems = GatheringManager.GatheringWindowItems.Where(i => i.IsUnknownChance() && i.Amount > 0).ToArray(); if (tag.IsUnspoiled() && Core.Player.CurrentGP >= 550 && unknownItems.Length > 1) { await tag.Cast(Ability.Toil); } return await base.Prepare(tag); }
public override async Task <bool> ExecuteRotation(ExGatherTag tag) { if (tag.IsUnspoiled()) { await SingleMindMethodical(tag); await DiscerningMethodical(tag); await DiscerningMethodical(tag); await IncreaseChance(tag); } else if (tag.IsEphemeral()) { if (Core.Player.CurrentGP >= 600) { await SingleMindMethodical(tag); await DiscerningMethodical(tag); await DiscerningMethodical(tag); await IncreaseChance(tag); } else { await Impulsive(tag); await Impulsive(tag); await Instinctual(tag); } } else { if (Core.Player.CurrentGP >= 600) { if (GatheringManager.SwingsRemaining > 4) { await SingleMindMethodical(tag); await DiscerningMethodical(tag); await DiscerningMethodical(tag); await IncreaseChance(tag); } else { await Methodical(tag); await Methodical(tag); await Methodical(tag); await Methodical(tag); } } else { await Impulsive(tag); await Impulsive(tag); await Instinctual(tag); } } return(true); }
public override async Task <bool> Prepare(ExGatherTag tag) { var unknownItems = GatheringManager.GatheringWindowItems.Where(i => i.IsUnknownChance() && i.Amount > 0).ToArray(); if (tag.IsUnspoiled() && Core.Player.CurrentGP >= 550 && unknownItems.Length > 1) { await tag.Cast(Ability.Toil); } return(await base.Prepare(tag)); }
int IGetOverridePriority.GetOverridePriority(ExGatherTag tag) { if (tag.GatherItem == null) { return(-1); } if (tag.GatherItem.IsUnknown || (tag.IsUnspoiled() && tag.GatherItem.Chance == 25)) { return(int.MaxValue); } return(-1); }
int IGetOverridePriority.GetOverridePriority(ExGatherTag tag) { if (tag.GatherItem == null) { return -1; } if (tag.GatherItem.IsUnknown || (tag.IsUnspoiled() && tag.GatherItem.Chance == 25)) { return int.MaxValue; } return -1; }
public override async Task <bool> ExecuteRotation(ExGatherTag tag) { if (tag.IsUnspoiled()) { await SingleMindImpulsive(tag); await SingleMindImpulsive(tag); await SingleMindMethodical(tag); await IncreaseChance(tag); } else { if (Core.Player.CurrentGP >= 600 && (GatheringManager.SwingsRemaining > 4 || tag.CanUseCordial())) { if (Core.Player.ClassLevel >= 57) { await SingleMindImpulsive(tag); await SingleMindImpulsive(tag); await SingleMindMethodical(tag); await IncreaseChance(tag); } else { await Discerning(tag); await AppraiseAndRebuff(tag); await AppraiseAndRebuff(tag); await Methodical(tag); await IncreaseChance(tag); } } else { await Impulsive(tag); await Impulsive(tag); await Instinctual(tag); } } return(true); }
public override async Task<bool> ExecuteRotation(ExGatherTag tag) { if (tag.IsUnspoiled()) { await AppraiseAndRebuff(tag); await AppraiseAndRebuff(tag); await Methodical(tag); } else { if (Core.Player.CurrentGP >= 600) { await AppraiseAndRebuff(tag); await AppraiseAndRebuff(tag); await Methodical(tag); return true; } await Impulsive(tag); await Impulsive(tag); await Methodical(tag); } return true; }
public override bool ShouldForceGather(ExGatherTag tag) { return !tag.IsEphemeral() && !tag.IsUnspoiled(); }
public override bool ShouldForceGather(ExGatherTag tag) { return(!tag.IsEphemeral() && !tag.IsUnspoiled()); }
public override async Task<bool> ExecuteRotation(ExGatherTag tag) { if (tag.IsUnspoiled()) { await UtmostCaution(tag); await AppraiseAndRebuff(tag); await UtmostMethodical(tag); await AppraiseAndRebuff(tag); await Methodical(tag); await IncreaseChance(tag); } else { // if 58+ if (tag.GatherItem.Chance < 98 && Core.Player.CurrentGP >= 600) { // if 60 or cordial is ready and is 58 if (tag.GatherItem.Chance < 97 || tag.CanUseCordial(Attributes.RequiredTimeInSeconds)) { var appraisalsRemaining = 4; await Impulsive(tag); appraisalsRemaining--; if (HasDiscerningEye) { await UtmostSingleMindMethodical(tag); appraisalsRemaining--; } await Impulsive(tag); appraisalsRemaining--; if (HasDiscerningEye) { await UtmostSingleMindMethodical(tag); appraisalsRemaining--; } if (appraisalsRemaining == 2) { await Methodical(tag); } if (appraisalsRemaining == 1) { await UtmostDiscerningMethodical(tag); } await IncreaseChance(tag); return true; } } await Impulsive(tag); await Impulsive(tag); await Methodical(tag); return true; } return true; }
public override async Task <bool> ExecuteRotation(ExGatherTag tag) { if (tag.IsUnspoiled()) { await UtmostCaution(tag); await AppraiseAndRebuff(tag); #if RB_CN await UtmostCaution(tag); #endif await Methodical(tag); await AppraiseAndRebuff(tag); await Methodical(tag); await IncreaseChance(tag); } else { // if 58+ if (tag.GatherItem.Chance < 98 && Core.Player.CurrentGP >= 600) { // if 60 or cordial is ready and is 58 if (tag.GatherItem.Chance < 97 || tag.CanUseCordial(Attributes.RequiredTimeInSeconds)) { var appraisalsRemaining = 4; await Impulsive(tag); appraisalsRemaining--; if (HasDiscerningEye) { await UtmostSingleMindMethodical(tag); appraisalsRemaining--; } await Impulsive(tag); appraisalsRemaining--; if (HasDiscerningEye) { await UtmostSingleMindMethodical(tag); appraisalsRemaining--; } if (appraisalsRemaining == 2) { await Methodical(tag); } if (appraisalsRemaining == 1) { await UtmostDiscerningMethodical(tag); } await IncreaseChance(tag); return(true); } } await Impulsive(tag); await Impulsive(tag); await Methodical(tag); return(true); } return(true); }