skullball/rust/src/popup_queue.rs
2026-07-23 19:38:05 +03:00

28 lines
476 B
Rust

use std::collections::VecDeque;
use godot::prelude::*;
pub struct Popup {
pub title: String,
pub message: String,
pub ok: bool,
}
#[derive(GodotClass)]
#[class(base=Node, init, singleton)]
pub struct PopupQueue {
popups: VecDeque<Popup>,
base: Base<Node>,
}
impl PopupQueue {
pub fn queue(&mut self, popup: Popup) {
self.popups.push_back(popup);
}
pub fn poll(&mut self) -> Option<Popup> {
self.popups.pop_front()
}
}