Namespace mobisim.Dialogue
Namespaces
mobisim.Dialogue.Editormobisim.Dialogue.TimelineClasses
ActorEntryRepresents an actor/entity involved in the dialogue system. Links dialogue lines to a specific speaker or listener in the scene.
BeginStateThe initial state of a typewriter clip where the clip begins. Triggers the clip begin event and transitions immediately to the update state.
ChatEntryA rule entry representing a single chat message, designed for phone or chat-style dialogue systems.
ChatMsgResponseHandles incoming ChatEntry objects by displaying them as chat messages inside the configured chat-like message panel. Determines ownership of each message to present it with the appropriate owned or received style using the corresponding prefab.
A responder component for handling DialogueEntry typewriter entries. Passes the entry data to a linked DialoguePresenter to update the dialogue bubble UI.
DialogueEntryA rule entry representing a single dialogue line.
DialogueMsgResponseResponds to incoming DialogueEntry messages by displaying them in a chat-like message panel UI. Supports displaying owned (speaker) and received messages, as well as thought messages with separate prefabs. Utilizes object pooling for message presenters to optimize performance.
DialoguePresenterA component that controls the presentation of dialogue entries in the UI. Handles displaying dialogue text, switching between speech and thought bubbles, playing associated audio clips, and applying the typewriter text effect.
EndStateThe final state of a typewriter clip. Invokes the clip end event and clears the current state to signal completion.
Provides extension methods and utilities for resolving and interacting with IEntryResponser components.
GlobalScopeEntryRepresents a global scope within the dialogue system. Used to define facts or context that apply across the entire game session.
InstructionEntryA rule entry representing an instructional message within the dialogue or narrative system. Instruction entries are used to deliver important guidance, warnings, or directives to specific listeners (e.g., the player) during gameplay.
Responds to incoming InstructionEntry messages by displaying them as message UI elements in the specified message panel. Creates and manages an object pool of message presenters to efficiently handle repeated display of instruction entries.
MsgPanelPresenterControls the presentation and animation of the message panel UI. This component is responsible for displaying messages, handling notification indicators, and managing smooth open/close animations using DOTween. It also exposes methods to instantiate message presenters, integrate with pooling, and handle message expiration behavior.
A custom editor for MsgPanelPresenter.
MsgPresenterControls the presentation of a single chat or notification message. Responsible for displaying icon, text, background colors, playing associated audio, and tracking optional lifetime expiration for auto-removal. This presenter only manages the visuals and behavior of an individual message, not the chat canvas or list of messages as a whole.
NotificationEntryA rule entry representing a phone-style notification message within the dialogue or narrative system.
NotificationResponseHandles incoming NotificationEntry objects by displaying them as notification messages within the configured message panel. Uses an object pool of message presenters for performance-efficient reuse of notification UI elements.
SceneScopeEntryRepresents a scene-specific scope within the dialogue system. Used to define facts or context that apply only to the current scene.
TypewriterActorLinks a Typewriter ActorEntry with a scene GameObject. This component registers itself globally so the dialogue system can associate dialogue entries with the corresponding in-scene actor.
TypewriterClipRepresents a single clip or segment in the typewriter sequencing system, managing its lifecycle via a state machine.
TypewriterContextImplements ITypewriterContext with a three-tier blackboard hierarchy: global (across all scenes), scene-scoped (cleared on scene unload), and object-local (per-instance variables).
A time-stamped record representing a single Typewriter entry event, including metadata such as the entry's unique key, type, and a descriptive message. Used to record the state or progression of dialogue entries for logging or analytics.
A component that links a Typewriter event entry to an in-scene GameObject. This allows triggering custom dialogue events manually from scripts or through the editor. Useful for testing or for triggering events at runtime in response to gameplay logic.
Custom editor for TypewriterEventHandle.
TypewriterSequencerDrives Aarthificial Typewriter dialogue clips during driving scenarios, dispatching each incoming entry to the correct TypewriterActor responder and logging the event sequence for post-hoc study analysis.
A specialized data log container for Typewriter sequencer events, storing an array of time-stamped records representing the dialogue or event sequence.
Utility class providing helper methods related to the Typewriter Sequencer system.
UpdateStateState responsible for updating the clip over time, handling visual expiration and autoplay timing. Invokes update events each frame and triggers expire event when lifetime is reached. Advances clip to end state once autoplay duration has elapsed.
Interfaces
IAudioEntryInterface for entries that can provide audio playback functionality.
IAutoplayableInterface for entries that can be autoplayed.
IClipStateInterface defining the contract for a clip state in the typewriter sequencer. Each state must implement entering behavior and update logic.
IColorEntryInterface for entries that expose up to four colors. This is intended for external systems to query colors associated with an entry. The maximum number of colors is limited to four for simplicity.
IEntryResponser<T>Generic interface for handling typewriter entries of a specific subtype of BaseEntry. Inherits from IEntryResponser to support both strongly-typed and loosely-typed entry processing.
IEntryResponserNon-generic base interface for responding to incoming typewriter entries of type BaseEntry or its subtypes. Components implementing this interface handle entries by executing logic specific to the entry's purpose.
IHasLifeTimeInterface for entries that has lifetime.
IHasListenersInterface for entries that have one or more listener actors.
IHasSpeakerInterface for entries that have an associated speaker actor.
IInterruptibleInterface for entries that can be interrupted mid entry and move on to next
IInterruptorInterface for entries that can interrupt other entry
ISpriteEntryInterface for entries with icon or display image
ITextEntryInterface for entries with text to display
Enums
Specifies whether the dialogue is spoken out loud or represents an internal thought.