5dplomacy/MultiversalDiplomacy/GameController.cs

29 lines
804 B
C#

using MultiversalDiplomacy.Model;
namespace MultiversalDiplomacy;
/// <summary>
/// The game controller is a stateless class that defines the basic, high-level operations that can be taken to modify
/// the game state.
/// </summary>
public static class GameController
{
public static World InitializeWorld()
{
return World.Standard;
}
public static World SubmitOrderSet(World world, string text)
{
var orderSet = new OrderSet(text);
return world.Update(orderSets: world.OrderSets.Append(orderSet));
}
public static World AdjudicateOrders(World world)
{
// TODO: Parse the order sets into orders
// TODO: Execute the correct adjudicator for the current world state
// TODO: Update the world
return world;
}
}