Make enemy and teammate count customizable

This commit is contained in:
NG (Graham) committed 2025-06-02 20:08:50 -04:00
1 parent 36a58eaed1
commit d0c2b1ec03
11 files changed
+98 -40

No files matched your search

+14
View File
@@ -5,6 +5,8 @@ pub struct SingleplayerConfig {
#[serde(default = "default_campaigns")]
pub campaigns: Vec<Campaign>,
pub vehicles: Vec<super::PrefabVehicle>,
pub max_teammates: u32,
pub max_enemies: u32,
}
impl SingleplayerConfig {
@@ -15,6 +17,18 @@ impl SingleplayerConfig {
pub fn into_waves(self) -> crate::data::campaign::LiveCampaignWaves {
crate::data::campaign::LiveCampaignWaves { waves: self.campaigns.into_iter().map(|x| x.into_waves()).collect() }
}
pub fn into_singleplayer_conf(&self) -> crate::persist::config::SingleplayerConfig {
crate::persist::config::SingleplayerConfig {
max_teammates: self.max_teammates,
max_enemies: self.max_enemies,
vehicles: self.vehicles.iter().map(|v| crate::persist::config::VehicleInfo {
name: v.name.clone(),
username: v.username.clone(),
id: v.id.clone().into(),
}).collect()
}
}
}
#[derive(Serialize, Deserialize, Clone, Debug)]