From 48c07e0a371f67b97abc7c2e61d7f23d060324fc Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期四, 28 一月 2021 18:24:53 +0800
Subject: [PATCH] Merge branch 'dev-tzy' into NewFilePath

---
 HDL_ON/Entity/Function/Light.cs |   93 ++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 88 insertions(+), 5 deletions(-)

diff --git a/HDL_ON/Entity/Function/Light.cs b/HDL_ON/Entity/Function/Light.cs
index e611406..d430811 100644
--- a/HDL_ON/Entity/Function/Light.cs
+++ b/HDL_ON/Entity/Function/Light.cs
@@ -48,7 +48,20 @@
                     if (trait_brightness.curValue.ToString() == "{}")
                         trait_brightness.curValue = 0;
                 }
-                return Convert.ToInt32(trait_brightness.curValue);
+                try
+                {
+                    string textValue = trait_brightness.curValue.ToString();
+                    if (textValue == string.Empty)
+                    {
+                        trait_brightness.curValue = 0;
+                    }
+                    return Convert.ToInt32(trait_brightness.curValue);
+                }
+                catch
+                {
+                    trait_brightness.curValue = 0;
+                    return 0;
+                }
             }
             set
             {
@@ -83,10 +96,44 @@
         /// </summary>
         [Newtonsoft.Json.JsonIgnore]
         public int lastBrightness = 100;
+
+        int hadFadeTime = 99;
+        /// <summary>
+        /// 鏄惁鎷ユ湁娓愬彉鏃堕棿
+        /// </summary>
+        public bool HadFadeTime
+        {
+            get
+            {
+                if (hadFadeTime == 99)
+                {
+                    var t = attributes.Find((obj) => obj.key == FunctionAttributeKey.FadeTime);
+                    if (t == null)
+                    {
+                        hadFadeTime = 0;
+                        return false;
+                    }
+                    else
+                    {
+                        hadFadeTime = 1;
+                        return true;
+                    }
+                }
+                if (hadFadeTime == 1)
+                {
+                    return true;
+                }
+                else
+                {
+                    return false;
+                }
+            }
+        }
+
         [Newtonsoft.Json.JsonIgnore]
         FunctionAttributes trait_fadeTime;
         /// <summary>
-        /// 浜害鍊�
+        /// 娓愬彉鏃堕棿
         /// </summary>
         [Newtonsoft.Json.JsonIgnore]
         public int fadeTime
@@ -140,6 +187,8 @@
                 }
             }
         }
+
+        #region RGB
         /// <summary>
         /// 鑾峰彇rgb棰滆壊
         /// </summary>
@@ -161,10 +210,10 @@
                 }
                 if (trait_color.curValue.ToString() == "{}")
                     trait_color.curValue = "255,255,255";
-                int.TryParse(trait_color.curValue.ToString().Split(",")[0], out redColor);
-                int.TryParse(trait_color.curValue.ToString().Split(",")[1], out greenColor);
-                int.TryParse(trait_color.curValue.ToString().Split(",")[2], out blueColor);
             }
+            int.TryParse(trait_color.curValue.ToString().Split(",")[0], out redColor);
+            int.TryParse(trait_color.curValue.ToString().Split(",")[1], out greenColor);
+            int.TryParse(trait_color.curValue.ToString().Split(",")[2], out blueColor);
 
             int recolor = redColor * 256 * 256 + greenColor * 256 + blueColor;
 
@@ -187,6 +236,7 @@
             redColor = color[0];
             greenColor = color[1];
             blueColor = color[2];
+            trait_color.curValue = redColor + "," + greenColor + "," + blueColor;
         }
 
         [Newtonsoft.Json.JsonIgnore]
@@ -214,5 +264,38 @@
                 return blueColor;
             }
         }
+        #endregion
+
+        #region CCT
+        FunctionAttributes attr_CCT;
+        /// <summary>
+        /// 鑹叉俯
+        /// </summary>
+        [Newtonsoft.Json.JsonIgnore]
+        public FunctionAttributes Attr_CCT
+        {
+            get
+            {
+                if(attr_CCT == null)
+                {
+                    attr_CCT = attributes.Find((obj) => obj.key == FunctionAttributeKey.CCT);
+                    if(attr_CCT== null)
+                    {
+                        attr_CCT = new FunctionAttributes()
+                        {
+                            key = FunctionAttributeKey.CCT,
+                            value = new List<string> (),
+                            max = 6500,
+                            min = 2700,
+                            curValue = 2700
+                        };
+                    }
+                }
+                var result = 2700;
+                int.TryParse(attr_CCT.curValue.ToString(), out result);
+                return attr_CCT;
+            }
+        }
+        #endregion
     }
 }

--
Gitblit v1.8.0