Toast Notifications & Game Events
PotatoMC allows plugins to trigger client-side visual overlays—including Toast Popups, Item Cooldown Sweeps, and Minecraft Game Events directly from native Rust.
1. Toast Notifications (`Toast`)
Show custom advancement-style toast banners in the top-right corner of the player's screen:
use potato_api::toast::{Toast, ToastFrame};
// Task frame (square border)
let task = Toast::task("New Quest Unlocked", "minecraft:compass");
player.send_toast(&task);
// Goal frame (shield border)
let goal = Toast::goal("100 Kills Milestone", "minecraft:diamond_sword");
player.send_toast(&goal);
// Challenge frame (fancy ornate star border)
let challenge = Toast::challenge("Dragon Slayer", "minecraft:dragon_head");
player.send_toast(&challenge);2. Item Cooldown Tracker
Trigger grey wipe-animation cooldown sweeps on specific item types (like Paper's Player#setCooldown):
// Put ender pearls on a 5-second (100 ticks) cooldown
player.set_item_cooldown("minecraft:ender_pearl", 100);
// Check remaining ticks
if player.has_item_cooldown("minecraft:ender_pearl") {
let remaining = player.get_item_cooldown("minecraft:ender_pearl");
player.send_message(&format!("Ender Pearl is on cooldown for {} ticks!", remaining));
}3. Game Events & Visual Shaders
use potato_api::game_event::GameEvent;
// 1. Show Minecraft Demo Screen dialog
player.send_demo_screen();
// 2. Trigger Elder Guardian curse flash animation
player.send_game_event(GameEvent::ElderGuardianAppearance);
// 3. Play End credits roll
player.send_game_event(GameEvent::WinGameCredits);