fix: environments in mrpack exports (#7141)

* fix: server_only single player mods excluded

* fix: align with mac

* fix: fmt

---------

Co-authored-by: Calum H. (IMB11) <contact@cal.engineer>
This commit is contained in:
Truman Gao
2026-08-14 16:18:03 +00:00
committed by GitHub
co-authored by Calum H.
parent 762d9fe4f4
commit 99683f570a
@@ -463,32 +463,25 @@ fn pack_get_relative_path(
fn get_mrpack_environment(
environment: Option<VersionEnvironment>,
) -> HashMap<EnvType, SideType> {
let (client, server) = match environment
.unwrap_or(VersionEnvironment::Unknown)
{
VersionEnvironment::ClientAndServer
| VersionEnvironment::SingleplayerOnly => {
(SideType::Required, SideType::Required)
}
VersionEnvironment::ClientOnly => {
(SideType::Required, SideType::Unsupported)
}
VersionEnvironment::ClientOnlyServerOptional => {
(SideType::Required, SideType::Optional)
}
VersionEnvironment::ServerOnly
| VersionEnvironment::DedicatedServerOnly => {
(SideType::Unsupported, SideType::Required)
}
VersionEnvironment::ServerOnlyClientOptional => {
(SideType::Optional, SideType::Required)
}
VersionEnvironment::ClientOrServer
| VersionEnvironment::ClientOrServerPrefersBoth => {
(SideType::Optional, SideType::Optional)
}
VersionEnvironment::Unknown => (SideType::Optional, SideType::Optional),
};
let (client, server) =
match environment.unwrap_or(VersionEnvironment::Unknown) {
VersionEnvironment::ClientAndServer
| VersionEnvironment::ClientOnlyServerOptional
| VersionEnvironment::ServerOnly
| VersionEnvironment::ServerOnlyClientOptional
| VersionEnvironment::ClientOrServer
| VersionEnvironment::ClientOrServerPrefersBoth
| VersionEnvironment::Unknown => {
(SideType::Required, SideType::Required)
}
VersionEnvironment::ClientOnly
| VersionEnvironment::SingleplayerOnly => {
(SideType::Required, SideType::Unsupported)
}
VersionEnvironment::DedicatedServerOnly => {
(SideType::Unsupported, SideType::Required)
}
};
HashMap::from([(EnvType::Client, client), (EnvType::Server, server)])
}