/// <summary> /// 创建对话文本生成器 /// </summary> /// <param name="type">生成器类型</param> /// <returns></returns> public static DialogueTextGenerator Create(DialogueTextGeneratorType type) { switch (type) { case DialogueTextGeneratorType.Simple: return(new SimpleDialogueTextGenerator()); default: return(new EmptyDialogueTextGenerator()); } }
public override void OnInspectorGUI() { var generator = (DialogueTextGeneratorType)EditorGUILayout.EnumPopup("Text Generator", _generatorType); if (generator != _generatorType) { _target.ResetGenerator(generator); _generatorType = generator; } EditorGUILayout.PropertyField(_timeSpan); serializedObject.ApplyModifiedProperties(); }
public void ResetGenerator(DialogueTextGeneratorType type) { textGenerator = type; _generator = DialogueTextGenerator.Create(textGenerator); }
private void OnEnable() { _timeSpan = serializedObject.FindProperty("timeSpan"); _target = (DialogueContentRenderer)target; _generatorType = _target.textGenerator; }