1
0
mirror of https://git.ngram.ca/OpenJam/rc-servers synced 2026-08-23 23:08:52 +00:00

Implement loading of cube data from JSON file

This commit is contained in:
NGnius (Graham)
2025-03-09 16:28:03 -04:00
parent 303f72f010
commit 9b87b25131
20 changed files with 9541 additions and 64 deletions

View File

@@ -1,16 +1,17 @@
use polariton::serdes::TypePrefix;
use polariton_server::operations::SimpleFunc;
use polariton::operation::{ParameterTable, Typed, Dict};
//use polariton::serdes::TypePrefix;
use polariton_server::operations::Immediate;
//use polariton::operation::{Typed, Dict};
use crate::data::weapon_list::*;
use crate::data::cube_list::ItemTier;
//use crate::data::weapon_list::*;
//use crate::data::cube_list::ItemTier;
const PARAM_KEY: u8 = 57;
pub(super) fn weapon_config_provider() -> SimpleFunc<47, crate::UserTy, impl (Fn(ParameterTable, &crate::UserTy) -> Result<ParameterTable, i16>) + Sync + Sync> {
SimpleFunc::new(|params, _| {
let mut params = params.to_dict();
params.insert(PARAM_KEY, Typed::Dict(Dict {
pub(super) fn weapon_config_provider(cubes: &crate::persist::config::CubeConfig) -> Immediate<47, crate::UserTy> {
Immediate::new(|| {
let mut params = std::collections::HashMap::with_capacity(2);
params.insert(PARAM_KEY, cubes.weapon_list());
/*params.insert(PARAM_KEY, Typed::Dict(Dict {
key_ty: TypePrefix::Str, // str
val_ty: TypePrefix::HashMap, // hashtable
items: vec![
@@ -42,7 +43,7 @@ pub(super) fn weapon_config_provider() -> SimpleFunc<47, crate::UserTy, impl (Fn
}.as_transmissible()),
].into()))
].into(),
}));
Ok(params.into())
}));*/
params.into()
})
}