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, base: Base, } impl PopupQueue { pub fn queue(&mut self, popup: Popup) { self.popups.push_back(popup); } pub fn poll(&mut self) -> Option { self.popups.pop_front() } }