コード例 #1
0
 // Update is called once per frame
 void Update()
 {
     if (flowhart.GetStringVariable("CurrentAnswer") != "Z")
     {
         answerText.text = "正确答案:" + flowhart.GetStringVariable("CorrectAnswer");
     }
     else
     {
         answerText.text = "";
     }
 }
コード例 #2
0
    public void SaveInSlot(string saveName)
    {
#if UNITY_ANDROID && !UNITY_EDITOR
        path = Path.Combine(Application.persistentDataPath, saveName + ".json");
#else
        Directory.CreateDirectory(Application.dataPath + "/saves");
        path = Path.Combine(Application.dataPath + "/saves/", saveName + ".json");
#endif
        sv.sceneName  = SceneManager.GetActiveScene().name;
        sv.playerName = myFlowchart.GetStringVariable("Name");
        sv.prologEnd  = myFlowchart.GetBooleanVariable("PrologEnd");
        sv.dayTime    = myFlowchart.GetIntegerVariable("Time");
        sv.money      = myFlowchart.GetIntegerVariable("Money");

        sv.kateAlpha   = myFlowchart.GetIntegerVariable("KateAlpha");
        sv.katePretty  = myFlowchart.GetIntegerVariable("KatePretty");
        sv.klaraAlpha  = myFlowchart.GetIntegerVariable("KlaraAlpha");
        sv.klaraPretty = myFlowchart.GetIntegerVariable("KlaraPretty");
        sv.lizzyAlpha  = myFlowchart.GetIntegerVariable("LizzyAlpha");
        sv.lizzyPretty = myFlowchart.GetIntegerVariable("LizzyPretty");
        sv.saraAlpha   = myFlowchart.GetIntegerVariable("SaraAlpha");
        sv.saraPretty  = myFlowchart.GetIntegerVariable("SaraPretty");

        sv.saveDateTime = System.DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");

#if UNITY_ANDROID && !UNITY_EDITOR
        File.WriteAllText(path, JsonUtility.ToJson(sv));
#endif
        File.WriteAllText(path, JsonUtility.ToJson(sv));
    }
コード例 #3
0
    IEnumerator NegotiationTactic(Flowchart flowchart, GameObject target)
    {
        yield return(new WaitUntil(() => flowchart.GetBooleanVariable("negotiating") == false));

        var tactic = flowchart.GetStringVariable("tactic");

        Debug.Log("Tactic: " + tactic);
        AdjustRelationship(tactic, target);
    }
コード例 #4
0
ファイル: GameFlow.cs プロジェクト: kurantoB/easy-youmu
    public void HandleContinue(Command sayCommand, BaseContinue bc)
    {
        string nextBlock = flowChart.GetStringVariable("NextBlock");

        if (!"Empty".Equals(nextBlock))
        {
            flowChart.StopAllBlocks();
            flowChart.ExecuteBlock(nextBlock);
            flowChart.SetStringVariable("NextBlock", "Empty");
            if (flowChart.GetStringVariable("ConvoStage").Equals("MidConvo"))
            {
                flowChart.SetBooleanVariable("BadTransition", true);
            }
            else if (flowChart.GetStringVariable("ConvoStage").Equals("ConfessionApproach"))
            {
                // good transition
                flowChart.SetStringVariable("ConvoStage", "MidConvo");
                flowChart.SetIntegerVariable("CommandIndex", 0);
                flowChart.SetStringVariable("CurrentBlock", nextBlock);
                TopicManager.instance.RegisterTopic(nextBlock);
                TopicManager.instance.ClearTopicRoll();
                TopicManager.instance.ActivateTopicRoll();
            }
        }
        else
        {
            if (flowChart.GetBooleanVariable("BadTransition"))
            {
                flowChart.StopAllBlocks();
                flowChart.ExecuteBlock("AbruptTopicChange");
                flowChart.SetBooleanVariable("BadTransition", false);
            }
            else
            {
                if (!sayCommand.ParentBlock.BlockName.Equals("AbruptTopicChange"))
                {
                    // Normal flow
                    flowChart.SetIntegerVariable("CommandIndex", (sayCommand.CommandIndex + 1));
                }
                bc();
            }
        }
    }
コード例 #5
0
ファイル: Narrator.cs プロジェクト: nemui/ggj2019
    public void LeaveScene()
    {
        infoDump.droneSpeed  = talkFlowchart.GetIntegerVariable("DroneSpeed");
        infoDump.phobosPower = talkFlowchart.GetIntegerVariable("PhobosPower");
        infoDump.deimosPower = talkFlowchart.GetIntegerVariable("DeimosPower");
        infoDump.fuelRegen   = talkFlowchart.GetIntegerVariable("FuelRegen");

        infoDump.hasQInfo           = talkFlowchart.GetBooleanVariable("HasQInfo");
        infoDump.hasQAdvice         = talkFlowchart.GetBooleanVariable("HasQAdvice");
        infoDump.weaponSystemStatus = talkFlowchart.GetStringVariable("WeaponsStatus");

        infoDump.talkedToQ     = talkFlowchart.GetBooleanVariable("TalkedToQ");
        infoDump.talkedToAresa = talkFlowchart.GetBooleanVariable("TalkedToAresa");
        infoDump.talkedToPD    = talkFlowchart.GetBooleanVariable("TalkedToPD");
        SceneManager.LoadScene("PaulScene", LoadSceneMode.Single);
    }
コード例 #6
0
        public void saveGame()
        {
            _gameManager.ScoreManager.pause();
            _gameManager.ScoreManager.offset += _gameManager.ScoreManager.timeSinceStart();
            SaveGame  saveGame;
            Flowchart characFlowchart = GameObject.Find("/Char-Flowcharts").GetComponent <Flowchart>();
            Flowchart itemFlowchart   = GameObject.Find("/Item-Flowchart").GetComponent <Flowchart>();

            saveGame = new SaveGame(itemFlowchart.GetBooleanVariable("IsPluggedIn"),
                                    itemFlowchart.GetBooleanVariable("IsBelt"),
                                    itemFlowchart.GetBooleanVariable("IsMachine"),
                                    characFlowchart.GetStringVariable("CURRENT_STATE"),
                                    characFlowchart.GetIntegerVariable("RNG"),
                                    _gameManager.ScoreManager);
            Stream          serialiseStream = File.Create(filename);
            BinaryFormatter serializer      = new BinaryFormatter();

            serializer.Serialize(serialiseStream, saveGame);
            serialiseStream.Close();
        }
コード例 #7
0
 public override void OnEnter()
 {
     result.Value = flowchart.GetStringVariable(parameter.Value);
     Finish();
 }
コード例 #8
0
    // Start is called before the first frame update


    // Update is called once per frame
    void Update()
    {
        if (flowchart.GetBooleanVariable("showMoral"))
        {
            moralBG.DOFade(1, 5f);

            if (moralBG.color.a >= 0.9)
            {
                moralText.gameObject.SetActive(true);
                moralText.text = "Ending " + flowchart.GetIntegerVariable("ending") + ":\n" + flowchart.GetStringVariable("moral");
                moralText.DOFade(1, 8f);
                restartButton.SetActive(true);
            }

            Image[] buttonImages = restartButton.GetComponentsInChildren <Image>();
            Text    buttonText   = restartButton.GetComponentInChildren <Text>();

            foreach (Image ima in buttonImages)
            {
                ima.DOFade(1, 5f);
            }

            buttonText.DOFade(1, 5);
        }
        else
        {
            moralBG.DOFade(0, 2);
            moralText.gameObject.SetActive(false);
            moralText.alpha = 0;
            restartButton.SetActive(false);
        }
    }