Browse Source

Merge branch 'master' into UnityReorderable

master
desktop-maesty/steve 7 years ago
parent
commit
f6dc81c750
  1. 74
      Assets/Fungus/Docs/CHANGELOG.txt
  2. 5
      Assets/Fungus/Scripts/Commands/Condition.cs
  3. 11
      Assets/Fungus/Scripts/Components/Block.cs
  4. 7
      Assets/Fungus/Scripts/Components/NarrativeLog.cs
  5. 2
      Assets/Fungus/Scripts/Utils/ConversationManager.cs
  6. 7
      Assets/Fungus/Thirdparty/CSVParser/CsvParser.cs
  7. 218
      Assets/Fungus/Thirdparty/ThirdPartyNotices.txt
  8. 7
      Assets/Fungus/Thirdparty/ThirdPartyNotices.txt.meta
  9. 2
      Docs/Doxyfile
  10. 42
      Docs/command_ref/flow_commands.md
  11. 11
      Docs/command_ref/variable_commands.md
  12. 74
      Docs/fungus_docs/change_log.md
  13. 2
      ProjectSettings/ProjectVersion.txt

74
Assets/Fungus/Docs/CHANGELOG.txt

@ -2,6 +2,40 @@ Changelog {#changelog}
=========
[TOC]
v3.9.0 {#v3_9_0}
======
## Added
- Conversation command supports setting default clear, wait for input and fade options #673
- Added Fungus Priority Signals #671 #670
- allows fungus to notify the outside world that it is doing something of priority so the outside world can pause
- Added GetKey fungus command. #683
- Supports positive and negative keybindings output to a bool, float or int variable
- Supports checking for pressed, release and current state
- Uses keycode with optional fallback to key name
- Disabled Flowcharts and EventHandlers. #682
- Added Dialog history on Save Menu UI #675
- Added BlockReference, a simple data type with a property drawer that makes it easier to select a target fungus block from external c# scripts. #669
- Added comparison (equals and not equals) as well as assign functionality to most variable types. #668
## Changed
- Updated to Unity 2018.1 #681
- Conversation Manager Regex now allows - and _ within say params group. #692
- Conversation example scene makes some basic use of new Conversation features
- Update LeanTween to 2.46 #689
- PortraitController forces alpha and color tweens to be non recursive.
- Updated playground demos
- Football uses GetKey instead of GetAxis (get axis was failing in some packages as inputmanager axis were not imported)
- Defender had a bug due to a change in how unity syncs 'up' between transform and rb2d
## Fixed
- ElseIfs now confirm that the previous condition was at the same indent as themselves. #693
- NarrativeLog is tolerant of null Name or Story fields #690
- Force the hierarchy icon list to refresh when a script a is loaded/changed #672
- Eventhandlers no longer fire when the flowchart is disabled #682
- StopFlowchart can continue now #685
- Fixed stray \\ that were not being stripped on Mac OS, when importing editor resources. #686
v3.8.0 {#v3_8_0}
======
@ -324,16 +358,16 @@ 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.
- 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.
@ -405,16 +439,16 @@ v2.4.0 {#v2_4_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.
- 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.

5
Assets/Fungus/Scripts/Commands/Condition.cs

@ -59,8 +59,11 @@ namespace Fungus
else
{
System.Type previousCommandType = ParentBlock.GetPreviousActiveCommandType();
var prevCmdIndent = ParentBlock.GetPreviousActiveCommandIndent();
if (previousCommandType.IsSubclassOf(typeof(Condition)))
//handle our matching if or else if in the chain failing and moving to us,
// need to make sure it is the same indent level
if (prevCmdIndent == IndentLevel && previousCommandType.IsSubclassOf(typeof(Condition)))
{
// Else If behaves the same as an If command
EvaluateAndContinue();

11
Assets/Fungus/Scripts/Components/Block.cs

@ -355,6 +355,17 @@ namespace Fungus
return null;
}
public virtual int GetPreviousActiveCommandIndent()
{
if (previousActiveCommandIndex >= 0 &&
previousActiveCommandIndex < commandList.Count)
{
return commandList[previousActiveCommandIndex].IndentLevel;
}
return -1;
}
/// <summary>
/// Recalculate the indent levels for all commands in the list.
/// </summary>

7
Assets/Fungus/Scripts/Components/NarrativeLog.cs

@ -66,8 +66,11 @@ namespace Fungus
{
if (writerState == WriterState.End)
{
AddLine(SayDialog.GetSayDialog().NameText.text,
SayDialog.GetSayDialog().StoryText.text);
var sd = SayDialog.GetSayDialog();
var from = sd.NameText != null ? sd.NameText.text : string.Empty;
var line = sd.StoryText != null ? sd.StoryText.text : string.Empty;
AddLine(from, line);
}
}

2
Assets/Fungus/Scripts/Utils/ConversationManager.cs

@ -116,7 +116,7 @@ namespace Fungus
{
//find SimpleScript say strings with portrait options
//You can test regex matches here: http://regexstorm.net/tester
var sayRegex = new Regex(@"((?<sayParams>[\w ""><.']*):)?(?<text>.*)\r*(\n|$)");
var sayRegex = new Regex(@"((?<sayParams>[\w ""><.'-_]*):)?(?<text>.*)\r*(\n|$)");
MatchCollection sayMatches = sayRegex.Matches(conv);
var items = new List<ConversationItem>(sayMatches.Count);

7
Assets/Fungus/Thirdparty/CSVParser/CsvParser.cs vendored

@ -1,4 +1,9 @@
using System;
// Copyright 2014 ideafixxxer
// Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
// The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;

218
Assets/Fungus/Thirdparty/ThirdPartyNotices.txt vendored

@ -0,0 +1,218 @@
Fungus is governed by the Asset Store EULA and MIT license; however, the
following components are governed by the licenses indicated below:
=================
CsvParser
MIT License
Copyright 2014 ideafixxxer
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
=================
MoonSharp
MIT License
Copyright (c) 2014-2016, Marco Mastropaolo
All rights reserved.
Parts of the string library are based on the KopiLua project (https://github.com/NLua/KopiLua)
Copyright (c) 2012 LoDC
Visual Studio Code debugger code is based on code from Microsoft vscode-mono-debug project (https://github.com/Microsoft/vscode-mono-debug).
Copyright (c) Microsoft Corporation - released under MIT license.
Remote Debugger icons are from the Eclipse project (https://www.eclipse.org/).
Copyright of The Eclipse Foundation
The MoonSharp icon is (c) Isaac, 2014-2015
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of the {organization} nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
=================
iTween
MIT License
Copyright (c) 2011 Bob Berkebile (pixelplacment)
Please direct any bugs/comments/suggestions to http://pixelplacement.com
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=================
LeanTween
MIT License
Copyright (c) 2017 Russell Savage - Dented Pixel
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=================
Easing Equations
BSD License.
Copyright (c)2001 Robert Penner
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
Neither the name of the author nor the names of contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
=================
LineEndingsEditMenu
MIT License
Copyright (c) 2014 Tiaan Geldenhuys
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following
conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
=================
MarkerMetro.Unity.WinLegacy
MIT License
Copyright (c) 2015 Marker Metro
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
=================
ReorderableListField
MIT License
The MIT License (MIT)
Copyright (c) 2013-2015 Rotorz Limited
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
=================
Usfxr
Apache License
Copyright 2013 Tiaan Geldenhuys, 2014 Zeh Fernando
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

7
Assets/Fungus/Thirdparty/ThirdPartyNotices.txt.meta vendored

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: f4289f30733584d9f82725b2434edbea
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

2
Docs/Doxyfile

@ -38,7 +38,7 @@ PROJECT_NAME = Fungus
# could be handy for archiving the generated documentation or if some version
# control system is used.
PROJECT_NUMBER = v3.6.1
PROJECT_NUMBER = v3.9.0
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a

42
Docs/command_ref/flow_commands.md

@ -35,7 +35,18 @@ Boolean Data | Fungus.BooleanData | Boolean value to compare against
Integer Data | Fungus.IntegerData | Integer value to compare against
Float Data | Fungus.FloatData | Float value to compare against
String Data | Fungus.StringDataMulti | String value to compare against
Animator Data | Fungus.AnimatorData | Animator value to compare against
Audio Source Data | Fungus.AudioSourceData | AudioSource value to compare against
Color Data | Fungus.ColorData | Color value to compare against
Game Object Data | Fungus.GameObjectData | GameObject value to compare against
Material Data | Fungus.MaterialData | Material value to compare against
Object Data | Fungus.ObjectData | Object value to compare against
Rigidbody2 D Data | Fungus.Rigidbody2DData | Rigidbody2D value to compare against
Sprite Data | Fungus.SpriteData | Sprite value to compare against
Texture Data | Fungus.TextureData | Texture value to compare against
Transform Data | Fungus.TransformData | Transform value to compare against
Vector2 Data | Fungus.Vector2Data | Vector2 value to compare against
Vector3 Data | Fungus.Vector3Data | Vector3 value to compare against
# End # {#End}
Marks the end of a conditional block.
@ -54,7 +65,18 @@ Boolean Data | Fungus.BooleanData | Boolean value to compare against
Integer Data | Fungus.IntegerData | Integer value to compare against
Float Data | Fungus.FloatData | Float value to compare against
String Data | Fungus.StringDataMulti | String value to compare against
Animator Data | Fungus.AnimatorData | Animator value to compare against
Audio Source Data | Fungus.AudioSourceData | AudioSource value to compare against
Color Data | Fungus.ColorData | Color value to compare against
Game Object Data | Fungus.GameObjectData | GameObject value to compare against
Material Data | Fungus.MaterialData | Material value to compare against
Object Data | Fungus.ObjectData | Object value to compare against
Rigidbody2 D Data | Fungus.Rigidbody2DData | Rigidbody2D value to compare against
Sprite Data | Fungus.SpriteData | Sprite value to compare against
Texture Data | Fungus.TextureData | Texture value to compare against
Transform Data | Fungus.TransformData | Transform value to compare against
Vector2 Data | Fungus.Vector2Data | Vector2 value to compare against
Vector3 Data | Fungus.Vector3Data | Vector3 value to compare against
# Jump # {#Jump}
Move execution to a specific Label command in the same block
@ -176,6 +198,15 @@ Property | Type | Description
--- | --- | ---
Frame Count | Fungus.IntegerData | Number of frames to wait for
# WaitInput # {#WaitInput}
Waits for a period of time or for player input before executing the next command in the block.
Defined in WaitInput
Property | Type | Description
--- | --- | ---
Duration | System.Single | Duration to wait for. If negative will wait until player input occurs.
# While # {#While}
Continuously loop through a block of commands while the condition is true. Use the Break command to force the loop to terminate immediately.
@ -189,5 +220,16 @@ Boolean Data | Fungus.BooleanData | Boolean value to compare against
Integer Data | Fungus.IntegerData | Integer value to compare against
Float Data | Fungus.FloatData | Float value to compare against
String Data | Fungus.StringDataMulti | String value to compare against
Animator Data | Fungus.AnimatorData | Animator value to compare against
Audio Source Data | Fungus.AudioSourceData | AudioSource value to compare against
Color Data | Fungus.ColorData | Color value to compare against
Game Object Data | Fungus.GameObjectData | GameObject value to compare against
Material Data | Fungus.MaterialData | Material value to compare against
Object Data | Fungus.ObjectData | Object value to compare against
Rigidbody2 D Data | Fungus.Rigidbody2DData | Rigidbody2D value to compare against
Sprite Data | Fungus.SpriteData | Sprite value to compare against
Texture Data | Fungus.TextureData | Texture value to compare against
Transform Data | Fungus.TransformData | Transform value to compare against
Vector2 Data | Fungus.Vector2Data | Vector2 value to compare against
Vector3 Data | Fungus.Vector3Data | Vector3 value to compare against

11
Docs/command_ref/variable_commands.md

@ -94,5 +94,16 @@ Boolean Data | Fungus.BooleanData | Boolean value to set with
Integer Data | Fungus.IntegerData | Integer value to set with
Float Data | Fungus.FloatData | Float value to set with
String Data | Fungus.StringDataMulti | String value to set with
Animator Data | Fungus.AnimatorData | Animator value to set with
Audio Source Data | Fungus.AudioSourceData | AudioSource value to set with
Color Data | Fungus.ColorData | Color value to set with
Game Object Data | Fungus.GameObjectData | GameObject value to set with
Material Data | Fungus.MaterialData | Material value to set with
Object Data | Fungus.ObjectData | Object value to set with
Rigidbody2 D Data | Fungus.Rigidbody2DData | Rigidbody2D value to set with
Sprite Data | Fungus.SpriteData | Sprite value to set with
Texture Data | Fungus.TextureData | Texture value to set with
Transform Data | Fungus.TransformData | Transform value to set with
Vector2 Data | Fungus.Vector2Data | Vector2 value to set with
Vector3 Data | Fungus.Vector3Data | Vector3 value to set with

74
Docs/fungus_docs/change_log.md

@ -2,6 +2,40 @@ Changelog {#changelog}
=========
[TOC]
v3.9.0 {#v3_9_0}
======
## Added
- Conversation command supports setting default clear, wait for input and fade options #673
- Added Fungus Priority Signals #671 #670
- allows fungus to notify the outside world that it is doing something of priority so the outside world can pause
- Added GetKey fungus command. #683
- Supports positive and negative keybindings output to a bool, float or int variable
- Supports checking for pressed, release and current state
- Uses keycode with optional fallback to key name
- Disabled Flowcharts and EventHandlers. #682
- Added Dialog history on Save Menu UI #675
- Added BlockReference, a simple data type with a property drawer that makes it easier to select a target fungus block from external c# scripts. #669
- Added comparison (equals and not equals) as well as assign functionality to most variable types. #668
## Changed
- Updated to Unity 2018.1 #681
- Conversation Manager Regex now allows - and _ within say params group. #692
- Conversation example scene makes some basic use of new Conversation features
- Update LeanTween to 2.46 #689
- PortraitController forces alpha and color tweens to be non recursive.
- Updated playground demos
- Football uses GetKey instead of GetAxis (get axis was failing in some packages as inputmanager axis were not imported)
- Defender had a bug due to a change in how unity syncs 'up' between transform and rb2d
## Fixed
- ElseIfs now confirm that the previous condition was at the same indent as themselves. #693
- NarrativeLog is tolerant of null Name or Story fields #690
- Force the hierarchy icon list to refresh when a script a is loaded/changed #672
- Eventhandlers no longer fire when the flowchart is disabled #682
- StopFlowchart can continue now #685
- Fixed stray \\ that were not being stripped on Mac OS, when importing editor resources. #686
v3.8.0 {#v3_8_0}
======
@ -324,16 +358,16 @@ 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.
- 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.
@ -405,16 +439,16 @@ v2.4.0 {#v2_4_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.
- 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.

2
ProjectSettings/ProjectVersion.txt

@ -1 +1 @@
m_EditorVersion: 2018.1.0f2
m_EditorVersion: 2018.1.6f1

Loading…
Cancel
Save