Yooo, back at it with a new REAL MEATY update like we used to do. This time: User Interface!
The new UI system is again a good ol' flexible system made easy to use. You can add widgets to display information, which you can either create from the Godot Editor (for advanced stuff) or the CASP script directly! There is mirroring, all that good stuff, although it will need a bit of extra work before being truly complete. In its current state though, it can handle most fighting games! Get all the juicy info in the documentation page
We also got plenty of QoL improvements left and right,
Breaking changes
- Must manually move sprite animations from the Graphics specblock to the Anims specblock. Add a
:Specs-Anims:
block in your casp file from a text editor then move your variables there.
TLDR
- User Interface system added!
- Motion inputs are improved with aliases
- Editor QoL
Full Changelist
- Gameplay
- Added jump cancels as a default feature, can be set manually or automatically through attack types, can be set to work on hit, block, or whenever per attack.
- Added cancels to throw followups
- UI
- Added a new and more robust UI system based on widgets
- Global UI Scene: Can use a scene as a base point for UI
- Player UI Scene: Can use a scene as a base point for individual player's UI
- Can add player widgets from CASP
- Bar Widgets and default bar widget
- Icons Widgets and default icons widget
- IconSwitch Widgets and default IconSwitch Widget
- Text Widgets and default Text widget
- Editor
- Editor now displays the proper Castagne version in the updater, main menu, and character editor
- Some default categories are now ordered in a specific way and display a specific name and icon (mainly attack states)
- User and default editor tools are now separated in the config and thus easier to manage
- Last used tool is opened automatically
- New button in the editor showing the number of errors regardless of tool. Click it to get to the compile tool
- Added categories to Specblock Structures
- Bugfix: Specblock Structures now show the proper display name instead of the internal variable name
- Specblocks show parent structures in the list now, which can be overriden
- Specblocks now are locked in locked files so you don't wonder why your edits aren't working
- Added option lists to specblocks
- Engine
- Added TargetSave and TargetRecall to have a “main target” system
- Added TargetRecall at the beginning of CommonAfter to stabilize the end of state behavior
- Fixed internal bug where boolean types sometimes were treated as string types
- Misc
- Specblocks now store variables in alphabetical order (more stable for VCS)
- Centralized information gathering from the castagne-version file.
- Moved sprite animations from the graphics specblock to the animations specblock
- Input Motions Aliases have been added and can be customized
- Assets are now held in a separate repo
Abs()
added
- Bugs
- Doesn't crash anymore when spawning an entity on frame 1 of an attack (somewhat, you can still do it if you try hard enough but it's almost on purpose now)