com.iron-mountain.dialogue-system
v3.3.2
Published
A system for writing and playing branching dialogue.
Downloads
7
Readme
Dialogue System
Version: 3.3.2
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.4)
- com.iron-mountain.conditions (1.5.8)
- com.iron-mountain.resource-utilities (1.1.3)
- com.iron-mountain.scriptable-actions (1.0.6)
Package Mirrors:
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 DefaultInvokingLine { get; set; }
- 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; }
- public Int32 Playthroughs { get; set; }
- public Boolean PreviewHasErrors { get; }
- Methods:
- public void RefreshActiveState()
- public virtual void OnConversationStarted()
- public void OnValidate()
- public Boolean HasWarnings()
- public Boolean HasErrors()
- public virtual void Reset()
- public void GenerateNewID()
- public virtual void RefreshWarnings()
- public virtual void RefreshErrors()
- Actions:
- public class ConversationPlayer : MonoBehaviour
- Actions:
- public event Action OnEnabledChanged
- public event Action OnDefaultSpeakerChanged
- public event Action OnConversationChanged
- public event Action OnDialogueNodeChanged
- public event Action OnDialogueLinePlayed
- public event Action OnIsMutedChanged
- public event Action OnClosed
- Properties:
- public Boolean AutoAdvance { get; }
- public float AutoAdvanceSeconds { get; }
- public float TotalSecondsToRespond { get; set; }
- public float SecondsRemainingToRespond { get; set; }
- public Int32 FrameOfLastProgression { get; }
- public float TimeOfLastProgression { get; }
- public float Timer { get; set; }
- public ISpeaker DefaultSpeaker { get; }
- public Conversation Conversation { get; }
- public DialogueNode CurrentNode { get; set; }
- public DialogueLine CurrentDialogueLine { get; set; }
- public Boolean IsMuted { get; set; }
- Methods:
- public ConversationPlayer Initialize(ISpeaker speaker, Conversation conversation)
- public void Close()
- public void SpawnResponseBlock(DialogueResponseBlockNode dialogueResponseBlockNode)
- public void CloseResponseBlock(DialogueResponseBlockNode dialogueResponseBlockNode)
- public void PlayNextNode()
- public void CompleteConversation()
- Actions:
- public static class ConversationPlayersManager
- public enum ConversationPreviewType : Enum
- public class ConversationsManager : MonoBehaviour
- public class DialogueInputManager : 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; }
- Properties:
Actions
- public class SetConversationPlaythroughsAction : ScriptableAction
- Methods:
- public override void Invoke()
- public override String ToString()
- public override Boolean HasErrors()
- Methods:
Animation
- public enum AnimationType : Enum
- public class DialogueAnimationController : MonoBehaviour
- Methods:
- public void PlayAnimation(AnimationType animationType)
- Methods:
- public class DialogueAnimations
- Methods:
- public AnimationData GetAnimation(AnimationType type)
- public String GetAnimationName(AnimationType type)
- public float GetAnimationLength(AnimationType type)
- Methods:
Conditions
- public class ConditionConversationPlaythroughs : Condition
- Properties:
- public Sprite Depiction { get; }
- Methods:
- public override Boolean Evaluate()
- public override Boolean HasErrors()
- public override String ToString()
- Properties:
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()
- Methods:
Narration
- public static class DialogueNarrationManager
- public abstract class DialogueNarrationRequirement : MonoBehaviour
- Methods:
- public abstract Boolean IsSatisfied()
- Methods:
- public class DialogueNarrator : MonoBehaviour
- Actions:
- public event Action OnIsPlayingChanged
- Properties:
- public ISpeaker Speaker { get; }
- public AudioSource AudioSource { get; }
- public ConversationPlayer CurrentConversationPlayer { get; }
- public Boolean IsPlaying { get; set; }
- Methods:
- public void RefreshRequirements()
- Actions:
Nodes
- public struct Connection
- public class DialogueBeginningNode : DialogueNode
- Properties:
- public String Name { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationPlayer)
- public override void OnNodeEnter(ConversationPlayer conversationPlayer)
- public override void OnNodeUpdate(ConversationPlayer conversationPlayer)
- public override void OnNodeExit(ConversationPlayer conversationPlayer)
- public override void RefreshErrors()
- Properties:
- public class DialogueEndingNode : DialogueNode
- Properties:
- public String Name { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationPlayer)
- public override void OnNodeEnter(ConversationPlayer conversationPlayer)
- public override void OnNodeUpdate(ConversationPlayer conversationPlayer)
- public override void OnNodeExit(ConversationPlayer conversationPlayer)
- public override void RefreshErrors()
- Properties:
- public class DialogueLineMainContent
- Properties:
- public LocalizedString TextData { get; }
- public String Text { get; }
- public AudioClip AudioClip { get; }
- Properties:
- public class DialogueLineNode : DialogueNode
- Properties:
- public Speaker CustomSpeaker { get; set; }
- public String SimpleText { get; set; }
- public String Text { get; }
- public LocalizedString LocalizedText { get; }
- public AudioClip AudioClip { get; }
- public String Name { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationPlayer)
- public override void OnNodeEnter(ConversationPlayer conversationPlayer)
- public override void OnNodeUpdate(ConversationPlayer conversationPlayer)
- public override void OnNodeExit(ConversationPlayer conversationPlayer)
- public override void RefreshWarnings()
- public override void RefreshErrors()
- Properties:
- public class DialogueLineWithAlternatesNode : DialogueLineNode
- Properties:
- public List AlternateContent { get; }
- Methods:
- public override void RefreshWarnings()
- Properties:
- public abstract class DialogueNode : Node
- Properties:
- public String Name { get; }
- Methods:
- public abstract DialogueNode GetNextNode(ConversationPlayer conversationPlayer)
- public abstract void OnNodeEnter(ConversationPlayer conversationPlayer)
- public abstract void OnNodeUpdate(ConversationPlayer conversationPlayer)
- public abstract void OnNodeExit(ConversationPlayer conversationPlayer)
- public DialogueNode GetNextHaltingNode(ConversationPlayer conversationUI)
- public override void OnCreateConnection(NodePort from, NodePort to)
- public override void OnRemoveConnection(NodePort port)
- public Boolean HasWarnings()
- public Boolean HasErrors()
- public virtual void RefreshWarnings()
- public virtual void RefreshErrors()
- Properties:
- public class DialoguePassNode : DialogueNode
- Properties:
- public String Name { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationPlayer)
- public override void OnNodeEnter(ConversationPlayer conversationPlayer)
- public override void OnNodeUpdate(ConversationPlayer conversationPlayer)
- public override void OnNodeExit(ConversationPlayer conversationPlayer)
- public override void RefreshErrors()
- Properties:
- public class DialogueRandomizerNode : DialogueNode
- Properties:
- public String Name { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationPlayer)
- public override void OnNodeEnter(ConversationPlayer conversationPlayer)
- public override void OnNodeUpdate(ConversationPlayer conversationPlayer)
- public override void OnNodeExit(ConversationPlayer conversationPlayer)
- public override void RefreshErrors()
- Properties:
- public class DialogueResponseBlockNode : DialogueNode
- Properties:
- public String Name { get; }
- public Boolean IsTimed { get; }
- public float Seconds { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationPlayer)
- public DialogueNode GetDefaultResponseNode()
- public List`1 GetResponses(ConversationPlayer conversationUI)
- public override void OnNodeEnter(ConversationPlayer conversationPlayer)
- public override void OnNodeUpdate(ConversationPlayer conversationPlayer)
- public override void OnNodeExit(ConversationPlayer conversationPlayer)
- public override void OnCreateConnection(NodePort from, NodePort to)
- public override void RefreshErrors()
- Properties:
Nodes. Actions
- public abstract class DialogueAction : DialogueNode
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationPlayer)
- public override void OnNodeEnter(ConversationPlayer conversationPlayer)
- public override void OnNodeUpdate(ConversationPlayer conversationPlayer)
- public override void OnNodeExit(ConversationPlayer conversationPlayer)
- public override void RefreshErrors()
- Methods:
- public class DialoguePlayPrioritized : DialogueAction
- Properties:
- public String Name { get; }
- Properties:
- public class LoadScene : DialogueAction
- Properties:
- public String Name { get; }
- Properties:
- public class ScriptableActionNode : DialogueAction
- Properties:
- public String Name { get; }
- Properties:
- public class UnityEvent : DialogueAction
- Properties:
- public String Name { get; }
- Properties:
Nodes. Conditions
- public abstract class Condition : DialogueNode
- Methods:
- public override void RefreshErrors()
- Methods:
- public abstract class PassFailCondition : Condition
- Properties:
- public String Name { get; }
- Methods:
- public override DialogueNode GetNextNode(ConversationPlayer conversationPlayer)
- public override void OnNodeEnter(ConversationPlayer conversationPlayer)
- public override void OnNodeUpdate(ConversationPlayer conversationPlayer)
- public override void OnNodeExit(ConversationPlayer conversationPlayer)
- public override void RefreshErrors()
- Properties:
- public class PassFailConditionDialogueQueued : PassFailCondition
- Properties:
- public String Name { get; }
- Properties:
- public class PassFailConditionFromReference : PassFailCondition
- Properties:
- public String Name { get; }
- Methods:
- public override void RefreshErrors()
- Properties:
Nodes. Response Generators
- public class BasicDialogueResponseNode : DialogueResponseNode
- Properties:
- public String Name { get; }
- public String Text { get; }
- public LocalizedString LocalizedText { get; }
- Methods:
- public override List`1 GetDialogueResponses(ConversationPlayer conversationPlayer)
- public override void RefreshWarnings()
- Properties:
- public abstract class DialogueResponseNode : DialogueNode
- Properties:
- public ScriptedResponseStyle ScriptedResponseStyle { get; }
- Methods:
- public abstract List`1 GetDialogueResponses(ConversationPlayer conversationPlayer)
- public override DialogueNode GetNextNode(ConversationPlayer conversationPlayer)
- public override void OnNodeEnter(ConversationPlayer conversationPlayer)
- public override void OnNodeUpdate(ConversationPlayer conversationPlayer)
- public override void OnNodeExit(ConversationPlayer conversationPlayer)
- public override void OnCreateConnection(NodePort from, NodePort to)
- public override void RefreshErrors()
- Properties:
- public class DialogueResponseNodeActiveDialogue : DialogueResponseNode
- Properties:
- public String Name { get; }
- Methods:
- public override List`1 GetDialogueResponses(ConversationPlayer conversationPlayer)
- Properties:
Responses
- public abstract class BasicResponse
- Properties:
- public String Text { get; }
- public Sprite Icon { get; }
- public Int32 Row { get; }
- public Int32 Column { get; }
- public IResponseStyle Style { get; }
- Methods:
- public abstract void Execute()
- Properties:
- public class BranchConversationResponse : BasicResponse
- Methods:
- public override void Execute()
- Methods:
- public interface IResponseStyle
- Properties:
- public float Height { get; }
- public Color ButtonColorPrimary { get; }
- public Color ButtonColorSecondary { get; }
- public Color TextColor { get; }
- Properties:
- public class ResponseStyle
- Properties:
- public float Height { get; }
- public Color ButtonColorPrimary { get; }
- public Color ButtonColorSecondary { get; }
- public Color TextColor { get; }
- Properties:
- public class ScriptedResponseStyle : ScriptableObject
- Properties:
- public float Height { get; }
- public Color ButtonColorPrimary { get; }
- public Color ButtonColorSecondary { get; }
- public Color TextColor { get; }
- Properties:
- public class SwapConversationResponse : BasicResponse
- Methods:
- public override void Execute()
- Methods:
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()
- Actions:
- public class DefaultConversationSelector : ConversationSelector
- Methods:
- public override void RefreshNextConversation()
- Methods:
- public class PrioritizedConversationSelector : ConversationSelector
- Methods:
- public override void RefreshNextConversation()
- Methods:
Speakers
- public interface ISpeaker
- Actions:
- public event Action OnActiveConversationsChanged
- Properties:
- public String ID { get; }
- public String SpeakerName { get; }
- public List Aliases { get; }
- public Color Color { get; }
- public Conversation DefaultConversation { get; }
- public List Conversations { get; }
- public SpeakerPortraitCollection Portraits { get; }
- public SpeakerPortraitCollection FullBodyPortraits { get; }
- Methods:
- public virtual Boolean UsesNameOrAlias(String name)
- Actions:
- public class PlayConversationOnPointerClick : MonoBehaviour
- Methods:
- public virtual void OnPointerClick(PointerEventData eventData)
- Methods:
- public class Speaker : ScriptableObject
- Actions:
- public event Action OnActiveConversationsChanged
- Properties:
- public String ID { get; }
- public String SpeakerName { get; }
- public List Aliases { get; }
- public Color Color { get; }
- public Conversation DefaultConversation { get; }
- public List Conversations { get; }
- public SpeakerPortraitCollection Portraits { get; }
- public SpeakerPortraitCollection FullBodyPortraits { get; }
- Methods:
- public virtual void Reset()
- Actions:
- 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(Conversation conversation)
- public virtual void StartConversation()
- Actions:
- public static class SpeakerControllersManager
- public class SpeakerPortraitCollection
- Methods:
- public Sprite GetPortrait(PortraitType type)
- Methods:
Speakers. U I
- public class SpeakerControllerPortraitImage : MonoBehaviour
Starters
- public abstract class ConversationStarter : MonoBehaviour
- Methods:
- public abstract ConversationPlayer StartConversation(ISpeaker speaker, Conversation conversation)
- Methods:
- public class ConversationStarterFromPrefab : ConversationStarter
- Methods:
- public override ConversationPlayer StartConversation(ISpeaker speaker, Conversation conversation)
- Methods:
- public class ConversationStarterFromResource : ConversationStarter
- Methods:
- public override ConversationPlayer StartConversation(ISpeaker speaker, Conversation conversation)
- Methods:
U I
- public class DialogueLineImage : MonoBehaviour
- public class DialogueLineResizer : MonoBehaviour
- public class SpeakerBackgroundColor : MonoBehaviour
- public class SpeakerNameText : MonoBehaviour
- public class SpeakerPortraitImage : MonoBehaviour
U I. Responses
- public class DialogueResponseBlock : MonoBehaviour
- Methods:
- public virtual DialogueResponseBlock Initialize(DialogueResponseBlockNode dialogueResponseBlock, ConversationPlayer conversationUI)
- public void Submit(BasicResponse response)
- public void Destroy()
- Methods:
- public class DialogueResponseButton : MonoBehaviour
- Actions:
- public event Action OnResponseChanged
- Properties:
- public BasicResponse Response { get; }
- Methods:
- public virtual void Initialize(DialogueResponseBlock responseBlock, BasicResponse response)
- Actions:
- public class DialogueResponseButtonOutline : MonoBehaviour
- public class DialogueResponseButtonText : MonoBehaviour
- public class DialogueResponseGridBlock : DialogueResponseBlock
- Methods:
- public override DialogueResponseBlock Initialize(DialogueResponseBlockNode dialogueResponseBlock, ConversationPlayer conversationUI)
- Methods:
U I. Speech Bubble Tail
- public class SpeechBubbleAnchor : MonoBehaviour
- Properties:
- public SpeakerController SpeakerController { get; }
- Properties:
- public static class SpeechBubbleAnchorsManager
- public class SpeechBubbleTail : Graphic
U I. Text Animation
- public abstract class DialogueLineTyper : MonoBehaviour
- Properties:
- public Boolean IsAnimating { get; }
- Methods:
- public abstract void ForceFinishAnimating()
- Properties:
- public class DialogueLineTyperTMPro : DialogueLineTyper
- Methods:
- public override void ForceFinishAnimating()
- Methods:
- public class DialogueLineTyperText : DialogueLineTyper
- Methods:
- public override void ForceFinishAnimating()
- Methods: