2019-01-24 16:43:03 +08:00
|
|
|
|
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
|
|
|
|
|
// See the LICENCE file in the repository root for full licence text.
|
2018-04-13 17:19:50 +08:00
|
|
|
|
|
2022-06-17 15:37:17 +08:00
|
|
|
|
#nullable disable
|
|
|
|
|
|
2017-12-31 03:10:25 +08:00
|
|
|
|
namespace osu.Game.Rulesets.Mods
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Represents a mod which can override (and block) a fail.
|
|
|
|
|
/// </summary>
|
|
|
|
|
public interface IApplicableFailOverride : IApplicableMod
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Whether we should allow failing at the current point in time.
|
|
|
|
|
/// </summary>
|
2020-05-12 19:08:35 +08:00
|
|
|
|
/// <returns>Whether the fail should be allowed to proceed. Return false to block.</returns>
|
|
|
|
|
bool PerformFail();
|
2018-10-30 19:12:06 +08:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
2020-05-12 19:08:35 +08:00
|
|
|
|
/// Whether we want to restart on fail. Only used if <see cref="PerformFail"/> returns true.
|
2018-10-30 19:12:06 +08:00
|
|
|
|
/// </summary>
|
|
|
|
|
bool RestartOnFail { get; }
|
2017-12-31 03:10:25 +08:00
|
|
|
|
}
|
|
|
|
|
}
|