// Copyright (c) Pixel Crushers. All rights reserved. using UnityEngine; namespace PixelCrushers.DialogueSystem { /// /// Abstract dialogue user interface controls. This class collects the various control groups /// used by the conversation interface. Each GUI system implementation derives its own subclass /// from this. /// [System.Serializable] public abstract class AbstractDialogueUIControls : AbstractUIControls { /// /// Gets the NPC subtitle controls. /// /// /// The NPC subtitle controls. /// public abstract AbstractUISubtitleControls npcSubtitleControls { get; } /// /// Gets the PC subtitle controls. /// /// /// The PC subtitle controls. /// public abstract AbstractUISubtitleControls pcSubtitleControls { get; } /// /// Gets the response menu. /// /// /// The response menu. /// public abstract AbstractUIResponseMenuControls responseMenuControls { get; } /// /// Shows the main conversation panel, if assigned. /// public abstract void ShowPanel(); /// /// Sets the conversation controls active/inactive. /// /// /// true for active, false for inactive. /// public override void SetActive(bool value) { npcSubtitleControls.SetActive(value); pcSubtitleControls.SetActive(value); responseMenuControls.SetActive(value); } } }