Chessistics/chessistics-engine/Model/DemandState.cs
Samuel Bouchet e6eaae43ab Initial commit: Chessistics prototype v0.3
Black box sim engine (commands in, events out) with 3 piece types
(Rook, Bishop, Knight), cargo transfer system with social status
priority, collision detection, and victory/defeat conditions.

57 tests covering rules, simulation, loading, and solvability.
Godot 4 presentation layer scaffolding.
2026-04-10 14:58:03 +02:00

20 lines
572 B
C#

namespace Chessistics.Engine.Model;
public class DemandState
{
public DemandDef Definition { get; }
public int ReceivedCount { get; set; }
public DemandState(DemandDef definition)
{
Definition = definition;
ReceivedCount = 0;
}
public bool IsSatisfied => ReceivedCount >= Definition.Amount;
public Coords Position => Definition.Position;
public string Name => Definition.Name;
public CargoType Cargo => Definition.Cargo;
public int Required => Definition.Amount;
public int Deadline => Definition.Deadline;
}