diff utils/src/prng.rs @ 784:1f152ca95658

Replace pytouhou.utils.random.Random with a Rust version libtouhou.Prng now supports having its seed generated randomly using the getrandom crate, and is now exposed to Python.
author Link Mauve <linkmauve@linkmauve.fr>
date Sun, 23 Nov 2025 12:48:03 +0100
parents 21b186be2590
children
line wrap: on
line diff
--- a/utils/src/prng.rs
+++ b/utils/src/prng.rs
@@ -8,7 +8,9 @@
 
 impl Prng {
     /// Create a new pseudo-random number generator from this seed.
-    pub fn new(seed: u16) -> Prng {
+    pub fn new(seed: Option<u16>) -> Prng {
+        // TODO: Maybe add a getrandom::u16() to getrandom instead?
+        let seed = seed.unwrap_or_else(|| getrandom::u32().unwrap() as u16);
         Prng {
             seed,
         }