Пример #1
0
        static Data.Automation GetAutomation(Data.Section.InType intype)
        {
            Data.Automation auto = null;
            switch (intype)
            {
            case Data.Section.InType.FadeIn:
                auto = Data.Automation.LinearFadeIn;
                break;

            case Data.Section.InType.KickIn:
                auto = Data.Automation.InstantUnMute;
                break;
            }
            return(auto);
        }
Пример #2
0
        static Data.Automation GetAutomation(Data.Section.OutType outtype)
        {
            Data.Automation auto = null;
            switch (outtype)
            {
            case Data.Section.OutType.FadeOut:
                auto = Data.Automation.LinearFadeOut;
                break;

            case Data.Section.OutType.Mute:
                auto = Data.Automation.InstantMute;
                break;

            case Data.Section.OutType.LeaveIt:
                auto = Data.Automation.InstantUnMute;
                break;
            }
            return(auto);
        }
Пример #3
0
        /// <summary>
        /// json 형식으로 되어있는 오토메이션 정보 해석
        /// </summary>
        /// <param name="json"></param>
        /// <returns></returns>
        public static Data.Automation ParseAutomationFromJSON(JSONObject json)
        {
            var auto = new Data.Automation();

            var param = json.GetField("param").str;

            auto.targetParam = parseEnum <Data.Automation.TargetParam>(param);

            json.GetField("data", (pointarr) =>
            {
                var list  = pointarr.list;
                var count = list.Count;
                for (int i = 0; i < count; i++)
                {
                    var p = list[i];
                    var t = p.GetField("t").f;
                    var v = p.GetField("v").f;
                    auto.AddPoint(t, v);
                }
            });

            return(auto);
        }