Poke_Transporter_GB/source/random.cpp
Remnants of Forgotten Disney a4bda4c673 Adding in event stabilization
2024-04-17 09:17:15 -05:00

31 lines
629 B
C++

#include "random.h"
#include <tonc.h>
unsigned int u32_rand;
void rand_set_seed(unsigned int init_seed){
u32_rand = init_seed;
}
unsigned int rand_get_seed(){
return u32_rand;
}
void rand_next_frame(){
u32_rand = (0x41C64E6D * u32_rand) + 0x6073; // This is the randomization method used in Gen 3
}
u32 get_rand_u32(){
rand_next_frame();
return u32_rand;
}
u16 get_rand_u16(){
rand_next_frame();
return (u32_rand >> 16);
}
unsigned int get_rand_range(unsigned int inc_min, unsigned int exc_max){
return ((double)((get_rand_u32() / (double)0x100000000) * (exc_max - inc_min)) + inc_min);
}