mirror of
https://git.neonteam.dev/amizing/robinsr.git
synced 2025-03-12 03:28:30 -04:00
add validation to lineup length
This commit is contained in:
parent
1681485ccb
commit
5a55a5508e
@ -497,7 +497,7 @@ pub struct JsonData {
|
|||||||
pub main_character: MainCharacter,
|
pub main_character: MainCharacter,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize, Default)]
|
#[derive(Debug, Serialize, Deserialize)]
|
||||||
pub struct JsonData2 {
|
pub struct JsonData2 {
|
||||||
#[serde(default)]
|
#[serde(default)]
|
||||||
pub lineups: BTreeMap<u32, u32>,
|
pub lineups: BTreeMap<u32, u32>,
|
||||||
@ -509,6 +509,23 @@ pub struct JsonData2 {
|
|||||||
pub main_character: MainCharacter,
|
pub main_character: MainCharacter,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl Default for JsonData2 {
|
||||||
|
fn default() -> Self {
|
||||||
|
let mut lineups = BTreeMap::<u32, u32>::new();
|
||||||
|
lineups.insert(0, 8006);
|
||||||
|
lineups.insert(1, 0);
|
||||||
|
lineups.insert(2, 0);
|
||||||
|
lineups.insert(3, 0);
|
||||||
|
|
||||||
|
Self {
|
||||||
|
lineups ,
|
||||||
|
position: Default::default(),
|
||||||
|
main_character: Default::default(),
|
||||||
|
scene: Default::default()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#[derive(Serialize, Deserialize, Clone, Debug, Copy)]
|
#[derive(Serialize, Deserialize, Clone, Debug, Copy)]
|
||||||
pub enum MainCharacter {
|
pub enum MainCharacter {
|
||||||
@ -538,30 +555,42 @@ impl JsonData {
|
|||||||
};
|
};
|
||||||
|
|
||||||
let json2: JsonData2 = serde_json::from_str(&tokio::fs::read_to_string("persistent").await.unwrap_or_default()).unwrap_or_default();
|
let json2: JsonData2 = serde_json::from_str(&tokio::fs::read_to_string("persistent").await.unwrap_or_default()).unwrap_or_default();
|
||||||
|
|
||||||
json.lineups = json2.lineups;
|
json.lineups = json2.lineups;
|
||||||
json.position = json2.position;
|
json.position = json2.position;
|
||||||
json.scene = json2.scene;
|
json.scene = json2.scene;
|
||||||
json.main_character = json2.main_character;
|
json.main_character = json2.main_character;
|
||||||
|
|
||||||
|
json.verify_lineup().await;
|
||||||
|
|
||||||
json
|
json
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async fn verify_lineup(&mut self) {
|
||||||
|
if self.lineups.len() == 0 {
|
||||||
|
self.lineups = BTreeMap::<u32, u32>::from([(0, 8006), (1, 0), (2, 0),(3, 0)])
|
||||||
|
} else if self.lineups.len() < 4 {
|
||||||
|
for i in self.lineups.len()..4 {
|
||||||
|
self.lineups.insert(i as u32, 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
self.save().await;
|
||||||
|
}
|
||||||
|
|
||||||
async fn create_dummy() -> Self {
|
async fn create_dummy() -> Self {
|
||||||
let mut db = Self {
|
let mut db = Self {
|
||||||
lightcones: vec![],
|
lightcones: vec![],
|
||||||
relics: vec![],
|
relics: vec![],
|
||||||
avatars: BTreeMap::<u32, AvatarJson>::new(),
|
avatars: BTreeMap::<u32, AvatarJson>::new(),
|
||||||
lineups: BTreeMap::<u32, u32>::new(),
|
lineups: BTreeMap::<u32, u32>::from([(0, 8006), (1, 0), (2, 0),(3, 0)]),
|
||||||
scene: Default::default(),
|
scene: Default::default(),
|
||||||
position: Default::default(),
|
position: Default::default(),
|
||||||
battle_config: Default::default(),
|
battle_config: Default::default(),
|
||||||
main_character: Default::default(),
|
main_character: Default::default(),
|
||||||
};
|
};
|
||||||
db.avatars.insert(
|
db.avatars.insert(
|
||||||
8004,
|
8006,
|
||||||
AvatarJson {
|
AvatarJson {
|
||||||
avatar_id: 8004,
|
avatar_id: 8006,
|
||||||
level: 80,
|
level: 80,
|
||||||
promotion: 6,
|
promotion: 6,
|
||||||
sp_max: Some(10_000),
|
sp_max: Some(10_000),
|
||||||
@ -571,17 +600,17 @@ impl JsonData {
|
|||||||
data: AvatarData {
|
data: AvatarData {
|
||||||
rank: 6,
|
rank: 6,
|
||||||
skills: BTreeMap::from([
|
skills: BTreeMap::from([
|
||||||
(800401, 6),
|
(800601, 6),
|
||||||
(800402, 10),
|
(800602, 10),
|
||||||
(800403, 10),
|
(800603, 10),
|
||||||
(800404, 10),
|
(800604, 10),
|
||||||
(800405, 1),
|
(800605, 1),
|
||||||
]),
|
]),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
db.lineups.insert(0, 8004);
|
db.lineups.insert(0, 8006);
|
||||||
|
|
||||||
db.save().await;
|
db.save().await;
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user