Releases: exodrifter/unity-rumor
Releases · exodrifter/unity-rumor
More operators and general flexibility
This update adds more operators and increases general flexibility. This is the first official release of Rumor that is not in a pre-release state.
If you find Rumor useful, consider supporting development of this framework by becoming my patron. Development of this framework is only possible with the continued patronage of my patrons.
Added
- Added the ability to specify a clear for just dialog or just choices
- Added the default binding
_choice
, which returns the contents of the
last chosen choice - Added the
-=
,+=
,/=
, and*=
assignment operators - Added the
<
,<=
,>
, and>=
comparison operators
Changed
- The
OnClear
event in RumorState has been changed to use aClearType
enum,
which specifies if everything, just choices, or just dialog was cleared - The Pause command will now wait for an advance if the time is less than or
equal to 0 - Multiple methods of the same name can be binded as long as they have a
different number of input parameters
More events and general bugfixes
Added
- Added an
OnDialogAdd
,OnDialogSet
, andOnClear
events to RumorState - Added the Clear command
- Added an
OnWaitForAdvance
andOnWaitForChoose
event to Rumor - Added a
Cancelled
property to Rumor
Changed
- AutoAdvance is now a time instead of a toggle, which indicates the amount of
time before the Rumor will attempt to automatically advance - Bindings are now stored in the Rumor instead of the Scope
Fixed
- Fix null variables not handled properly in expressions
- Fix no boolean literals parsing in
RumorCompiler
- Fix nodes not checking for null values
- Fix
If
conditional not checking for null values
Choose commands
The major feature addition in this release is the Choose command. You can read more about how it works in PR #11.
Added
- Added an
AutoAdvance
property to Rumor that causes it to automatically
advance if possible - Added
Cancel
andFinish
methods to Rumor - Added
CancelCount
andFinishCount
properties to Rumor - Added a
Choose
node - Added the ability to use one-line comments
Changed
- Added
SetupDefaultBindings
convenience method to Rumor for common bindings Choice
nodes no longer automatically wait for a choice at the end of a
chain of choices. Instead, use theChoose
node to wait for a choice
Better Rumor execution behaviour
Added
- Added a
Running
property to Rumor - Added
OnStart
andOnFinish
events to Rumor - Added
OnVarSet
event to Scope
Changed
Rumor.Run()
will restart the script instead of throwing an exception if it
is already runningJumpToLabel
andCallLabel
are now exposed publicly, and work even if the
Rumor has not been started yet- Rumor constructors now provide a convenience method that takes a string
directly - You can now pass Rumor a scope to use
Removed
- The RumorCodeExample has been removed as it's potentially
misleading/confusing
Initial release
The following actions are available in this initial release:
- Label - Specifies a location
- Say - Replaces the dialog in the current state
- Add - Appends text to the end of the dialog in the current state
- Choice - Adds a choice and all following choices to the current state
- Pause - Pauses execution for a short amount of time
- Jump - Modifies the stack so that execution will continue at the specified label
- Call - Pushes a new stack frame onto the stack with the children nodes from the specified label
- Return - Exits the current stack frame
You can also:
- Bind methods to a Rumor's scope
- Subscribe to events on each new node
For examples of how Rumor works, see the Examples/
folder.