DIALOGUE SYSTEM
A downloadable tool
Download NowName your own price
Version: 2.1.3
Description:
A system for writing and playing branching dialogue.
Dependencies:
- com.unity.localization (1.3.2)
- com.unity.textmeshpro (3.0.6)
- com.github.siccity.xnode (1.8.0)
- com.iron-mountain.save-system (1.0.2)
- com.iron-mountain.conditions (1.2.5)
- com.iron-mountain.resource-utilities (1.1.2)
Key Scripts & Components:
- public class Conversation : NodeGraph
- Actions:
- public event Action OnIsActiveChanged
- public event Action OnPlaythroughsChanged
- Properties:
- public String ID { get; set; }
- public String Name { get; }
- public Boolean PrioritizeOverDefault { get; }
- public Int32 Priority { get; }
- public String InvokingLine { get; }
- public Sprite InvokingIcon { get; }
- public Boolean AlertInConversationMenu { get; }
- public ConversationPreviewType PreviewType { get; }
- public String PreviewText { get; }
- public Condition Condition { get; set; }
- public BehaviorWhenQueued BehaviorWhenEnqueued { get; }
- public Boolean Looping { get; }
- public Boolean IsActive { get; set; }
- public Int32 Playthroughs { get; set; }
- public Boolean GeneralSectionHasErrors { get; }
- public Boolean PrioritySectionHasErrors { get; }
- public Boolean PreviewHasErrors { get; }
- public Boolean ConditionHasErrors { get; }
- Methods:
- public void RefreshActiveState()
- public virtual void OnConversationStarted()
- public virtual void Reset()
- public void GenerateNewID()
- public Boolean HasWarnings()
- public Boolean HasErrors()
- public Boolean GraphHasErrors()
- public void LogGraphErrors()
- public enum ConversationPreviewType : Enum
- public class ConversationsManager : MonoBehaviour
- public class DialogueLine
- Properties:
- public ISpeaker Speaker { get; }
- public String Text { get; }
- public AudioClip AudioClip { get; }
- public PortraitType Portrait { get; }
- public AnimationType Animation { get; }
- public Sprite Sprite { get; }
- public class DialogueTouchInputManager : MonoBehaviour
Animation
- public enum AnimationType : Enum
- public class DialogueAnimationController : MonoBehaviour
- Methods:
- public void PlayAnimation(AnimationType animationType)
Conditions
- public class ConditionConversationPlaythroughs : Condition
- Properties:
- public String DefaultName { get; }
- public String NegatedName { get; }
- public Sprite Depiction { get; }
- Methods:
- public override Boolean Evaluate()
- public override Boolean HasErrors()
Dialogue Bubbles
- public class DialogueBubble : MonoBehaviour
- public class DialogueBubbleAnimator : MonoBehaviour
- Methods:
- public void ScaleUp()
- public void ScaleUp(float duration)
- public void ScaleUpImmediate()
- public void ScaleDown()
- public void ScaleDown(float duration)
- public void ScaleDownImmediate()
Narration
- public class DialogueNarration : MonoBehaviour
- Methods:
- public void RefreshRequirements()
- public abstract class DialogueNarrationRequirement : MonoBehaviour
- Methods:
- public abstract Boolean IsSatisfied()
Nodes
- public struct Connection
- public class DialogueBeginningNode : DialogueNode
- Properties:
- public String Name { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationUI)
- public override void OnNodeEnter(ConversationPlayer conversationUI)
- public class DialogueEndingNode : DialogueNode
- Properties:
- public String Name { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationUI)
- public override void OnNodeEnter(ConversationPlayer conversationUI)
- public class DialogueLineMainContent
- Properties:
- public LocalizedString TextData { get; }
- public String Text { get; }
- public AudioClip AudioClip { get; }
- public class DialogueLineNode : DialogueNode
- Properties:
- public SpeakerType SpeakerType { get; }
- public Speaker CustomSpeaker { get; }
- public String Text { get; }
- public LocalizedString LocalizedText { get; }
- public AudioClip AudioClip { get; }
- public String Name { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationUI)
- public override void OnNodeEnter(ConversationPlayer conversationUI)
- public class DialogueLineWithAlternatesNode : DialogueLineNode
- Properties:
- public List<dialoguelinemaincontent> AlternateContent { get; }</dialoguelinemaincontent>
- public abstract class DialogueNode : Node
- Properties:
- public String Name { get; }
- Methods:
- public abstract DialogueNode GetNextNode(ConversationPlayer conversationUI)
- public virtual void OnNodeEnter(ConversationPlayer conversationUI)
- public virtual void OnNodeExit(ConversationPlayer conversationUI)
- public DialogueNode GetNextHaltingNode(ConversationPlayer conversationUI)
- public Boolean HasWarnings()
- public Boolean HasErrors()
- public class DialoguePassNode : DialogueNode
- Properties:
- public String Name { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationUI)
- public override void OnNodeEnter(ConversationPlayer conversationUI)
- public class DialogueRandomSelectorNode : DialogueNode
- Properties:
- public String Name { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationUI)
- public override void OnNodeEnter(ConversationPlayer conversationUI)
- public class DialogueResponseBlockNode : DialogueNode
- Properties:
- public String Name { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationUI)
- public List`1 GetResponseGenerators()
- public override void OnNodeEnter(ConversationPlayer conversationUI)
- public override void OnNodeExit(ConversationPlayer conversationUI)
- public override void OnCreateConnection(NodePort from, NodePort to)
Nodes. Actions
- public abstract class DialogueAction : DialogueNode
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationUI)
- public override void OnNodeEnter(ConversationPlayer conversationUI)
- public void LogErrors()
- public class DialoguePlayPrioritized : DialogueAction
- Properties:
- public String Name { get; }
- public class LoadScene : DialogueAction
- Properties:
- public String Name { get; }
- public class UnityEvent : DialogueAction
- Properties:
- public String Name { get; }
Nodes. Conditions
- public abstract class Condition : DialogueNode
- Methods:
- public void LogErrors()
- public abstract class PassFailCondition : Condition
- Properties:
- public String Name { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationUI)
- public override void OnNodeEnter(ConversationPlayer conversationUI)
- public override void OnNodeExit(ConversationPlayer conversationUI)
- public class PassFailConditionDialogueQueued : PassFailCondition
- Properties:
- public String Name { get; }
- public class PassFailConditionFromReference : PassFailCondition
- Properties:
- public String Name { get; }
Nodes. Response Generators
- public abstract class ResponseGenerator : DialogueNode
- Properties:
- public ScriptedResponseStyle ScriptedResponseStyle { get; }
- Methods:
- public abstract List`1 GetDialogueResponses(ConversationPlayer conversationPlayer)
- public override DialogueNode GetNextNode(ConversationPlayer conversationUI)
- public override void OnNodeEnter(ConversationPlayer conversationUI)
- public override void OnNodeExit(ConversationPlayer conversationUI)
- public override void OnCreateConnection(NodePort from, NodePort to)
- public class ResponseGeneratorActiveDialogue : ResponseGenerator
- Properties:
- public String Name { get; }
- Methods:
- public override List`1 GetDialogueResponses(ConversationPlayer conversationPlayer)
- public class ResponseGeneratorText : ResponseGenerator
- Properties:
- public String Name { get; }
- public String Text { get; }
- Methods:
- public override List`1 GetDialogueResponses(ConversationPlayer conversationPlayer)
- public class ResponseGeneratorTextChat : ResponseGeneratorText
- Properties:
- public String Name { get; }
- Methods:
- public override List`1 GetDialogueResponses(ConversationPlayer conversationPlayer)
- public class ResponseGeneratorTextNeverMind : ResponseGeneratorText
- Properties:
- public String Name { get; }
- Methods:
- public override List`1 GetDialogueResponses(ConversationPlayer conversationPlayer)
Responses
- public class BasicResponse
- Properties:
- public ConversationPlayer ConversationPlayer { get; }
- public DialogueNode SourceNode { get; }
- public String Text { get; }
- public Sprite Icon { get; }
- public Int32 Row { get; }
- public Int32 Column { get; }
- public IResponseStyle Style { get; }
- Methods:
- public virtual void ExecuteResponse()
- public interface IResponseStyle
- Properties:
- public float Height { get; }
- public Color ButtonColorPrimary { get; }
- public Color ButtonColorSecondary { get; }
- public Color TextColor { get; }
- public class PlayConversationResponse : BasicResponse
- Methods:
- public override void ExecuteResponse()
- public class ResponseStyle
- Properties:
- public float Height { get; }
- public Color ButtonColorPrimary { get; }
- public Color ButtonColorSecondary { get; }
- public Color TextColor { get; }
- public class ScriptedResponseStyle : ScriptableObject
- Properties:
- public float Height { get; }
- public Color ButtonColorPrimary { get; }
- public Color ButtonColorSecondary { get; }
- public Color TextColor { get; }
Selection
- public abstract class ConversationSelector : MonoBehaviour
- Actions:
- public event Action OnNextConversationChanged
- Properties:
- public ISpeaker Speaker { get; set; }
- public Conversation NextConversation { get; }
- Methods:
- public abstract void RefreshNextConversation()
- public class DefaultConversationSelector : ConversationSelector
- Methods:
- public override void RefreshNextConversation()
- public class PrioritizedConversationSelector : ConversationSelector
- Methods:
- public override void RefreshNextConversation()
Speakers
- public interface ISpeaker
- Actions:
- public event Action OnActiveConversationsChanged
- Properties:
- public String ID { get; }
- public String SpeakerName { get; }
- public Color Color { get; }
- public Conversation DefaultConversation { get; }
- public List<conversation> Conversations { get; }</conversation>
- public SpeakerPortraitCollection Portraits { get; }
- public SpeakerPortraitCollection FullBodyPortraits { get; }
- public class PlayConversationOnPointerClick : MonoBehaviour
- Methods:
- public virtual void OnPointerClick(PointerEventData eventData)
- public class Speaker : ScriptableObject
- Actions:
- public event Action OnActiveConversationsChanged
- Properties:
- public String ID { get; }
- public String SpeakerName { get; }
- public Color Color { get; }
- public Conversation DefaultConversation { get; }
- public List<conversation> Conversations { get; }</conversation>
- public SpeakerPortraitCollection Portraits { get; }
- public SpeakerPortraitCollection FullBodyPortraits { get; }
- Methods:
- public virtual void Reset()
- public class SpeakerController : MonoBehaviour
- Actions:
- public event Action OnSpeakerChanged
- public event Action OnEnabled
- public event Action OnDisabled
- Properties:
- public ISpeaker Speaker { get; set; }
- public ConversationSelector ConversationSelector { get; }
- public ConversationStarter ConversationStarter { get; }
- public Conversation NextConversation { get; }
- Methods:
- public virtual void StartConversation()
- public static class SpeakerControllersManager
- public class SpeakerPortraitCollection
- Methods:
- public Sprite GetPortrait(PortraitType type)
- public enum SpeakerType : Enum
Speakers. U I
- public class SpeakerControllerPortraitImage : MonoBehaviour
Starters
- public abstract class ConversationStarter : MonoBehaviour
- Methods:
- public abstract ConversationPlayer StartConversation(ISpeaker speaker, Conversation conversation)
- public class ConversationStarterFromPrefab : ConversationStarter
- Methods:
- public override ConversationPlayer StartConversation(ISpeaker speaker, Conversation conversation)
- public class ConversationStarterFromResource : ConversationStarter
- Methods:
- public override ConversationPlayer StartConversation(ISpeaker speaker, Conversation conversation)
U I
- public class ConversationPlayer : MonoBehaviour
- Actions:
- public event Action OnDefaultSpeakerChanged
- public event Action OnConversationChanged
- public event Action OnDialogueLinePlayed
- public event Action OnClosed
- Properties:
- public Int32 FrameOfLastProgression { get; }
- public float TimeOfLastProgression { get; }
- public ISpeaker DefaultSpeaker { get; }
- public Conversation CurrentConversation { get; }
- public DialogueNode CurrentNode { get; set; }
- public DialogueLine CurrentDialogueLine { get; set; }
- Methods:
- public ConversationPlayer Initialize(ISpeaker speaker, Conversation conversation)
- public void Close()
- public void PlayDialogueLine(DialogueLine dialogueLine)
- public void GenerateResponseBlock(DialogueResponseBlockNode dialogueResponseBlockNode)
- public void DestroyResponseBlock()
- public void PlayNextDialogueNode()
- public void CompleteConversation()
- public static class ConversationPlayersManager
- public class DialogueLineImage : MonoBehaviour
- public class DialogueLineResizer : MonoBehaviour
- public abstract class DialogueLineTyper : MonoBehaviour
- Properties:
- public Boolean IsAnimating { get; }
- Methods:
- public abstract void ForceFinishAnimating()
- public void Animate()
- public void AnimateByLetterRate(float letterRate)
- public void AnimateByTotalTime(float totalTime, Int32 charactersLength)
- public class DialogueLineTyperTMPro : DialogueLineTyper
- Properties:
- public Boolean IsAnimating { get; }
- Methods:
- public override void ForceFinishAnimating()
- public class DialogueLineTyperText : DialogueLineTyper
- Properties:
- public Boolean IsAnimating { get; }
- Methods:
- public override void ForceFinishAnimating()
- public class DialogueResponseBlock : MonoBehaviour
- Methods:
- public void Initialize(DialogueResponseBlockNode dialogueResponseBlock, ConversationPlayer conversationUI)
- public void Destroy()
- public class DialogueResponseButton : MonoBehaviour
- Actions:
- public event Action OnBasicResponseChanged
- Properties:
- public BasicResponse BasicResponse { get; }
- Methods:
- public virtual void Initialize(BasicResponse basicResponse, ConversationPlayer conversationUI)
- public void OnClick()
- public class DialogueResponseButtonOutline : MonoBehaviour
- public class SpeakerBackgroundColor : MonoBehaviour
- public class SpeakerNameText : MonoBehaviour
- public class SpeakerPortraitImage : MonoBehaviour
- public class UI_DialogueResponseWithIcon : DialogueResponseButton
- Methods:
- public override void Initialize(BasicResponse basicResponse, ConversationPlayer conversationUI)
U I. Speech Bubble Tail
- public class SpeechBubbleAnchor : MonoBehaviour
- Properties:
- public SpeakerController SpeakerController { get; }
- public static class SpeechBubbleAnchorsManager
- public class SpeechBubbleTail : Graphic
Status | Released |
Category | Tool |
Author | Iron Mountain |
Tags | iron-mountain |
Download
Download NowName your own price
Click download now to get access to the following files:
com.iron-mountain.dialogue-system.unitypackage 116 kB
Leave a comment
Log in with itch.io to leave a comment.