Xareus 2.5.9 (09/07/2024)
* Changed: Sensor and Effector selection and list management now uses UI Toolkit. All other functions types and functions parameters still use IMGUI.
* Added: When using VisualScriptingSensor and VisualScriptingEffector, visual graph variables can now be set in the respective transition inspectors
* Added: XareusSettings class to help xareus developers to handle different settings scopes: OSUserSettings, ProjectSettings, ProjectUserSettings
* Added: "File => Close All Scenarios" in the scenario editor will close all scenarios, including mismanaged "ghost" scenarios that do not appear in tabs and sometimes trigger errors in the console
* Fixed: Selecting an arc would trigger an error in the console and not show the arc inspector
* Fixed: Toggling initial multiple times on a sequence would show multiple token init elements
* Fixed: Decorations parameters can be set in the inspector again
* Fixed: Some commands (paste, cut, duplicate delete) could be triggered on a playing or played scenario
* Fixed: In some cases, Unity inspector would trigger errors when a scenario was being edited at the same time
Xareus 2.5.8 (27/05/2024)
* Changed: Sub-scenarios initial sequences that hold a TokenInit will now have an effect on the token they receive and override the incoming token data in case of conflict
* Changed: Reworked token and scenario context data display in the inspector. The data of tokens and the scenario context will now correctly update during runtime and remain after exiting playmode
* Added: VisualScriptingSensor and VisualScriptingEffector are sensor and effector that can hold a Unity Visual Scripting Graph
* Added: Pressing the escape key while creating an arc will cancel the arc creation. Pressing escape in other cases will clear the current node selection.
* Added: Scenario editor menu entry "File" => "Close All Scenarios" to close all opened scenarios. This will also close any "ghost" scenario. "ghost" scenarios sometimes occur and are scenarios that do not appear in the editor but are still loaded, resulting in errors displayed in the console
* Added: SetValueInContextEffector to set a value in any context (token/sequence context, scenario context, ...)
* Added: DefaultUnityContextInit and DefaultUnityTokenUpdate are Unity-thread safe versions of DefaultContextInit and DefaultTokenUpdate. When running a scenario in Unity, the former will automatically replace the later
* Fixed: In some cases, an exception would be thrown when setting a unity object in a DefaultContextInit or DefaultContextUpdate.
* Fixed: Ids of XUObjects and XUTypes could be automatically changed when editing a prefab in Unity. This was not intended
* Fixed: Sub petri-nets created in the editor would not contain a transition by default
* Fixed: Adding an upstream arc to a transition would not always be correctly detected, resulting in the transition inspector wrongly complaning about having no upstream sequence
* Fixed: Pressing ctrl+s would sometimes throw an exception when the editor contains a played scenario
Xareus 2.5.7 (10/04/2024)
* Changed: Default log4net configuration file in prefabs now has a global warning level instead of warning level for some elements and debug level for others
* Fixed: prefabs where broken due to an issue in package creation
Xareus 2.5.6 (05/04/2024)
* Changed: Comments are now opened/closed when cliking on the triangle toggle only
* Changed: Sections are now selected when clicking on the title or covering the whole section with the selection rectangle
* Changed: When a scenario state is loaded, sensors and effectors are now reset
* Changed: When creating a node (place, state, transition, ...), it is now mangetized to the grid if possible
* Changed: Better error message when the scenario engine kernel has not scenario asset set
* Changed: SetMemberValueEffector, CheckMemberValueSensor and CompareMembersValueSensor inspector will now show the "type first" tab by default if it is more fitting to the current parameters
* Added: Arc can now be selected and deleted
* Fixed: Dragging nodes over a magntized position on the grid would result in an offset between the nodes and the cursor
* Fixed: SetMemberValueEffector, CheckMemberValueSensor and CompareMembersValueSensor now correctly display members to select when using a variable component value
* Fixed: It is now possible to create nodes in an existing section
* Fixed: Transitions in decision trees would not called TransitionFiredEvent when fired
* Fixed: Xareus now requires InputSystem package to prevent compilation errors on first import
* Fixed: NullReferenceException would sometimes be thrown when closing the scenario editor, quitting unity or saving the current scene
Xareus 2.5.5 (18/03/2024)
* Changed: Constant values in function parameters are now set only once, resulting in less garbage and faster execution time
* Added: Context menu (and sample) to create a sub decision tree
* Added: PostCheck method in sensors that is called on all sensors of an event after a check, even if previous sensors returned false to the check
* Fixed: sensors on Decisions would not be stopped in some cases
* Fixed: Changing the color of a comment or a section is now correctly reported in the canvas.
* Fixed: If a scenario is opened multiple times, other instances are not updated correctly
* Fixed: AInUnityStepSensor was behaving incorrectly when running from a scenario in a separate thread
* Fixed: Input/InputActionSensor default values were not correctly set
* Fixed: XuObject property in XUType is null when the GameObject is deactivated
* Fixed: Unregister XURelation should free its ID
* Fixed: Event context entry selection was not correctly converted (/ replaced by .) in the resulting scenario, leading to errors in runtime
* Fixed: In some occasions, closing and reopening a scenario would result in a duplicate display of the canvas
* Fixed: Input System Converter Assembly Lacks a link reference
* Fixed: XUObject is not correctly set in XUType when the GameObject is deactivated
Xareus 2.5.4 (22/02/2024)
* Fixed: Changing the color of a comment or a section is now correctly reported in the canvas.
Xareus 2.5.3 (15/02/2024)
* Fixed: In some cases, some sensors would not be reset as expected (When a loop was present next to the sensors)
* Fixed: External scenarios were not updated at runtime when the scenario evolved
* Fixed: When a XUObject was disabled or removed, it did not remove its ID from the used IDs, which could cause issues when reloading the scene
* Fixed: Various minor editor bugs
* Added: In Realization Query Parameters, it is now possible to define types that should appear in the results (in addition to objects)
Xareus 2.5.2 (13/02/2024)
* Changed: XUTypes no longer need to be on a GameObject with a XUObject. They will be attached to the first parent containing a XUObject
* Changed: Canvas position is now saved correctly in the scenario file and kept in memory when editing and reloading the domain
* Fixed: External scenario state was not updated correctly in the scenario editor at runtime
* Fixed: When setting a Relations/CheckXareusTypeMemberValueSensor, XuObjects list was not correctly displayed
* Fixed: InputActionSensor and ObjectCollisionSensor were not correctly reset to be used again
* Fixed: Decision tree was not computing enabled transitions correctly
Xareus 2.5.1 (30/01/2024):
* Several optimizations reducing garbage creation and speeding up the code
* Changed: Changed default inCollision variable to true in the objectCollisionSensor
* Changed: Renamed CreateAndAddSubSequence to CreateAndAddSequence
* Fixed: Error when reloading a scene with a scenario running
* Fixed: The background grid in the scenario editor would sometimes disapear after exiting play mode
* Fixed: Sections would hide the arcs when they were in the process of being created by the user
* Fixed: The scenario editor would open with no scenario when entering play mode in some cases
Xareus 2.5.0 (19/01/2024):
* Added: New graph type: DecisionTree
* Added: Possibility to dynamically load a scene
* Added: Added Sensor on the return value of a method : CheckMethodReturnValueSensor
* Added: Sensor to compare a field/property to a value (greater/smaller/equal/...) : UnityNumberSensor
* Fixed: Various scenario editor bugs
* Fixed: First check on sensors inheriting from AInUnityStepSensor could be skipped
* Fixed: Deleting an upstram place was no possible in some cases