Example #1
0
        protected void ActionParse(T ele, string data)
        {
            var a = SplitHelper.Delimiter(data);

            lastAction = LClass.s.GetNewAction(a.key).Create(a.value);
            ele.action.Add(lastAction);
        }
Example #2
0
        /// <summary>
        /// Build the reqs
        /// </summary>
        /// <param name="reqs"></param>
        /// <returns></returns>
        public void Add(params string[] reqs)
        {
            foreach (string req in reqs)
            {
                if (String.IsNullOrEmpty(req))
                {
                    continue;
                }

                var s = SplitHelper.Delimiter(req);
                Add(s.key, s.value);
            }
        }
Example #3
0
        public static Dictionary <string, string> BuildNewReq(Dictionary <string, string> o)
        {
            Dictionary <string, string> r = new Dictionary <string, string>();
            int id = 0;

            while (o.ContainsKey("req" + id))
            {
                var re = SplitHelper.Delimiter(o["req" + id]);
                id++;
                if (string.IsNullOrEmpty(re.value))
                {
                    o.Add(re.key, "");
                    continue;
                }
                r.Add(re.key, re.value);
            }

            return(r);
        }
Example #4
0
        public void AddOption(PanelBuilder panel)
        {
            if (type == "bool")
            {
                panel.AddCheckbox(Bool(), Name(), s => { SetValue(Convert.ToString(s)); });
                return;
            }

            if (type.StartsWith("scale"))
            {
                panel.AddHeaderLabel(Name());
                var t = SplitHelper.SeparatorInt(SplitHelper.Delimiter(type).value);
                panel.AddSlider(t[0], t[1], PlayerPrefs.GetInt(id, Int32.Parse(Value())), s =>
                {
                    SetValue(s.ToString());
                });
                return;
            }

            if (type == "text")
            {
                panel.AddInput(Name(), Value(), SetValue);
            }

            if (type.StartsWith("dropdown"))
            {
                var           values = SplitHelper.Separator(SplitHelper.Delimiter(type).value);
                List <string> titles = new List <string>();
                foreach (var value in values)
                {
                    titles.Add(S.T(value));
                }
                panel.AddHeaderLabel(Name());
                panel.AddDropdown(values, Value(), titles.ToArray(), SetValue);
            }
        }
Example #5
0
        protected void ActionParse(ActionHolders action, string data)
        {
            var a = SplitHelper.Delimiter(data);

            action.Add(LClass.s.GetNewAction(a.key).Create(a.value));
        }
Example #6
0
        protected void Delimiter(Dictionary <string, string> refs, string data)
        {
            var d = SplitHelper.Delimiter(data);

            refs.Add(d.key, d.value);
        }
Example #7
0
        protected override void ParseElement(T ele, string header, string data)
        {
            switch (header)
            {
            case "modi":
                Delimiter(ele.modi, data);
                break;

            case "action":
                ActionParse(ele, data);
                break;

            case "actionreq":
                lastAction.req.Add(data);
                break;

            case "actiondata":
                var d = SplitHelper.Delimiter(data);
                lastAction.data.Add(d.key, d.value);
                break;

            case "buildtime":
                ele.buildTime = Int(data);
                break;

            case "cost":
                Res(ele.cost, data);
                break;

            case "visible":
                ele.visibilityRange = Int(data);
                break;

            case "hp":
                ele.hp = Int(data);
                break;

            case "ap":
                ele.ap = Int(data);
                break;

            case "atk":
                ele.atk = Int(data);
                break;

            case "def":
                ele.def = Int(data);
                break;

            case "dammin":
                ele.damMin = Int(data);
                break;

            case "dammax":
                ele.damMax = Int(data);
                break;

            default:
                base.ParseElement(ele, header, data);
                break;
            }
        }