nil-core 0.5.1

Multiplayer strategy game
Documentation
// Copyright (C) Call of Nil contributors
// SPDX-License-Identifier: AGPL-3.0-only

use crate::continent::Coord;
use crate::decl_recruit_queue;
use crate::error::{Error, Result};
use crate::infrastructure::queue::{InfrastructureQueue, InfrastructureQueueOrder};
use crate::military::squad::Squad;
use crate::military::squad::size::SquadSize;
use crate::military::unit::{StableUnitId, UnitBox};
use crate::resources::Resources;
use crate::resources::workforce::Workforce;
use serde::{Deserialize, Serialize};
use std::collections::VecDeque;
use std::num::NonZeroU32;
use strum::EnumIs;
use uuid::Uuid;

#[derive(Clone, Debug, Default, Deserialize, Serialize)]
#[serde(rename_all = "camelCase")]
#[cfg_attr(feature = "typescript", derive(ts_rs::TS))]
pub struct StableRecruitQueue {
  #[cfg_attr(feature = "typescript", ts(as = "Vec<StableRecruitOrder>"))]
  orders: VecDeque<StableRecruitOrder>,
}

decl_recruit_queue!(Stable);