Пример #1
0
    public void SwitchStatus(Constants.DETECT_STATUS nextStatus)
    {
        Debug.Log("next status:" + nextStatus);
        switch (nextStatus)
        {
        case Constants.DETECT_STATUS.FREE:
            ps.SwitchTo_VerifyIterative("Function_Container");
            charaContainer.SetActive(true);
            cancelButton.SetActive(false);
            break;

        case Constants.DETECT_STATUS.DIALOG:
            ps.SwitchTo_VerifyIterative("Dialog_Container");
            charaContainer.SetActive(false);
            cancelButton.SetActive(true);
            break;

        case Constants.DETECT_STATUS.INVEST:
            ps.SwitchTo_VerifyIterative("InvestButton_Container");
            charaContainer.SetActive(false);
            cancelButton.SetActive(true);
            break;

        case Constants.DETECT_STATUS.MOVE:
            ps.SwitchTo_VerifyIterative("Move_Container");
            charaContainer.SetActive(false);
            cancelButton.SetActive(true);
            break;

        default:
            break;
        }
        this.status = nextStatus;
        DataManager.GetInstance().SetInTurnVar("侦探模式", nextStatus);
    }
Пример #2
0
        private void LoadDataFromJson(string str)
        {
            string    json;
            Hashtable hst = JsonConvert.DeserializeObject <Hashtable>(str);

            json = hst["GameVar"].ToString();
            JObject gVars = JObject.Parse(json);

            //游戏数据GameVar
            json = gVars.Property("回合").Value.ToString();
            int currentTurn = JsonConvert.DeserializeObject <int>(json);

            json = gVars.Property("玩家").Value.ToString();
            Player player           = JsonConvert.DeserializeObject <Player>(json);
            string currentEventName = gVars.Property("当前事件名").Value.ToString();

            json = gVars.Property("事件状态表").Value.ToString();
            Dictionary <string, int> eventStatusDict = JsonConvert.DeserializeObject <Dictionary <string, int> >(json);
            string xing = gVars.Property("姓").Value.ToString();
            string ming = gVars.Property("名").Value.ToString();

            json = gVars.Property("精力总量").Value.ToString();
            int allMP = JsonConvert.DeserializeObject <int>(json);

            json = gVars.Property("上午课程").Value.ToString();
            int morningSchedule = JsonConvert.DeserializeObject <int>(json);

            json = gVars.Property("下午课程").Value.ToString();
            int afternoonSchedule = JsonConvert.DeserializeObject <int>(json);

            json = gVars.Property("上午指数").Value.ToString();
            int morningRate = JsonConvert.DeserializeObject <int>(json);

            json = gVars.Property("下午指数").Value.ToString();
            int    afternoonRate = JsonConvert.DeserializeObject <int>(json);
            string modeName      = gVars.Property("MODE").Value.ToString();
            string textName      = gVars.Property("当前脚本名").Value.ToString();

            json = gVars.Property("文字位置").Value.ToString();
            int currentTextId = JsonConvert.DeserializeObject <int>(json);

            if (modeName == "Avg模式" || modeName == "侦探模式")
            {
                string bgsprite = gVars.Property("背景图片").Value.ToString();
                json = gVars.Property("立绘信息").Value.ToString();
                Dictionary <int, SpriteState> fgsprite = JsonConvert.DeserializeObject <Dictionary <int, SpriteState> >(json);
                SetGameVar("背景图片", bgsprite);
                SetGameVar("立绘信息", fgsprite);
            }

            SetGameVar("回合", currentTurn);
            SetGameVar("玩家", player);
            SetGameVar("事件状态表", eventStatusDict);
            SetGameVar("当前事件名", currentEventName);
            eventManager.UpdateEvent();

            SetGameVar("姓", xing);
            SetGameVar("名", ming);
            SetGameVar("精力总量", allMP);
            SetGameVar("上午课程", morningSchedule);
            SetGameVar("下午课程", afternoonSchedule);
            SetGameVar("上午指数", morningRate);
            SetGameVar("下午指数", afternoonRate);
            SetGameVar("当前脚本名", textName);
            SetGameVar("MODE", modeName);
            SetGameVar("文字位置", currentTextId);

            //单回合内数据
            json = hst["InTurnVar"].ToString();
            JObject IVars = JObject.Parse(json);

            //foreach (JProperty jp in IVars.Properties())
            //{
            //    Debug.Log(jp.Name);
            //}

            json = IVars.Property("持有证据").Value.ToString();
            List <string> evidenceHave = JsonConvert.DeserializeObject <List <string> >(json);

            json = IVars.Property("侦探模式").Value.ToString();
            Constants.DETECT_STATUS currentStatus = JsonConvert.DeserializeObject <Constants.DETECT_STATUS>(json);
            json = IVars.Property("侦探事件位置状态表").Value.ToString();
            Dictionary <string, bool> placeDict = JsonConvert.DeserializeObject <Dictionary <string, bool> >(json);

            json = IVars.Property("已威慑证词序号").Value.ToString();
            List <int> pressedId = JsonConvert.DeserializeObject <List <int> >(json);

            json = IVars.Property("侦探事件已知信息").Value.ToString();
            List <string> knownInfo          = JsonConvert.DeserializeObject <List <string> >(json);
            string        currentDetect      = IVars.Property("当前侦探事件").Value.ToString();
            string        currentDetectPlace = IVars.Property("当前侦探位置").Value.ToString();

            json = IVars.Property("当前血量").Value.ToString();
            int    currentHP = JsonConvert.DeserializeObject <int>(json);
            string enquireId = IVars.Property("询问编号").Value.ToString();

            json = IVars.Property("证词序号").Value.ToString();
            int testimonyId = JsonConvert.DeserializeObject <int>(json);


            SetInTurnVar("持有证据", evidenceHave);
            SetInTurnVar("侦探模式", currentStatus);
            SetInTurnVar("侦探事件位置状态表", placeDict);
            SetInTurnVar("已威慑证词序号", pressedId);
            SetInTurnVar("侦探事件已知信息", knownInfo);
            SetInTurnVar("当前侦探事件", currentDetect);
            SetInTurnVar("当前侦探位置", currentDetectPlace);
            SetInTurnVar("询问编号", enquireId);
            SetInTurnVar("证词序号", testimonyId);
            SetInTurnVar("当前血量", currentHP);
        }