Provably Fair
pub fn extractWinner(raffle: Raffle){
let randomness: [u8; 32] = randomness
.to_array()
.maperr(|| ContractError::InvalidRandomness)?;
let winner_index = int_in_range(randomness, 0, (raffle.ticket_list.len() - 1) as u64);
let winner = if winner_index < raffle.ticket_list.len() as u64 {
raffle.ticket_list[winner_index as usize].clone()
}
else {
raffle.creator.clone()
};
}
let winner = extractWinner(raffle);Last updated