Skip to content

Releases: snozbot/fungus

Fungus v3.1.0

25 Jul 13:31
Compare
Choose a tag to compare

Fungus 3.1.0

Added

  • Flowchart automatically registers with LuaEnvironment for ExecuteLua commands #485
  • Clickable2D and Draggable2D can now use EventSystem events to block clicks on UI elements. Added new drag and drop demo scene to illustrate.

Changed

  • Default dialog image is now sliced, so can be resized to any width / height required.
  • Upgraded MoonSharp to v1.6.0.0
  • Added [System.Serializable] attribute to all Variable classes.

Fixed

  • Default dialog box now fits in a 5:4 ratio display #515
  • Dialog input causing an exception if no Event System is present in scene.
  • Missing module variable on round() function
  • Menu() Lua function only works once #511
  • Compile error for folks upgrading using the Fungus 3 unitypackage

Fungus v3.0.0

12 Jul 07:11
Compare
Choose a tag to compare

Fungus v3.0.0

Major release with powerful new Lua scripting support and many small improvements and fixes.
This release should be backwards compatible with projects created using Fungus 2. If you have any upgrading issues let us know on the forum.

Many thanks to the amazing Fungus community for all the suggestions, bug reports and encouragement!

Awesome github contributors:

Added

  • FungusLua: Lua scripting support for Fungus via wrapper components for using MoonSharp in Unity. #281, #317, #334, #237, #235, #232, #224
    • LuaEnvironment component: Execution environment for running Lua scripts.
    • LuaUtils component: Extends LuaEnvironment with lots of useful features.
    • LuaBindings: Maps Unity objects & components to Lua variables for use in Lua scripts.
    • LuaScript: Runs Lua code from a text file or from a string property.
    • LuaStore: Stores variables in a global table which persists across scene loads.
    • FungusModule: A set of utility functions for scripting Unity and Fungus from Lua.
    • FungusPrefs: An improved version of PlayerPrefs that can be easily used from Lua.
    • ExecuteHandler: Listens for any standard Unity event and calls a method on a component in the gameobject. #247
    • ExecuteLua command: Run some Lua script in a Fungus command. Return values can be stored in Fungus variables.
    • PODTypeFactory: Utility factory class for instantiating Plain-Old-Data (POD) types like Color, Vector3, etc.
    • Lots of FungusLua example scenes
    • Fungus documentation now has an extensive section on LuaScripting.
  • StringDataMulti: Like StringData, but uses a multi-line textbox in the inspector.
  • StopBlock command: Stop executing the named block.
  • Improved string substitution system. Now works with Lua global variables and Lua string table, as well as Flowchart variables.
  • Extend the string substitution system yourself using the new ISubstitutionHandler interface.
  • Added TaskManager library to Thirdparty folder. Allows better control over coroutine execution.
  • Show Line Numbers option in Flowchart. Shows the command index in the inspector (off by default). #231
  • Play Animation State command. Plays an animation state directly without a transition. #378
  • Open URL command #382
  • Links to community articles in the help docs #385
  • InfoText.cs component for displaying help information in the top-left of screen
  • "Play from Selected" and "Stop All and Play" context menu options in Block command list
  • Added Command Index property to Call command
  • LuaStore example scene to demonstrate persisting Lua variables between scene loads
  • Use stage.show(), stage.showPortrait & stage.hide() to control stage & portraits from Lua #490
    See FungusExamples/FungusLua/Narrative/PortraitController.unity example scene
  • Portrait functionality moved to new PortraitController utility class for easier scripting.
  • Say and Menu Dialogs now support standard input manager (joystick / controller support) #507 #210
  • Menu options can now be picked with keyboard only
  • Fast forward using Shift in Say Dialogs is now done using the Cancel input (Escape key by default).

Changed

  • Draggable sprite anchors at exact point user clicked.
  • Replaced string with StringData, int with IntegerData, etc. in many command properties. Use variables or constants.
  • Block.Execute renamed to Block.StartExecute, can now specify a command index to start at.
  • Say command: Set the Character using an object field or the dropdown menu. Can now select Character prefabs.
  • Improved Flowchart UpdateVersion system
  • Portrait image is now hidden at startup in SayDialog
  • Use DialogAudio volume property for starting volume on voiceover audio
  • WriterAudio now respects the volume property in all cases
  • Added short open source license info header to all source files
  • SetAudioVolume.waitUntilFinished property #495
  • String substitution uses StringBuilder to avoid string allocations (reduce garbage collection) #490
  • Embed string substitution keys in substitution text (recursive substitution up to 5 levels) #488

Fixed

  • SetDraggable2D filename now matches class name.
  • Unity 5.4 beta errors & warnings
  • CsvParser.cs and InvokeMethod lineendings should be consistent with rest of project.
  • Faulty indent levels when inspector is not displayed #380
  • Hide Portrait before Show Portrait breaks portrait system #384
  • Private variable values being reset with multiple flowcharts #389
  • Stage objects blocking raycasts #391
  • Writer voiceover clip always stops when text stops #393
  • Size tag in UI text is not supported #400
  • Clickable sprites can be clicked through UI objects #377
  • Don't destroy sprite objects in Scene Loader #386
  • Add links to community articles in the help docs #385
  • Control volume bug #464
  • Unity Test Tools compile errors in Unity 5.0
  • Edge of inspector window clipped incorreclty in Unity 5.4 beta #425
  • Child Object gets deleted when having a flowchart on parent and child. #475
  • Fixed command summary incorrect for Fade UI command #486
  • No Music clip selected error summary in Play Sound command
  • Jump command properties incorrect when block duplicated #504
  • menu() Lua command interactable param has no effect #493
  • Set Anim Integer/Float/Bool lose property settings #492
  • Can't select ExecuteBlock from Unity Event #496
  • Fixed aliased commandIndex property in Call command.

Other closed issues

  • GameObjects get duplicated when flowchart is on a different scene #373
  • TextMesh Pro integration #214
  • Clickable3D component #195

Fungus v3.0-beta.3

05 Jul 07:32
Compare
Choose a tag to compare
Fungus v3.0-beta.3 Pre-release
Pre-release

Fungus 3.0-beta.3

Previous Fungus 3 beta release notes

Many thanks to awesome contributors!

Added:

  • LuaStore example scene to demonstrate persisting Lua variables between scene loads
  • Use stage.show(), stage.showPortrait & stage.hide() to control stage & portraits from Lua #490
  • See FungusExamples/FungusLua/Narrative/PortraitController.unity example scene
  • Portrait functionality moved to new PortraitController utility class for easier scripting.
  • Say and Menu Dialogs support standard input manager (joystick / controller support) #507
  • Menu options can now be picked with keyboard only
  • Fast forward using Shift in Say Dialogs is now done using the Cancel input (Escape key by default).

Changed:

  • Added short open source license info header to all source files
  • SetAudioVolume.waitUntilFinished property #495
  • String substitution uses StringBuilder to avoid string allocations #490
  • Embed string substitution keys in substitution text #488

Fixed:

  • FungusLua setcharacter doesn’t set character name #503
  • Jump command properties incorrect when block duplicated #504
  • menu() Lua command interactable param has no effect #493
  • Set Anim Integer/Float/Bool lose property settings #492
  • Can't select ExecuteBlock from Unity Event #496
  • Fixed aliased commandIndex property in Call command.
  • Fixed incorrect final output using write whole words option

Fungus v3.0-beta.2

02 Jun 17:22
Compare
Choose a tag to compare
Fungus v3.0-beta.2 Pre-release
Pre-release

Fungus 3.0-beta.2

Added

  • Added Command Index property to Call command
  • Added LuaStore example scene

Changed

  • LuaScript will reinitialise if modified when playing in editor
  • Optimised string allocations when writing text with Writer.cs to reduce GC calls.

Fixed

  • Fixed character Name appears in Say Dialog when used from Lua #484
  • Fixed command summary incorrect for Fade UI command #486
  • Fix for uninitialized string value
  • Fixed can't set new values on iTween commands #479
  • Fixed Child Object gets deleted when having a flowchart on parent and child. #475
  • No Music clip selected error summary in Play Sound command

Fungus v3.0-beta.1

18 May 10:24
Compare
Choose a tag to compare
Fungus v3.0-beta.1 Pre-release
Pre-release

This is a minor bug fix release. Full list of features and fixes in Fungus 3 is available here.

Fixed

  • Can't set new values on iTween commands #479
  • Child Object gets deleted when having a flowchart on parent and child. #475

Fungus v3.0-beta.0

16 May 07:03
Compare
Choose a tag to compare
Fungus v3.0-beta.0 Pre-release
Pre-release

Fungus 3.0-beta.0

Added

  • FungusLua: Lua scripting support for Fungus via wrapper components for using MoonSharp in Unity. #281, #317, #334, #237, #235, #232, #224
    • LuaEnvironment component: Execution environment for running Lua scripts.
    • LuaUtils component: Extends LuaEnvironment with lots of useful features.
    • LuaBindings: Maps Unity objects & components to Lua variables for use in Lua scripts.
    • LuaScript: Runs Lua code from a text file or from a string property.
    • LuaStore: Stores variables in a global table which persists across scene loads.
    • FungusModule: A set of utility functions for scripting Unity and Fungus from Lua.
    • FungusPrefs: An improved version of PlayerPrefs that can be easily used from Lua.
    • ExecuteHandler: Listens for any standard Unity event and calls a method on a component in the gameobject. #247
    • ExecuteLua command: Run some Lua script in a Fungus command. Return values can be stored in Fungus variables.
    • PODTypeFactory: Utility factory class for instantiating Plain-Old-Data (POD) types like Color, Vector3, etc.
    • Lots of FungusLua example scenes
    • Fungus documentation now has an extensive section on LuaScripting.
  • StringDataMulti: Like StringData, but uses a multi-line textbox in the inspector.
  • StopBlock command: Stop executing the named block.
  • Improved string substitution system. Now works with Lua global variables and Lua string table.
  • Extend the string substitution system yourself using the new ISubstitutionHandler interface.
  • Added TaskManager library to Thirdparty folder. Allows better control over coroutine execution.
  • Show Line Numbers option in Flowchart. Shows the command index in the inspector (off by default). #231
  • Play Animation State command. Plays an animation state directly without a transition. #378
  • Open URL command #382
  • Links to community articles in the help docs #385
  • InfoText.cs component for displaying help information in the top-left of screen
  • "Play from Selected" and "Stop All and Play" context menu options in Block command list

Changed

  • Draggable sprite anchors at exact point user clicked.
  • Replaced string with StringData, int with IntegerData, etc. in many command properties.
  • Bock.Execute renamed to Block.StartExecute, can now specify a command index to start at.
  • Say command: Set the Character using an object field or the dropdown menu. Can now select Character prefabs.
  • Improved Flowchart UpdateVersion system
  • Portrait image is now hidden at startup in SayDialog
  • Use DialogAudio volume property for starting volume on voiceover audio
  • WriterAudio now respects the volume property in all cases

Fixed

  • SetDraggable2D filename now matches class name.
  • Unity 5.4 beta errors & warnings
  • CsvParser.cs and InvokeMethod lineendings should be consistent with rest of project.
  • Faulty indent levels when inspector is not displayed #380
  • Hide Portrait before Show Portrait breaks portrait system #384
  • Private variable values being reset with multiple flowcharts #389
  • Stage objects blocking raycasts #391
  • Writer voiceover clip always stops when text stops #393
  • Size tag in UI text is not supported #400
  • Clickable sprites can be clicked through UI objects #377
  • Don't destroy sprite objects in Scene Loader #386
  • Add links to community articles in the help docs #385
  • Control volume bug #464
  • Unity Test Tools compile errors in Unity 5.0
  • Edge of inspector window clipped incorreclty in Unity 5.4 beta #425

Other closed issues

  • GameObjects get duplicated when flowchart is on a different scene #373
  • TextMesh Pro integration #214
  • Clickable3D component #195

Fungus v2.3.1

29 Jan 21:02
Compare
Choose a tag to compare

Fungus v2.3.1

Fixed

  • Can't click on Say Dialog when a Menu Dialog is active #374
  • Set Audio Pitch: OnComplete not called when duration = 0 #369
  • Fade To View can sometimes not work in Unity 5.3 #370

Fungus v2.3.0

25 Jan 13:07
Compare
Choose a tag to compare

Fungus v2.3.0

Added

  • SetDraggable2D command #191
  • WaitInput command #276
  • Fade UI command to fade UI objects #349
  • Read Text File command to read a text file into a string variable #344
  • Added Set Audio Pitch command #340
  • 'Center View' button to center Flowchart window on all Blocks #302
  • Clear Menu command #300
  • Set Slider Value command #297
  • Stop Flowchart command #289
  • Integration with Esoteric Spine animation system (available in Fungus/Integrations/Spine folder)

Changed

  • Added null checks in Flowchart variable accessors
  • Set Say Dialog property for characters
  • Can now specify the gameobject to shake for punch tag in Writer component
  • PlayMusic command has a loop property
  • Updated reorderable list control to v0.4.3
  • Updated to LeanTween 2.30
  • Added HasExecutingBlocks() and GetExecutingBlocks() to Flowchart class
  • Remove unused Text Width Scale property on Say Dialog
  • Can now specify a camera to use with Camera command (not just main) #319 #307
  • Can now disable Camera Z being forced by View commands #319
  • Text tags now support multiple parameters.
  • Write command now works with Text Mesh Pro text objects.
  • Writer.InstantComplete property controls click-to-complete writing.
  • Shake tag shakes camera instead of Writer game object.

Fixed

  • Ensure parentBlock is set when block executes #320
  • While loop with following If doesn't loop correctly #354
  • Auto cross fade music in Play Music command #199
  • Play Music call doesn't restart if same music already playing
  • Concurrent Say commands on same Say Dialog should interrupt #356
  • CustomGUI class not in Fungus namespace #353
  • Whitespace trimming after {wc} & {c} tags #346
  • iTween commands on the same gameobject can conflict #342 #303
  • Show Sprite should affect child sprites #338
  • Null reference if command classes have same name #312
  • End command indents when not matched with an If #308
  • Draggable objects behaving incorrectly #310
  • Inactive localizeable game objects are now also cached #322
  • SceneManager warnings in Unity 5.3
  • Fixed Windows store build 268
  • Fixed Writer beep timing issues in WebGL #295
  • Removed say command from Flowchart prefab

Fungus v2.2.2

09 Oct 15:22
Compare
Choose a tag to compare

Added

  • Stop Flowchart command and Flowchart.StopAllBlocks() method #288

Changed

  • Only the first Flowchart added to a scene will have a default GameStarted event handler.
  • Null items in variable list are cleaned up on enable.

Fixed

  • Flowchart objects break when made into a prefab #275
  • Localization language does not persist between scenes #271
  • Voiceover clips not playing correctly in Say command #273
  • Changing portrait facing flips incorrectly #190
  • Variable substitution in Menu command #263
  • Null variable reference when substituting variables #278
  • Removed empty gameobject in sherlock demo
  • Removed unused GameStarted component from built-in Flowchart prefab

Fungus v2.2.1

16 Sep 15:50
Compare
Choose a tag to compare

Added

  • Set Interactable command to control UI button, input field, etc. interactivity #178
  • Button Clicked event handler to execute a block when a UI button is clicked
  • End Edit event handler to execute a block when user presses enter in an input field
  • Hide specific commands & categories in the Add Command menu by setting the Hide Commands property on Flowchart

Changed

  • Improved Enter Name example to demonstrate the new Write, Get Text, Set Text, Set Interactable, etc. commands.
  • Removed punctuation pause for last character in a sentence #168
  • Removed unsupported 'shiver' item from tag help description in Say and Write commands
  • Moved LICENSE and README inside the Fungus folder #185

Fixed

  • Concurrent Say calls cause Say Dialog to freeze up #156
  • Null reference error after editing Flowchart code #181
  • Markup text visible if rich text not enabled when using Write command #176
  • ControlAudio waitUntilFinished property doesn't wait for correct time #174
  • Removed legacy hidden objects in example scenes #159
  • Undo for delete command doesn't work #161
  • Flowchart in The Hunter example has Hide Components set to false #150