Skip to content

Commit

Permalink
chore: return enum fields in caps and null as vec result when enc gen…
Browse files Browse the repository at this point in the history
… failed with error. Remove various debug
  • Loading branch information
RakuJa committed Oct 15, 2023
1 parent 8159a03 commit 6e8e7a1
Show file tree
Hide file tree
Showing 4 changed files with 32 additions and 22 deletions.
4 changes: 2 additions & 2 deletions src/db/db_communicator.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ use redis::{
use serde::{Deserialize, Serialize};
use std::env;

#[derive(Serialize, Deserialize, Debug)]
#[derive(Serialize, Deserialize)]
pub struct RawCreature {
name: String,
hp: i16,
Expand All @@ -23,7 +23,7 @@ pub struct RawCreature {
// source: Vec<String>,
}

#[derive(Serialize, Deserialize, Debug)]
#[derive(Serialize, Deserialize)]
pub struct RawJsonString {
json_string: String,
}
Expand Down
38 changes: 26 additions & 12 deletions src/models/creature_metadata_enums.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,31 +12,49 @@ use utoipa::ToSchema;
PartialEq,
Ord,
PartialOrd,
Debug,
Default,
EnumString,
)]
#[strum(serialize_all = "UPPERCASE")]
pub enum AlignmentEnum {
#[serde(alias = "ce", alias = "CE")]
#[serde(alias = "ce", alias = "Ce")]
#[strum(to_string = "CE")]
#[serde(rename = "CE")]
Ce,
#[serde(alias = "cn", alias = "CN")]
#[serde(alias = "cn", alias = "Cn")]
#[strum(to_string = "CN")]
#[serde(rename = "CN")]
Cn,
#[serde(alias = "cg", alias = "CG")]
#[serde(alias = "cg", alias = "Cg")]
#[strum(to_string = "CG")]
#[serde(rename = "CG")]
Cg,
#[serde(alias = "ne", alias = "NE")]
#[serde(alias = "ne", alias = "Ne")]
#[strum(to_string = "NE")]
#[serde(rename = "NE")]
Ne,
#[serde(alias = "n")]
#[strum(to_string = "N")]
N,
#[serde(alias = "ng", alias = "NG")]
#[serde(alias = "ng", alias = "Ng")]
#[strum(to_string = "NG")]
#[serde(rename = "NG")]
Ng,
#[serde(alias = "le", alias = "LE")]
#[serde(alias = "le", alias = "Le")]
#[strum(to_string = "LE")]
#[serde(rename = "LE")]
Le,
#[serde(alias = "ln", alias = "LN")]
#[strum(to_string = "Ln")]
#[serde(rename = "LN")]
Ln,
#[serde(alias = "lg", alias = "LG")]
#[serde(alias = "lg", alias = "Lg")]
#[strum(to_string = "LG")]
#[serde(rename = "LG")]
Lg,
#[serde(alias = "no", alias = "NO")]
#[strum(to_string = "No Alignment")]
#[serde(rename = "No Alignment")]
No, // no alignment
#[default]
#[serde(alias = "any", alias = "ANY")]
Expand All @@ -53,11 +71,9 @@ pub enum AlignmentEnum {
PartialEq,
Ord,
PartialOrd,
Debug,
Default,
EnumString,
)]
#[strum(serialize_all = "UPPERCASE")]
pub enum RarityEnum {
#[default]
#[serde(alias = "common", alias = "COMMON")]
Expand All @@ -80,11 +96,9 @@ pub enum RarityEnum {
PartialEq,
Ord,
PartialOrd,
Debug,
Default,
EnumString,
)]
#[strum(serialize_all = "UPPERCASE")]
pub enum SizeEnum {
#[serde(alias = "tiny", alias = "TINY")]
Tiny,
Expand Down
4 changes: 1 addition & 3 deletions src/models/encounter_structs.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,7 @@ pub struct EncounterParams {
pub enemy_levels: Vec<i8>,
}

#[derive(
Serialize, Deserialize, ToSchema, Default, EnumIter, Eq, PartialEq, Hash, Clone, Debug,
)]
#[derive(Serialize, Deserialize, ToSchema, Default, EnumIter, Eq, PartialEq, Hash, Clone)]
pub enum EncounterChallengeEnum {
Trivial,
Low,
Expand Down
8 changes: 3 additions & 5 deletions src/services/encounter_service.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ pub struct EncounterInfoResponse {

#[derive(Serialize, Deserialize, ToSchema)]
pub struct RandomEncounterGeneratorResponse {
results: Vec<Creature>,
results: Option<Vec<Creature>>,
count: usize,
encounter_info: EncounterInfoResponse,
}
Expand Down Expand Up @@ -57,7 +57,7 @@ pub fn generate_random_encounter(
error.to_string()
);
RandomEncounterGeneratorResponse {
results: vec![],
results: None,
count: 0,
encounter_info: EncounterInfoResponse {
experience: 0,
Expand All @@ -77,8 +77,6 @@ fn calculate_random_encounter(
) -> Result<RandomEncounterGeneratorResponse> {
let enc_diff = enc_data.encounter_challenge.unwrap_or(rand::random());

println!("Building encounter with difficulty: {:?}", enc_diff.clone());

let (exp, lvl_combinations) =
encounter_calculator::calculate_lvl_combination_for_encounter(&enc_diff, &party_levels);
let unique_levels = HashSet::from_iter(
Expand Down Expand Up @@ -111,7 +109,7 @@ fn calculate_random_encounter(

Ok(RandomEncounterGeneratorResponse {
count: chosen_encounter.len(),
results: chosen_encounter,
results: Some(chosen_encounter),
encounter_info: EncounterInfoResponse {
experience: exp,
challenge: enc_diff,
Expand Down

0 comments on commit 6e8e7a1

Please sign in to comment.