code fixes
All checks were successful
Deploy yourpart (blue-green) / deploy (push) Successful in 1m52s

This commit is contained in:
Torsten Schulz (local)
2026-06-06 13:26:45 +02:00
parent 35377e3b59
commit 41c0e5a6f2
9 changed files with 71 additions and 88 deletions

View File

@@ -1,8 +1,7 @@
use crate::db::{ConnectionPool, DbError, Rows};
use crate::message_broker::MessageBroker;
use rand::distributions::{Distribution, Uniform};
use rand::rngs::StdRng;
use rand::{thread_rng, Rng, SeedableRng};
use rand::{Rng, SeedableRng};
use std::collections::{HashMap, HashSet};
use std::sync::atomic::{AtomicBool, Ordering};
use std::sync::Arc;
@@ -29,7 +28,6 @@ use crate::worker::sql::{
pub struct CharacterCreationWorker {
pub(crate) base: BaseWorker,
rng: StdRng,
dist: Uniform<i32>,
first_name_cache: HashMap<String, HashSet<i32>>,
last_name_cache: HashSet<i32>,
death_check_running: Arc<AtomicBool>,
@@ -46,8 +44,8 @@ impl CharacterCreationWorker {
/// Interner Konstruktor, der optional den NPC-Todes-Monitor startet.
fn new_internal(pool: ConnectionPool, broker: MessageBroker, start_death_thread: bool) -> Self {
let base = BaseWorker::new("CharacterCreationWorker", pool.clone(), broker.clone());
let rng = StdRng::from_entropy();
let dist = Uniform::from(2..=3);
let mut base_rng = rand::rng();
let rng = StdRng::from_rng(&mut base_rng);
let death_check_running = Arc::new(AtomicBool::new(start_death_thread));
let death_thread = if start_death_thread {
@@ -80,7 +78,6 @@ impl CharacterCreationWorker {
Self {
base,
rng,
dist,
first_name_cache: HashMap::new(),
last_name_cache: HashSet::new(),
death_check_running,
@@ -139,7 +136,7 @@ impl CharacterCreationWorker {
for &nobility in &nobility_stands {
for &gender in &genders {
let num_chars = self.rng.sample(self.dist);
let num_chars = self.rng.random_range(2..=3);
for _ in 0..num_chars {
self.create_character(region_id, gender, nobility);
}
@@ -248,8 +245,8 @@ impl CharacterCreationWorker {
if set.is_empty() {
return -1;
}
let mut rng = thread_rng();
let idx = rng.gen_range(0..set.len());
let mut rng = rand::rng();
let idx = rng.random_range(0..set.len());
*set.iter().nth(idx).unwrap_or(&-1)
}
@@ -390,9 +387,8 @@ impl CharacterCreationWorker {
let death_probability =
base_probability + increase_per_year * (age.saturating_sub(60) as f64);
let mut rng = thread_rng();
let dist = Uniform::from(0.0..1.0);
let roll: f64 = dist.sample(&mut rng);
let mut rng = rand::rng();
let roll: f64 = rng.random_range(0.0..1.0);
roll < death_probability
}
@@ -537,4 +533,3 @@ impl CharacterCreationWorker {
}
}