예제 #1
0
    /// <summary>
    /// choices with
    /// 1. identifier
    /// 2. actions
    /// </summary>
    /// <param name="choices"></param>
    public void AddOneChoice(JSONNode choices, string scene)
    {
        ChooseMessageData data = new ChooseMessageData();

        data.identifier     = choices["identifier"];
        data.selectedIndex  = -1;
        data.belongingScene = scene;

        var choiceArr = choices["actions"].AsArray;

        data.actions               = new ChoiceAction[2];
        data.actions[0]            = new ChoiceAction();
        data.actions[0].choice     = choiceArr[0]["choice"];
        data.actions[0].identifier = choiceArr[0]["identifier"];

        data.actions[1]            = new ChoiceAction();
        data.actions[1].choice     = choiceArr[1]["choice"];
        data.actions[1].identifier = choiceArr[1]["identifier"];

        historyDataList.Add(data);
    }
예제 #2
0
    public static MessageBase ParseFromJSONNode(JSONNode node)
    {
        if (node is JSONData)
        {
            var   str = node.Value;
            Regex r   = new Regex(ChooseMessageData.strPattern);
            Match m   = r.Match(str);

            Debug.Log(str);
            if (!m.Success)
            {
                NormalMessageData d = new NormalMessageData();
                d.SetNodeData(str);
                return(d);
            }
            else
            {
                ChooseMessageData d = new ChooseMessageData();
                d.SetNodeData(str);
                return(d);
            }
        }
        return(null);
    }