public void UpdateToCurrentFrame() { currentState.Reset(); currentState.dialogueUuid.value = dialogueValues.uuid; previousText = ""; DialogueActionData data; DialogueAction da; int stopPoint = selAction + 1; //(dialogueValues.actions[selFrame].type == DActionType.MOVEMENT) ? selFrame : selFrame+1; for (int i = 0; i < stopPoint; i++) { data = dialogueValues.actions[i]; da = DialogueAction.CreateAction(data.type); da.Act(currentState, data); if (data.type == DActionType.SET_TEXT) { previousText = (!data.boolValue) ? previousText + data.text[1] : data.text[1]; } } currentState.backgroundChanged.Invoke(); currentState.bkgMusicChanged.Invoke(); currentState.characterChanged.Invoke(); currentState.closeupChanged.Invoke(); Debug.Log("TEXT: " + currentState.dialogueText.value); Debug.Log("Updated to current state"); }
public void CreateBasicActions() { actions = new List <DialogueActionData>(); DialogueActionData data = new DialogueActionData() { type = DActionType.SET_BKG }; DialogueAction.CreateAction(data.type).FillData(data); actions.Add(data); data = new DialogueActionData() { type = DActionType.SET_MUSIC }; DialogueAction.CreateAction(data.type).FillData(data); actions.Add(data); data = new DialogueActionData() { type = DActionType.SET_CHARS }; DialogueAction.CreateAction(data.type).FillData(data); actions.Add(data); data = new DialogueActionData() { type = DActionType.SET_TEXT }; DialogueAction.CreateAction(data.type).FillData(data); actions.Add(data); data = new DialogueActionData() { type = DActionType.END_SCENE }; DialogueAction.CreateAction(data.type).FillData(data); actions.Add(data); }
public void UpdateRealScene() { if (dialogueValues.actions[selAction].type == DActionType.SET_TEXT) { DialogueAction.CreateAction(dialogueValues.actions[selAction].type).Act(currentState, dialogueValues.actions[selAction]); } dvc = GameObject.FindObjectOfType <DialogueVisualContainer>(); dvc.background.UpdateBackground(); for (int i = 0; i < dvc.characters.Length; i++) { dvc.characters[i].UpdateCharacter(); } dvc.textBox.text = dvc.currentDialogueText.value; dvc.musicText.text = (dvc.currentMusic.value) ? dvc.currentMusic.value.name : "[NO MUSIC]"; }
public void InsertAction(DActionType type) { if (selAction < 2 || dialogueValues.actions[selAction].type == DActionType.END_SCENE) { return; } Debug.Log("Adding type : " + type); DialogueActionData data = new DialogueActionData(); DialogueAction da = DialogueAction.CreateAction(type); da.FillData(data); dialogueValues.InsertAction(selAction + 1, data); selAction++; SaveSelectedDialogue(); }
private IEnumerator RunNextFrame() { isWaiting = true; while (currentAction.value < dialogueEntry.actions.Count) { DialogueActionData data = dialogueEntry.actions[currentAction.value]; DialogueAction da = DialogueAction.CreateAction(data.type); bool res = da.Act(scene, data); if (data.type == DActionType.MOVEMENT) { for (int i = 0; i < Utility.DIALOGUE_PLAYERS_COUNT + Utility.DIALOGUE_PLAYERS_OUTSIDE_COUNT; i++) { float speed = data.values[0] * 0.001f; scene.characterTransforms[i].MoveCharacter(speed); } } RunEvents(data.type, res); currentAction.value++; if (data.useDelay) { if (data.type != DActionType.SET_TEXT && data.type != DActionType.END_SCENE) { yield return(new WaitForSeconds(scene.effectStartDuration.value)); yield return(new WaitForSeconds(scene.effectEndDuration.value)); } } if (!data.autoContinue) { break; } } isWaiting = false; yield break; }