All checks were successful
Build / build (push) Successful in 2m19s
Slips werden jetzt 30 Sekunden vorgehalten und anschließend automatisch abgeschlossen; direkte Spieler-Beschuldigungen, Win-Status, SignalR-Events, MAUI-UI, EF-Mapping/Migrationen sowie Tests wurden an die neue Spiellogik angepasst.
27 lines
1.2 KiB
C#
27 lines
1.2 KiB
C#
namespace SlipItIn.Shared.Models;
|
|
|
|
public enum ChallengeStatus
|
|
{
|
|
Pending, // Beschuldigung eingegangen, wartet auf Bestätigung/Ablehnung
|
|
Approved, // Beschuldigung war berechtigt -> Beschuldigter muss Karte ablegen und 2 neue ziehen
|
|
Rejected // Beschuldigung angefochten -> Beschuldigung zurückgenommen
|
|
}
|
|
|
|
public class SlipChallenge
|
|
{
|
|
public int Id { get; set; }
|
|
public int GameRoundId { get; set; }
|
|
public int ChallengingPlayerId { get; set; } // Wer beschuldigt
|
|
public int TargetPlayerId { get; set; } // Wer beschuldigt wird
|
|
public int? TargetCardId { get; set; } // Optional: Angefochtene Karte falls bekannt/zugeordnet
|
|
public ChallengeStatus Status { get; set; } = ChallengeStatus.Pending;
|
|
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
|
|
public DateTime? ResolvedAt { get; set; }
|
|
|
|
// Navigation
|
|
public GameRound GameRound { get; set; } = null!;
|
|
public Player ChallengingPlayer { get; set; } = null!; // Der Beschuldiger
|
|
public Player TargetPlayer { get; set; } = null!; // Der Beschuldigte
|
|
public PlayerCard? TargetCard { get; set; } // Die angefochtene Phrase (optional)
|
|
}
|