improvements
This commit is contained in:
@@ -1,5 +1,19 @@
|
||||
namespace Faraon.Core.Models;
|
||||
|
||||
public enum RedSevenMode
|
||||
{
|
||||
Disabled,
|
||||
AnyCardOneRound,
|
||||
ColorOrSevenThreeRounds
|
||||
}
|
||||
|
||||
public enum GreenUnderKnaveMode
|
||||
{
|
||||
Disabled,
|
||||
OnlyOnSevenOrUnderKnave, // Ruší sedmy, bežné pravidlá (Zeleň / Dolník)
|
||||
UniversalWildcard // Ruší sedmy, ide na čokoľvek a súper naňho môže dať čokoľvek
|
||||
}
|
||||
|
||||
public class RuleOptions
|
||||
{
|
||||
/// <summary>
|
||||
@@ -18,9 +32,32 @@ public class RuleOptions
|
||||
public bool CounterAceWithAce { get; set; } = true;
|
||||
|
||||
/// <summary>
|
||||
/// Červená sedma vracia do hry hráča, ktorý sa už zbavil všetkých kariet (posledného víťaza).
|
||||
/// Režim oživovania Červenou sedmou (Voľná do 1 kola, Klasická do 3 kôl, Vypnuté).
|
||||
/// </summary>
|
||||
public bool RedSevenRevives { get; set; } = true;
|
||||
public RedSevenMode RedSevenMode { get; set; } = RedSevenMode.ColorOrSevenThreeRounds;
|
||||
|
||||
/// <summary>
|
||||
/// Či je oživovanie Červenou sedmou povolené.
|
||||
/// </summary>
|
||||
public bool RedSevenRevives
|
||||
{
|
||||
get => RedSevenMode != RedSevenMode.Disabled;
|
||||
set => RedSevenMode = value ? (RedSevenMode == RedSevenMode.Disabled ? RedSevenMode.ColorOrSevenThreeRounds : RedSevenMode) : RedSevenMode.Disabled;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Režim pre Zeleného dolníka (rušenie sediem a univerzálne vykladanie).
|
||||
/// </summary>
|
||||
public GreenUnderKnaveMode GreenUnderKnaveMode { get; set; } = GreenUnderKnaveMode.OnlyOnSevenOrUnderKnave;
|
||||
|
||||
/// <summary>
|
||||
/// Či Zelený dolník ruší trest zo sediem.
|
||||
/// </summary>
|
||||
public bool GreenUnderKnaveCancelsSevens
|
||||
{
|
||||
get => GreenUnderKnaveMode != GreenUnderKnaveMode.Disabled;
|
||||
set => GreenUnderKnaveMode = value ? (GreenUnderKnaveMode == GreenUnderKnaveMode.Disabled ? GreenUnderKnaveMode.OnlyOnSevenOrUnderKnave : GreenUnderKnaveMode) : GreenUnderKnaveMode.Disabled;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Zahranie 4 rovnakých kariet naraz ("Spálenie"). Spáli kôpku a hráč hrá znova.
|
||||
@@ -33,9 +70,25 @@ public class RuleOptions
|
||||
public bool PassAndPlayPrivacyScreen { get; set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// Rýchlosť AI ťahov v milisekundách (pre plynulé sledovanie animácií).
|
||||
/// Úroveň rýchlosti hry (1 = 0.5x, 2 = 0.75x, 3 = 1x Normálna, 4 = 1.5x Rýchla, 5 = 2.5x Turbo).
|
||||
/// </summary>
|
||||
public int AIDelayMs { get; set; } = 900;
|
||||
public int SpeedLevel { get; set; } = 3;
|
||||
|
||||
/// <summary>
|
||||
/// Rýchlosť AI ťahov v milisekundách podľa zvolenej úrovne rýchlosti.
|
||||
/// </summary>
|
||||
public int AIDelayMs
|
||||
{
|
||||
get => SpeedLevel switch
|
||||
{
|
||||
1 => 1600,
|
||||
2 => 1200,
|
||||
4 => 500,
|
||||
5 => 200,
|
||||
_ => 900
|
||||
};
|
||||
set { }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Zvolený vizuálny štýl balíčka ("original" alebo "spongebob").
|
||||
|
||||
Reference in New Issue
Block a user