示例#1
0
    public override bool Act(DialogueScene scene, DialogueJsonItem data)
    {
        scene.characters[data.position1].value = data.entry;
        scene.poses[data.position1].value      = data.value;

        return(true);
    }
    public override bool Act(DialogueScene scene, DialogueJsonItem data)
    {
        scene.talkingChar.value = data.entry;
        scene.talkingPose.value = data.value;

        return(true);
    }
示例#3
0
    public override bool Act(DialogueScene scene, DialogueJsonItem data)
    {
        MusicEntry me = (MusicEntry)data.entry;

        scene.bkgMusic.value = me.clip;

        return(true);
    }
    public override bool Act(DialogueScene scene, DialogueJsonItem data)
    {
        ScrObjLibraryEntry temp = scene.characters[data.position1].value;

        scene.characters[data.position1].value = scene.characters[data.position2].value;
        scene.characters[data.position2].value = temp;

        return(true);
    }
示例#5
0
    public void NextFrame()
    {
        currentFrame.value++;

        if (currentFrame.value >= dialogueEntry.size)
        {
            Debug.Log("Reached the end");
            DialogueAction   da   = (DAEndDialogue)ScriptableObject.CreateInstance("DAEndDialogue");
            DialogueJsonItem data = new DialogueJsonItem();
            data.entry = dialogueEntry;
            da.Act(scene, data);
        }
        else
        {
            CompareScenes(dialogueEntry.frames[currentFrame.value]);
        }
    }
示例#6
0
    public override bool Act(DialogueScene scene, DialogueJsonItem data)
    {
        DialogueEntry de = (DialogueEntry)data.entry;

        switch (de.nextLocation)
        {
        case BattleEntry.NextLocation.OVERWORLD:
            scene.paused.value = false;
            if (de.changePosition)
            {
                if (de.nextArea != Constants.OverworldArea.DEFAULT)
                {
                    scene.playerArea.value = (int)de.nextArea;
                }
                scene.playerPosX.value = de.playerPosition.x;
                scene.playerPosY.value = de.playerPosition.y;
            }
            scene.currentArea.value = scene.playerArea.value;
            scene.mapChangeEvent.Invoke();
            break;

        case BattleEntry.NextLocation.DIALOGUE:
            scene.currentArea.value  = (int)Constants.SCENE_INDEXES.DIALOGUE;
            scene.dialogueUuid.value = de.nextEntry.uuid;
            scene.mapChangeEvent.Invoke();
            break;

        case BattleEntry.NextLocation.BATTLE:
            scene.currentArea.value = (int)Constants.SCENE_INDEXES.BATTLE;
            scene.battleUuid.value  = de.nextEntry.uuid;
            scene.mapChangeEvent.Invoke();
            break;
        }

        return(false);
    }
示例#7
0
    public override bool Act(DialogueScene scene, DialogueJsonItem data)
    {
        scene.dialogueText.value = data.text;

        return(true);
    }
 public override bool Act(DialogueScene scene, DialogueJsonItem data)
 {
     return(false);
 }
示例#9
0
    private void CompareScenes(Frame frame)
    {
        DialogueAction   da;
        DialogueJsonItem data;

        if (!ScrObjLibraryEntry.CompareEntries(scene.background.value, frame.background))
        {
            da         = (DASetBackground)ScriptableObject.CreateInstance("DASetBackground");
            data       = new DialogueJsonItem();
            data.entry = frame.background;
            da.Act(scene, data);
            backgroundChanged.Invoke();
        }
        bool changed = false;

        for (int i = 0; i < 4; i++)
        {
            if (!ScrObjLibraryEntry.CompareEntries(scene.characters[i].value, frame.characters[i]) || scene.poses[i].value != frame.poses[i])
            {
                da             = (DAAddCharacter)ScriptableObject.CreateInstance("DAAddCharacter");
                data           = new DialogueJsonItem();
                data.position1 = i;
                data.entry     = frame.characters[i];
                data.value     = frame.poses[i];
                da.Act(scene, data);
                changed = true;
            }
        }
        if (changed)
        {
            Debug.Log("current: ");
            characterChanged.Invoke();
        }

        changed = false;
        if (!ScrObjLibraryEntry.CompareEntries(scene.talkingChar.value, frame.talkingChar) || scene.talkingPose.value != frame.talkingPose)
        {
            da         = (DAChangeTalking)ScriptableObject.CreateInstance("DAChangeTalking");
            data       = new DialogueJsonItem();
            data.entry = frame.talkingChar;
            data.value = frame.talkingPose;
            da.Act(scene, data);
            changed = true;
        }

        if (scene.talkingName.value != frame.talkingName)
        {
            da        = (DASetName)ScriptableObject.CreateInstance("DASetName");
            data      = new DialogueJsonItem();
            data.text = frame.talkingName;
            da.Act(scene, data);
            changed = true;
        }

        if (changed)
        {
            closeupChanged.Invoke();
        }

        if (scene.dialogueText.value != frame.dialogueText)
        {
            da        = (DASetText)ScriptableObject.CreateInstance("DASetText");
            data      = new DialogueJsonItem();
            data.text = frame.dialogueText;
            da.Act(scene, data);
            dialogueTextChanged.Invoke();
        }

        if (frame.bkgMusic != null)
        {
            da         = (DASetBkgMusic)ScriptableObject.CreateInstance("DASetBkgMusic");
            data       = new DialogueJsonItem();
            data.entry = frame.bkgMusic;
            da.Act(scene, data);
            bkgMusicChanged.Invoke();
        }
    }
示例#10
0
    public override bool Act(DialogueScene scene, DialogueJsonItem data)
    {
        scene.talkingName.value = data.text;

        return(true);
    }
 public override bool Act(DialogueScene scene, DialogueJsonItem data)
 {
     scene.characters[data.position1] = null;
     return(true);
 }
示例#12
0
 public abstract bool Act(DialogueScene scene, DialogueJsonItem data);
    public override bool Act(DialogueScene scene, DialogueJsonItem data)
    {
        scene.background.value = data.entry;

        return(true);
    }