Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
        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);
        }
		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;
		}