// 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; namespace Fungus { /// /// A Character that can be used in dialogue via the Say, Conversation and Portrait commands. /// public interface ICharacter { /// /// Character name as displayed in Say Dialog. /// string NameText { get; } /// /// Color to display the character name in Say Dialog. /// Color NameColor { get; } /// /// Sound effect to play when this character is speaking. /// /// The sound effect. AudioClip SoundEffect { get; } /// /// List of portrait images that can be displayed for this character. /// List Portraits { get; } /// /// Direction that portrait sprites face. /// FacingDirection PortraitsFace { get; } /// /// Currently display profile sprite for this character. /// /// The profile sprite. Sprite ProfileSprite { get; set; } /// /// Current display state of this character's portrait. /// /// The state. PortraitState State { get; } /// /// 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. /// ISayDialog SetSayDialog { get; } /// /// Returns the name of the game object. /// string GetObjectName(); /// /// Returns true if the character name starts with the specified string. Case insensitive. /// bool NameStartsWith(string matchString); /// /// Looks for a portrait by name on a character /// If none is found, give a warning and return a blank sprite /// Sprite GetPortrait(string portraitString); } }