Browse Source

Moved Say & AddOption commands to new DialogCommands class.

master
chrisgregan 11 years ago
parent
commit
6afa1e9571
  1. 51
      Assets/Fungus/Legacy/PageCommands.cs
  2. 59
      Assets/Fungus/Scripts/Commands/DialogCommands.cs
  3. 8
      Assets/Fungus/Scripts/Commands/DialogCommands.cs.meta

51
Assets/Fungus/Legacy/PageCommands.cs

@ -135,53 +135,6 @@ namespace Fungus
} }
} }
/**
* Writes story text to the page.
* A continue icon is displayed when the text has fully appeared.
*/
public class Say : CommandQueue.Command
{
string storyText;
public Say(string _storyText)
{
storyText = _storyText;
}
public override void Execute(CommandQueue commandQueue, Action onComplete)
{
IDialog sayDialog = Game.GetInstance().GetDialog();
sayDialog.Say(storyText, onComplete);
}
}
/**
* Adds an option button to the current list of options.
* Use the Choose command to display added options.
*/
public class AddOption : CommandQueue.Command
{
string optionText;
Action optionAction;
public AddOption(string _optionText, Action _optionAction)
{
optionText = _optionText;
optionAction = _optionAction;
}
public override void Execute(CommandQueue commandQueue, Action onComplete)
{
IDialog characterDialog = Game.GetInstance().GetDialog();
characterDialog.AddOption(optionText, optionAction);
if (onComplete != null)
{
onComplete();
}
}
}
/** /**
* Displays all previously added options. * Displays all previously added options.
*/ */
@ -197,7 +150,7 @@ namespace Fungus
public override void Execute(CommandQueue commandQueue, Action onComplete) public override void Execute(CommandQueue commandQueue, Action onComplete)
{ {
IDialog dialog = Game.GetInstance().GetDialog(); IDialog dialog = Game.GetInstance().GetDialog();
PageController pageController = dialog as PageController; PageController pageController = dialog as PageController;
if (pageController != null) if (pageController != null)
{ {
@ -209,7 +162,7 @@ namespace Fungus
// Support for modern IDialog interface // Support for modern IDialog interface
dialog.Say(chooseText, null); dialog.Say(chooseText, null);
} }
// Choose always clears the commandQueue, so there's no need to call onComplete() // Choose always clears the commandQueue, so there's no need to call onComplete()
} }
} }

59
Assets/Fungus/Scripts/Commands/DialogCommands.cs

@ -0,0 +1,59 @@
using UnityEngine;
using System;
using System.Collections;
namespace Fungus
{
/**
* Command classes have their own namespace to prevent them popping up in code completion.
*/
namespace Command
{
/**
* Writes story text to the page.
* A continue icon is displayed when the text has fully appeared.
*/
public class Say : CommandQueue.Command
{
string storyText;
public Say(string _storyText)
{
storyText = _storyText;
}
public override void Execute(CommandQueue commandQueue, Action onComplete)
{
IDialog sayDialog = Game.GetInstance().GetDialog();
sayDialog.Say(storyText, onComplete);
}
}
/**
* Adds an option button to the current list of options.
* Use the Choose command to display added options.
*/
public class AddOption : CommandQueue.Command
{
string optionText;
Action optionAction;
public AddOption(string _optionText, Action _optionAction)
{
optionText = _optionText;
optionAction = _optionAction;
}
public override void Execute(CommandQueue commandQueue, Action onComplete)
{
IDialog characterDialog = Game.GetInstance().GetDialog();
characterDialog.AddOption(optionText, optionAction);
if (onComplete != null)
{
onComplete();
}
}
}
}
}

8
Assets/Fungus/Scripts/Commands/DialogCommands.cs.meta

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0e6a6caa973fb4fd784890f53106004d
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
Loading…
Cancel
Save