messagebox
It creates asynchronous MessageBox components in Unity that wait for user input without blocking the game thread.
Install
mkdir -p .claude/skills/messagebox && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/2340" && unzip -o skill.zip -d .claude/skills/messagebox && rm skill.zipInstalls to .claude/skills/messagebox
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
MessageBox async modal dialogs for Unity with UniTask. Triggers on: confirmation dialog, modal popup, prompt, alert, user confirmation, yes/no dialog, OK/Cancel, async dialog, await user input, delete confirmation, save confirmationKey capabilities
- →Display async confirmation dialogs
- →Create information popups
- →Manage modal lifecycle
- →Pool dialog instances
- →Close all active dialogs
How it works
It utilizes UniTask to await user input in a non-blocking manner and manages object pooling to handle dialog instances efficiently.
Inputs & outputs
When to use messagebox
- →Display confirmation dialogs
- →Create async information popups
- →Manage modal lifecycle during scene transitions
About this skill
MessageBox - Async Modal Dialogs
Built on UniTask for non-blocking async operations with automatic object pooling.
When to Use
- Confirmation dialogs (Yes/No, OK/Cancel)
- Information prompts (OK only)
- Awaiting user decisions in gameplay
API
Show Method
public static UniTask<bool> Show(
string title,
string content,
string ok = "OK",
string no = "Cancel"
)
Returns true for confirm, false for cancel.
Management
MessageBox.CloseAll()- Dismiss all active dialogs (for scene transitions)MessageBox.Dispose()- Release all pooled instances (app shutdown)MessageBox.ActiveCount- Currently displayed dialogsMessageBox.PooledCount- Cached instances in pool
Patterns
Confirmation Dialog
bool confirmed = await MessageBox.Show(
"Delete Item",
"Are you sure you want to delete this item?",
ok: "Delete",
no: "Cancel"
);
if (confirmed)
{
DeleteItem();
}
Custom Button Text
bool saved = await MessageBox.Show(
"Save Changes",
"Keep your changes?",
ok: "Save",
no: "Discard"
);
Single Button (Notification)
// Pass null or empty string to hide cancel button
await MessageBox.Show(
"Success",
"Operation completed!",
ok: "OK",
no: null
);
Clean Up Before Scene Change
MessageBox.CloseAll();
SceneManager.LoadScene("NextScene");
Common Mistakes
- Forgetting to await (dialog shows but code continues immediately)
- Not handling both true/false return values
- Not calling CloseAll() before scene transitions
When not to use it
- →When not using UniTask
- →When blocking the game thread is required
Prerequisites
Limitations
- →Requires explicit CloseAll() call before scene transitions
- →Must be awaited to prevent code execution before user input
How it compares
It provides an asynchronous, non-blocking approach to modal dialogs compared to traditional synchronous Unity UI methods.
Compared to similar skills
messagebox side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| messagebox (this skill) | 2 | 6mo | No flags | Beginner |
| unity-developer | 142 | 4mo | No flags | Advanced |
| avalonia-viewmodels-zafiro | 0 | 6mo | No flags | Intermediate |
| dotnet-blazor | 0 | 3mo | No flags | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by JasonXuDeveloper
View all by JasonXuDeveloper →You might also like
unity-developer
sickn33
Build Unity games with optimized C# scripts, efficient rendering, and proper asset management. Masters Unity 6 LTS, URP/HDRP pipelines, and cross-platform deployment. Handles gameplay systems, UI implementation, and platform optimization. Use PROACTIVELY for Unity performance issues, game mechanics, or cross-platform builds.
avalonia-viewmodels-zafiro
davila7
Optimal ViewModel and Wizard creation patterns for Avalonia using Zafiro and ReactiveUI.
dotnet-blazor
managedcode
Build and review Blazor applications across server, WebAssembly, web app, and hybrid scenarios with correct component design, state flow, rendering, and hosting choices.
orchardcore-theme-creator
OrchardCMS
Creates new OrchardCore themes with proper structure, manifest, layouts, and assets. Use when the user needs to create a new theme, customize layouts, or set up frontend assets.
csharp-developer
zenobi-us
Expert C# developer specializing in modern .NET development, ASP.NET Core, and cloud-native applications. Masters C# 12 features, Blazor, and cross-platform development with emphasis on performance and clean architecture.
game-engine-resources
gmh5225
Guide for game engine development resources including engine source code, plugins, and development guides. Use this skill when researching game engines (Unreal, Unity, Godot, custom engines), engine architecture, or game development frameworks.