You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
2.4 KiB
74 lines
2.4 KiB
// This code is part of the Fungus library (http://fungusgames.com) maintained by Chris Gregan (http://twitter.com/gofungus). |
|
// It is released for free under the MIT open source license (https://github.com/snozbot/fungus/blob/master/LICENSE) |
|
|
|
using UnityEngine; |
|
using System.Collections.Generic; |
|
using Fungus.Utils; |
|
|
|
namespace Fungus |
|
{ |
|
/// <summary> |
|
/// A Character that can be used in dialogue via the Say, Conversation and Portrait commands. |
|
/// </summary> |
|
public interface ICharacter |
|
{ |
|
/// <summary> |
|
/// Character name as displayed in Say Dialog. |
|
/// </summary> |
|
string NameText { get; } |
|
|
|
/// <summary> |
|
/// Color to display the character name in Say Dialog. |
|
/// </summary> |
|
Color NameColor { get; } |
|
|
|
/// <summary> |
|
/// Sound effect to play when this character is speaking. |
|
/// </summary> |
|
/// <value>The sound effect.</value> |
|
AudioClip SoundEffect { get; } |
|
|
|
/// <summary> |
|
/// List of portrait images that can be displayed for this character. |
|
/// </summary> |
|
List<Sprite> Portraits { get; } |
|
|
|
/// <summary> |
|
/// Direction that portrait sprites face. |
|
/// </summary> |
|
FacingDirection PortraitsFace { get; } |
|
|
|
/// <summary> |
|
/// Currently display profile sprite for this character. |
|
/// </summary> |
|
/// <value>The profile sprite.</value> |
|
Sprite ProfileSprite { get; set; } |
|
|
|
/// <summary> |
|
/// Current display state of this character's portrait. |
|
/// </summary> |
|
/// <value>The state.</value> |
|
PortraitState State { get; } |
|
|
|
/// <summary> |
|
/// Sets the active Say dialog with a reference to a Say Dialog object in the scene. This Say Dialog will be used whenever the character speaks. |
|
/// </summary> |
|
ISayDialog SetSayDialog { get; } |
|
|
|
/// <summary> |
|
/// Returns the name of the game object. |
|
/// </summary> |
|
string GetObjectName(); |
|
|
|
/// <summary> |
|
/// Returns true if the character name starts with the specified string. Case insensitive. |
|
/// </summary> |
|
bool NameStartsWith(string matchString); |
|
|
|
/// <summary> |
|
/// Looks for a portrait by name on a character |
|
/// If none is found, give a warning and return a blank sprite |
|
/// </summary> |
|
Sprite GetPortrait(string portraitString); |
|
} |
|
} |