node-jsBuild v1.915d92fa

v1.915d92fa51a5dd5df9d6c8243c00eccc406c0d44

This release improves layout flexibility, data-driven UI rendering, and licensing robustness while addressing multiple animation and stability issues across SmartUI components. The new GridLayout alignment system and utility expressions significantly simplify UI positioning workflows, making SmartUI more powerful for building dynamic interfaces in Construct 3.

Addon ID
Current Version

ppstudio_smartui_plugin

1.0.0.6⬆️

ppstudio_button_beh

0.0.0.3

ppstudio_checkbox_beh

0.0.0.4⬆️

ppstudio_container_beh

0.0.0.3

ppstudio_datalistener_beh

0.0.0.4⬆️

ppstudio_dialog_beh

0.0.0.3

ppstudio_discreteprogress_beh

0.0.0.4⬆️

ppstudio_gridlayout_beh

0.0.0.5⬆️

ppstudio_progressbar_beh

0.0.0.4

ppstudio_radiobutton_beh

0.0.0.6⬆️

ppstudio_scrollbar_beh

0.0.0.3

ppstudio_scrollview_beh

0.0.0.3

🔄 Improvements

Framework Core

InstanceID Licensing Redesign

The SmartUI InstanceID generation system has been redesigned to improve license activation reliability.

InstanceID is now generated based on:

  • Device hardware information

  • The Construct 3 username

This change strengthens license validation while reducing conflicts across installations.

🆕 New Features

GridLayout Cell Alignment System

GridLayout now supports a global cell-alignment property that allows precise positioning of objects inside each grid cell.

Supported alignment values include: left, center, right, top-left, top-center, top-right, center-left, center-center, center-right, bottom-left, bottom-center, bottom-right.

The default value is center.

This feature enables more flexible layout composition without requiring manual position adjustments after rendering.

GridLayout Utility Expressions

Two new expressions have been introduced to simplify coordinate calculations inside grid layouts:

GetYByRow(row) Returns the Y coordinate corresponding to the specified grid row.

GetXByCol(column) Returns the X coordinate corresponding to the specified grid column.

These expressions allow developers to translate logical grid positions into scene coordinates.

GridLayout SetAt Action

A new SetAt action allows placing objects directly into a specific grid cell.

If another object already exists in the target cell, the existing object is automatically destroyed and replaced by the new one.

This action simplifies dynamic grid updates and object replacement workflows.

Data Listener Rendering Index

The Data Listener behavior now returns the Data Source Index (DsIndex) when objects are rendered in renderer mode.

This makes it easier to track which element from the data source generated each UI instance.

Discrete Progress Auto-Color

The Discrete Progress behavior now includes an Auto-Color feature that automatically assigns colors based on progress state.

🐞 Bug Fixes

Auto-Color Override Fix

Fixed an issue where Auto-Color would override manually assigned colors.

Auto-Color is now only applied when:

  • Auto-Color is enabled

  • The feature is explicitly active

Manual color settings are now respected.

Button Restore Animation Fix

Resolved an issue where the restore animation incorrectly fell back to the focus animation, even when a focus animation was not defined.

Button Press Animation Fix

Fixed a case where the press animation would not play if the button remained pressed after the animation completed.

Button Animation Restore Handling

Animation functions now return null when the restore time is zero, preventing unnecessary restore animation triggers.

Restore animations are now triggered only when the button is no longer pressed.

Restore Animation Null Handling

Fixed a bug where the restore animation was not triggered when the restore function returned null.

GridLayout Null PageData Exception

Fixed an exception occurring in GridLayout when no pagedata was present.

Pointer Tracking Exception

Resolved a null pointer exception that occurred when the tracked pointer object was destroyed.

Checkbox Animation Assignment

Fixed an issue where function animations were not correctly assigned in the Checkbox behavior.

Radio Button Animation Assignment

Resolved a bug where function animations were not assigned in the Radio Button behavior.

Radio Button Disabled Animation Fix

Fixed an issue with SetUncheckedDisabledAnimation not applying correctly.

Last updated