Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
0.0.2-2
FORGE096 released Ayu-IDE version 0.0.2-2 on December 24, 2025
🚀 AyuIde v0.0.2 - Placeholder System Improvements
📦 Release Notes
This update focuses on fixing critical placeholder issues and improving the overall code generation quality, especially for event-based placeholders.
✨ New Features
Enhanced Placeholder System
- Complete Placeholder Support: All placeholders now work correctly across all event types
- Placeholder Discovery: Added visual placeholder icon on event blocks to help users discover available placeholders
- Improved Placeholder Dialog: Better organized placeholder dialog with categories and examples
🐛 Bug Fixes
Critical Fixes
- Fixed InventoryClick Placeholder Bug: Resolved issue where placeholders in InventoryClick events were not being replaced correctly. Previously, only the first placeholder (
{player}) was working, now all placeholders work as expected. - Fixed Kotlin Operator Precedence: Fixed critical bug in Kotlin code generation where the Elvis operator (
?:) had incorrect precedence, causing string concatenation to fail. This affected all placeholders in Kotlin-generated code. - Fixed Placeholder Replacement: Improved placeholder replacement logic to handle all edge cases correctly
Event-Specific Fixes
- Fixed placeholder handling for
playerMoveevents - Fixed placeholder handling for
playerInteractevents - Fixed placeholder handling for
inventoryClickevents - Improved null-safety handling in generated Kotlin code
🔧 Technical Improvements
Code Generation Engine
- Better Null-Safety: Improved null-safe operator handling in Kotlin code generation
- Operator Precedence: Fixed operator precedence issues in generated code
- Placeholder Parsing: Enhanced placeholder parsing to handle all placeholder types correctly
Code Quality
- Added proper parentheses around placeholder replacements to ensure correct operator precedence
- Improved error handling in code generation pipeline
- Better handling of nested event blocks
📝 Changelog
Changed
- Placeholder replacement logic now properly handles all event types
- Kotlin code generation now includes proper parentheses for null-safe operations
- Placeholder dialog UI improved with better organization
Fixed
{player}placeholder in InventoryClick events{click_type}placeholder in InventoryClick events{slot}placeholder in InventoryClick events{item}placeholder in InventoryClick events- Operator precedence issues in Kotlin-generated code
- Placeholder replacement for nested blocks
🎯 Example Usage
Before (Broken)
"&c" + (event.whoClicked as? Player)?.name ?: "Unknown" + " &e" + event.click.name
// This would only show the player name, rest was lost
After (Fixed)
"&c" + ((event.whoClicked as? Player)?.name ?: "Unknown") + " &e" + event.click.name + " &7on &e" + event.slot.toString() + " &7on &e" + (event.currentItem?.type?.name ?: "AIR")
// Now all placeholders work correctly!
🙏 Acknowledgments
Thank you to all users who reported these issues and helped us improve AyuIde!
🔗 Links
Information
| Published on | December 24, 2025 |
|---|---|
| Downloads | 1 |
Platforms
Paper (1.13-1.21.10)
Waterfall (1.13-1.21)
Velocity (3.0-3.4)