Browse Source

Temp 4.13

LiuQilin 8 years ago
parent
commit
8856f115ef
44 changed files with 2457 additions and 1273 deletions
  1. BIN
      .vs/MyLovelyGarden/v14/.suo
  2. BIN
      Assets/Resource/Prefab/Object/Tutorial.prefab
  3. BIN
      Assets/Resource/Prefab/PrefabUI/Canvas.prefab
  4. BIN
      Assets/Resource/Prefab/PrefabUI/FlowerItemG.prefab
  5. BIN
      Assets/Resource/Prefab/PrefabUI/SkillItem.prefab
  6. 1 1
      Assets/Resource/XML/Config/ability_config.xml
  7. 4 3
      Assets/Resource/XML/PlayerConfig.xml
  8. BIN
      Assets/Resource/Xlsx/ability_config.xlsx
  9. 1 16
      Assets/Script/Interface/Regist.cs
  10. 4 35
      Assets/Script/Manage/Initializer.cs
  11. 143 76
      Assets/Script/Manage/ManaAnim.cs
  12. 0 16
      Assets/Script/Manage/ManaAudio.cs
  13. 11 96
      Assets/Script/Manage/ManaData.cs
  14. 0 10
      Assets/Script/Manage/ManaGarden.cs
  15. 61 133
      Assets/Script/Manage/ManaMiniGame.cs
  16. 15 8
      Assets/Script/Manage/ManaPlayer.cs
  17. 17 5
      Assets/Script/Manage/ManaReso.cs
  18. 190 455
      Assets/Script/Manage/ManaTutorial.cs
  19. 1290 16
      Assets/Script/Manage/ManaUI.cs
  20. 1 1
      Assets/Script/Object/Drop.cs
  21. 46 20
      Assets/Script/Object/Flower.cs
  22. 78 47
      Assets/Script/Object/Garden.cs
  23. 3 2
      Assets/Script/Object/Skill/Ability.cs
  24. 72 70
      Assets/Script/Object/Skill/BigSkill.cs
  25. 14 8
      Assets/Script/Object/Skill/Skill.cs
  26. 80 42
      Assets/Script/Object/Tutorial.cs
  27. 91 1
      Assets/Script/Tool/Anim/Tween.cs
  28. 11 1
      Assets/Script/Tool/Anim/TweenAudio.cs
  29. 9 11
      Assets/Script/Tool/Anim/TweenCG.cs
  30. 9 7
      Assets/Script/Tool/Anim/TweenGra.cs
  31. 11 14
      Assets/Script/Tool/Anim/TweenNumber.cs
  32. 7 24
      Assets/Script/Tool/Anim/TweenRect.cs
  33. 7 34
      Assets/Script/Tool/Anim/TweenScale.cs
  34. 9 5
      Assets/Script/Tool/Anim/TweenSr.cs
  35. 11 5
      Assets/Script/Tool/Anim/TweenText.cs
  36. 7 28
      Assets/Script/Tool/Anim/TweenVec.cs
  37. 82 0
      Assets/Script/Tool/Anim/Zoom2D.cs
  38. 12 0
      Assets/Script/Tool/Anim/Zoom2D.cs.meta
  39. 70 14
      Assets/Script/Tool/Data.cs
  40. 64 44
      Assets/Script/Tool/Extension.cs
  41. 10 0
      Assets/Script/Tool/SceneMask.cs
  42. 1 0
      MyLovelyGarden.csproj
  43. 13 16
      MyLovelyGarden.sln
  44. 2 9
      ToList.txt

BIN
.vs/MyLovelyGarden/v14/.suo


BIN
Assets/Resource/Prefab/Object/Tutorial.prefab


BIN
Assets/Resource/Prefab/PrefabUI/Canvas.prefab


BIN
Assets/Resource/Prefab/PrefabUI/FlowerItemG.prefab


BIN
Assets/Resource/Prefab/PrefabUI/SkillItem.prefab


+ 1 - 1
Assets/Resource/XML/Config/ability_config.xml

@@ -2,7 +2,7 @@
   <item id="1" name="花园" class="1" class_id="1" coin_person="1" person="1" skill_cd="" unlock_lv="" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="" upgrade_cur="1" upgrade_amnt="200" upgrade_fml="a*1.07" upgrade_plus="10%" upgrade_person="10%" upgrade_cd="" desc="每人次收入 金币[&amp;coin_person&amp;][lv],每分钟来访[&amp;person&amp;*60][lv]人" icon="红-公园" anim="" label="" />
   <item id="1" name="花园" class="1" class_id="1" coin_person="1" person="1" skill_cd="" unlock_lv="" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="" upgrade_cur="1" upgrade_amnt="200" upgrade_fml="a*1.07" upgrade_plus="10%" upgrade_person="10%" upgrade_cd="" desc="每人次收入 金币[&amp;coin_person&amp;][lv],每分钟来访[&amp;person&amp;*60][lv]人" icon="红-公园" anim="" label="" />
   <item id="2" name="缤纷彩虹" class="1" class_id="5" coin_person="" person="50%" skill_cd="" unlock_lv="200" unlock_ahead_cur="2" unlock_ahead_amt="200" unlock_cur="" unlock_amnt="100" unlock_pos="" upgrade_cur="2" upgrade_amnt="" upgrade_fml="a" upgrade_plus="" upgrade_person="50%" upgrade_cd="" desc="每分钟增加[&amp;person&amp;*60][lv]人参观,永久有效" icon="红-彩虹" anim="Rainbow,GardenBk2" label="" />
   <item id="2" name="缤纷彩虹" class="1" class_id="5" coin_person="" person="50%" skill_cd="" unlock_lv="200" unlock_ahead_cur="2" unlock_ahead_amt="200" unlock_cur="" unlock_amnt="100" unlock_pos="" upgrade_cur="2" upgrade_amnt="" upgrade_fml="a" upgrade_plus="" upgrade_person="50%" upgrade_cd="" desc="每分钟增加[&amp;person&amp;*60][lv]人参观,永久有效" icon="红-彩虹" anim="Rainbow,GardenBk2" label="" />
   <item id="3" name="玉树樱花" class="1" class_id="6" coin_person="50%" person="" skill_cd="" unlock_lv="500" unlock_ahead_cur="2" unlock_ahead_amt="300" unlock_cur="" unlock_amnt="" unlock_pos="" upgrade_cur="2" upgrade_amnt="300" upgrade_fml="a" upgrade_plus="50%" upgrade_person="" upgrade_cd="" desc="每人次收入提升[&amp;coin_person&amp;][lv],永久有效" icon="红-樱花树" anim="Tree1,GardenBk4" label="" />
   <item id="3" name="玉树樱花" class="1" class_id="6" coin_person="50%" person="" skill_cd="" unlock_lv="500" unlock_ahead_cur="2" unlock_ahead_amt="300" unlock_cur="" unlock_amnt="" unlock_pos="" upgrade_cur="2" upgrade_amnt="300" upgrade_fml="a" upgrade_plus="50%" upgrade_person="" upgrade_cd="" desc="每人次收入提升[&amp;coin_person&amp;][lv],永久有效" icon="红-樱花树" anim="Tree1,GardenBk4" label="" />
-  <item id="4" name="滴哩哩的小黄鹂" class="1" class_id="7" coin_person="" person="" skill_cd="5%" unlock_lv="10" unlock_ahead_cur="2" unlock_ahead_amt="500" unlock_cur="" unlock_amnt="" unlock_pos="" upgrade_cur="2" upgrade_amnt="300" upgrade_fml="a" upgrade_plus="" upgrade_person="" upgrade_cd="5%" desc="技能冷却时间减少[&amp;skill_cd&amp;][lv],永久有效" icon="红-黄鹂鸟" anim="Bird,GardenBk4" label="" />
+  <item id="4" name="滴哩哩的小黄鹂" class="1" class_id="7" coin_person="" person="" skill_cd="5%" unlock_lv="200" unlock_ahead_cur="2" unlock_ahead_amt="500" unlock_cur="" unlock_amnt="" unlock_pos="" upgrade_cur="2" upgrade_amnt="300" upgrade_fml="a" upgrade_plus="" upgrade_person="" upgrade_cd="5%" desc="技能冷却时间减少[&amp;skill_cd&amp;][lv],永久有效" icon="红-黄鹂鸟" anim="Bird,GardenBk4" label="" />
   <item id="5" name="黄色小蜜蜂" class="2" class_id="1" coin_person="10" person="" skill_cd="" unlock_lv="200" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="" upgrade_cur="1" upgrade_amnt="1600" upgrade_fml="a*1.07" upgrade_plus="10" upgrade_person="" upgrade_cd="" desc="每人次参观获得[&amp;coin_person&amp;][lv]金币" icon="黄-黄色蜜蜂" anim="BeeYellow" label="" />
   <item id="5" name="黄色小蜜蜂" class="2" class_id="1" coin_person="10" person="" skill_cd="" unlock_lv="200" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="" upgrade_cur="1" upgrade_amnt="1600" upgrade_fml="a*1.07" upgrade_plus="10" upgrade_person="" upgrade_cd="" desc="每人次参观获得[&amp;coin_person&amp;][lv]金币" icon="黄-黄色蜜蜂" anim="BeeYellow" label="" />
   <item id="6" name="紫色小蜜蜂" class="2" class_id="2" coin_person="10" person="" skill_cd="" unlock_lv="200" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="1" upgrade_cur="1" upgrade_amnt="86400" upgrade_fml="a*1.07" upgrade_plus="10" upgrade_person="" upgrade_cd="" desc="每人次参观获得[&amp;coin_person&amp;][lv]金币" icon="黄-紫色蜜蜂" anim="BeePurple" label="" />
   <item id="6" name="紫色小蜜蜂" class="2" class_id="2" coin_person="10" person="" skill_cd="" unlock_lv="200" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="1" upgrade_cur="1" upgrade_amnt="86400" upgrade_fml="a*1.07" upgrade_plus="10" upgrade_person="" upgrade_cd="" desc="每人次参观获得[&amp;coin_person&amp;][lv]金币" icon="黄-紫色蜜蜂" anim="BeePurple" label="" />
   <item id="7" name="蓝色小蜜蜂" class="2" class_id="3" coin_person="10" person="" skill_cd="" unlock_lv="200" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="1" upgrade_cur="1" upgrade_amnt="22118000" upgrade_fml="a*1.07" upgrade_plus="10" upgrade_person="" upgrade_cd="" desc="每人次参观获得[&amp;coin_person&amp;][lv]金币" icon="黄-蓝色蜜蜂" anim="BeeBlue" label="" />
   <item id="7" name="蓝色小蜜蜂" class="2" class_id="3" coin_person="10" person="" skill_cd="" unlock_lv="200" unlock_ahead_cur="" unlock_ahead_amt="" unlock_cur="" unlock_amnt="" unlock_pos="1" upgrade_cur="1" upgrade_amnt="22118000" upgrade_fml="a*1.07" upgrade_plus="10" upgrade_person="" upgrade_cd="" desc="每人次参观获得[&amp;coin_person&amp;][lv]金币" icon="黄-蓝色蜜蜂" anim="BeeBlue" label="" />

+ 4 - 3
Assets/Resource/XML/PlayerConfig.xml

@@ -1,6 +1,8 @@
 <PlayerConfig>
 <PlayerConfig>
-  <Version value="48" />
-  
+  <Tutorial value="1" />
+  <Version value="56" />
+  <TutorialIndex value="1" />
+
   <Player value="PlayerBlond" />
   <Player value="PlayerBlond" />
   <QuitTime value="2/3/2017 09:30:00 AM" />
   <QuitTime value="2/3/2017 09:30:00 AM" />
   
   
@@ -8,7 +10,6 @@
   <Coin value="0" />
   <Coin value="0" />
   <Level value="0" />
   <Level value="0" />
   <Person value="0" />
   <Person value="0" />
-  <Tutorial value="0" />
   <Diamond value="0" />
   <Diamond value="0" />
   <SignIndex value="0" />
   <SignIndex value="0" />
   <MiniTimer value="0" />
   <MiniTimer value="0" />

BIN
Assets/Resource/Xlsx/ability_config.xlsx


+ 1 - 16
Assets/Script/Interface/Regist.cs

@@ -32,21 +32,6 @@ public class Regist : MonoBehaviour
 
 
     public virtual void TutorialToRegular()
     public virtual void TutorialToRegular()
     {
     {
-
-    }
-
-    public virtual void TutorialInstantiate()
-    {
-
-    }
-
-    public virtual void TutorialRegistValue()
-    {
-
-    }
-
-    public virtual void TutorialRegistReference()
-    {
-
+        
     }
     }
 }
 }

+ 4 - 35
Assets/Script/Manage/Initializer.cs

@@ -48,15 +48,15 @@ public class Initializer : MonoBehaviour
         gameObject.AddScript<ManaReso>();
         gameObject.AddScript<ManaReso>();
         gameObject.AddScript<ManaAnim>();
         gameObject.AddScript<ManaAnim>();
         gameObject.AddScript<ManaAudio>();
         gameObject.AddScript<ManaAudio>();
+        gameObject.AddScript<ManaTutorial>();
 
 
         gameObject.AddScript<ManaUI>();
         gameObject.AddScript<ManaUI>();
         gameObject.AddScript<ManaSign>();
         gameObject.AddScript<ManaSign>();
-        gameObject.AddScript<ManaGarden>();
 
 
         gameObject.AddScript<ManaData>();
         gameObject.AddScript<ManaData>();
         gameObject.AddScript<ManaPlayer>();
         gameObject.AddScript<ManaPlayer>();
         gameObject.AddScript<ManaDebug>();
         gameObject.AddScript<ManaDebug>();
-        gameObject.AddScript<ManaTutorial>();
+        gameObject.AddScript<ManaGarden>();
         gameObject.AddScript<ManaAchieve>();
         gameObject.AddScript<ManaAchieve>();
         gameObject.AddScript<ManaMiniGame>();
         gameObject.AddScript<ManaMiniGame>();
 
 
@@ -66,40 +66,9 @@ public class Initializer : MonoBehaviour
 
 
     public static void Initialize()
     public static void Initialize()
     {
     {
-        Tutorial = Data.PlayerBool("Tutorial");
-
-        if (Tutorial)
-        {
-            TutorialInitialize();
-        }
-        else
-        {
-            RegularInitialize();
-        }
-    }
+        Tutorial = Data.GetPlayerBool("Tutorial");
+        ManaTutorial.TutorialIndex = Data.GetPlayerInt("TutorialIndex");
 
 
-    public static void TutorialInitialize()
-    {
-        for (int i = 0; i < RegistList.Count; i++)
-        {
-            RegistList[i].TutorialInstantiate();
-        }
-
-        for (int i = 0; i < RegistList.Count; i++)
-        {
-            RegistList[i].TutorialRegistReference();
-        }
-
-        for (int i = 0; i < RegistList.Count; i++)
-        {
-            RegistList[i].TutorialRegistValue();
-
-            RegistList[i].enabled = true;
-        }
-    }
-
-    public static void RegularInitialize()
-    {
         for (int i = 0; i < RegistList.Count; i++)
         for (int i = 0; i < RegistList.Count; i++)
         {
         {
             RegistList[i].Instantiate();
             RegistList[i].Instantiate();

+ 143 - 76
Assets/Script/Manage/ManaAnim.cs

@@ -53,6 +53,7 @@ public class ManaAnim : Regist
     public static Dictionary<Transform, Shake> ShakeDic;
     public static Dictionary<Transform, Shake> ShakeDic;
     public static Dictionary<Transform, Move2D> MoveDic2D;
     public static Dictionary<Transform, Move2D> MoveDic2D;
     public static Dictionary<Transform, Move3D> MoveDic3D;
     public static Dictionary<Transform, Move3D> MoveDic3D;
+    public static Dictionary<Transform, Zoom2D> ZoomDic2D;
 
 
     public static Dictionary<Transform, TweenSr> TweenSrDic;
     public static Dictionary<Transform, TweenSr> TweenSrDic;
     public static Dictionary<Transform, TweenCG> TweenCgDic;
     public static Dictionary<Transform, TweenCG> TweenCgDic;
@@ -142,12 +143,6 @@ public class ManaAnim : Regist
     }
     }
 
 
 
 
-    public override void TutorialRegistValue()
-    {
-        RegistValueA();
-    }
-
-
     #region 曲线
     #region 曲线
 
 
     public static float LinearTimer(float value, float duration, float start, float delta)
     public static float LinearTimer(float value, float duration, float start, float delta)
@@ -472,6 +467,44 @@ public class ManaAnim : Regist
         return move;
         return move;
     }
     }
 
 
+    public static Zoom2D Zoom2D(Transform target, float origin, float destination, float duration, float stay, Transform targetZoom, Curve curve)
+    {
+        Zoom2D move;
+
+        if (ZoomDic2D.TryGetValue(targetZoom, out move))
+        {
+            move.StartZoom(origin, destination, duration, stay, targetZoom, curve);
+        }
+        else
+        {
+            move = CreateZoom2D(target);
+
+            move.StartZoom(origin, destination, duration, stay, targetZoom, curve);
+        }
+
+        return move;
+    }
+
+    public static Zoom2D Zoom2D(Transform target, float destination, float duration, float stay, Transform targetZoom, Curve curve)
+    {
+        Zoom2D move;
+
+        Camera camera = target.GetComponent<Camera>();
+
+        if (ZoomDic2D.TryGetValue(targetZoom, out move))
+        {
+            move.StartZoom(camera.orthographicSize, destination, duration, stay, targetZoom, curve);
+        }
+        else
+        {
+            move = CreateZoom2D(targetZoom);
+
+            move.StartZoom(camera.orthographicSize, destination, duration, stay, targetZoom, curve);
+        }
+
+        return move;
+    }
+
 
 
     public static TweenSr TweenForSr(Transform target)
     public static TweenSr TweenForSr(Transform target)
     {
     {
@@ -1098,6 +1131,20 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
+    public static Zoom2D GetZoom2D(Transform target)
+    {
+        Zoom2D move;
+
+        if (ZoomDic2D.TryGetValue(target, out move))
+        {
+            return move;
+        }
+        else
+        {
+            throw new Exception();
+        }
+    }
+
 
 
     public static TweenSr GetTweenSr(Transform target)
     public static TweenSr GetTweenSr(Transform target)
     {
     {
@@ -1289,8 +1336,28 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
+    public static Zoom2D CreateZoom2D(Transform target)
+    {
+        if (ZoomDic2D.ContainsKey(target))
+        {
+            Zoom2D zoom2D = ZoomDic2D[target];
+
+            zoom2D = new Zoom2D(target.GetComponent<Camera>());
+
+            return zoom2D;
+        }
+        else
+        {
+            Zoom2D zoom2D = new Zoom2D(target.GetComponent<Camera>());
+
+            ZoomDic2D.Add(target, zoom2D);
+
+            return zoom2D;
+        }
+    }
+
 
 
-    public static TweenSr CreateTweenSr(Transform target, float originAlpha, float destinationAlpha, float duration, bool group, bool originActive, bool destActive, Curve curve)
+    public static TweenSr CreateTweenSr(Transform target, float originAlpha, float destinationAlpha, float duration, bool originActive, bool destActive, Curve curve, bool cg = false, bool group = false)
     {
     {
         TweenSr tween;
         TweenSr tween;
         SpriteRenderer sr = target.GetComponent<SpriteRenderer>();
         SpriteRenderer sr = target.GetComponent<SpriteRenderer>();
@@ -1305,13 +1372,13 @@ public class ManaAnim : Regist
         {
         {
              tween = TweenSrDic[target];
              tween = TweenSrDic[target];
 
 
-            tween = new TweenSr(sr, origin, destination, duration, group, originActive, destActive, curve);
+            tween = new TweenSr(sr, origin, destination, duration, originActive, destActive, curve, cg, group);
 
 
             return tween;
             return tween;
         }
         }
         else
         else
         {
         {
-             tween = new TweenSr(sr, origin, destination, duration, group, originActive, destActive, curve);
+             tween = new TweenSr(sr, origin, destination, duration, originActive, destActive, curve, cg, group);
 
 
             TweenSrDic.Add(target, tween);
             TweenSrDic.Add(target, tween);
 
 
@@ -1319,7 +1386,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenSr CreateTweenSr(Transform target, float destinationAlpha, float duration, bool group, bool originActive, bool destActive, Curve curve)
+    public static TweenSr CreateTweenSr(Transform target, float destinationAlpha, float duration, bool originActive, bool destActive, Curve curve, bool cg = false, bool group = false)
     {
     {
         TweenSr tween;
         TweenSr tween;
         SpriteRenderer sr = target.GetComponent<SpriteRenderer>();
         SpriteRenderer sr = target.GetComponent<SpriteRenderer>();
@@ -1332,13 +1399,13 @@ public class ManaAnim : Regist
         {
         {
              tween = TweenSrDic[target];
              tween = TweenSrDic[target];
 
 
-            tween = new TweenSr(sr, sr.color, destination, duration, group, originActive, destActive, curve);
+            tween = new TweenSr(sr, sr.color, destination, duration, originActive, destActive, curve, cg, group);
 
 
             return tween;
             return tween;
         }
         }
         else
         else
         {
         {
-             tween = new TweenSr(sr, sr.color, destination, duration, group, originActive, destActive, curve);
+             tween = new TweenSr(sr, sr.color, destination, duration, originActive, destActive, curve, cg, group);
 
 
             TweenSrDic.Add(target, tween);
             TweenSrDic.Add(target, tween);
 
 
@@ -1346,7 +1413,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenSr CreateTweenSr(Transform target, Color origin, Color destination, float duration, bool group, bool originActive, bool destActive, Curve curve)
+    public static TweenSr CreateTweenSr(Transform target, Color origin, Color destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false, bool group=false)
     {
     {
         if (TweenSrDic.ContainsKey(target))
         if (TweenSrDic.ContainsKey(target))
         {
         {
@@ -1354,7 +1421,7 @@ public class ManaAnim : Regist
 
 
             TweenSr tween = TweenSrDic[target];
             TweenSr tween = TweenSrDic[target];
 
 
-            tween = new TweenSr(sr, origin, destination, duration, group, originActive, destActive, curve);
+            tween = new TweenSr(sr, origin, destination, duration, originActive, destActive, curve, cg, group);
 
 
             return tween;
             return tween;
         }
         }
@@ -1362,7 +1429,7 @@ public class ManaAnim : Regist
         {
         {
             SpriteRenderer sr = target.GetComponent<SpriteRenderer>();
             SpriteRenderer sr = target.GetComponent<SpriteRenderer>();
 
 
-            TweenSr tween = new TweenSr(sr, origin, destination, duration, group, originActive, destActive, curve);
+            TweenSr tween = new TweenSr(sr, origin, destination, duration, originActive, destActive, curve, cg, group);
 
 
             TweenSrDic.Add(target, tween);
             TweenSrDic.Add(target, tween);
 
 
@@ -1370,7 +1437,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenSr CreateTweenSr(Transform target, Color destination, float duration, bool group, bool originActive, bool destActive, Curve curve)
+    public static TweenSr CreateTweenSr(Transform target, Color destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false, bool group=false)
     {
     {
         if (TweenSrDic.ContainsKey(target))
         if (TweenSrDic.ContainsKey(target))
         {
         {
@@ -1378,7 +1445,7 @@ public class ManaAnim : Regist
 
 
             TweenSr tween = TweenSrDic[target];
             TweenSr tween = TweenSrDic[target];
 
 
-            tween = new TweenSr(sr, sr.color, destination, duration, group, originActive, destActive, curve);
+            tween = new TweenSr(sr, sr.color, destination, duration, originActive, destActive, curve, cg, group);
 
 
             return tween;
             return tween;
         }
         }
@@ -1386,7 +1453,7 @@ public class ManaAnim : Regist
         {
         {
             SpriteRenderer sr = target.GetComponent<SpriteRenderer>();
             SpriteRenderer sr = target.GetComponent<SpriteRenderer>();
 
 
-            TweenSr tween = new TweenSr(sr, sr.color, destination, duration, group, originActive, destActive, curve);
+            TweenSr tween = new TweenSr(sr, sr.color, destination, duration, originActive, destActive, curve, cg, group);
 
 
             TweenSrDic.Add(target, tween);
             TweenSrDic.Add(target, tween);
 
 
@@ -1442,7 +1509,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenGra CreateTweenGra(Transform target, float originAlpha, float destinationAlpha, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenGra CreateTweenGra(Transform target, float originAlpha, float destinationAlpha, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         Graphic graphic = target.GetComponent<Graphic>();
         Graphic graphic = target.GetComponent<Graphic>();
         TweenGra tween;
         TweenGra tween;
@@ -1457,13 +1524,13 @@ public class ManaAnim : Regist
         {
         {
             tween = TweenGraDic[target];
             tween = TweenGraDic[target];
 
 
-            tween = new TweenGra(graphic, origin, destination, duration, originActive, destActive, curve);
+            tween = new TweenGra(graphic, origin, destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
         else
         else
         {
         {
-            tween = new TweenGra(graphic, origin, destination, duration, originActive, destActive, curve);
+            tween = new TweenGra(graphic, origin, destination, duration, originActive, destActive, curve, cg);
 
 
             TweenGraDic.Add(target, tween);
             TweenGraDic.Add(target, tween);
 
 
@@ -1471,7 +1538,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenGra CreateTweenGra(Transform target, float destinationAlpha, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenGra CreateTweenGra(Transform target, float destinationAlpha, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         Graphic graphic = target.GetComponent<Graphic>();
         Graphic graphic = target.GetComponent<Graphic>();
         TweenGra tween;
         TweenGra tween;
@@ -1484,13 +1551,13 @@ public class ManaAnim : Regist
         {
         {
              tween = TweenGraDic[target];
              tween = TweenGraDic[target];
 
 
-            tween = new TweenGra(graphic, graphic.color, destination, duration, originActive, destActive, curve);
+            tween = new TweenGra(graphic, graphic.color, destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
         else
         else
         {
         {
-             tween = new TweenGra(graphic, graphic.color, destination, duration, originActive, destActive, curve);
+             tween = new TweenGra(graphic, graphic.color, destination, duration, originActive, destActive, curve, cg);
 
 
             TweenGraDic.Add(target, tween);
             TweenGraDic.Add(target, tween);
 
 
@@ -1498,7 +1565,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenGra CreateTweenGra(Transform target, Color origin, Color destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenGra CreateTweenGra(Transform target, Color origin, Color destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenGraDic.ContainsKey(target))
         if (TweenGraDic.ContainsKey(target))
         {
         {
@@ -1506,7 +1573,7 @@ public class ManaAnim : Regist
 
 
             TweenGra tween = TweenGraDic[target];
             TweenGra tween = TweenGraDic[target];
 
 
-            tween = new TweenGra(graphic, origin, destination, duration, originActive, destActive, curve);
+            tween = new TweenGra(graphic, origin, destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
@@ -1514,7 +1581,7 @@ public class ManaAnim : Regist
         {
         {
             Graphic graphic = target.GetComponent<Graphic>();
             Graphic graphic = target.GetComponent<Graphic>();
 
 
-            TweenGra tween = new TweenGra(graphic, origin, destination, duration, originActive, destActive, curve);
+            TweenGra tween = new TweenGra(graphic, origin, destination, duration, originActive, destActive, curve, cg);
 
 
             TweenGraDic.Add(target, tween);
             TweenGraDic.Add(target, tween);
 
 
@@ -1522,7 +1589,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenGra CreateTweenGra(Transform target, Color destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenGra CreateTweenGra(Transform target, Color destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenGraDic.ContainsKey(target))
         if (TweenGraDic.ContainsKey(target))
         {
         {
@@ -1530,7 +1597,7 @@ public class ManaAnim : Regist
 
 
             TweenGra tween = TweenGraDic[target];
             TweenGra tween = TweenGraDic[target];
 
 
-            tween = new TweenGra(graphic, graphic.color, destination, duration, originActive, destActive, curve);
+            tween = new TweenGra(graphic, graphic.color, destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
@@ -1538,7 +1605,7 @@ public class ManaAnim : Regist
         {
         {
             Graphic graphic = target.GetComponent<Graphic>();
             Graphic graphic = target.GetComponent<Graphic>();
 
 
-            TweenGra tween = new TweenGra(graphic, graphic.color, destination, duration, originActive, destActive, curve);
+            TweenGra tween = new TweenGra(graphic, graphic.color, destination, duration, originActive, destActive, curve, cg);
 
 
             TweenGraDic.Add(target, tween);
             TweenGraDic.Add(target, tween);
 
 
@@ -1546,7 +1613,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenVec CreateTweenVec2D(Transform target, Vector3 origin, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve)
+    public static TweenVec CreateTweenVec2D(Transform target, Vector3 origin, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         origin.z = target.position.z;
         origin.z = target.position.z;
         destination.z = target.position.z;
         destination.z = target.position.z;
@@ -1555,13 +1622,13 @@ public class ManaAnim : Regist
         {
         {
             TweenVec tween = TweenVecDic[target];
             TweenVec tween = TweenVecDic[target];
 
 
-            tween = new TweenVec(target, origin, destination, duration, local, originActive, destActive, curve);
+            tween = new TweenVec(target, origin, destination, duration, local, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
         else
         else
         {
         {
-            TweenVec tween = new TweenVec(target, origin, destination, duration, local, originActive, destActive, curve);
+            TweenVec tween = new TweenVec(target, origin, destination, duration, local, originActive, destActive, curve, cg);
 
 
             TweenVecDic.Add(target, tween);
             TweenVecDic.Add(target, tween);
 
 
@@ -1569,7 +1636,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenVec CreateTweenVec2D(Transform target, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve)
+    public static TweenVec CreateTweenVec2D(Transform target, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         destination.z = target.position.z;
         destination.z = target.position.z;
 
 
@@ -1579,11 +1646,11 @@ public class ManaAnim : Regist
 
 
             if (local)
             if (local)
             {
             {
-                tween = new TweenVec(target, target.localPosition, destination, duration, local, originActive, destActive, curve);
+                tween = new TweenVec(target, target.localPosition, destination, duration, local, originActive, destActive, curve, cg);
             }
             }
             else
             else
             {
             {
-                tween = new TweenVec(target, target.position, destination, duration, local, originActive, destActive, curve);
+                tween = new TweenVec(target, target.position, destination, duration, local, originActive, destActive, curve, cg);
             }
             }
 
 
             return tween;
             return tween;
@@ -1594,11 +1661,11 @@ public class ManaAnim : Regist
 
 
             if (local)
             if (local)
             {
             {
-                tween = new TweenVec(target, target.localPosition, destination, duration, local, originActive, destActive, curve);
+                tween = new TweenVec(target, target.localPosition, destination, duration, local, originActive, destActive, curve, cg);
             }
             }
             else
             else
             {
             {
-                tween = new TweenVec(target, target.position, destination, duration, local, originActive, destActive, curve);
+                tween = new TweenVec(target, target.position, destination, duration, local, originActive, destActive, curve, cg);
             }
             }
 
 
             TweenVecDic.Add(target, tween);
             TweenVecDic.Add(target, tween);
@@ -1607,19 +1674,19 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenVec CreateTweenVec3D(Transform target, Vector3 origin, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve)
+    public static TweenVec CreateTweenVec3D(Transform target, Vector3 origin, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenVecDic.ContainsKey(target))
         if (TweenVecDic.ContainsKey(target))
         {
         {
             TweenVec tween = TweenVecDic[target];
             TweenVec tween = TweenVecDic[target];
 
 
-            tween = new TweenVec(target, origin, destination, duration, local, originActive, destActive, curve);
+            tween = new TweenVec(target, origin, destination, duration, local, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
         else
         else
         {
         {
-            TweenVec tween = new TweenVec(target, origin, destination, duration, local, originActive, destActive, curve);
+            TweenVec tween = new TweenVec(target, origin, destination, duration, local, originActive, destActive, curve, cg);
 
 
             TweenVecDic.Add(target, tween);
             TweenVecDic.Add(target, tween);
 
 
@@ -1627,7 +1694,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenVec CreateTweenVec3D(Transform target, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve)
+    public static TweenVec CreateTweenVec3D(Transform target, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenVecDic.ContainsKey(target))
         if (TweenVecDic.ContainsKey(target))
         {
         {
@@ -1635,11 +1702,11 @@ public class ManaAnim : Regist
 
 
             if (local)
             if (local)
             {
             {
-                tween = new TweenVec(target, target.localPosition, destination, duration, local, originActive, destActive, curve);
+                tween = new TweenVec(target, target.localPosition, destination, duration, local, originActive, destActive, curve, cg);
             }
             }
             else
             else
             {
             {
-                tween = new TweenVec(target, target.position, destination, duration, local, originActive, destActive, curve);
+                tween = new TweenVec(target, target.position, destination, duration, local, originActive, destActive, curve, cg);
             }
             }
 
 
             return tween;
             return tween;
@@ -1650,11 +1717,11 @@ public class ManaAnim : Regist
 
 
             if (local)
             if (local)
             {
             {
-                tween = new TweenVec(target, target.localPosition, destination, duration, local, originActive, destActive, curve);
+                tween = new TweenVec(target, target.localPosition, destination, duration, local, originActive, destActive, curve, cg);
             }
             }
             else
             else
             {
             {
-                tween = new TweenVec(target, target.position, destination, duration, local, originActive, destActive, curve);
+                tween = new TweenVec(target, target.position, destination, duration, local, originActive, destActive, curve, cg);
             }
             }
 
 
             TweenVecDic.Add(target, tween);
             TweenVecDic.Add(target, tween);
@@ -1663,7 +1730,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenText CreateTweenText(Transform target, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenText CreateTweenText(Transform target, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenRectDic.ContainsKey(target))
         if (TweenRectDic.ContainsKey(target))
         {
         {
@@ -1671,7 +1738,7 @@ public class ManaAnim : Regist
 
 
             TweenText tween = TweenTextDic[target];
             TweenText tween = TweenTextDic[target];
 
 
-            tween = new TweenText(text, origin, destination, duration, originActive, destActive, curve);
+            tween = new TweenText(text, origin, destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
@@ -1679,7 +1746,7 @@ public class ManaAnim : Regist
         {
         {
             Text text = target.GetComponent<Text>();
             Text text = target.GetComponent<Text>();
 
 
-            TweenText tween = new TweenText(text, origin, destination, duration, originActive, destActive, curve);
+            TweenText tween = new TweenText(text, origin, destination, duration, originActive, destActive, curve, cg);
 
 
             TweenTextDic.Add(target, tween);
             TweenTextDic.Add(target, tween);
 
 
@@ -1687,7 +1754,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenText CreateTweenText(Transform target, float destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenText CreateTweenText(Transform target, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenRectDic.ContainsKey(target))
         if (TweenRectDic.ContainsKey(target))
         {
         {
@@ -1695,7 +1762,7 @@ public class ManaAnim : Regist
 
 
             TweenText tween = TweenTextDic[target];
             TweenText tween = TweenTextDic[target];
 
 
-            tween = new TweenText(text, text.fontSize, destination, duration, originActive, destActive, curve);
+            tween = new TweenText(text, text.fontSize, destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
@@ -1703,7 +1770,7 @@ public class ManaAnim : Regist
         {
         {
             Text text = target.GetComponent<Text>();
             Text text = target.GetComponent<Text>();
 
 
-            TweenText tween = new TweenText(text, text.fontSize, destination, duration, originActive, destActive, curve);
+            TweenText tween = new TweenText(text, text.fontSize, destination, duration, originActive, destActive, curve, cg);
 
 
             TweenTextDic.Add(target, tween);
             TweenTextDic.Add(target, tween);
 
 
@@ -1711,7 +1778,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenRect CreateTweenRect(Transform target, Vector2 origin, Vector2 destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenRect CreateTweenRect(Transform target, Vector2 origin, Vector2 destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenRectDic.ContainsKey(target))
         if (TweenRectDic.ContainsKey(target))
         {
         {
@@ -1719,7 +1786,7 @@ public class ManaAnim : Regist
 
 
             TweenRect tween = TweenRectDic[target];
             TweenRect tween = TweenRectDic[target];
 
 
-            tween = new TweenRect(rectTra, origin, destination, duration, originActive, destActive, curve);
+            tween = new TweenRect(rectTra, origin, destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
@@ -1727,7 +1794,7 @@ public class ManaAnim : Regist
         {
         {
             RectTransform rectTra = target.GetComponent<RectTransform>();
             RectTransform rectTra = target.GetComponent<RectTransform>();
 
 
-            TweenRect tween = new TweenRect(rectTra, origin, destination, duration, originActive, destActive, curve);
+            TweenRect tween = new TweenRect(rectTra, origin, destination, duration, originActive, destActive, curve, cg);
 
 
             TweenRectDic.Add(target, tween);
             TweenRectDic.Add(target, tween);
 
 
@@ -1735,7 +1802,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenRect CreateTweenRect(Transform target, Vector2 destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenRect CreateTweenRect(Transform target, Vector2 destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenRectDic.ContainsKey(target))
         if (TweenRectDic.ContainsKey(target))
         {
         {
@@ -1743,7 +1810,7 @@ public class ManaAnim : Regist
 
 
             TweenRect tween = TweenRectDic[target];
             TweenRect tween = TweenRectDic[target];
 
 
-            tween = new TweenRect(rectTra, rectTra.rect.size, destination, duration, originActive, destActive, curve);
+            tween = new TweenRect(rectTra, rectTra.rect.size, destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
@@ -1751,7 +1818,7 @@ public class ManaAnim : Regist
         {
         {
             RectTransform rectTra = target.GetComponent<RectTransform>();
             RectTransform rectTra = target.GetComponent<RectTransform>();
 
 
-            TweenRect tween = new TweenRect(rectTra, rectTra.rect.size, destination, duration, originActive, destActive, curve);
+            TweenRect tween = new TweenRect(rectTra, rectTra.rect.size, destination, duration, originActive, destActive, curve, cg);
 
 
             TweenRectDic.Add(target, tween);
             TweenRectDic.Add(target, tween);
 
 
@@ -1759,19 +1826,19 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenScale CreateTweenScale(Transform target, Vector3 origin, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenScale CreateTweenScale(Transform target, Vector3 origin, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenScaleDic.ContainsKey(target))
         if (TweenScaleDic.ContainsKey(target))
         {
         {
             TweenScale tween = TweenScaleDic[target];
             TweenScale tween = TweenScaleDic[target];
 
 
-            tween = new TweenScale(target, origin, destination, duration, originActive, destActive, curve);
+            tween = new TweenScale(target, origin, destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
         else
         else
         {
         {
-            TweenScale tween = new TweenScale(target, origin, destination, duration, originActive, destActive, curve);
+            TweenScale tween = new TweenScale(target, origin, destination, duration, originActive, destActive, curve, cg);
 
 
             TweenScaleDic.Add(target, tween);
             TweenScaleDic.Add(target, tween);
 
 
@@ -1779,19 +1846,19 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenScale CreateTweenScale(Transform target, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenScale CreateTweenScale(Transform target, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenScaleDic.ContainsKey(target))
         if (TweenScaleDic.ContainsKey(target))
         {
         {
             TweenScale tween = TweenScaleDic[target];
             TweenScale tween = TweenScaleDic[target];
 
 
-            tween = new TweenScale(target, target.lossyScale, destination, duration, originActive, destActive, curve);
+            tween = new TweenScale(target, target.lossyScale, destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
         else
         else
         {
         {
-            TweenScale tween = new TweenScale(target, target.lossyScale, destination, duration, originActive, destActive, curve);
+            TweenScale tween = new TweenScale(target, target.lossyScale, destination, duration, originActive, destActive, curve, cg);
 
 
             TweenScaleDic.Add(target, tween);
             TweenScaleDic.Add(target, tween);
 
 
@@ -1799,19 +1866,19 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenAudio CreateTweenAudio(Transform target, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenAudio CreateTweenAudio(Transform target, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenAudioDic.ContainsKey(target))
         if (TweenAudioDic.ContainsKey(target))
         {
         {
             TweenAudio tween = TweenAudioDic[target];
             TweenAudio tween = TweenAudioDic[target];
 
 
-            tween = new TweenAudio(target.GetComponent<AudioSource>(), origin, destination, duration, originActive, destActive, curve);
+            tween = new TweenAudio(target.GetComponent<AudioSource>(), origin, destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
         else
         else
         {
         {
-            TweenAudio tween = new TweenAudio(target.GetComponent<AudioSource>(), origin, destination, duration, originActive, destActive, curve);
+            TweenAudio tween = new TweenAudio(target.GetComponent<AudioSource>(), origin, destination, duration, originActive, destActive, curve, cg);
 
 
             TweenAudioDic.Add(target, tween);
             TweenAudioDic.Add(target, tween);
 
 
@@ -1819,7 +1886,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenAudio CreateTweenAudio(Transform target, float destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenAudio CreateTweenAudio(Transform target, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenAudioDic.ContainsKey(target))
         if (TweenAudioDic.ContainsKey(target))
         {
         {
@@ -1827,7 +1894,7 @@ public class ManaAnim : Regist
 
 
             TweenAudio tween = TweenAudioDic[target];
             TweenAudio tween = TweenAudioDic[target];
 
 
-            tween = new TweenAudio(audio , audio.volume, destination, duration, originActive, destActive, curve);
+            tween = new TweenAudio(audio , audio.volume, destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
@@ -1835,7 +1902,7 @@ public class ManaAnim : Regist
         {
         {
             AudioSource audio = target.GetComponent<AudioSource>();
             AudioSource audio = target.GetComponent<AudioSource>();
 
 
-            TweenAudio tween = new TweenAudio(audio, audio.volume, destination, duration, originActive, destActive, curve);
+            TweenAudio tween = new TweenAudio(audio, audio.volume, destination, duration, originActive, destActive, curve, cg);
 
 
             TweenAudioDic.Add(target, tween);
             TweenAudioDic.Add(target, tween);
 
 
@@ -1843,19 +1910,19 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenNumber CreateTweenNumber(Transform target, int origin, int destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenNumber CreateTweenNumber(Transform target, int origin, int destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenNumberDic.ContainsKey(target))
         if (TweenNumberDic.ContainsKey(target))
         {
         {
             TweenNumber tween = TweenNumberDic[target];
             TweenNumber tween = TweenNumberDic[target];
 
 
-            tween = new TweenNumber(target.GetComponent<Text>(), origin, destination, duration, originActive, destActive, curve);
+            tween = new TweenNumber(target.GetComponent<Text>(), origin, destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
         else
         else
         {
         {
-            TweenNumber tween = new TweenNumber(target.GetComponent<Text>(), origin, destination, duration, originActive, destActive, curve);
+            TweenNumber tween = new TweenNumber(target.GetComponent<Text>(), origin, destination, duration, originActive, destActive, curve, cg);
 
 
             TweenNumberDic.Add(target, tween);
             TweenNumberDic.Add(target, tween);
 
 
@@ -1863,7 +1930,7 @@ public class ManaAnim : Regist
         }
         }
     }
     }
 
 
-    public static TweenNumber CreateTweenNumber(Transform target, int destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenNumber CreateTweenNumber(Transform target, int destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
         if (TweenNumberDic.ContainsKey(target))
         if (TweenNumberDic.ContainsKey(target))
         {
         {
@@ -1871,7 +1938,7 @@ public class ManaAnim : Regist
 
 
             TweenNumber tween = TweenNumberDic[target];
             TweenNumber tween = TweenNumberDic[target];
 
 
-            tween = new TweenNumber(text, int.Parse(text.text), destination, duration, originActive, destActive, curve);
+            tween = new TweenNumber(text, int.Parse(text.text), destination, duration, originActive, destActive, curve, cg);
 
 
             return tween;
             return tween;
         }
         }
@@ -1879,7 +1946,7 @@ public class ManaAnim : Regist
         {
         {
             Text text = target.GetComponent<Text>();
             Text text = target.GetComponent<Text>();
 
 
-            TweenNumber tween = new TweenNumber(text, int.Parse(text.text), destination, duration, originActive, destActive, curve);
+            TweenNumber tween = new TweenNumber(text, int.Parse(text.text), destination, duration, originActive, destActive, curve, cg);
 
 
             TweenNumberDic.Add(target, tween);
             TweenNumberDic.Add(target, tween);
 
 

+ 0 - 16
Assets/Script/Manage/ManaAudio.cs

@@ -80,22 +80,6 @@ public class ManaAudio : Regist
     }
     }
 
 
 
 
-    public override void TutorialInstantiate()
-    {
-        Instantiate();
-    }
-
-    public override void TutorialRegistValue()
-    {
-        RegistValueA();
-    }
-
-    public override void TutorialRegistReference()
-    {
-        RegistReference();
-    }
-
-
     public void MusicSwitch()
     public void MusicSwitch()
     {
     {
         if (Music)
         if (Music)

+ 11 - 96
Assets/Script/Manage/ManaData.cs

@@ -475,11 +475,6 @@ public class ManaData : Regist
         #endregion
         #endregion
     }
     }
 
 
-    public override void TutorialInstantiate()
-    {
-        Instantiate();
-    }
-
 
 
     public override void RegistValueA()
     public override void RegistValueA()
     {
     {
@@ -494,13 +489,8 @@ public class ManaData : Regist
 
 
         #region 读数据存档
         #region 读数据存档
 
 
-        SignIndex = Data.PlayerInt("SignIndex");
-        CircleTimer = Data.PlayerFloat("CircleTimer");
-
-        for (int i = 0; i < Data.PlayerInt("Slot"); i++)
-        {
-            ManaGarden.UnlockSlot();
-        }
+        SignIndex = Data.GetPlayerInt("SignIndex");
+        CircleTimer = Data.GetPlayerFloat("CircleTimer");
 
 
         List<double> dataList = Data.GetAchieveData();
         List<double> dataList = Data.GetAchieveData();
 
 
@@ -580,10 +570,15 @@ public class ManaData : Regist
 
 
         #region 读数据存档
         #region 读数据存档
 
 
-        Coin = Data.PlayerDouble("Coin");
-        Level = Data.PlayerInt("Level");
-        Diamond = Data.PlayerDouble("Diamond");
-        MiniTimer = Data.PlayerFloat("MiniTimer");
+        for (int i = 0; i < Data.GetPlayerInt("Slot"); i++)
+        {
+            ManaGarden.UnlockSlot();
+        }
+
+        Coin = Data.GetPlayerDouble("Coin");
+        Level = Data.GetPlayerInt("Level");
+        Diamond = Data.GetPlayerDouble("Diamond");
+        MiniTimer = Data.GetPlayerFloat("MiniTimer");
 
 
         ManaDebug.Log(string.Format("<color=red>{0:0}</color>秒后激活小游戏", MiniTimer));
         ManaDebug.Log(string.Format("<color=red>{0:0}</color>秒后激活小游戏", MiniTimer));
 
 
@@ -649,86 +644,6 @@ public class ManaData : Regist
         #endregion
         #endregion
     }
     }
 
 
-    public override void TutorialRegistValue()
-    {
-        for (int i = 0; i < Data.PlayerInt("Slot"); i++)
-        {
-            ManaGarden.UnlockSlot();
-        }
-
-        #region 读花朵存档
-
-        List<int> flowerList = Data.GetFlowerList();
-
-        for (int i = 0; i < flowerList.Count; i++)
-        {
-            ManaGarden.FlowerInfoList[flowerList[i]-1].Unlock = true;
-        }
-
-
-        List<KV<int, string>> plantList = Data.GetPlantList();
-
-        for (int i = 0; i < plantList.Count; i++)
-        {
-            ManaGarden.PlantFlower(plantList[i].Key-1, plantList[i].Value);
-        }
-
-        #endregion
-
-        #region 读技能存档
-
-        float elapse = (float)DateTime.Now.Subtract(DateTime.Parse(Data.PlayerNode.SelectSingleNode("QuitTime").Attributes[0].Value)).TotalSeconds;
-
-        if (elapse > 43200)
-        {
-            elapse = 43200;
-        }
-
-        ManaDebug.Log(string.Format("离线时间<color=red>{0}</color>", elapse));
-
-        List<List<SkillRoot>> ffUseList = new List<List<SkillRoot>>();
-
-        if (elapse > CircleTimer)
-        {
-            int ffCircle = 1 + Mathf.FloorToInt((elapse - CircleTimer) / CircleTime);
-
-            ManaDebug.Log(string.Format("离线周期<color=red>{0}</color>", ffCircle));
-
-            for (int i = 0; i < ffCircle; i++)
-            {
-                ffUseList.Add(new List<SkillRoot>());
-            }
-        }
-        else
-        {
-            ManaDebug.Log(string.Format("离线周期<color=red>{0}</color>", 0));
-        }
-
-        List<XmlAttributeCollection> attributeList = Data.GetSkillList();
-
-        for (int i = 0; i < attributeList.Count; i++)
-        {
-            SkillRoot skillRoot = SkillDic[attributeList[i][0].Value];
-
-            skillRoot.RegistReference();
-
-            skillRoot.RegistValue(elapse, ffUseList, attributeList[i]);
-        }
-
-        #endregion
-
-        #region 读数据存档
-
-        Coin = Data.PlayerDouble("Coin");
-        Level = Data.PlayerInt("Level");
-        Diamond = Data.PlayerDouble("Diamond");
-        MiniTimer = Data.PlayerFloat("MiniTimer");
-
-        ManaDebug.Log(string.Format("<color=red>{0:0}</color>秒后激活小游戏", MiniTimer));
-
-        #endregion
-    }
-
 
 
     public static bool Pay(double amt, Current current)
     public static bool Pay(double amt, Current current)
     {
     {

+ 0 - 10
Assets/Script/Manage/ManaGarden.cs

@@ -237,11 +237,6 @@ public class ManaGarden : Regist
         #endregion
         #endregion
     }
     }
 
 
-    public override void TutorialInstantiate()
-    {
-        Instantiate();
-    }
-
 
 
     public override void RegistValueA()
     public override void RegistValueA()
     {
     {
@@ -273,11 +268,6 @@ public class ManaGarden : Regist
         };
         };
     }
     }
 
 
-    public override void TutorialRegistValue()
-    {
-        RegistValueA();
-    }
-
 
 
     public static void UnlockSlot()
     public static void UnlockSlot()
     {
     {

+ 61 - 133
Assets/Script/Manage/ManaMiniGame.cs

@@ -184,9 +184,14 @@ public class Award
         ManaReso.SetText("Da_ScoreLab", "");
         ManaReso.SetText("Da_ScoreLab", "");
         ManaReso.SetText("Da_DiamondLab", "");
         ManaReso.SetText("Da_DiamondLab", "");
 
 
-        ManaReso.Get("Da_CoinLab").CreateTweenNumber(0, coin, 1.5f, true, true, Curve.EaseOutQuad);
+        float timeCoin = Mathf.Lerp(0, 1.5f, Mathf.Clamp01(coin / 15f));
+        float timeDiamond = Mathf.Lerp(0, 1.5f, Mathf.Clamp01(diamond / 15f));
+
+        float time = Mathf.Max(timeCoin, timeDiamond);
+
+        ManaReso.Get("Da_CoinLab").CreateTweenNumber(0, coin, time, true, true, Curve.EaseOutQuad);
         ManaReso.Get("Da_ScoreLab").CreateTweenNumber(0, score, 1.5f, true, true, Curve.EaseOutQuad);
         ManaReso.Get("Da_ScoreLab").CreateTweenNumber(0, score, 1.5f, true, true, Curve.EaseOutQuad);
-        ManaReso.Get("Da_DiamondLab").CreateTweenNumber(0, diamond, 1.5f, true, true, Curve.EaseOutQuad);
+        ManaReso.Get("Da_DiamondLab").CreateTweenNumber(0, diamond, time, true, true, Curve.EaseOutQuad);
 
 
         tween = ManaReso.Get("Da_ScoreTit").GetTweenText();
         tween = ManaReso.Get("Da_ScoreTit").GetTweenText();
         tween.InOrigin = true;
         tween.InOrigin = true;
@@ -327,10 +332,13 @@ public class Award
 
 
         tween = ManaReso.Get("Da_GetAward").GetTweenCG();
         tween = ManaReso.Get("Da_GetAward").GetTweenCG();
 
 
-        tween.OnForwardFinish += () =>
-        {
-            Tutorial.HightScreen(ManaReso.Get("Da_GetAwardArrow0"), ManaReso.Get("Da_GetAwardArrow1"), ManaReso.Get("Da_GetAward"));
-        };
+        tween.AddEventOnetime
+        (
+            EventType.ForwardFinish, () =>
+            {
+                Tutorial.HightScreen(ManaReso.Get("Da_GetAwardArrow0"), ManaReso.Get("Da_GetAwardArrow1"), ManaReso.Get("Da_GetAward"));
+            }
+        );
     }
     }
 
 
     private void RegularAward(int score)
     private void RegularAward(int score)
@@ -478,9 +486,14 @@ public class Award
         ManaReso.SetText("Da_ScoreLab", "");
         ManaReso.SetText("Da_ScoreLab", "");
         ManaReso.SetText("Da_DiamondLab", "");
         ManaReso.SetText("Da_DiamondLab", "");
 
 
-        ManaReso.Get("Da_CoinLab").CreateTweenNumber(0, coin, 1.5f, true, true, Curve.EaseOutQuad);
+        float timeCoin = Mathf.Lerp(0, 1.5f, Mathf.Clamp01(coin / 15f));
+        float timeDiamond = Mathf.Lerp(0, 1.5f, Mathf.Clamp01(diamond / 15f));
+
+        float time = Mathf.Max(timeCoin, timeDiamond);
+
+        ManaReso.Get("Da_CoinLab").CreateTweenNumber(0, coin, time, true, true, Curve.EaseOutQuad);
         ManaReso.Get("Da_ScoreLab").CreateTweenNumber(0, score, 1.5f, true, true, Curve.EaseOutQuad);
         ManaReso.Get("Da_ScoreLab").CreateTweenNumber(0, score, 1.5f, true, true, Curve.EaseOutQuad);
-        ManaReso.Get("Da_DiamondLab").CreateTweenNumber(0, diamond, 1.5f, true, true, Curve.EaseOutQuad);
+        ManaReso.Get("Da_DiamondLab").CreateTweenNumber(0, diamond, time, true, true, Curve.EaseOutQuad);
 
 
         tween = ManaReso.Get("Da_ScoreTit").GetTweenText();
         tween = ManaReso.Get("Da_ScoreTit").GetTweenText();
         tween.InOrigin = true;
         tween.InOrigin = true;
@@ -863,65 +876,22 @@ public class ManaMiniGame : Regist
                     TutorialValid = false;
                     TutorialValid = false;
 
 
                     flower = IdleList[4];
                     flower = IdleList[4];
-                    flower.CreateOp(OpList.Count);
+                    flower.CreateOp(OpList.Count, OpType.Water);
 
 
                     OpList.Add(flower);
                     OpList.Add(flower);
                     IdleList.Remove(flower);
                     IdleList.Remove(flower);
 
 
-                    if (OpList[0].OpType == OpType.Rip)
-                    {
-                        Tutorial.HightScreen(ManaReso.Get("D_RipArrow0"), ManaReso.Get("D_RipArrow1"), ManaReso.Get("D_Rip1"));
-
-                        ManaReso.AddButtonEvent
-                        (
-                            "D_Rip2",
-                            () =>
-                            {
-                                Pause = false;
-                                Tutorial.HightDisable();
-
-                                ManaReso.Get<GraphicRaycaster>("D_Rip1").enabled = true;
-                                ManaReso.Get<GraphicRaycaster>("D_Water1").enabled = true;
-                                ManaReso.Get<GraphicRaycaster>("D_Fertilize1").enabled = true;
-                            }
-                        );
-                    }
-                    else if (OpList[0].OpType == OpType.Water)
-                    {
-                        Tutorial.HightScreen(ManaReso.Get("D_WaterArrow0"), ManaReso.Get("D_WaterArrow1"), ManaReso.Get("D_Water1"));
-
-                        ManaReso.AddButtonEvent
-                        (
-                            "D_Water2",
-                            () =>
-                            {
-                                Pause = false;
-                                Tutorial.HightDisable();
-
-                                ManaReso.Get<GraphicRaycaster>("D_Rip1").enabled = true;
-                                ManaReso.Get<GraphicRaycaster>("D_Water1").enabled = true;
-                                ManaReso.Get<GraphicRaycaster>("D_Fertilize1").enabled = true;
-                            }
-                        );
-                    }
-                    else if (OpList[0].OpType == OpType.Fertilize)
-                    {
-                        Tutorial.HightScreen(ManaReso.Get("D_FertilizeArrow0"), ManaReso.Get("D_Fertilize2"), ManaReso.Get("D_Fertilize1"));
-
-                        ManaReso.AddButtonEvent
-                        (
-                            "D_Fertilize2",
-                            () =>
-                            {
-                                Pause = false;
-                                Tutorial.HightDisable();
-
-                                ManaReso.Get<GraphicRaycaster>("D_Rip1").enabled = true;
-                                ManaReso.Get<GraphicRaycaster>("D_Water1").enabled = true;
-                                ManaReso.Get<GraphicRaycaster>("D_Fertilize1").enabled = true;
-                            }
-                        );
-                    }
+                    Tutorial.HightScreen(ManaReso.Get("D_WaterArrow0"), ManaReso.Get("D_WaterArrow1"), ManaReso.Get("D_Water1"));
+
+                    ManaReso.AddButtonEvent
+                    (
+                        "D_Water2",
+                        () =>
+                        {
+                            Pause = false;
+                            Tutorial.HightDisable();
+                        }
+                    );
 
 
                     SceneMask.SetArea(OpList[0].OperateIcon.transform, 0.1f, 0.125f);
                     SceneMask.SetArea(OpList[0].OperateIcon.transform, 0.1f, 0.125f);
                 }
                 }
@@ -1031,7 +1001,7 @@ public class ManaMiniGame : Regist
 
 
         OpTimer = OpTime;
         OpTimer = OpTime;
         GameTimer = GameTime;
         GameTimer = GameTime;
-        MiniGameIndex = Data.PlayerInt("MiniGameIndex");
+        MiniGameIndex = Data.GetPlayerInt("MiniGameIndex");
 
 
         Award = new Award(Data.GetAwardConfig());
         Award = new Award(Data.GetAwardConfig());
 
 
@@ -1047,11 +1017,6 @@ public class ManaMiniGame : Regist
         };
         };
     }
     }
 
 
-    public override void TutorialRegistValue()
-    {
-        RegistValueA();
-    }
-
 
 
     public override void RegistReference()
     public override void RegistReference()
     {
     {
@@ -1062,11 +1027,6 @@ public class ManaMiniGame : Regist
         PrepareLab = ManaReso.Get<Text>("D_PrepareLab");
         PrepareLab = ManaReso.Get<Text>("D_PrepareLab");
     }
     }
 
 
-    public override void TutorialRegistReference()
-    {
-        RegistReference();
-    }
-
     #region MiniGame
     #region MiniGame
 
 
     public static void Rip()
     public static void Rip()
@@ -1262,32 +1222,6 @@ public class ManaMiniGame : Regist
 
 
     public static void GamePrepare()
     public static void GamePrepare()
     {
     {
-        if (Initializer.Tutorial)
-        {
-            TutorialPrepare();
-        }
-        else
-        {
-            RegularPrepare();
-        }
-    }
-
-    public static void ResetOperate()
-    {
-        if (OpList.Count >= 2)
-        {
-            OpList[0].SetFirstOp();
-            OpList[1].SetSecondOp();
-        }
-        else if (OpList.Count >= 1)
-        {
-            OpList[0].SetFirstOp();
-        }
-    }
-
-
-    private static void TutorialPrepare()
-    {
         GoldList = new List<DropGold>();
         GoldList = new List<DropGold>();
         DiamondList = new List<DropDiamond>();
         DiamondList = new List<DropDiamond>();
 
 
@@ -1303,45 +1237,39 @@ public class ManaMiniGame : Regist
 
 
         OpList = new List<Flower>();
         OpList = new List<Flower>();
         IdleList = new List<Flower>();
         IdleList = new List<Flower>();
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini1")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini2")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini3")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini4")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini5")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini6")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini7")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini8")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini9")));
-    }
 
 
-    private static void RegularPrepare()
-    {
+        int count = 1;
 
 
-        GoldList = new List<DropGold>();
-        DiamondList = new List<DropDiamond>();
+        while (true)
+        {
+            FlowerInfo flowerInfo = ManaGarden.FlowerInfoList.Random();
 
 
-        ManaReso.SetText("Da_CoinLab", "");
-        ManaReso.SetText("Da_FlowerLab", "");
-        ManaReso.SetText("Da_DiamondLab", "");
+            if (flowerInfo.Unlock)
+            {
+                IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini" + count)));
 
 
-        ManaReso.SetActive("Da_Coin", true);
-        ManaReso.SetActive("Da_Flower", true);
-        ManaReso.SetActive("Da_Diamond", true);
+                count++;
 
 
-        ManaGarden.AwardLock = true;
+                if (count == 10)
+                {
+                    break;
+                }
+            }
+        }
+    }
 
 
-        OpList = new List<Flower>();
-        IdleList = new List<Flower>();
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini1")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[1], ManaReso.Get("SlotMini2")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[2], ManaReso.Get("SlotMini3")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[3], ManaReso.Get("SlotMini4")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[4], ManaReso.Get("SlotMini5")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[5], ManaReso.Get("SlotMini6")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[6], ManaReso.Get("SlotMini7")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[7], ManaReso.Get("SlotMini8")));
-        IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[8], ManaReso.Get("SlotMini9")));
-    } 
+    public static void ResetOperate()
+    {
+        if (OpList.Count >= 2)
+        {
+            OpList[0].SetFirstOp();
+            OpList[1].SetSecondOp();
+        }
+        else if (OpList.Count >= 1)
+        {
+            OpList[0].SetFirstOp();
+        }
+    }
 
 
     #endregion
     #endregion
 }
 }

+ 15 - 8
Assets/Script/Manage/ManaPlayer.cs

@@ -17,13 +17,20 @@ public class ManaPlayer : Regist
 
 
     public override void Instantiate()
     public override void Instantiate()
     {
     {
-        string player = Data.PlayerNode.SelectSingleNode("Player").Attributes[0].Value;
-
-        Transform tra = ManaReso.Get(player, Folder.Character, false, transform, false);
-        tra.name = "Player";
-        tra.localScale = new Vector3(0.5f, 0.5f, 0.5f);
-        tra.AddScript<Player>();
-
-        ManaReso.TraDic.Add(tra.name, tra);
+        if (ManaTutorial.TutorialIndex == 1)
+        {
+            
+        }
+        else
+        {
+            string player = Data.PlayerNode.SelectSingleNode("Player").Attributes[0].Value;
+
+            Transform tra = ManaReso.Get(player, Folder.Character, false, transform, false);
+            tra.name = "Player";
+            tra.localScale = new Vector3(0.5f, 0.5f, 0.5f);
+            tra.AddScript<Player>();
+            
+            ManaReso.TraDic.Add(tra.name, tra);
+        }
     }
     }
 }
 }

+ 17 - 5
Assets/Script/Manage/ManaReso.cs

@@ -71,11 +71,6 @@ public class ManaReso : Regist
         TraDic.Add(objPool.name, objPool);
         TraDic.Add(objPool.name, objPool);
     }
     }
 
 
-    public override void TutorialInstantiate()
-    {
-        Instantiate();
-    }
-
 
 
     public static T Load<T>(string goName, Folder folder, ObjType objType = ObjType.Null) where T : Object
     public static T Load<T>(string goName, Folder folder, ObjType objType = ObjType.Null) where T : Object
     {
     {
@@ -693,5 +688,22 @@ public class ManaReso : Regist
         button.onClick.AddListener(onClick);
         button.onClick.AddListener(onClick);
     }
     }
 
 
+    public static void PushButtonEventOnetime(string goName, UnityAction onClick)
+    {
+        Button button = Get<Button>(goName);
+
+        onClick += () =>
+        {
+            button.onClick.RemoveListener(onClick);
+        };
+
+        Button.ButtonClickedEvent click = button.onClick;
+
+        button.onClick = new Button.ButtonClickedEvent();
+
+        button.onClick.AddListener(onClick);
+        button.onClick.AddListener(click.Invoke);
+    }
+
     #endregion
     #endregion
 }
 }

+ 190 - 455
Assets/Script/Manage/ManaTutorial.cs

@@ -1,42 +1,39 @@
 using UnityEngine;
 using UnityEngine;
+using UnityEngine.UI;
 
 
 using System.Collections;
 using System.Collections;
 using System.Collections.Generic;
 using System.Collections.Generic;
-using UnityEngine.UI;
 
 
 public class ManaTutorial : Regist
 public class ManaTutorial : Regist
 {
 {
     #region 变量
     #region 变量
 
 
-
+    public static int TutorialIndex;
 
 
     #endregion
     #endregion
 
 
-    public override void TutorialInstantiate()
+    public override void Instantiate()
     {
     {
-        ManaReso.Get("Tutorial", Folder.Object, true, transform, false).AddScript<Tutorial>();
+        if (Initializer.Tutorial)
+        {
+            ManaReso.Get("Tutorial", Folder.Object, true, transform, false).AddScript<Tutorial>();
+        }
     }
     }
 
 
 
 
-    public override void RegistValueA()
+    public override void RegistValueC()
     {
     {
-        ManaReso.SetActive("N_Tutorial", false);
-
-        Canvas[] canvases = ManaReso.Get("Canvas").GetComponentsInChildren<Canvas>(true);
-        GraphicRaycaster[] raycasters = ManaReso.Get("Canvas").GetComponentsInChildren<GraphicRaycaster>(true);
-
-        for (int i = 1; i < raycasters.Length; i++)
+        if (Initializer.Tutorial)
         {
         {
-            Destroy(raycasters[i]);
+            TutorialRegistC();
         }
         }
-
-        for (int i = 1; i < canvases.Length; i++)
+        else
         {
         {
-            Destroy(canvases[i]);
+            RegularRegistC();
         }
         }
     }
     }
 
 
-    public override void TutorialRegistValue()
+    private void TutorialRegistC()
     {
     {
         ManaReso.SetActive("B_SignIn", false);
         ManaReso.SetActive("B_SignIn", false);
         ManaReso.SetActive("N_Tutorial", true);
         ManaReso.SetActive("N_Tutorial", true);
@@ -46,7 +43,40 @@ public class ManaTutorial : Regist
         ManaReso.Get("N_Tutorial").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
         ManaReso.Get("N_Tutorial").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
         ManaReso.Get("N_Confirm").CreateTweenGra(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
         ManaReso.Get("N_Confirm").CreateTweenGra(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
 
 
-        PrepareStep1();
+        if (TutorialIndex == 1)
+        {
+            PrepareStep1();
+        }
+        else if (TutorialIndex == 2)
+        {
+            Garden.Instance.TutorialToRegular();
+
+            PrepareStep2();
+        }
+        else if (TutorialIndex == 4)
+        {
+            Garden.Instance.TutorialToRegular();
+            ManaUI.Instance.TutorialToRegular();
+
+            ManaReso.Get("Tutorial").SetCollider(true);
+
+            ManaReso.SetActive("TutorialMask", true);
+            ManaReso.SetActive("TutorialCollider", true);
+
+            Tutorial.HightScene(0.1f, 0.075f, ManaReso.Get("SlotArrowA1"), ManaReso.Get("SlotA1"));
+        }
+        else if (TutorialIndex == 6)
+        {
+            Garden.Instance.TutorialToRegular();
+            ManaUI.Instance.TutorialToRegular();
+
+            PrepareStep6();
+        }
+    }
+
+    private void RegularRegistC()
+    {
+        ManaReso.SetActive("N_Tutorial", false);
     }
     }
 
 
 
 
@@ -56,63 +86,95 @@ public class ManaTutorial : Regist
         ManaReso.SetActive("PlayerBk2", false);
         ManaReso.SetActive("PlayerBk2", false);
         ManaReso.SetActive("PlayerBk3", false);
         ManaReso.SetActive("PlayerBk3", false);
 
 
-        Tutorial.Player.GetTweenVec().OnForwardFinish = null;
-
         Tutorial.HightDisable();
         Tutorial.HightDisable();
+
+        Garden.Instance.TutorialToRegular();
+
+        Data.SavePlayerInt("TutorialIndex", TutorialIndex+1);
+        Data.SavePlayerString("Player", Tutorial.SelectPlayer);
+
+        PrepareStep2();
     }
     }
 
 
     public static void EndStep2()
     public static void EndStep2()
     {
     {
         ManaReso.Get("C_Main").TweenBacCG();
         ManaReso.Get("C_Main").TweenBacCG();
-        ManaReso.Get("N_Arrow").TweenBacCG();
 
 
-        ManaReso.Get("N_Mask").GetTweenGra().OnForwardFinish = null;
-        ManaReso.Get<Button>("C_MiniGame").onClick = null;
+        ManaReso.SetActive("C_Coin", true);
+        ManaReso.SetActive("C_Setting", true);
+        ManaReso.SetActive("C_Achieve", true);
+        ManaReso.SetActive("C_Manage", true);
 
 
         Tutorial.HightDisable();
         Tutorial.HightDisable();
+
+        PrepareStep3();
     }
     }
 
 
     public static void EndStep3()
     public static void EndStep3()
     {
     {
+        ManaReso.SetActive("D_Quit", true);
+
         Tutorial.HightDisable();
         Tutorial.HightDisable();
+
+        Data.SavePlayerInt("TutorialIndex", TutorialIndex + 1);
+
+        PrepareStep4();
     }
     }
 
 
     public static void EndStep4()
     public static void EndStep4()
     {
     {
         Tutorial.HightDisable();
         Tutorial.HightDisable();
+
+        PrepareStep5();
     }
     }
 
 
     public static void EndStep5()
     public static void EndStep5()
     {
     {
-        
+        Data.SavePlayerInt("TutorialIndex", TutorialIndex + 1);
+
+        PrepareStep6();
     }
     }
 
 
     public static void EndStep6()
     public static void EndStep6()
     {
     {
         Tutorial.HightDisable();
         Tutorial.HightDisable();
+
+        PrepareStep7();
     }
     }
 
 
     public static void EndStep7()
     public static void EndStep7()
     {
     {
         Tutorial.HightDisable(0, true);
         Tutorial.HightDisable(0, true);
-        ManaReso.Get("Fe_Info").TweenBacCG();
+
+        PrepareStep8();
     }
     }
 
 
     public static void EndStep8()
     public static void EndStep8()
     {
     {
-        ManaReso.Get("Fe_Info").TweenBacCG();
         Tutorial.HightDisable(0, true);
         Tutorial.HightDisable(0, true);
+
+        PrepareStep9();
     }
     }
 
 
     public static void EndStep9()
     public static void EndStep9()
     {
     {
         Tutorial.HightDisable();
         Tutorial.HightDisable();
+
+        Initializer.Tutorial = false;
+
+        Data.SavePlayerBool("Tutorial", false);
+
+        ManaReso.Get("Tutorial").SetCollider(false);
     }
     }
 
 
 
 
     public static void PrepareStep1()
     public static void PrepareStep1()
     {
     {
-        ManaReso.AddButtonEvent
+        TutorialIndex = 1;
+
+        ManaReso.SetActive("N_Confirm", true);
+
+        ManaReso.AddButtonEventOnetime
         (
         (
             "N_Confirm",
             "N_Confirm",
             () =>
             () =>
@@ -124,7 +186,6 @@ public class ManaTutorial : Regist
 
 
                 ManaReso.TraDic.Add(Tutorial.Player.name, Tutorial.Player);
                 ManaReso.TraDic.Add(Tutorial.Player.name, Tutorial.Player);
 
 
-
                 Tutorial.Player.CreateTweenScale(ManaReso.Get("PlayerPosTra").localScale, 1f, true, true, Curve.EaseOutQuad);
                 Tutorial.Player.CreateTweenScale(ManaReso.Get("PlayerPosTra").localScale, 1f, true, true, Curve.EaseOutQuad);
                 Tutorial.Player.CreateTweenVec3D(ManaReso.Get("PlayerPosTra").position, 1f, false, true, true, Curve.EaseOutQuad);
                 Tutorial.Player.CreateTweenVec3D(ManaReso.Get("PlayerPosTra").position, 1f, false, true, true, Curve.EaseOutQuad);
 
 
@@ -136,27 +197,38 @@ public class ManaTutorial : Regist
 
 
                 Tween tween = Tutorial.Player.GetTweenVec();
                 Tween tween = Tutorial.Player.GetTweenVec();
 
 
-                tween.OnForwardFinish += () =>
-                {
-                    EndStep1();
-                    PrepareStep2();
-                };
+                tween.AddEventOnetime
+                (
+                    EventType.ForwardFinish,
+                    () =>
+                    {
+                        EndStep1();
+                    }
+                );
             }
             }
         );
         );
     }
     }
 
 
     public static void PrepareStep2()
     public static void PrepareStep2()
     {
     {
+        TutorialIndex = 2;
+
         ManaReso.Get("N_Mask").TweenConForGra();
         ManaReso.Get("N_Mask").TweenConForGra();
 
 
         Tween tween = ManaReso.Get("N_Mask").GetTweenGra();
         Tween tween = ManaReso.Get("N_Mask").GetTweenGra();
-        tween.OnForwardFinish += () =>
-        {
-            Tutorial.HightScreen(ManaReso.Get("C_MiniGameArrow"), ManaReso.Get("C_MiniGame"));
-        };
 
 
-        HudTarget hudTarget = ManaReso.Get("C_MiniGame").AddComponent<HudTarget>();
-        hudTarget.PosTra = Player.ChildDic["EnterGameTra"];
+        tween.AddEventOnetime
+        (
+            EventType.ForwardFinish, 
+            () =>
+            {
+                Tutorial.HightScreen(ManaReso.Get("C_MiniGameArrow"), ManaReso.Get("C_MiniGame"));
+            }
+        );
+
+        
+        ManaUI.Instance.TutorialToRegular();
+
 
 
         ManaReso.Get("C_Main").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
         ManaReso.Get("C_Main").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
         ManaReso.Get("C_MiniGame").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
         ManaReso.Get("C_MiniGame").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
@@ -169,545 +241,208 @@ public class ManaTutorial : Regist
         ManaReso.SetActive("C_Achieve", false);
         ManaReso.SetActive("C_Achieve", false);
         ManaReso.SetActive("C_Manage", false);
         ManaReso.SetActive("C_Manage", false);
 
 
-        ManaReso.AddButtonEvent
+        ManaReso.AddButtonEventOnetime
         (
         (
             "C_MiniGame",
             "C_MiniGame",
             () =>
             () =>
             {
             {
                 EndStep2();
                 EndStep2();
-                PrepareStep3();
             }
             }
         );
         );
     }
     }
 
 
     public static void PrepareStep3()
     public static void PrepareStep3()
     {
     {
-        ManaReso.Get<BoxCollider2D>("TutorialMask").enabled = false;
+        TutorialIndex = 3;
 
 
-        ManaReso.SetText("D_ScoreTit");
-        ManaReso.SetText("D_BeginLab", Language.GetStr("UI", "D_BeginLab0"));
-        ManaReso.SetText("D_StatusLab", Language.GetStr("UI", "D_StatusLab0"));
+        ManaReso.SetActive("D_Quit", false);
 
 
-        ManaText.Add(ManaReso.Get<Text>("Da_QuitLab"), new LanStr("UI", "Da_QuitLab"));
-        ManaText.Add(ManaReso.Get<Text>("Da_CancelLab"), new LanStr("UI", "Da_CancelLab"));
-        ManaText.Add(ManaReso.Get<Text>("Da_GetAwardLab"), new LanStr("UI", "Da_GetAwardLab"));
+        ManaReso.Get("Tutorial").SetCollider(false);
 
 
-        #region D_Rip
+        Tween tween = ManaReso.Get("D_MiniGame").GetTweenCG();
 
 
-        ManaReso.AddButtonEvent
+        tween.AddEventOnetime
         (
         (
-            "D_Rip2",
+            EventType.ForwardFinish,
             () =>
             () =>
             {
             {
-                ManaMiniGame.Rip();
-
-                ManaReso.Get("D_Rip2").TweenForScale();
+                Tutorial.HightScreen(ManaReso.Get("D_BeginArrow0"), ManaReso.Get("D_BeginArrow1"), ManaReso.Get("D_Begin"));
             }
             }
         );
         );
 
 
-        Tween tween = ManaReso.Get("D_Rip2").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.2f, 1.2f, 1.2f), 0.1f, true, true, Curve.EaseOutQuad);
-
-        tween.OnForwardFinish += () =>
-        {
-            ManaReso.Get("D_Rip2").TweenBacScale();
-        };
-
-        #endregion
-
-        #region D_Begin
-
-        ManaReso.AddButtonEvent
+        ManaReso.PushButtonEventOnetime
         (
         (
             "D_Begin",
             "D_Begin",
             () =>
             () =>
             {
             {
-                ManaMiniGame.Prepare = true;
+                Tutorial.HightDisable();
             }
             }
         );
         );
 
 
-        #endregion
-
-        #region D_Water
-
-        ManaReso.AddButtonEvent
+        ManaReso.AddButtonEventOnetime
         (
         (
-            "D_Water2",
+            "Da_GetAward",
             () =>
             () =>
             {
             {
-                ManaMiniGame.Water();
-
-                ManaReso.Get("D_Water2").TweenForScale();
+                EndStep3();
             }
             }
         );
         );
+    }
 
 
-        tween = ManaReso.Get("D_Water2").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.2f, 1.2f, 1.2f), 0.1f, true, true, Curve.EaseOutQuad);
-
-        tween.OnForwardFinish += () =>
-        {
-            ManaReso.Get("D_Water2").TweenBacScale();
-        };
+    public static void PrepareStep4()
+    {
+        TutorialIndex = 4;
 
 
-        #endregion
+        ManaReso.Get("C_Main").TweenBacCG();
 
 
-        #region D_Fertilize
+        Tween tween = ManaReso.Get("D_MiniGame").GetTweenCG();
 
 
-        ManaReso.AddButtonEvent
+        tween.AddEventOnetime
         (
         (
-            "D_Fertilize2",
-
+            EventType.BackwardFinish, 
             () =>
             () =>
             {
             {
-                ManaMiniGame.Fertilize();
+                ManaReso.Get("Tutorial").SetCollider(true);
 
 
-                ManaReso.Get("D_Fertilize2").TweenForScale();
+                Tutorial.HightScene(0.1f, 0.075f, ManaReso.Get("SlotArrowA1"), ManaReso.Get("SlotA1"));
             }
             }
         );
         );
+    }
 
 
-        tween = ManaReso.Get("D_Fertilize2").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.2f, 1.2f, 1.2f), 0.1f, true, true, Curve.EaseOutQuad);
-
-        tween.OnForwardFinish += () =>
-        {
-            ManaReso.Get("D_Fertilize2").TweenBacScale();
-        };
-
-        #endregion
-
-        #region D_MiniGame
-
-        tween = ManaReso.Get("D_MiniGame").CreateTweenCG(0, 1, 0.5f, false, true, Curve.EaseOutQuad);
-
-        tween.OnForwardStart += () =>
-        {
-            ManaReso.SetText("D_ScoreTit");
-            ManaReso.SetText("D_BeginLab", Language.GetStr("UI", "D_BeginLab0"));
-            ManaReso.SetText("D_StatusLab", Language.GetStr("UI", "D_StatusLab0"));
-
-            //ManaReso.Get("C_Main").TweenBacCG();
-
-            ManaReso.Get("MusicTheme").TweenBacAudio();
-
-            //ManaReso.SetActive("E_Debug", false);
-
-            ManaData.MainDepth++;
-
-            ManaReso.SetActive("Da_Quit", true);
-            ManaReso.SetActive("Da_Cancel", true);
-            ManaReso.SetActive("Da_GetAward", false);
-        };
-
-        tween.OnForwardFinish += () =>
-        {
-            ManaReso.Get("MusicMini").TweenForAudio();
-        };
-
-        tween.OnBackwardStart += () =>
-        {
-            ManaReso.SetText("D_BeginLab", Language.GetStr("UI", "D_BeginLab0"));
-
-            ManaReso.Get("MusicMini").TweenBacAudio();
-        };
-
-        tween.OnBackwardFinish += () =>
-        {
-            ManaReso.Get("MusicTheme").TweenForAudio();
-
-            //ManaReso.SetActive("E_Debug", true);
-        };
-
-        #endregion
-
-
-        #region Da_Info
-
-        ManaReso.Get("Da_Info").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
-
-        #endregion
-
-        #region Da_Star
-
-        ManaReso.Get("Da_Star1").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad);
-        ManaReso.Get("Da_Star2").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad);
-        ManaReso.Get("Da_Star3").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad);
-
-        #endregion
-
-        #region Da_Score
-
-        ManaReso.Get("Da_ScoreTit").CreateTweenText(1, 25, 0.25f, false, true, Curve.EaseOutQuad);
+    public static void PrepareStep5()
+    {
+        TutorialIndex = 5;
 
 
-        #endregion
-        
-        #region Da_GetAward
+        Tween tween = ManaReso.Get("G_Flower").TweenForCG();
 
 
-        ManaReso.AddButtonEvent
+        tween.AddEventOnetime
         (
         (
-            "Da_GetAward",
+            EventType.ForwardFinish,
             () =>
             () =>
             {
             {
-                //ManaReso.Get("C_Main").TweenForCG();
-
-                ManaReso.Get("D_MiniGame").TweenBacCG();
-
-                ManaReso.Get("GardenMini").TweenBacVec();
+                Transform tra = ManaReso.Get("G_RegularGrid").GetChild(0);
 
 
-                ManaReso.SetActive("Da_Info", false);
+                Tutorial.HightScreen(tra.FindChild("ArrowPos"), tra);
             }
             }
         );
         );
 
 
-        #endregion
-
-        ManaReso.Get("Da_GetAward").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
-
-        ManaReso.Get("Da_CoinGroup").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad);
-        ManaReso.Get("Da_FlowerGroup").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad);
-        ManaReso.Get("Da_DiamondGroup").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad);
-
-
-        ManaReso.Get<Garden>("Garden").RegistReference();
-        ManaReso.Get<Garden>("Garden").RegistValueA();
-
-        ManaReso.SetActive("D_Quit", false);
-
-        ManaReso.Get("GardenMini").TweenForVec();
-
-        ManaReso.Get("D_MiniGame").TweenForCG();
-
-        tween = ManaReso.Get("D_MiniGame").GetTweenCG();
-
-        tween.OnForwardFinish += () =>
-        {
-            Tutorial.HightScreen(ManaReso.Get("D_BeginArrow0"), ManaReso.Get("D_BeginArrow1"), ManaReso.Get("D_Begin"));
-        };
-
-        ManaReso.SetButtonEvent
+        ManaReso.AddButtonEventOnetime
         (
         (
-            "D_Begin",
+            "G_Close",
             () =>
             () =>
             {
             {
                 Tutorial.HightDisable();
                 Tutorial.HightDisable();
-                ManaMiniGame.Prepare = true;
             }
             }
         );
         );
 
 
-        ManaReso.AddButtonEvent
+        tween.AddEventOnetime
         (
         (
-            "Da_GetAward",
+            EventType.BackwardFinish,
             () =>
             () =>
             {
             {
-                EndStep3();
+                EndStep5();
             }
             }
         );
         );
-
-        tween = ManaReso.Get("D_MiniGame").GetTweenCG();
-
-        tween.OnBackwardFinish += () =>
-        {
-            PrepareStep4();
-        };
     }
     }
 
 
-    public static void PrepareStep4()
-    {
-        Tutorial.HightScene(0.1f, 0.075f, ManaReso.Get("SlotArrowA1"), ManaReso.Get("SlotA1"));
-
-        ManaReso.Get<BoxCollider2D>("TutorialMask").enabled = false;
-    }
-
-    public static void PrepareStep5()
+    public static void PrepareStep6()
     {
     {
-        #region G
-
-        ManaText.Add(ManaReso.Get<Text>("G_Tit"), new LanStr("UI", "G_Tit"));
-        ManaText.Add(ManaReso.Get<Text>("G_SpecialLab"), new LanStr("UI", "G_SpecialLab"));
-        ManaText.Add(ManaReso.Get<Text>("G_RegularLab"), new LanStr("UI", "G_RegularLab"));
-        ManaText.Add(ManaReso.Get<Text>("G_RetrieveLab"), new LanStr("UI", "G_RetrieveLab"));
-
-        #region G_Flower
-
-        Tween tween = ManaReso.Get("G_Flower").CreateTweenCG(0f, 1f, 0.25f, false, true, Curve.EaseOutQuad);
-
-        tween.OnForwardStart += () =>
-        {
-            if (ManaData.MainDepth == -1)
-            {
-                ManaReso.Get("C_Main").TweenBacCG();
-            }
+        TutorialIndex = 6;
 
 
-            ManaData.MainDepth++;
-
-            if (ManaGarden.MyFlowerSpec == 0)
-            {
-                ManaReso.SetActive("G_Special", false);
-            }
-        };
-
-        tween.OnBackwardStart += () =>
-        {
-            ManaData.MainDepth--;
-        };
-
-        #endregion
+        ManaReso.Get("C_Main").TweenForCG();
 
 
-        #region G_Special
+        Tween tween = ManaReso.Get("C_Main").GetTweenCG();
 
 
-        ManaReso.AddButtonEvent
+        tween.AddEventOnetime
         (
         (
-            "G_Special",
-            () =>
+            EventType.ForwardFinish, () =>
             {
             {
-                ManaReso.SetActive("G_SpecialScrr", true);
-                ManaReso.SetActive("G_RegularScrr", false);
-
-                ManaReso.Get<Button>("G_Special").interactable = false;
-                ManaReso.Get<Button>("G_Regular").interactable = true;
+                Tutorial.HightScreen(ManaReso.Get("C_ManageArrow"), ManaReso.Get("C_Manage"));
             }
             }
         );
         );
 
 
-        #endregion
-
-        #region G_Regular
-
-        ManaReso.Get("G_Regular").CreateTweenVec2D(ManaReso.Get("G_PosTraL").position, ManaReso.Get("G_PosTraR").position, 0.25f, false, true, true, Curve.EaseOutQuad);
-
-        ManaReso.AddButtonEvent
+        ManaReso.AddButtonEventOnetime
         (
         (
-            "G_Regular",
+            "C_Manage",
             () =>
             () =>
             {
             {
-                ManaReso.SetActive("G_SpecialScrr", false);
-                ManaReso.SetActive("G_RegularScrr", true);
-
-                ManaReso.Get<Button>("G_Special").interactable = true;
-                ManaReso.Get<Button>("G_Regular").interactable = false;
+                EndStep6();
             }
             }
         );
         );
+    }
 
 
-        #endregion
+    public static void PrepareStep7()
+    {
+        TutorialIndex = 7;
 
 
-        #region G_Retrieve
+        Tween tween = ManaReso.Get("F_Manage0").GetTweenVec();
 
 
-        ManaReso.AddButtonEvent
+        tween.AddEventOnetime
         (
         (
-            "G_Retrieve",
+            EventType.ForwardFinish, 
             () =>
             () =>
             {
             {
-                ManaReso.Get("G_Flower").TweenBacCG();
+                Transform tra = ManaReso.Get("Fa_Grid").GetChild(0);
 
 
-                ManaGarden.RetriveFlowerAll();
+                Tutorial.HightScreen(tra.FindChild("Arrow1"), tra.FindChild("Arrow0"), tra.FindChild("Btn"));
             }
             }
         );
         );
 
 
-        #endregion
-
-        #endregion   
-
-        ManaReso.Get("G_Flower").TweenForCG();
-
-        tween = ManaReso.Get("G_Flower").GetTweenCG();
 
 
-        tween.OnForwardFinish += () =>
-        {
-            Transform tra = ManaReso.Get("G_RegularGrid").GetChild(0);
-
-            Tutorial.HightScreen(tra.FindChild("ArrowPos"), tra);
-        };
+        tween = ManaReso.Get("Fe_Info").GetTweenCG();
 
 
-        ManaReso.AddButtonEvent
+        tween.AddEventOnetime
         (
         (
-            "G_Close",
-            () =>
+            EventType.ForwardFinish, () =>
             {
             {
-                ManaReso.Get("G_Flower").TweenBacCG();
-
-                Tutorial.HightDisable();
+                Tutorial.HightScreen(ManaReso.Get("Fe_BtnArrow0"), ManaReso.Get("Fe_BtnArrow1"), ManaReso.Get("Fe_Btn"));
             }
             }
         );
         );
-
-        tween.OnBackwardFinish += () =>
-        {
-            EndStep5();
-            PrepareStep6();
-        };
     }
     }
 
 
-    public static void PrepareStep6()
+    public static void PrepareStep8()
     {
     {
-        #region C_Manage
+        TutorialIndex = 8;
 
 
-        ManaReso.AddButtonEvent
+        Tween tween = ManaReso.Get("Fa_Scrr").GetTweenRect();
+
+        tween.AddEventOnetime
         (
         (
-            "C_Manage",
+            EventType.ForwardFinish,
             () =>
             () =>
             {
             {
-                ManaReso.Get("F_Manage0").TweenForVec();
+                Transform tra = ManaData.SkillDic["Skill1"].SkillItem;
+
+                Tutorial.HightScreen(tra.FindChild("Arrow1"), tra.FindChild("Arrow0"), tra.FindChild("Btn"));
             }
             }
         );
         );
-
-        #endregion
-
-        #region F
-
-        ManaText.Add(ManaReso.Get<Text>("F_StoreLab"), new LanStr("UI", "F_StoreLab"));
-        ManaText.Add(ManaReso.Get<Text>("F_MagicLab"), new LanStr("UI", "F_MagicLab"));
-        ManaText.Add(ManaReso.Get<Text>("F_GardenLab"), new LanStr("UI", "F_GardenLab"));
-
-        ManaText.Add(ManaReso.Get<Text>("Fg_Tit"), new LanStr("UI", "Fg_Tit"));
-        ManaText.Add(ManaReso.Get<Text>("Fg_Lab"), new LanStr("UI", "Fg_Lab"));
-        ManaText.Add(ManaReso.Get<Text>("Fg_BtnLab"), new LanStr("UI", "Fg_BtnLab"));
-
-        #region F_Manage
-
-        Tween tween = ManaReso.Get("F_Manage").CreateTweenGra(new Color(0, 0, 0, 180 / 255f), 0.5f, true, true, Curve.EaseOutQuad);
-
-        var tween1 = tween;
-        tween.OnForwardStart += () =>
-        {
-            tween1.Duration = 0.5f;
-        };
-
-        tween.OnBackwardStart += () =>
-        {
-            tween1.Duration = 0.25f;
-        };
-
-        tween.OnBackwardFinish += () =>
-        {
-            ManaReso.Get("F_Manage0").TweenBacVec();
-        };
-
-        tween = ManaReso.Get("F_Manage0").CreateTweenVec2D(ManaReso.Get("F_PosTra").position, 0.5f, false, false, true, Curve.EaseOutQuad);
-
-        tween.OnForwardStart += () =>
-        {
-            ManaReso.Get("C_Main").TweenBacCG();
-
-            ManaReso.SetActive("F_Manage", true);
-
-            ManaData.MainDepth++;
-        };
-
-        tween.OnForwardFinish += () =>
-        {
-            ManaReso.Get("F_Manage").TweenForGra();
-        };
-
-        tween.OnBackwardStart += () =>
-        {
-            ManaData.MainDepth--;
-        };
-
-        tween.OnBackwardFinish += () =>
-        {
-            ManaReso.Get("C_Main").TweenForCG();
-
-            ManaReso.SetActive("F_Manage", false);
-            ManaReso.SetActive("F_Manage0", false);
-        };
-
-        #endregion
-
-        #endregion
-
-        ManaReso.SetActive("C_Coin", true);
-        ManaReso.SetActive("C_Setting", true);
-        ManaReso.SetActive("C_Achieve", true);
-        ManaReso.SetActive("C_Manage", true);
-
-        ManaReso.Get("C_Main").TweenConForCG();
-
-        tween = ManaReso.Get("C_Main").GetTweenCG();
         
         
-        tween.OnForwardFinish += () =>
-        {
-            Tutorial.HightScreen(ManaReso.Get("C_ManageArrow"), ManaReso.Get("C_Manage"));
-        };
 
 
-        ManaReso.AddButtonEvent
+        tween = ManaReso.Get("Fe_Info").GetTweenCG();
+
+        tween.AddEventOnetime
         (
         (
-            "C_Manage",
+            EventType.ForwardFinish,
             () =>
             () =>
             {
             {
-                EndStep6();
-                PrepareStep7();
+                Tutorial.HightScreen(ManaReso.Get("Fe_BtnArrow0"), ManaReso.Get("Fe_BtnArrow1"), ManaReso.Get("Fe_Btn"));
             }
             }
         );
         );
     }
     }
 
 
-    public static void PrepareStep7()
+    public static void PrepareStep9()
     {
     {
-        #region Fa_Scrr
-
-        RectTransform rectTra1 = ManaReso.Get<RectTransform>("Fa_Scrr");
-        RectTransform rectTra2 = ManaReso.Get<RectTransform>("Ff_SkillBar");
-
-        rectTra1.CreateTweenRect(rectTra1.rect.size + new Vector2(0, -rectTra2.rect.height), 0.25f, true, true, Curve.EaseOutQuad);
-
-        #endregion
-
-
-        #region Fe_Info
+        TutorialIndex = 9;
 
 
-        ManaReso.Get("Fe_Info").CreateTweenCG(0f, 1f, 0.1f, false, true, Curve.EaseOutQuad);
-
-        #endregion
-
-        #region Fe_Close
+        Tween tween = ManaReso.Get("Fe_Info").GetTweenCG();
 
 
-        ManaReso.AddButtonEvent
+        tween.AddEventOnetime
         (
         (
-            "Fe_Close",
+            EventType.BackwardFinish,
             () =>
             () =>
             {
             {
-                ManaReso.Get("Fe_Info").TweenBacCG();
+                Tutorial.HightScreen(ManaReso.Get("F_SkillArrow00"), ManaReso.Get("F_Skill0"));
             }
             }
         );
         );
-
-        #endregion
-
-        Tween tween = ManaReso.Get("F_Manage0").GetTweenVec();
-
-        tween.OnForwardFinish += () =>
-        {
-            Transform tra = ManaReso.Get("Fa_Grid").GetChild(0);
-
-            Tutorial.HightScreen(tra.FindChild("Arrow1"), tra.FindChild("Arrow0"), tra.FindChild("Btn"));
-        };
-
-        tween = ManaReso.Get("Fe_Info").GetTweenCG();
-
-        tween.OnForwardFinish = () =>
-        {
-            Tutorial.HightScreen(ManaReso.Get("Fe_BtnArrow0"), ManaReso.Get("Fe_BtnArrow1"), ManaReso.Get("Fe_Btn"));
-        };
-    }
-
-    public static void PrepareStep8()
-    {
-        Tween tween = ManaReso.Get("Fa_Scrr").GetTweenRect();
-
-        tween.OnForwardFinish += () =>
-        {
-            Transform tra = ManaData.SkillDic["Skill1"].SkillItem;
-
-            Tutorial.HightScreen(tra.FindChild("Arrow1"), tra.FindChild("Arrow0"), tra.FindChild("Btn"));
-        };
-        
-
-        tween = ManaReso.Get("Fe_Info").GetTweenCG();
-
-        tween.OnForwardFinish = () =>
-        {
-            Tutorial.HightScreen(ManaReso.Get("Fe_BtnArrow0"), ManaReso.Get("Fe_BtnArrow1"), ManaReso.Get("Fe_Btn"));
-        };
-    }
-
-    public static void PrepareStep9()
-    {
-        Tween tween = ManaReso.Get("Fe_Info").GetTweenCG();
-
-        tween.OnBackwardFinish = () =>
-        {
-            Tutorial.HightScreen(ManaReso.Get("F_SkillArrow00"), ManaReso.Get("F_Skill0"));
-        };
     }
     }
 }
 }

+ 1290 - 16
Assets/Script/Manage/ManaUI.cs

@@ -13,8 +13,8 @@ public class ManaUI : Regist
 {
 {
 	#region 变量
 	#region 变量
 
 
+    public static ManaUI Instance;
     
     
-
     #endregion
     #endregion
 
 
     public override void Instantiate()
     public override void Instantiate()
@@ -26,8 +26,31 @@ public class ManaUI : Regist
         ManaReso.Get("EventSystem", Folder.UI, false, tra, false);
         ManaReso.Get("EventSystem", Folder.UI, false, tra, false);
     }
     }
 
 
+    public override void RegistValueA()
+    {
+        Instance = this;
+    }
+
     public override void RegistValueB()
     public override void RegistValueB()
     {
     {
+        if (Initializer.Tutorial)
+        {
+            TutorialRegistValueB();
+        }
+        else
+        {
+            RegularRegistValueB();
+        }
+    }
+
+    public override void TutorialToRegular()
+    {
+        HudTarget hudTarget = ManaReso.Get("C_MiniGame").AddComponent<HudTarget>();
+        hudTarget.PosTra = Player.ChildDic["EnterGameTra"];
+    }
+
+    private void TutorialRegistValueB()
+    {
         #region B
         #region B
 
 
         ManaReso.SetText("Ba_Lab");
         ManaReso.SetText("Ba_Lab");
@@ -146,7 +169,7 @@ public class ManaUI : Regist
 
 
         tween.OnForwardStart += () =>
         tween.OnForwardStart += () =>
         {
         {
-            
+
         };
         };
 
 
         ManaReso.AddButtonEvent
         ManaReso.AddButtonEvent
@@ -160,10 +183,6 @@ public class ManaUI : Regist
             }
             }
         );
         );
 
 
-        HudTarget hudTarget = ManaReso.Get("C_MiniGame").AddComponent<HudTarget>();
-
-        hudTarget.PosTra = Player.ChildDic["EnterGameTra"];
-
         #endregion
         #endregion
 
 
 
 
@@ -347,7 +366,7 @@ public class ManaUI : Regist
 
 
             ManaReso.Get("MusicTheme").TweenBacAudio();
             ManaReso.Get("MusicTheme").TweenBacAudio();
 
 
-            ManaReso.SetActive("E_Debug", false);
+            //ManaReso.SetActive("E_Debug", false);
 
 
             ManaData.MainDepth++;
             ManaData.MainDepth++;
 
 
@@ -372,7 +391,7 @@ public class ManaUI : Regist
         {
         {
             ManaReso.Get("MusicTheme").TweenForAudio();
             ManaReso.Get("MusicTheme").TweenForAudio();
 
 
-            ManaReso.SetActive("E_Debug", true);
+            //ManaReso.SetActive("E_Debug", true);
         };
         };
 
 
         #endregion
         #endregion
@@ -515,7 +534,7 @@ public class ManaUI : Regist
         #endregion
         #endregion
 
 
         #region Ea_Save
         #region Ea_Save
-        
+
         ManaReso.AddButtonEvent
         ManaReso.AddButtonEvent
         (
         (
             "Ea_Save",
             "Ea_Save",
@@ -528,7 +547,7 @@ public class ManaUI : Regist
         #endregion
         #endregion
 
 
         #region Ea_Close
         #region Ea_Close
-         
+
         ManaReso.AddButtonEvent
         ManaReso.AddButtonEvent
         (
         (
             "Ea_Close",
             "Ea_Close",
@@ -769,7 +788,7 @@ public class ManaUI : Regist
 
 
         #region F_Manage
         #region F_Manage
 
 
-        tween = ManaReso.Get("F_Manage").CreateTweenGra(new Color(0, 0, 0, 180/255f), 0.5f, true, true, Curve.EaseOutQuad);
+        tween = ManaReso.Get("F_Manage").CreateTweenGra(new Color(0, 0, 0, 180 / 255f), 0.5f, true, true, Curve.EaseOutQuad);
 
 
         var tween1 = tween;
         var tween1 = tween;
         tween.OnForwardStart += () =>
         tween.OnForwardStart += () =>
@@ -787,7 +806,7 @@ public class ManaUI : Regist
             ManaReso.Get("F_Manage0").TweenBacVec();
             ManaReso.Get("F_Manage0").TweenBacVec();
         };
         };
 
 
-         tween = ManaReso.Get("F_Manage0").CreateTweenVec2D(ManaReso.Get("F_PosTra").position, 0.5f, false, false, true, Curve.EaseOutQuad);
+        tween = ManaReso.Get("F_Manage0").CreateTweenVec2D(ManaReso.Get("F_PosTra").position, 0.5f, false, false, true, Curve.EaseOutQuad);
 
 
         tween.OnForwardStart += () =>
         tween.OnForwardStart += () =>
         {
         {
@@ -885,7 +904,7 @@ public class ManaUI : Regist
         #endregion
         #endregion
 
 
         #region G
         #region G
-        
+
         ManaText.Add(ManaReso.Get<Text>("G_Tit"), new LanStr("UI", "G_Tit"));
         ManaText.Add(ManaReso.Get<Text>("G_Tit"), new LanStr("UI", "G_Tit"));
         ManaText.Add(ManaReso.Get<Text>("G_SpecialLab"), new LanStr("UI", "G_SpecialLab"));
         ManaText.Add(ManaReso.Get<Text>("G_SpecialLab"), new LanStr("UI", "G_SpecialLab"));
         ManaText.Add(ManaReso.Get<Text>("G_RegularLab"), new LanStr("UI", "G_RegularLab"));
         ManaText.Add(ManaReso.Get<Text>("G_RegularLab"), new LanStr("UI", "G_RegularLab"));
@@ -1287,9 +1306,1264 @@ public class ManaUI : Regist
         #endregion
         #endregion
     }
     }
 
 
-
-    public override void TutorialInstantiate()
+    private void RegularRegistValueB()
     {
     {
-        Instantiate();
+        #region B
+
+        ManaReso.SetText("Ba_Lab");
+        ManaReso.SetText("Ba_ConfirmLab");
+
+        ManaReso.SetText("Bb_Title");
+        ManaReso.SetText("Bb_GetLab");
+        ManaReso.SetText("Bb_ConfirmLab");
+
+        #region B_SignIn
+
+        Tween tween = ManaReso.Get("B_SignIn").CreateTweenCG(0f, 1f, 0.5f, false, true, Curve.EaseOutQuad);
+
+        tween.OnForwardStart += () =>
+        {
+            ManaData.MainDepth++;
+        };
+
+        tween.OnBackwardFinish += () =>
+        {
+            ManaData.MainDepth--;
+        };
+
+        #endregion
+
+        #region Ba_Confirm
+
+        ManaReso.AddButtonEvent
+        (
+            "Ba_Confirm",
+            () =>
+            {
+                ManaReso.Get("Bb_SignIn").TweenForCG();
+
+                ManaReso.SetActive("Ba_Notice", false);
+            }
+        );
+
+        #endregion
+
+        #region Bb_Get
+
+        ManaReso.AddButtonEvent
+        (
+            "Bb_Get",
+            () =>
+            {
+                ManaSign.Get();
+
+                ManaReso.SetActive("Bb_Get", false);
+                ManaReso.SetActive("Bb_Info", true);
+                ManaReso.SetActive("Bb_Rotate", true);
+                ManaReso.SetActive("Bb_Confirm", true);
+            }
+        );
+
+        #endregion
+
+        #region Bb_SignIn
+
+        ManaReso.Get("Bb_SignIn").CreateTweenCG(0f, 1f, 0.5f, false, true, Curve.EaseOutQuad);
+
+        #endregion
+
+        #region Bb_Confirm
+
+        ManaReso.AddButtonEvent
+        (
+            "Bb_Confirm",
+            () =>
+            {
+                ManaReso.Get("B_SignIn").TweenBacCG();
+            }
+        );
+
+        #endregion
+
+        #endregion
+
+        #region C
+
+        ManaText.Add(ManaReso.Get<Text>("C_MiniGameLab"), new LanStr("UI", "C_MiniGameLab"));
+
+        #region C_Main
+
+        tween = ManaReso.Get("C_Main").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
+
+        tween.OnForwardStart += () =>
+        {
+            ManaData.MainDepth = -1;
+        };
+
+        tween.OnBackwardStart += () =>
+        {
+            ManaData.MainDepth = 0;
+        };
+
+        #endregion
+
+        #region C_Manage
+
+        ManaReso.AddButtonEvent
+        (
+            "C_Manage",
+            () =>
+            {
+                ManaReso.Get("F_Manage0").TweenForVec();
+            }
+        );
+
+        #endregion
+
+        #region C_MiniGame
+
+        tween = ManaReso.Get("C_MiniGame").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
+
+        tween.OnForwardStart += () =>
+        {
+
+        };
+
+        ManaReso.AddButtonEvent
+        (
+            "C_MiniGame",
+            () =>
+            {
+                ManaReso.Get("GardenMini").TweenForVec();
+
+                ManaReso.Get("D_MiniGame").TweenForCG();
+            }
+        );
+
+        HudTarget hudTarget = ManaReso.Get("C_MiniGame").AddComponent<HudTarget>();
+
+        hudTarget.PosTra = Player.ChildDic["EnterGameTra"];
+
+        #endregion
+
+
+        #region C_Setting
+
+        ManaReso.SetButtonEvent
+        (
+            "C_Setting",
+            () =>
+            {
+                ManaReso.Get("L_Setting").TweenForCG();
+            }
+        );
+
+        #endregion
+
+        #region C_Achieve
+
+        ManaReso.AddButtonEvent
+        (
+            "C_Achieve",
+            () =>
+            {
+                ManaReso.Get("M_Achieve0").TweenForVec();
+            }
+        );
+
+        #endregion
+
+        #endregion
+
+        #region D
+
+        ManaReso.SetText("D_ScoreTit");
+        ManaReso.SetText("D_BeginLab", Language.GetStr("UI", "D_BeginLab0"));
+        ManaReso.SetText("D_StatusLab", Language.GetStr("UI", "D_StatusLab0"));
+
+        ManaText.Add(ManaReso.Get<Text>("Da_Lab"), new LanStr("UI", "Da_Lab"));
+        ManaText.Add(ManaReso.Get<Text>("Da_ScoreTit"), new LanStr("UI", "Da_ScoreTit"));
+        ManaText.Add(ManaReso.Get<Text>("Da_QuitLab"), new LanStr("UI", "Da_QuitLab"));
+        ManaText.Add(ManaReso.Get<Text>("Da_CancelLab"), new LanStr("UI", "Da_CancelLab"));
+        ManaText.Add(ManaReso.Get<Text>("Da_GetAwardLab"), new LanStr("UI", "Da_GetAwardLab"));
+
+        #region D_Rip
+
+        ManaReso.AddButtonEvent
+        (
+            "D_Rip2",
+            () =>
+            {
+                ManaMiniGame.Rip();
+
+                ManaReso.Get("D_Rip2").TweenForScale();
+            }
+        );
+
+        tween = ManaReso.Get("D_Rip2").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.2f, 1.2f, 1.2f), 0.1f, true, true, Curve.EaseOutQuad);
+
+        tween.OnForwardFinish += () =>
+        {
+            ManaReso.Get("D_Rip2").TweenBacScale();
+        };
+
+        #endregion
+
+        #region D_Quit
+
+        ManaReso.AddButtonEvent
+        (
+            "D_Quit",
+            () =>
+            {
+                FlowerInfo flowerInfo = ManaGarden.FlowerInfoList.Random();
+
+                Vector2 newSize = flowerInfo.Sprite.rect.size;
+                newSize.x *= 0.2f;
+                newSize.y *= 0.2f;
+
+                ManaReso.Get<Image>("Da_FlowerIcon").sprite = flowerInfo.Sprite;
+                ManaReso.Get<Image>("Da_FlowerIcon").rectTransform.sizeDelta = newSize;
+
+                ManaReso.SetText("Da_FlowerLab", Language.GetStr("FlowerName", "Flower" + flowerInfo.ID));
+
+
+                ManaReso.SetText("Da_Tit", Language.GetStr("UI", "Da_Tit0"));
+
+                ManaReso.SetActive("Da_Lab", true);
+                ManaReso.SetActive("Da_HGroup", false);
+                ManaReso.SetActive("Da_ScoreTit", false);
+
+                ManaReso.Get("Da_Info").TweenForCG();
+
+                ManaReso.SetActive("Da_Quit", true);
+                ManaReso.SetActive("Da_Cancel", true);
+                ManaReso.SetActive("Da_GetAward", false);
+
+                ManaMiniGame.Pause = true;
+
+                Auxiliary.Instance.DelayCall
+                (
+                    () =>
+                    {
+                        ManaReso.Get<Text>("Da_FlowerLab").SetLayoutDirty();
+                    },
+                    1
+                );
+            }
+        );
+
+        #endregion
+
+        #region D_Begin
+
+        ManaReso.AddButtonEvent
+        (
+            "D_Begin",
+            () =>
+            {
+                ManaMiniGame.Prepare = true;
+            }
+        );
+
+        #endregion
+
+        #region D_Water
+
+        ManaReso.AddButtonEvent
+        (
+            "D_Water2",
+            () =>
+            {
+                ManaMiniGame.Water();
+
+                ManaReso.Get("D_Water2").TweenForScale();
+            }
+        );
+
+        tween = ManaReso.Get("D_Water2").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.2f, 1.2f, 1.2f), 0.1f, true, true, Curve.EaseOutQuad);
+
+        tween.OnForwardFinish += () =>
+        {
+            ManaReso.Get("D_Water2").TweenBacScale();
+        };
+
+        #endregion
+
+        #region D_Fertilize
+
+        ManaReso.AddButtonEvent
+        (
+            "D_Fertilize2",
+
+            () =>
+            {
+                ManaMiniGame.Fertilize();
+
+                ManaReso.Get("D_Fertilize2").TweenForScale();
+            }
+        );
+
+        tween = ManaReso.Get("D_Fertilize2").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.2f, 1.2f, 1.2f), 0.1f, true, true, Curve.EaseOutQuad);
+
+        tween.OnForwardFinish += () =>
+        {
+            ManaReso.Get("D_Fertilize2").TweenBacScale();
+        };
+
+        #endregion
+
+        #region D_MiniGame
+
+        tween = ManaReso.Get("D_MiniGame").CreateTweenCG(0, 1, 0.5f, false, true, Curve.EaseOutQuad);
+
+        tween.OnForwardStart += () =>
+        {
+            ManaReso.SetText("D_ScoreTit");
+            ManaReso.SetText("D_BeginLab", Language.GetStr("UI", "D_BeginLab0"));
+            ManaReso.SetText("D_StatusLab", Language.GetStr("UI", "D_StatusLab0"));
+
+            ManaReso.Get("C_Main").TweenBacCG();
+
+            ManaReso.Get("MusicTheme").TweenBacAudio();
+
+            //ManaReso.SetActive("E_Debug", false);
+
+            ManaData.MainDepth++;
+
+            ManaReso.SetActive("Da_Quit", true);
+            ManaReso.SetActive("Da_Cancel", true);
+            ManaReso.SetActive("Da_GetAward", false);
+        };
+
+        tween.OnForwardFinish += () =>
+        {
+            ManaReso.Get("MusicMini").TweenForAudio();
+        };
+
+        tween.OnBackwardStart += () =>
+        {
+            ManaReso.SetText("D_BeginLab", Language.GetStr("UI", "D_BeginLab0"));
+
+            ManaReso.Get("MusicMini").TweenBacAudio();
+        };
+
+        tween.OnBackwardFinish += () =>
+        {
+            ManaReso.Get("MusicTheme").TweenForAudio();
+
+            //ManaReso.SetActive("E_Debug", true);
+        };
+
+        #endregion
+
+
+        #region Da_Quit
+
+        ManaReso.AddButtonEvent
+        (
+            "Da_Quit",
+            () =>
+            {
+                ManaReso.Get("C_Main").TweenForCG();
+
+                ManaReso.Get("D_MiniGame").TweenBacCG();
+
+                ManaReso.Get("GardenMini").TweenBacVec();
+
+                ManaReso.Get("Da_Info").TweenBacCG();
+
+                ManaMiniGame.GameAbort();
+            }
+        );
+
+        #endregion
+
+        #region Da_Star
+
+        ManaReso.Get("Da_Star1").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad);
+        ManaReso.Get("Da_Star2").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad);
+        ManaReso.Get("Da_Star3").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad);
+
+        #endregion
+
+        #region Da_Info
+
+        ManaReso.Get("Da_Info").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
+
+        #endregion
+
+        #region Da_Cancel
+
+        ManaReso.AddButtonEvent
+        (
+            "Da_Cancel",
+            () =>
+            {
+                ManaReso.Get("Da_Info").TweenBacCG();
+
+                ManaMiniGame.Pause = false;
+            }
+        );
+
+        #endregion
+
+        #region Da_Score
+
+        ManaReso.Get("Da_ScoreTit").CreateTweenText(1, 25, 0.25f, false, true, Curve.EaseOutQuad);
+
+        #endregion
+
+        #region Da_GetAward
+
+        ManaReso.AddButtonEvent
+        (
+            "Da_GetAward",
+            () =>
+            {
+                ManaReso.Get("C_Main").TweenForCG();
+
+                ManaReso.Get("D_MiniGame").TweenBacCG();
+
+                ManaReso.Get("GardenMini").TweenBacVec();
+
+                ManaReso.Get("Da_Info").TweenBacCG();
+
+                ManaReso.Get("Da_VGroup").GetComponent<VerticalLayoutGroup>().enabled = true;
+                ManaReso.Get<CanvasGroup>("Da_VGroup").alpha = 0;
+                ManaReso.SetActive("Da_HGroup", false);
+                ManaReso.Get("Da_Info").GetTweenCG().OnForwardFinish = () =>
+                {
+
+                };
+            }
+        );
+
+        #endregion
+
+        ManaReso.Get("Da_GetAward").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
+
+        ManaReso.Get("Da_CoinGroup").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad);
+        ManaReso.Get("Da_FlowerGroup").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad);
+        ManaReso.Get("Da_DiamondGroup").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad);
+
+        #endregion
+
+        #region E
+
+        #region E_PauseBtn
+
+        ManaReso.AddButtonEvent
+        (
+            "E_PauseBtn",
+            () =>
+            {
+                ManaDebug.LockBtn();
+            }
+        );
+
+        #endregion
+
+        #region E_CentralBtn
+
+        ManaReso.AddButtonEvent
+        (
+            "E_CentralBtn",
+            () =>
+            {
+                ManaReso.SetActive("Ea_Central", true);
+            }
+        );
+
+        #endregion
+
+
+        #region Ea_Cool
+
+        ManaReso.AddButtonEvent
+        (
+            "Ea_Cool",
+            () =>
+            {
+                for (int i = 0; i < ManaData.SkillList.Count; i++)
+                {
+                    ManaData.SkillList[i].ReceiveCool(1, true, true);
+                }
+            }
+        );
+
+        #endregion
+
+        #region Ea_Save
+
+        ManaReso.AddButtonEvent
+        (
+            "Ea_Save",
+            () =>
+            {
+                Data.SavePlayerConfig();
+            }
+        );
+
+        #endregion
+
+        #region Ea_Close
+
+        ManaReso.AddButtonEvent
+        (
+            "Ea_Close",
+            () =>
+            {
+                ManaReso.SetActive("Ea_Central", false);
+            }
+        );
+
+        #endregion
+
+        #region Ea_Reset
+
+        ManaReso.AddButtonEvent
+        (
+            "Ea_Reset",
+            () =>
+            {
+                Data.ResetPlayerConfig();
+            }
+        );
+
+        #endregion
+
+        #region Ea_Current
+
+        ManaReso.AddButtonEvent
+        (
+            "Ea_Current",
+            () =>
+            {
+                ManaData.Coin += 1000;
+                ManaData.Diamond += 1000;
+            }
+        );
+
+        #endregion
+
+        #region Ea_Upgrade
+
+        ManaReso.AddButtonEvent
+        (
+            "Ea_Upgrade",
+            () =>
+            {
+                ManaData.Level += 20;
+            }
+        );
+
+        #endregion
+
+        #endregion
+
+        #region F
+
+        ManaText.Add(ManaReso.Get<Text>("F_ElfLab"), new LanStr("UI", "F_ElfLab"));
+        ManaText.Add(ManaReso.Get<Text>("F_StoreLab"), new LanStr("UI", "F_StoreLab"));
+        ManaText.Add(ManaReso.Get<Text>("F_MagicLab"), new LanStr("UI", "F_MagicLab"));
+        ManaText.Add(ManaReso.Get<Text>("F_GardenLab"), new LanStr("UI", "F_GardenLab"));
+
+        ManaText.Add(ManaReso.Get<Text>("Fg_Tit"), new LanStr("UI", "Fg_Tit"));
+        ManaText.Add(ManaReso.Get<Text>("Fg_Lab"), new LanStr("UI", "Fg_Lab"));
+        ManaText.Add(ManaReso.Get<Text>("Fg_BtnLab"), new LanStr("UI", "Fg_BtnLab"));
+
+        #region F_Close
+
+        ManaReso.AddButtonEvent
+        (
+            "F_Close",
+            () =>
+            {
+                ManaReso.Get("F_Manage").TweenBacGra();
+            }
+        );
+
+        #endregion
+
+        #region F_Flower
+
+        ManaReso.AddButtonEvent
+        (
+            "F_Flower",
+            () =>
+            {
+                ManaReso.Get("G_Flower").TweenForCG();
+            }
+        );
+
+        #endregion
+
+        #region F_TabBtn
+
+        ManaReso.Get("F_Elf").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.1f, 1.1f, 1.1f), 0.25f, true, true, Curve.EaseOutQuad);
+        ManaReso.Get("F_Store").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.1f, 1.1f, 1.1f), 0.25f, true, true, Curve.EaseOutQuad);
+        ManaReso.Get("F_Magic").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.1f, 1.1f, 1.1f), 0.25f, true, true, Curve.EaseOutQuad);
+        ManaReso.Get("F_Garden").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.1f, 1.1f, 1.1f), 0.25f, true, true, Curve.EaseOutQuad);
+
+        ManaReso.AddButtonEvent
+        (
+            "F_Elf",
+            () =>
+            {
+                ManaReso.Get("F_Elf").TweenForScale();
+                ManaReso.Get("F_Store").TweenConBacScale();
+                ManaReso.Get("F_Magic").TweenConBacScale();
+                ManaReso.Get("F_Garden").TweenConBacScale();
+
+                ManaReso.Get("F_Elf").SetAsLastSibling();
+                ManaReso.Get("F_Store").SetSiblingIndex(0);
+                ManaReso.Get("F_Magic").SetSiblingIndex(1);
+                ManaReso.Get("F_Garden").SetSiblingIndex(2);
+
+                ManaReso.Get<Button>("F_Elf").interactable = false;
+                ManaReso.Get<Button>("F_Store").interactable = true;
+                ManaReso.Get<Button>("F_Magic").interactable = true;
+                ManaReso.Get<Button>("F_Garden").interactable = true;
+
+                ManaReso.SetActive("Fd_Elf", true);
+                ManaReso.SetActive("Fc_Store", false);
+                ManaReso.SetActive("Fb_Magic", false);
+                ManaReso.SetActive("Fa_Garden", false);
+
+                ManaReso.SetActive("F_ElfIcon", true);
+                ManaReso.SetActive("F_StoreIcon", false);
+                ManaReso.SetActive("F_MagicIcon", false);
+                ManaReso.SetActive("F_GardenIcon", false);
+
+                ManaReso.SetActive("Ff_SkillBar", false);
+            }
+        );
+
+        ManaReso.AddButtonEvent
+        (
+            "F_Store",
+            () =>
+            {
+                ManaReso.Get("F_Elf").TweenConBacScale();
+                ManaReso.Get("F_Store").TweenForScale();
+                ManaReso.Get("F_Magic").TweenConBacScale();
+                ManaReso.Get("F_Garden").TweenConBacScale();
+
+                ManaReso.Get("F_Elf").SetSiblingIndex(1);
+                ManaReso.Get("F_Store").SetAsLastSibling();
+                ManaReso.Get("F_Magic").SetSiblingIndex(0);
+                ManaReso.Get("F_Garden").SetSiblingIndex(2);
+
+                ManaReso.Get<Button>("F_Elf").interactable = true;
+                ManaReso.Get<Button>("F_Store").interactable = false;
+                ManaReso.Get<Button>("F_Magic").interactable = true;
+                ManaReso.Get<Button>("F_Garden").interactable = true;
+
+                ManaReso.SetActive("Fd_Elf", false);
+                ManaReso.SetActive("Fc_Store", true);
+                ManaReso.SetActive("Fb_Magic", false);
+                ManaReso.SetActive("Fa_Garden", false);
+
+                ManaReso.SetActive("F_ElfIcon", false);
+                ManaReso.SetActive("F_StoreIcon", true);
+                ManaReso.SetActive("F_MagicIcon", false);
+                ManaReso.SetActive("F_GardenIcon", false);
+
+                ManaReso.SetActive("Ff_SkillBar", false);
+            }
+        );
+
+        ManaReso.AddButtonEvent
+        (
+            "F_Magic",
+            () =>
+            {
+                ManaReso.Get("F_Elf").TweenConBacScale();
+                ManaReso.Get("F_Store").TweenConBacScale();
+                ManaReso.Get("F_Magic").TweenForScale();
+                ManaReso.Get("F_Garden").TweenConBacScale();
+
+                ManaReso.Get("F_Elf").SetSiblingIndex(1);
+                ManaReso.Get("F_Store").SetSiblingIndex(0);
+                ManaReso.Get("F_Magic").SetAsLastSibling();
+                ManaReso.Get("F_Garden").SetSiblingIndex(2);
+
+                ManaReso.Get<Button>("F_Elf").interactable = true;
+                ManaReso.Get<Button>("F_Store").interactable = true;
+                ManaReso.Get<Button>("F_Magic").interactable = false;
+                ManaReso.Get<Button>("F_Garden").interactable = true;
+
+                ManaReso.SetActive("Fd_Elf", false);
+                ManaReso.SetActive("Fc_Store", false);
+                ManaReso.SetActive("Fb_Magic", true);
+                ManaReso.SetActive("Fa_Garden", false);
+
+                ManaReso.SetActive("F_ElfIcon", false);
+                ManaReso.SetActive("F_StoreIcon", false);
+                ManaReso.SetActive("F_MagicIcon", true);
+                ManaReso.SetActive("F_GardenIcon", false);
+
+                ManaReso.SetActive("Ff_SkillBar", false);
+            }
+        );
+
+        ManaReso.AddButtonEvent
+        (
+            "F_Garden",
+            () =>
+            {
+                ManaReso.Get("F_Elf").TweenConBacScale();
+                ManaReso.Get("F_Store").TweenConBacScale();
+                ManaReso.Get("F_Magic").TweenConBacScale();
+                ManaReso.Get("F_Garden").TweenForScale();
+
+                ManaReso.Get("F_Elf").SetSiblingIndex(2);
+                ManaReso.Get("F_Store").SetSiblingIndex(0);
+                ManaReso.Get("F_Magic").SetSiblingIndex(1);
+                ManaReso.Get("F_Garden").SetAsLastSibling();
+
+                ManaReso.Get<Button>("F_Elf").interactable = true;
+                ManaReso.Get<Button>("F_Store").interactable = true;
+                ManaReso.Get<Button>("F_Magic").interactable = true;
+                ManaReso.Get<Button>("F_Garden").interactable = false;
+
+                ManaReso.SetActive("Fd_Elf", false);
+                ManaReso.SetActive("Fc_Store", false);
+                ManaReso.SetActive("Fb_Magic", false);
+                ManaReso.SetActive("Fa_Garden", true);
+
+                ManaReso.SetActive("F_ElfIcon", false);
+                ManaReso.SetActive("F_StoreIcon", false);
+                ManaReso.SetActive("F_MagicIcon", false);
+                ManaReso.SetActive("F_GardenIcon", true);
+
+                if (ManaData.SkillBar)
+                {
+                    ManaReso.SetActive("Ff_SkillBar", true);
+                }
+            }
+        );
+
+        #endregion
+
+        #region F_Manage
+
+        tween = ManaReso.Get("F_Manage").CreateTweenGra(new Color(0, 0, 0, 180 / 255f), 0.5f, true, true, Curve.EaseOutQuad);
+
+        var tween1 = tween;
+        tween.OnForwardStart += () =>
+        {
+            tween1.Duration = 0.5f;
+        };
+
+        tween.OnBackwardStart += () =>
+        {
+            tween1.Duration = 0.25f;
+        };
+
+        tween.OnBackwardFinish += () =>
+        {
+            ManaReso.Get("F_Manage0").TweenBacVec();
+        };
+
+        tween = ManaReso.Get("F_Manage0").CreateTweenVec2D(ManaReso.Get("F_PosTra").position, 0.5f, false, false, true, Curve.EaseOutQuad);
+
+        tween.OnForwardStart += () =>
+        {
+            ManaReso.Get("C_Main").TweenBacCG();
+
+            ManaReso.SetActive("F_Manage", true);
+
+            ManaData.MainDepth++;
+        };
+
+        tween.OnForwardFinish += () =>
+        {
+            ManaReso.Get("F_Manage").TweenForGra();
+        };
+
+        tween.OnBackwardStart += () =>
+        {
+            ManaData.MainDepth--;
+        };
+
+        tween.OnBackwardFinish += () =>
+        {
+            ManaReso.Get("C_Main").TweenForCG();
+
+            ManaReso.SetActive("F_Manage", false);
+            ManaReso.SetActive("F_Manage0", false);
+        };
+
+        #endregion
+
+
+        #region Fa_Scrr
+
+        RectTransform rectTra1 = ManaReso.Get<RectTransform>("Fa_Scrr");
+        RectTransform rectTra2 = ManaReso.Get<RectTransform>("Ff_SkillBar");
+
+        rectTra1.CreateTweenRect(rectTra1.rect.size + new Vector2(0, -rectTra2.rect.height), 0.25f, true, true, Curve.EaseOutQuad);
+
+        #endregion
+
+
+        #region Fe_Info
+
+        ManaReso.Get("Fe_Info").CreateTweenCG(0f, 1f, 0.1f, false, true, Curve.EaseOutQuad);
+
+        #endregion
+
+        #region Fe_Close
+
+        ManaReso.AddButtonEvent
+        (
+            "Fe_Close",
+            () =>
+            {
+                ManaReso.Get("Fe_Info").TweenBacCG();
+            }
+        );
+
+        #endregion
+
+
+        #region Fg_Btn
+
+        ManaReso.AddButtonEvent
+        (
+            "Fg_Btn",
+            () =>
+            {
+                ManaData.Connect = true;
+                ManaReso.Get("Fg_Reconnect").TweenBacCG();
+            }
+        );
+
+        #endregion
+
+        #region Fg_Close
+
+        ManaReso.AddButtonEvent
+        (
+            "Fg_Close",
+            () =>
+            {
+                ManaReso.Get("Fg_Reconnect").TweenBacCG();
+            }
+        );
+
+        #endregion
+
+        #region Fg_Reconnect
+
+        ManaReso.Get("Fg_Reconnect").CreateTweenCG(0f, 1f, 0.1f, false, true, Curve.EaseOutQuad);
+
+        #endregion
+
+        #endregion
+
+        #region G
+
+        ManaText.Add(ManaReso.Get<Text>("G_Tit"), new LanStr("UI", "G_Tit"));
+        ManaText.Add(ManaReso.Get<Text>("G_SpecialLab"), new LanStr("UI", "G_SpecialLab"));
+        ManaText.Add(ManaReso.Get<Text>("G_RegularLab"), new LanStr("UI", "G_RegularLab"));
+        ManaText.Add(ManaReso.Get<Text>("G_RetrieveLab"), new LanStr("UI", "G_RetrieveLab"));
+
+        #region G_Close
+
+        ManaReso.AddButtonEvent
+        (
+            "G_Close",
+            () =>
+            {
+                ManaReso.Get("G_Flower").TweenBacCG();
+            }
+        );
+
+        #endregion
+
+        #region G_Flower
+
+        tween = ManaReso.Get("G_Flower").CreateTweenCG(0f, 1f, 0.25f, false, true, Curve.EaseOutQuad);
+
+        tween.OnForwardStart += () =>
+        {
+            if (ManaData.MainDepth == -1)
+            {
+                ManaReso.Get("C_Main").TweenBacCG();
+            }
+
+            ManaData.MainDepth++;
+
+            if (ManaGarden.MyFlowerSpec == 0)
+            {
+                ManaReso.SetActive("G_Special", false);
+            }
+        };
+
+        tween.OnBackwardStart += () =>
+        {
+            ManaData.MainDepth--;
+        };
+
+        #endregion
+
+        #region G_Special
+
+        ManaReso.AddButtonEvent
+        (
+            "G_Special",
+            () =>
+            {
+                ManaReso.SetActive("G_SpecialScrr", true);
+                ManaReso.SetActive("G_RegularScrr", false);
+
+                ManaReso.Get<Button>("G_Special").interactable = false;
+                ManaReso.Get<Button>("G_Regular").interactable = true;
+            }
+        );
+
+        #endregion
+
+        #region G_Regular
+
+        ManaReso.Get("G_Regular").CreateTweenVec2D(ManaReso.Get("G_PosTraL").position, ManaReso.Get("G_PosTraR").position, 0.25f, false, true, true, Curve.EaseOutQuad);
+
+        ManaReso.AddButtonEvent
+        (
+            "G_Regular",
+            () =>
+            {
+                ManaReso.SetActive("G_SpecialScrr", false);
+                ManaReso.SetActive("G_RegularScrr", true);
+
+                ManaReso.Get<Button>("G_Special").interactable = true;
+                ManaReso.Get<Button>("G_Regular").interactable = false;
+            }
+        );
+
+        #endregion
+
+        #region G_Retrieve
+
+        ManaReso.AddButtonEvent
+        (
+            "G_Retrieve",
+            () =>
+            {
+                ManaReso.Get("G_Flower").TweenBacCG();
+
+                ManaGarden.RetriveFlowerAll();
+            }
+        );
+
+        #endregion
+
+        #endregion
+
+        #region H
+
+        ManaText.Add(ManaReso.Get<Text>("H_PlaceLab"), new LanStr("UI", "H_PlaceLab"));
+        ManaText.Add(ManaReso.Get<Text>("H_RetrieveLab"), new LanStr("UI", "H_RetrieveLab"));
+
+        #region H_Prev
+
+        ManaReso.AddButtonEvent
+        (
+            "H_Prev",
+            () =>
+            {
+                ManaReso.Get<FlowerCard>("H_FlowerCard").PrevItem();
+            }
+        );
+
+        #endregion
+
+        #region H_Next
+
+        ManaReso.AddButtonEvent
+        (
+            "H_Next",
+            () =>
+            {
+                ManaReso.Get<FlowerCard>("H_FlowerCard").NextItem();
+            }
+        );
+
+        #endregion
+
+        #region H_Place
+
+        ManaReso.AddButtonEvent
+        (
+            "H_Place",
+            () =>
+            {
+                ManaReso.Get("H_FlowerCard").TweenBacCG();
+
+                ManaReso.Get<FlowerCard>("H_FlowerCard").Close();
+
+                ManaGarden.PlantFlower();
+            }
+        );
+
+        #endregion
+
+        #region H_Close
+
+        ManaReso.AddButtonEvent
+        (
+            "H_Close",
+            () =>
+            {
+                ManaReso.Get("H_FlowerCard").TweenBacCG();
+
+                ManaReso.Get<FlowerCard>("H_FlowerCard").Close();
+            }
+        );
+
+        #endregion
+
+        #region H_Retrieve
+
+        ManaReso.AddButtonEvent
+        (
+            "H_Retrieve",
+
+            () =>
+            {
+                ManaReso.Get("H_FlowerCard").TweenBacCG();
+
+                ManaGarden.RetriveFlower();
+            }
+        );
+
+        #endregion
+
+        #region H_FlowerCard
+
+        ManaReso.Get("H_FlowerCard").AddComponent<FlowerCard>().RegistValue();
+
+        tween = ManaReso.Get("H_FlowerCard").CreateTweenCG(0f, 1f, 0.25f, false, true, Curve.EaseOutQuad);
+
+        tween.OnForwardStart += () =>
+        {
+            if (ManaData.MainDepth == -1)
+            {
+                ManaReso.Get("C_Main").TweenBacCG();
+            }
+
+            ManaData.MainDepth++;
+        };
+
+        tween.OnBackwardStart += () =>
+        {
+            ManaData.MainDepth--;
+        };
+
+        #endregion
+
+        #endregion
+
+        #region I
+
+        ManaReso.Get("I_BlackMask").CreateTweenGra(new Color(0, 0, 0, 0), 0.5f, true, false, Curve.EaseOutQuad);
+
+        ManaReso.Get("I_BlackMask").TweenForGra();
+
+        #endregion
+
+        #region K
+
+        ManaReso.Get("K_QuitGame").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
+
+        ManaReso.AddButtonEvent
+        (
+            "K_Cancel",
+            () =>
+            {
+                ManaReso.Get("K_QuitGame").TweenBacCG();
+            }
+        );
+
+        ManaReso.AddButtonEvent
+        (
+            "K_Confirm",
+            () =>
+            {
+                Application.Quit();
+            }
+        );
+
+        #endregion
+
+        #region L
+
+        ManaText.Add(ManaReso.Get<Text>("L_UserTit"), new LanStr("UI", "L_UserTit"));
+        ManaText.Add(ManaReso.Get<Text>("L_ChangeLab"), new LanStr("UI", "L_ChangeLab"));
+        ManaText.Add(ManaReso.Get<Text>("L_AudioTit"), new LanStr("UI", "L_AudioTit"));
+        ManaText.Add(ManaReso.Get<Text>("L_MusicLab"), new LanStr("UI", "L_MusicLab"));
+        ManaText.Add(ManaReso.Get<Text>("L_AudioLab"), new LanStr("UI", "L_AudioLab"));
+        ManaText.Add(ManaReso.Get<Text>("L_ReportTit"), new LanStr("UI", "L_ReportTit"));
+        ManaText.Add(ManaReso.Get<Text>("L_ReportLab"), new LanStr("UI", "L_ReportLab"));
+        ManaText.Add(ManaReso.Get<Text>("L_ConfirmLab"), new LanStr("UI", "L_ConfirmLab"));
+        ManaText.Add(ManaReso.Get<Text>("L_LanguageTit"), new LanStr("UI", "L_LanguageTit"));
+        ManaText.Add(ManaReso.Get<Text>("L_TraChiLab"), new LanStr("UI", "L_TraChiLab"));
+        ManaText.Add(ManaReso.Get<Text>("L_EnglishLab"), new LanStr("UI", "L_EnglishLab"));
+        ManaText.Add(ManaReso.Get<Text>("L_SimChiLab"), new LanStr("UI", "L_SimChiLab"));
+
+        tween = ManaReso.Get("L_Setting").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
+
+        tween.OnForwardStart += () =>
+        {
+            ManaReso.Get("C_Main").TweenBacCG();
+
+            ManaData.MainDepth++;
+        };
+
+        tween.OnBackwardFinish += () =>
+        {
+            ManaReso.Get("C_Main").TweenForCG();
+        };
+
+        ManaReso.SetButtonEvent
+        (
+            "L_Confirm",
+            () =>
+            {
+                ManaReso.Get("L_Setting").TweenBacCG();
+            }
+        );
+
+        ManaReso.SetButtonEvent
+        (
+            "L_MusicBtn",
+            ManaAudio.Instance.MusicSwitch
+        );
+
+        ManaReso.SetButtonEvent
+        (
+            "L_AudioBtn",
+            ManaAudio.Instance.AudioSwitch
+        );
+
+        ManaReso.SetButtonEvent
+        (
+            "L_TraChi",
+            () =>
+            {
+                ManaReso.Get<Button>("L_TraChi").interactable = false;
+                ManaReso.Get<Button>("L_SimChi").interactable = true;
+                ManaReso.Get<Button>("L_English").interactable = true;
+
+                ManaReso.Get<Button>("L_TraChi").image.color = ManaColor.Orange;
+                ManaReso.Get<Button>("L_SimChi").image.color = ManaColor.LightGray;
+                ManaReso.Get<Button>("L_English").image.color = ManaColor.LightGray;
+            }
+        );
+
+        ManaReso.SetButtonEvent
+        (
+            "L_SimChi",
+            () =>
+            {
+                ManaReso.Get<Button>("L_TraChi").interactable = true;
+                ManaReso.Get<Button>("L_SimChi").interactable = false;
+                ManaReso.Get<Button>("L_English").interactable = true;
+
+                ManaReso.Get<Button>("L_TraChi").image.color = ManaColor.LightGray;
+                ManaReso.Get<Button>("L_SimChi").image.color = ManaColor.Orange;
+                ManaReso.Get<Button>("L_English").image.color = ManaColor.LightGray;
+
+                ManaText.SwitchLanguage("ChineseSimplified");
+            }
+        );
+
+        ManaReso.SetButtonEvent
+        (
+            "L_English",
+            () =>
+            {
+                ManaReso.Get<Button>("L_TraChi").interactable = true;
+                ManaReso.Get<Button>("L_SimChi").interactable = true;
+                ManaReso.Get<Button>("L_English").interactable = false;
+
+                ManaReso.Get<Button>("L_TraChi").image.color = ManaColor.LightGray;
+                ManaReso.Get<Button>("L_SimChi").image.color = ManaColor.LightGray;
+                ManaReso.Get<Button>("L_English").image.color = ManaColor.Orange;
+
+                ManaText.SwitchLanguage("English");
+            }
+        );
+
+        #endregion
+
+        #region M
+
+        #region M_Close
+
+        ManaText.Add(ManaReso.Get<Text>("M_Tit"), new LanStr("UI", "M_Tit"));
+
+        ManaReso.AddButtonEvent
+        (
+            "M_Close",
+            () =>
+            {
+                ManaReso.Get("M_Achieve").TweenBacGra();
+            }
+        );
+
+        #endregion
+
+        tween = ManaReso.Get("M_Achieve").CreateTweenGra(new Color(0, 0, 0, 180 / 255f), 0.5f, true, true, Curve.EaseOutQuad);
+
+        var tween2 = tween;
+        tween.OnForwardStart += () =>
+        {
+            tween2.Duration = 0.5f;
+        };
+
+        tween.OnBackwardStart += () =>
+        {
+            tween2.Duration = 0.25f;
+        };
+
+        tween.OnBackwardFinish += () =>
+        {
+            ManaReso.Get("M_Achieve0").TweenBacVec();
+        };
+
+        tween = ManaReso.Get("M_Achieve0").CreateTweenVec2D(ManaReso.Get("M_PosTra").position, 0.5f, false, false, true, Curve.EaseOutQuad);
+
+        tween.OnForwardStart += () =>
+        {
+            ManaReso.Get("C_Main").TweenBacCG();
+
+            ManaReso.SetActive("M_Achieve", true);
+
+            ManaData.MainDepth++;
+        };
+
+        tween.OnForwardFinish += () =>
+        {
+            ManaReso.Get("M_Achieve").TweenForGra();
+        };
+
+        tween.OnBackwardStart += () =>
+        {
+            ManaData.MainDepth--;
+        };
+
+        tween.OnBackwardFinish += () =>
+        {
+            ManaReso.Get("C_Main").TweenForCG();
+
+            ManaReso.SetActive("M_Achieve", false);
+            ManaReso.SetActive("M_Achieve0", false);
+        };
+
+        #endregion
     }
     }
 }
 }

+ 1 - 1
Assets/Script/Object/Drop.cs

@@ -16,7 +16,7 @@ public class Drop : ObjRoot,IPointerClickHandler
 
 
     protected virtual void Awake()
     protected virtual void Awake()
     {
     {
-        Tween tween = transform.CreateTweenSr(new Color(1, 1, 1, 1), new Color(1, 1, 1, 0), 0.25f, false, true, false, Curve.EaseOutQuad);
+        Tween tween = transform.CreateTweenSr(new Color(1, 1, 1, 1), new Color(1, 1, 1, 0), 0.25f, true, false, Curve.EaseOutQuad);
         transform.CreateTweenScale(new Vector3(0.8f, 0.8f, 0.8f), new Vector3(1.2f, 1.2f, 1.2f), 0.25f, true, false, Curve.EaseOutQuad);
         transform.CreateTweenScale(new Vector3(0.8f, 0.8f, 0.8f), new Vector3(1.2f, 1.2f, 1.2f), 0.25f, true, false, Curve.EaseOutQuad);
 
 
         tween.OnForwardFinish += () =>
         tween.OnForwardFinish += () =>

+ 46 - 20
Assets/Script/Object/Flower.cs

@@ -129,26 +129,20 @@ public class FlowerInfo
         newSize.y *= 0.2f;
         newSize.y *= 0.2f;
         Image.rectTransform.sizeDelta = newSize;
         Image.rectTransform.sizeDelta = newSize;
 
 
-        if (Initializer.Tutorial)
-        {
-            Button.onClick.AddListener
-            (
-                () =>
+        Button.onClick.AddListener
+        (
+            () =>
+            {
+                if (Initializer.Tutorial)
                 {
                 {
                     TutorialClick();
                     TutorialClick();
                 }
                 }
-            );
-        }
-        else
-        {
-            Button.onClick.AddListener
-            (
-                () =>
+                else
                 {
                 {
                     RegularClick();
                     RegularClick();
                 }
                 }
-            );
-        }
+            }
+        );
     }
     }
 
 
 
 
@@ -156,7 +150,7 @@ public class FlowerInfo
     {
     {
         ManaGarden.PlantFlower(this);
         ManaGarden.PlantFlower(this);
 
 
-        Tutorial.HightDisable(ItemTra, false);
+        Tutorial.HightDisable(0, false);
 
 
         Tutorial.HightScreen(ManaReso.Get("G_CloseArrow"), ManaReso.Get("G_Close"));
         Tutorial.HightScreen(ManaReso.Get("G_CloseArrow"), ManaReso.Get("G_Close"));
     }
     }
@@ -261,21 +255,21 @@ public class Flower : ObjRoot, IPointerClickHandler
         OperateIcon = ChildDic["OperateIcon"].GetComponent<SpriteRenderer>();
         OperateIcon = ChildDic["OperateIcon"].GetComponent<SpriteRenderer>();
         OperateOutline = ChildDic["OperateOutline"].GetComponent<SpriteRenderer>();
         OperateOutline = ChildDic["OperateOutline"].GetComponent<SpriteRenderer>();
         
         
-        Tween tween = FlowerIcon.CreateTweenSr(new Color(1, 1, 1), new Color(1, 0.5f, 0.5f), 0.2f, false, true, true, Curve.EaseOutQuad);
+        Tween tween = FlowerIcon.CreateTweenSr(new Color(1, 1, 1), new Color(1, 0.5f, 0.5f), 0.2f, true, true, Curve.EaseOutQuad);
 
 
         tween.OnForwardFinish += () =>
         tween.OnForwardFinish += () =>
         {
         {
             FlowerIcon.TweenBacSr();
             FlowerIcon.TweenBacSr();
         };
         };
 
 
-        tween = OperateIcon.CreateTweenSr(new Color(1, 1, 1), new Color(1, 0.5f, 0.5f), 0.2f, false, true, true, Curve.EaseOutQuad);
+        tween = OperateIcon.CreateTweenSr(new Color(1, 1, 1), new Color(1, 0.5f, 0.5f), 0.2f, true, true, Curve.EaseOutQuad);
 
 
         tween.OnForwardFinish += () =>
         tween.OnForwardFinish += () =>
         {
         {
             OperateIcon.TweenBacSr();
             OperateIcon.TweenBacSr();
         };
         };
 
 
-        tween = OperateBk.CreateTweenSr(new Color(1, 1, 1), new Color(1, 0.5f, 0.5f), 0.2f, false, true, true, Curve.EaseOutQuad);
+        tween = OperateBk.CreateTweenSr(new Color(1, 1, 1), new Color(1, 0.5f, 0.5f), 0.2f, true, true, Curve.EaseOutQuad);
 
 
         tween.OnForwardFinish += () =>
         tween.OnForwardFinish += () =>
         {
         {
@@ -366,6 +360,38 @@ public class Flower : ObjRoot, IPointerClickHandler
         }
         }
     }
     }
 
 
+    public void CreateOp(int sequence, OpType opType)
+    {
+        OpType = opType;
+        OperateBk.SetActive(true);
+
+        if (opType == OpType.Rip)
+        {
+            OperateIcon.sprite = ManaReso.Load<Sprite>("Rip", Folder.UI);
+        }
+        else if (opType == OpType.Water)
+        {
+            OperateIcon.sprite = ManaReso.Load<Sprite>("Water", Folder.UI);
+        }
+        else if (opType == OpType.Fertilize)
+        {
+            OperateIcon.sprite = ManaReso.Load<Sprite>("Fertilize", Folder.UI);
+        }
+
+        if (sequence == 0)
+        {
+            SetFirstOp();
+        }
+        else if (sequence == 1)
+        {
+            SetSecondOp();
+        }
+        else
+        {
+            SetThirdOp();
+        }
+    }
+
     public bool Operate(OpType opType)
     public bool Operate(OpType opType)
     {
     {
         if (opType != OpType) //错误的操作
         if (opType != OpType) //错误的操作
@@ -424,8 +450,8 @@ public class Flower : ObjRoot, IPointerClickHandler
 
 
     public void ShowAward()
     public void ShowAward()
     {
     {
-        GoldBk.CreateTweenSr(new Color(1, 1, 1, 0), new Color(1, 1, 1, 1), 1f, false, true, true, Curve.EaseOutQuad);
-        GoldIcon.CreateTweenSr(new Color(1, 1, 1, 0), new Color(1, 1, 1, 1), 1f, false, true, true, Curve.EaseOutQuad);
+        GoldBk.CreateTweenSr(new Color(1, 1, 1, 0), new Color(1, 1, 1, 1), 1f, true, true, Curve.EaseOutQuad);
+        GoldIcon.CreateTweenSr(new Color(1, 1, 1, 0), new Color(1, 1, 1, 1), 1f, true, true, Curve.EaseOutQuad);
 
 
         GoldBk.SetY(transform.position.y + 2.5f);
         GoldBk.SetY(transform.position.y + 2.5f);
 
 

+ 78 - 47
Assets/Script/Object/Garden.cs

@@ -18,26 +18,27 @@ public class Garden : Regist, IDragHandler, IPointerClickHandler, IEndDragHandle
 
 
     public static int ValidPage;
     public static int ValidPage;
 
 
-    private static int Page;
-    private static bool Flag1;
-    private static bool Flag2;
-    private static float RatioBk2;
-    private static float RatioBk3;
-    private static float RatioBk4;
-    private static float RatioPlayer;
-    private static float SlideSpeed;
-    private static Direction Direction;
-    private static Transform Player;
-    private static Transform GardenA;
-    private static Transform GardenBk2;
-    private static Transform GardenBk3;
-    private static Transform GardenBk4;
-
-    private static List<Vector3> PlayerPos;
-    private static List<Vector3> GardenPosA;
-    private static List<Vector3> GardenPosBk2;
-    private static List<Vector3> GardenPosBk3;
-    private static List<Vector3> GardenPosBk4;
+    public static int Page;
+    public static bool Flag1;
+    public static bool Flag2;
+    public static float RatioBk2;
+    public static float RatioBk3;
+    public static float RatioBk4;
+    public static float RatioPlayer;
+    public static float SlideSpeed;
+    public static Garden Instance;
+    public static Direction Direction;
+    public static Transform Player;
+    public static Transform GardenA;
+    public static Transform GardenBk2;
+    public static Transform GardenBk3;
+    public static Transform GardenBk4;
+
+    public static List<Vector3> PlayerPos;
+    public static List<Vector3> GardenPosA;
+    public static List<Vector3> GardenPosBk2;
+    public static List<Vector3> GardenPosBk3;
+    public static List<Vector3> GardenPosBk4;
 
 
     #endregion
     #endregion
 
 
@@ -45,6 +46,7 @@ public class Garden : Regist, IDragHandler, IPointerClickHandler, IEndDragHandle
     {
     {
         Flag1 = true;
         Flag1 = true;
         Flag2 = true;
         Flag2 = true;
+        Instance = this;
 
 
         Page = 0;
         Page = 0;
         SlideSpeed = 0.1f;
         SlideSpeed = 0.1f;
@@ -182,6 +184,62 @@ public class Garden : Regist, IDragHandler, IPointerClickHandler, IEndDragHandle
 
 
     public override void RegistReference()
     public override void RegistReference()
     {
     {
+        if (Initializer.Tutorial)
+        {
+            TutorialRegistReference();
+        }
+        else
+        {
+            RegularRegistReference();
+        }
+    }
+
+
+    public override void TutorialToRegular()
+    {
+        Player = ManaReso.Get("Player");
+        PlayerPos = new List<Vector3>()
+        {
+            global::Player.ChildDic["PlayerTra1"].position,
+            global::Player.ChildDic["PlayerTra2"].position,
+        };
+    }
+
+    private void TutorialRegistReference()
+    {
+        GardenBk2 = ManaReso.Get("GardenBk2");
+        GardenBk3 = ManaReso.Get("GardenBk3");
+        GardenBk4 = ManaReso.Get("GardenBk4");
+
+        GardenA = ManaReso.Get("GardenA");
+
+        GardenPosBk2 = new List<Vector3>()
+        {
+            ManaReso.Get("PageTra21").position,
+            ManaReso.Get("PageTra22").position,
+        };
+
+        GardenPosBk3 = new List<Vector3>()
+        {
+            ManaReso.Get("PageTra31").position,
+            ManaReso.Get("PageTra32").position,
+        };
+
+        GardenPosBk4 = new List<Vector3>()
+        {
+            ManaReso.Get("PageTra41").position,
+            ManaReso.Get("PageTra42").position,
+        };
+
+        GardenPosA = new List<Vector3>()
+        {
+            ManaReso.Get("PageTraA").position,
+            ManaReso.Get("PageTraB").position,
+        };
+    }
+
+    private void RegularRegistReference()
+    {
         GardenBk2 = ManaReso.Get("GardenBk2");
         GardenBk2 = ManaReso.Get("GardenBk2");
         GardenBk3 = ManaReso.Get("GardenBk3");
         GardenBk3 = ManaReso.Get("GardenBk3");
         GardenBk4 = ManaReso.Get("GardenBk4");
         GardenBk4 = ManaReso.Get("GardenBk4");
@@ -356,33 +414,6 @@ public class Garden : Regist, IDragHandler, IPointerClickHandler, IEndDragHandle
 
 
     public void OnPointerClick(PointerEventData eventData)
     public void OnPointerClick(PointerEventData eventData)
     {
     {
-        if (Initializer.Tutorial)
-        {
-            TutorialClick(eventData);
-        }
-        else
-        {
-            RegularClick(eventData);
-        }
-    }
-
-
-    private void TutorialClick(PointerEventData eventData)
-    {
-        if (!eventData.hovered.Contains(eventData.rawPointerPress))
-        {
-            return;
-        }
-
-        if (eventData.rawPointerPress.transform.name.Contains("Slot"))
-        {
-            ManaTutorial.EndStep4();
-            ManaTutorial.PrepareStep5();
-        }
-    }
-
-    private void RegularClick(PointerEventData eventData)
-    {
         if (!eventData.hovered.Contains(eventData.rawPointerPress))
         if (!eventData.hovered.Contains(eventData.rawPointerPress))
         {
         {
             return;
             return;

+ 3 - 2
Assets/Script/Object/Skill/Ability.cs

@@ -460,15 +460,16 @@ public class Ability : SkillRoot
             ManaReso.SetText("Fe_Lab1", Description(1));
             ManaReso.SetText("Fe_Lab1", Description(1));
             ManaReso.SetText("Fe_BtnLab", string.Format("{0}({1}{2:0})", Language.GetStr("UI", "Fe_BtnLab2"), ImageParse(UpgradeCur), NewUpgradeAmt));
             ManaReso.SetText("Fe_BtnLab", string.Format("{0}({1}{2:0})", Language.GetStr("UI", "Fe_BtnLab2"), ImageParse(UpgradeCur), NewUpgradeAmt));
 
 
-            ManaReso.SetButtonEvent
+            ManaReso.AddButtonEventOnetime
             (
             (
                 "Fe_Btn",
                 "Fe_Btn",
                 () =>
                 () =>
                 {
                 {
                     Upgrade();
                     Upgrade();
 
 
+                    ManaReso.Get("Fe_Info").TweenBacCG();
+
                     ManaTutorial.EndStep7();
                     ManaTutorial.EndStep7();
-                    ManaTutorial.PrepareStep8();
                 }
                 }
             );
             );
         }
         }

+ 72 - 70
Assets/Script/Object/Skill/BigSkill.cs

@@ -119,6 +119,13 @@ public class BigSkill : Skill
 
 
         BarStatus = SkillStatus.Cool;
         BarStatus = SkillStatus.Cool;
 
 
+        AnnulConti();
+
+        ManaDebug.Log(string.Format("技能结束 <color=red>{0}</color>", Name));
+    }
+
+    public override void AnnulConti()
+    {
         ManaData.SkillPlus -= NewPlus;
         ManaData.SkillPlus -= NewPlus;
         ManaData.SkillPerson -= NewPerson;
         ManaData.SkillPerson -= NewPerson;
         ManaData.SkillPersonBuff -= NewPersonBuff;
         ManaData.SkillPersonBuff -= NewPersonBuff;
@@ -139,8 +146,6 @@ public class BigSkill : Skill
                 ManaData.SkillList[i].ReceiveCool(-NewSkillCdBuff, true, true);
                 ManaData.SkillList[i].ReceiveCool(-NewSkillCdBuff, true, true);
             }
             }
         }
         }
-
-        ManaDebug.Log(string.Format("技能结束 <color=red>{0}</color>", Name));
     }
     }
 
 
     public override bool DoUse()
     public override bool DoUse()
@@ -392,7 +397,7 @@ public class BigSkill : Skill
 
 
             if (BarStatus == SkillStatus.Use)
             if (BarStatus == SkillStatus.Use)
             {
             {
-                Annul();
+                AnnulConti();
             }
             }
 
 
             NewUpgradeAmt = Auxiliary.FmlParse(UpgradeFml, "a", NewUpgradeAmt.ToString());
             NewUpgradeAmt = Auxiliary.FmlParse(UpgradeFml, "a", NewUpgradeAmt.ToString());
@@ -412,7 +417,7 @@ public class BigSkill : Skill
             ItemLab.text = Description(0);
             ItemLab.text = Description(0);
             ManaReso.SetText("Fe_Lab0", Description(0));
             ManaReso.SetText("Fe_Lab0", Description(0));
             ManaReso.SetText("Fe_Lab1", Description(1));
             ManaReso.SetText("Fe_Lab1", Description(1));
-            ManaReso.SetText("Fe_BtnLab", string.Format("{0}({1}{2:0})", Language.GetStr("UI", "Fe_BtnLab2"), UpgradeCur, NewUpgradeAmt));
+            ManaReso.SetText("Fe_BtnLab", string.Format("{0}({1}{2:0})", Language.GetStr("UI", "Fe_BtnLab2"), ImageParse(UpgradeCur), NewUpgradeAmt));
 
 
             ManaDebug.Log(string.Format("<color=red>{0}</color> 升级 : {1}", Name, Level));
             ManaDebug.Log(string.Format("<color=red>{0}</color> 升级 : {1}", Name, Level));
 
 
@@ -452,91 +457,88 @@ public class BigSkill : Skill
     {
     {
         ManaTutorial.EndStep9();
         ManaTutorial.EndStep9();
 
 
-        if (ManaData.Pay(UseAmt, BuyCur))
-        {
-            ManaData.Skill++;
+        ManaData.Skill++;
 
 
-            UseTimer = NewDuration;
+        UseTimer = NewDuration;
 
 
-            ManaData.UseList.Add(this);
+        ManaData.UseList.Add(this);
 
 
-            if (Math.Abs(Duration) < 0.0005f)
-            {
-                BarStatus = SkillStatus.Cool;
-            }
-            else
-            {
-                BarStatus = SkillStatus.Use;
-                BarLab.color = Color.blue;
-            }
+        if (Math.Abs(Duration) < 0.0005f)
+        {
+            BarStatus = SkillStatus.Cool;
+        }
+        else
+        {
+            BarStatus = SkillStatus.Use;
+            BarLab.color = Color.blue;
+        }
 
 
-            UseConti();
-            UseImmed();
+        UseConti();
+        UseImmed();
 
 
-            #region 调试输出
+        #region 调试输出
 
 
-            StringBuilder strb = new StringBuilder();
+        StringBuilder strb = new StringBuilder();
 
 
-            strb.AppendFormat("使用技能 : <color=red>{0}</color>", Name);
+        strb.AppendFormat("使用技能 : <color=red>{0}</color>", Name);
 
 
-            if (Math.Abs(NewPlus) > 0.0005f)
-            {
-                strb.AppendFormat(" 收入加成<color=red>+{0}%</color>", NewPlus * 100);
-            }
+        if (Math.Abs(NewPlus) > 0.0005f)
+        {
+            strb.AppendFormat(" 收入加成<color=red>+{0}%</color>", NewPlus*100);
+        }
 
 
-            if (Math.Abs(NewPerson) > 0.0005f)
-            {
-                strb.AppendFormat(" 参观人次<color=red>+{0}</color>", NewPerson);
-            }
+        if (Math.Abs(NewPerson) > 0.0005f)
+        {
+            strb.AppendFormat(" 参观人次<color=red>+{0}</color>", NewPerson);
+        }
 
 
-            if (Math.Abs(NewPersonBuff) > 0.0005f)
-            {
-                strb.AppendFormat(" 参观人次<color=red>+{0}%</color>", NewPersonBuff * 100);
-            }
+        if (Math.Abs(NewPersonBuff) > 0.0005f)
+        {
+            strb.AppendFormat(" 参观人次<color=red>+{0}%</color>", NewPersonBuff*100);
+        }
 
 
-            if (Math.Abs(NewCoinPerson) > 0.0005f)
-            {
-                strb.AppendFormat(" 每次金币<color=red>+{0}</color>", NewCoinPerson);
-            }
+        if (Math.Abs(NewCoinPerson) > 0.0005f)
+        {
+            strb.AppendFormat(" 每次金币<color=red>+{0}</color>", NewCoinPerson);
+        }
 
 
-            if (Math.Abs(NewSkillCD) > 0.0005f)
-            {
-                strb.AppendFormat(" 减少冷却<color=red>{0}</color>", NewSkillCD);
-            }
+        if (Math.Abs(NewSkillCD) > 0.0005f)
+        {
+            strb.AppendFormat(" 减少冷却<color=red>{0}</color>", NewSkillCD);
+        }
 
 
-            if (Math.Abs(NewSkillCdBuff) > 0.0005f)
-            {
-                strb.AppendFormat(" 减少冷却<color=red>{0}%</color>", NewSkillCdBuff * 100);
-            }
+        if (Math.Abs(NewSkillCdBuff) > 0.0005f)
+        {
+            strb.AppendFormat(" 减少冷却<color=red>{0}%</color>", NewSkillCdBuff*100);
+        }
 
 
-            if (Math.Abs(NewCoinOnce) > 0.0005f)
-            {
-                strb.AppendFormat(" 获得金币<color=red>{0}</color>", NewCoinOnce);
-            }
+        if (Math.Abs(NewCoinOnce) > 0.0005f)
+        {
+            strb.AppendFormat(" 获得金币<color=red>{0}</color>", NewCoinOnce);
+        }
 
 
-            if (Math.Abs(NewCoinOnceBuff) > 0.0005f)
-            {
-                strb.AppendFormat(" 获得金币<color=red>{0}</color>", ManaData.Person * ManaData.CoinPerson * ManaData.CircleTime * NewCoinOnceBuff);
-            }
+        if (Math.Abs(NewCoinOnceBuff) > 0.0005f)
+        {
+            strb.AppendFormat(" 获得金币<color=red>{0}</color>", ManaData.Person*ManaData.CoinPerson*ManaData.CircleTime*NewCoinOnceBuff);
+        }
 
 
-            if (Math.Abs(DiamondOnce) > 0.0005f)
-            {
-                strb.AppendFormat(" 获得钻石<color=red>{0}</color>", DiamondOnce);
-            }
+        if (Math.Abs(DiamondOnce) > 0.0005f)
+        {
+            strb.AppendFormat(" 获得钻石<color=red>{0}</color>", DiamondOnce);
+        }
 
 
-            if (Math.Abs(NewDuration) > 0.0005f)
-            {
-                strb.AppendFormat(" 持续时间<color=red>{0}</color>秒", NewDuration);
-            }
-            else
-            {
-                strb.Append(" <color=red>永久有效</color>");
-            }
+        if (Math.Abs(NewDuration) > 0.0005f)
+        {
+            strb.AppendFormat(" 持续时间<color=red>{0}</color>秒", NewDuration);
+        }
+        else
+        {
+            strb.Append(" <color=red>永久有效</color>");
+        }
 
 
-            ManaDebug.Log(strb.ToString());
+        ManaDebug.Log(strb.ToString());
 
 
-            #endregion
-        }
+        #endregion
     }
     }
 
 
     private void RegularBuy()
     private void RegularBuy()

+ 14 - 8
Assets/Script/Object/Skill/Skill.cs

@@ -194,6 +194,13 @@ public class Skill : SkillRoot
         ItemStatus = SkillStatus.Cool;
         ItemStatus = SkillStatus.Cool;
         ItemBtnLab.color = Color.white;
         ItemBtnLab.color = Color.white;
 
 
+        AnnulConti();
+
+        ManaDebug.Log(string.Format("技能结束 <color=red>{0}</color>", Name));
+    }
+
+    public virtual void AnnulConti()
+    {
         ManaData.SkillPlus -= NewPlus;
         ManaData.SkillPlus -= NewPlus;
         ManaData.SkillPerson -= NewPerson;
         ManaData.SkillPerson -= NewPerson;
         ManaData.SkillPersonBuff -= NewPersonBuff;
         ManaData.SkillPersonBuff -= NewPersonBuff;
@@ -214,8 +221,6 @@ public class Skill : SkillRoot
                 ManaData.SkillList[i].ReceiveCool(-NewSkillCdBuff, true, true);
                 ManaData.SkillList[i].ReceiveCool(-NewSkillCdBuff, true, true);
             }
             }
         }
         }
-
-        ManaDebug.Log(string.Format("技能结束 <color=red>{0}</color>", Name));
     }
     }
 
 
     public override bool DoUse()
     public override bool DoUse()
@@ -549,7 +554,7 @@ public class Skill : SkillRoot
             ManaDebug.Log(string.Format("技能<color=red>{0}</color>已解锁", Name));
             ManaDebug.Log(string.Format("技能<color=red>{0}</color>已解锁", Name));
         }
         }
     }
     }
-
+    
 
 
     private void TutorialClick()
     private void TutorialClick()
     {
     {
@@ -623,8 +628,9 @@ public class Skill : SkillRoot
                 {
                 {
                     Upgrade();
                     Upgrade();
 
 
+                    ManaReso.Get("Fe_Info").TweenBacCG();
+
                     ManaTutorial.EndStep8();
                     ManaTutorial.EndStep8();
-                    ManaTutorial.PrepareStep9();
                 }
                 }
             );
             );
         }
         }
@@ -733,7 +739,7 @@ public class Skill : SkillRoot
 
 
         if (ItemStatus == SkillStatus.Use)
         if (ItemStatus == SkillStatus.Use)
         {
         {
-            Annul();
+            AnnulConti();
         }
         }
 
 
         NewUpgradeAmt = Auxiliary.FmlParse(UpgradeFml, "a", NewUpgradeAmt.ToString());
         NewUpgradeAmt = Auxiliary.FmlParse(UpgradeFml, "a", NewUpgradeAmt.ToString());
@@ -752,7 +758,7 @@ public class Skill : SkillRoot
         ItemLab.text = Description(0);
         ItemLab.text = Description(0);
         ManaReso.SetText("Fe_Lab0", Description(0));
         ManaReso.SetText("Fe_Lab0", Description(0));
         ManaReso.SetText("Fe_Lab1", Description(1));
         ManaReso.SetText("Fe_Lab1", Description(1));
-        ManaReso.SetText("Fe_BtnLab", string.Format("{0}({1}{2:0})", Language.GetStr("UI", "Fe_BtnLab2"), UpgradeCur, NewUpgradeAmt));
+        ManaReso.SetText("Fe_BtnLab", string.Format("{0}({1}{2:0})", Language.GetStr("UI", "Fe_BtnLab2"), ImageParse(UpgradeCur), NewUpgradeAmt));
 
 
         ManaDebug.Log(string.Format("<color=red>{0}</color>升级 : {1}", Name, Level));
         ManaDebug.Log(string.Format("<color=red>{0}</color>升级 : {1}", Name, Level));
 
 
@@ -770,7 +776,7 @@ public class Skill : SkillRoot
 
 
             if (ItemStatus == SkillStatus.Use)
             if (ItemStatus == SkillStatus.Use)
             {
             {
-                Annul();
+                AnnulConti();
             }
             }
 
 
             NewUpgradeAmt = Auxiliary.FmlParse(UpgradeFml, "a", NewUpgradeAmt.ToString());
             NewUpgradeAmt = Auxiliary.FmlParse(UpgradeFml, "a", NewUpgradeAmt.ToString());
@@ -789,7 +795,7 @@ public class Skill : SkillRoot
             ItemLab.text = Description(0);
             ItemLab.text = Description(0);
             ManaReso.SetText("Fe_Lab0", Description(0));
             ManaReso.SetText("Fe_Lab0", Description(0));
             ManaReso.SetText("Fe_Lab1", Description(1));
             ManaReso.SetText("Fe_Lab1", Description(1));
-            ManaReso.SetText("Fe_BtnLab", string.Format("{0}({1}{2:0})", Language.GetStr("UI", "Fe_BtnLab2"), UpgradeCur, NewUpgradeAmt));
+            ManaReso.SetText("Fe_BtnLab", string.Format("{0}({1}{2:0})", Language.GetStr("UI", "Fe_BtnLab2"), ImageParse(UpgradeCur), NewUpgradeAmt));
 
 
             ManaDebug.Log(string.Format("<color=red>{0}</color>升级 : {1}", Name, Level));
             ManaDebug.Log(string.Format("<color=red>{0}</color>升级 : {1}", Name, Level));
 
 

+ 80 - 42
Assets/Script/Object/Tutorial.cs

@@ -46,31 +46,46 @@ public class Tutorial : Regist, IPointerClickHandler
     public static Transform PlayerBlond;
     public static Transform PlayerBlond;
     public static Transform PlayerBrown;
     public static Transform PlayerBrown;
 
 
-    public static List<Canvas> HighLightList = new List<Canvas>();
+    public static List<Transform> HighLightList = new List<Transform>();
 
 
     #endregion
     #endregion
 
 
-    public override void TutorialInstantiate()
+    public override void Instantiate()
     {
     {
-        PlayerBrown = ManaReso.Get("PlayerBrown", Folder.Character, false, ManaReso.Get("PlayerBk1"), ManaReso.Get("PlayerBk1").position);
+        if (ManaTutorial.TutorialIndex == 1)
+        {
+            PlayerBrown = ManaReso.Get("PlayerBrown", Folder.Character, false, ManaReso.Get("PlayerBk1"), ManaReso.Get("PlayerBk1").position);
 
 
-        PlayerBlond = ManaReso.Get("PlayerBlond", Folder.Character, false, ManaReso.Get("PlayerBk2"), ManaReso.Get("PlayerBk2").position);
+            PlayerBlond = ManaReso.Get("PlayerBlond", Folder.Character, false, ManaReso.Get("PlayerBk2"), ManaReso.Get("PlayerBk2").position);
 
 
-        PlayerPink = ManaReso.Get("PlayerPink", Folder.Character, false, ManaReso.Get("PlayerBk3"), ManaReso.Get("PlayerBk3").position);
+            PlayerPink = ManaReso.Get("PlayerPink", Folder.Character, false, ManaReso.Get("PlayerBk3"), ManaReso.Get("PlayerBk3").position);
+        }
     }
     }
 
 
-    public override void TutorialRegistValue()
+    public override void RegistValueA()
     {
     {
-        ManaReso.Get("Tutorial").CreateTweenSr(0, 1, 5f, true, true, true, Curve.EaseOutQuad);
-        ManaReso.Get("PlayerBk1").CreateTweenScale(new Vector3(0.8f, 0.8f, 0.8f), new Vector3(0.95f, 0.95f, 0.95f), 0.25f, true, true, Curve.EaseOutQuad);
-        ManaReso.Get("PlayerBk2").CreateTweenScale(new Vector3(0.8f, 0.8f, 0.8f), new Vector3(0.95f, 0.95f, 0.95f), 0.25f, true, true, Curve.EaseOutQuad);
-        ManaReso.Get("PlayerBk3").CreateTweenScale(new Vector3(0.8f, 0.8f, 0.8f), new Vector3(0.95f, 0.95f, 0.95f), 0.25f, true, true, Curve.EaseOutQuad);
-        ManaReso.Get("TutorialMask").CreateTweenSr(0, 180/255f, 0.25f, false, false, true, Curve.EaseOutQuad);
-
-        ManaReso.Get("TutorialMask").AddComponent<SceneMask>().Regist();
-
-        Arrow = ManaReso.Get("N_Arrow");
-        Material = ManaReso.Get<Image>("N_Mask").material;
+        if (Initializer.Tutorial)
+        {
+            ManaReso.Get("Tutorial").CreateTweenSr(0, 1, 5f, true, true, Curve.EaseOutQuad, false, true);
+            ManaReso.Get("PlayerBk1").CreateTweenScale(new Vector3(0.8f, 0.8f, 0.8f), new Vector3(0.95f, 0.95f, 0.95f), 0.25f, true, true, Curve.EaseOutQuad);
+            ManaReso.Get("PlayerBk2").CreateTweenScale(new Vector3(0.8f, 0.8f, 0.8f), new Vector3(0.95f, 0.95f, 0.95f), 0.25f, true, true, Curve.EaseOutQuad);
+            ManaReso.Get("PlayerBk3").CreateTweenScale(new Vector3(0.8f, 0.8f, 0.8f), new Vector3(0.95f, 0.95f, 0.95f), 0.25f, true, true, Curve.EaseOutQuad);
+            ManaReso.Get("TutorialMask").CreateTweenSr(0, 180 / 255f, 0.25f, false, true, Curve.EaseOutQuad);
+
+            ManaReso.Get("TutorialMask").AddComponent<SceneMask>().Regist();
+            
+            Arrow = ManaReso.Get("N_Arrow");
+            Material = ManaReso.Get<Image>("N_Mask").material;
+
+            if (ManaTutorial.TutorialIndex == 1)
+            {
+                ManaReso.SetActive("PlayerBk1", true);
+                ManaReso.SetActive("PlayerBk2", true);
+                ManaReso.SetActive("PlayerBk3", true);
+                ManaReso.SetActive("TutorialMask", true);
+                ManaReso.SetActive("TutorialCollider", true);
+            }
+        }
     }
     }
 
 
 
 
@@ -79,6 +94,8 @@ public class Tutorial : Regist, IPointerClickHandler
         SceneMask.SetArea(targetTra, radiusX, radiusY);
         SceneMask.SetArea(targetTra, radiusX, radiusY);
 
 
         PointScene(Camera.main.WorldToScreenPoint(posTra.position), targetTra);
         PointScene(Camera.main.WorldToScreenPoint(posTra.position), targetTra);
+
+        Arrow.TweenForCG();
     }
     }
 
 
     public static void HightScene(float radiusX, float radiusY, Transform posTra, Transform targetPos, Transform targetTra)
     public static void HightScene(float radiusX, float radiusY, Transform posTra, Transform targetPos, Transform targetTra)
@@ -86,51 +103,72 @@ public class Tutorial : Regist, IPointerClickHandler
         SceneMask.SetArea(targetTra, radiusX, radiusY);
         SceneMask.SetArea(targetTra, radiusX, radiusY);
 
 
         PointScene(Camera.main.WorldToScreenPoint(posTra.position), targetPos);
         PointScene(Camera.main.WorldToScreenPoint(posTra.position), targetPos);
+
+        Arrow.TweenForCG();
     }
     }
 
 
     public static void HightScreen(Transform posTra, Transform targetTra)
     public static void HightScreen(Transform posTra, Transform targetTra)
     {
     {
-        targetTra.GetComponent<Canvas>().overrideSorting = true;
-        targetTra.GetComponent<GraphicRaycaster>().enabled = true;
+        targetTra.AddComponent<GraphicRaycaster>();
+
+        Canvas canvas = targetTra.GetComponent<Canvas>();
+        canvas.overrideSorting = true;
+        canvas.sortingOrder = 1;
 
 
         PointScreen(posTra.position, targetTra);
         PointScreen(posTra.position, targetTra);
 
 
-        HighLightList.Add(targetTra.GetComponent<Canvas>());
+        HighLightList.Add(targetTra);
+
+        UIMask = true;
+
+        Arrow.TweenForCG();
+
+        ManaReso.Get("N_Mask").TweenConForGra();
+
+        HighLightList.Add(targetTra);
     }
     }
 
 
     public static void HightScreen(Transform posTra, Transform targetPos, Transform targetTra)
     public static void HightScreen(Transform posTra, Transform targetPos, Transform targetTra)
     {
     {
-        targetTra.GetComponent<Canvas>().overrideSorting = true;
-        targetTra.GetComponent<GraphicRaycaster>().enabled = true;
+        targetTra.AddComponent<GraphicRaycaster>();
+
+        Canvas canvas = targetTra.GetComponent<Canvas>();
+        canvas.overrideSorting = true;
+        canvas.sortingOrder = 1;
 
 
         PointScreen(posTra.position, targetPos);
         PointScreen(posTra.position, targetPos);
 
 
-        HighLightList.Add(targetTra.GetComponent<Canvas>());
+        UIMask = true;
+
+        Arrow.TweenForCG();
+
+        ManaReso.Get("N_Mask").TweenConForGra();
+
+        HighLightList.Add(targetTra);
     }
     }
 
 
     public static void HightDisable()
     public static void HightDisable()
     {
     {
-        Arrow.SetActive(false);
-
-        SceneMask.ClearArea();
-
         for (int i = 0; i < HighLightList.Count; i++)
         for (int i = 0; i < HighLightList.Count; i++)
         {
         {
-            HighLightList[i].overrideSorting = false;
-            HighLightList[i].GetComponent<GraphicRaycaster>().enabled = false;
+            Destroy(HighLightList[i].GetComponent<GraphicRaycaster>());
+            Destroy(HighLightList[i].GetComponent<Canvas>());
         }
         }
 
 
-        HighLightList = new List<Canvas>();
+        HighLightList = new List<Transform>();
 
 
-        UIMask = false;
         ManaReso.Get("N_Mask").TweenConBacGra();
         ManaReso.Get("N_Mask").TweenConBacGra();
         ManaReso.Get("N_Arrow").TweenConBacCG();
         ManaReso.Get("N_Arrow").TweenConBacCG();
+
+        SceneMask.ClearArea();
+
+        UIMask = false;
     }
     }
 
 
     public static void HightDisable(int index, bool hideArrow)
     public static void HightDisable(int index, bool hideArrow)
     {
     {
-        HighLightList[index].GetComponent<Canvas>().overrideSorting = false;
-        HighLightList[index].GetComponent<GraphicRaycaster>().enabled = false;
+        Destroy(HighLightList[index].GetComponent<GraphicRaycaster>());
+        Destroy(HighLightList[index].GetComponent<Canvas>());
 
 
         HighLightList.RemoveAt(index);
         HighLightList.RemoveAt(index);
 
 
@@ -142,10 +180,10 @@ public class Tutorial : Regist, IPointerClickHandler
 
 
     public static void HightDisable(Transform tra, bool hideArrow)
     public static void HightDisable(Transform tra, bool hideArrow)
     {
     {
-        tra.GetComponent<Canvas>().overrideSorting = false;
-        tra.GetComponent<GraphicRaycaster>().enabled = false;
+        Destroy(tra.GetComponent<GraphicRaycaster>());
+        Destroy(tra.GetComponent<Canvas>());
 
 
-        HighLightList.Remove(tra.GetComponent<Canvas>());
+        HighLightList.Remove(tra);
 
 
         if (hideArrow)
         if (hideArrow)
         {
         {
@@ -160,19 +198,12 @@ public class Tutorial : Regist, IPointerClickHandler
 
 
         Arrow.position = pos;
         Arrow.position = pos;
         Arrow.right = pointPos - Arrow.position;
         Arrow.right = pointPos - Arrow.position;
-
-        Arrow.TweenForCG();
     }
     }
 
 
     private static void PointScreen(Vector3 pos, Transform tra)
     private static void PointScreen(Vector3 pos, Transform tra)
     {
     {
         Arrow.position = pos;
         Arrow.position = pos;
         Arrow.right = tra.position - Arrow.position;
         Arrow.right = tra.position - Arrow.position;
-
-        Arrow.TweenForCG();
-
-        UIMask = true;
-        ManaReso.Get("N_Mask").TweenConForGra();
     }
     }
 
 
 
 
@@ -205,5 +236,12 @@ public class Tutorial : Regist, IPointerClickHandler
             Player = PlayerPink;
             Player = PlayerPink;
             SelectPlayer = "PlayerPink";
             SelectPlayer = "PlayerPink";
         }
         }
+        else if (eventData.rawPointerPress.name == "TutorialCollider")
+        {
+            if (ManaTutorial.TutorialIndex == 4)
+            {
+                ManaTutorial.EndStep4();
+            }
+        }
     }
     }
 }
 }

+ 91 - 1
Assets/Script/Tool/Anim/Tween.cs

@@ -21,13 +21,16 @@ public abstract class Tween
     protected bool _InOrigin;
     protected bool _InOrigin;
     protected bool _InDestination;
     protected bool _InDestination;
 
 
+    public bool CG;
     public bool InForward;
     public bool InForward;
     public bool InBackward;
     public bool InBackward;
+    public Component Component;
     public UnityAction OnForwardStart;
     public UnityAction OnForwardStart;
     public UnityAction OnForwardFinish;
     public UnityAction OnForwardFinish;
     public UnityAction OnBackwardStart;
     public UnityAction OnBackwardStart;
     public UnityAction OnBackwardFinish;
     public UnityAction OnBackwardFinish;
-
+    public CanvasGroup CanvasGroup;
+    
     public float Duration;
     public float Duration;
 
 
     protected float Timer;
     protected float Timer;
@@ -38,6 +41,18 @@ public abstract class Tween
     public abstract bool DoBackward();
     public abstract bool DoBackward();
 
 
 
 
+    protected Tween(bool cg, Component comp)
+    {
+        CG = cg;
+        Component = comp;
+
+        if (cg)
+        {
+            CanvasGroup = comp.GetComponent<CanvasGroup>();
+        }
+    }
+
+
     public void ConfineForward()
     public void ConfineForward()
     {
     {
         if (InOrigin)
         if (InOrigin)
@@ -58,12 +73,19 @@ public abstract class Tween
     public virtual void StartForward()
     public virtual void StartForward()
     {
     {
         InForward = true;
         InForward = true;
+        
+        Component.SetActive(true);
 
 
         if (OnForwardStart != null)
         if (OnForwardStart != null)
         {
         {
             OnForwardStart.Invoke();
             OnForwardStart.Invoke();
         }
         }
 
 
+        if (CG)
+        {
+            CanvasGroup.interactable = false;
+        }
+
         ManaAnim.TweenForList.Add(this);
         ManaAnim.TweenForList.Add(this);
         ManaAnim.TweenBacList.Remove(this);
         ManaAnim.TweenBacList.Remove(this);
     }
     }
@@ -72,16 +94,44 @@ public abstract class Tween
     {
     {
         InBackward = true;
         InBackward = true;
 
 
+        Component.SetActive(true);
+
         if (OnBackwardStart != null)
         if (OnBackwardStart != null)
         {
         {
             OnBackwardStart.Invoke();
             OnBackwardStart.Invoke();
         }
         }
 
 
+        if (CG)
+        {
+            CanvasGroup.interactable = false;
+        }
+
         ManaAnim.TweenForList.Remove(this);
         ManaAnim.TweenForList.Remove(this);
         ManaAnim.TweenBacList.Add(this);
         ManaAnim.TweenBacList.Add(this);
     }
     }
 
 
 
 
+    protected void FinishForward()
+    {
+        Component.SetActive(DestActive);
+
+        if (CG)
+        {
+            CanvasGroup.interactable = DestActive;
+        }
+    }
+
+    protected void FinishBackward()
+    {
+        Component.SetActive(OriginActive);
+
+        if (CG)
+        {
+            CanvasGroup.interactable = OriginActive;
+        }
+    }
+
+
     public void PushEvent(EventType type, UnityAction action)
     public void PushEvent(EventType type, UnityAction action)
     {
     {
         if (type == EventType.ForwardStart)
         if (type == EventType.ForwardStart)
@@ -141,4 +191,44 @@ public abstract class Tween
             OnBackwardFinish += action;
             OnBackwardFinish += action;
         }
         }
     }
     }
+
+    public void PushEventOnetime(EventType type, UnityAction action)
+    {
+        if (type == EventType.ForwardStart)
+        {
+            action += () =>
+            {
+                OnForwardStart -= action;
+            };
+
+            OnForwardStart = action + OnForwardStart;
+        }
+        else if (type == EventType.ForwardFinish)
+        {
+            action += () =>
+            {
+                OnForwardFinish -= action;
+            };
+
+            OnForwardFinish = action + OnForwardFinish;
+        }
+        else if (type == EventType.BackwardStart)
+        {
+            action += () =>
+            {
+                OnBackwardStart -= action;
+            };
+
+            OnBackwardStart = action + OnBackwardStart;
+        }
+        else if (type == EventType.BackwardFinish)
+        {
+            action += () =>
+            {
+                OnBackwardFinish -= action;
+            };
+
+            OnBackwardFinish = action + OnBackwardFinish;
+        }
+    }
 }
 }

+ 11 - 1
Assets/Script/Tool/Anim/TweenAudio.cs

@@ -29,6 +29,8 @@ public class TweenAudio : Tween
             if (_InOrigin)
             if (_InOrigin)
             {
             {
                 Target.volume = Origin;
                 Target.volume = Origin;
+
+                FinishBackward();
             }
             }
         }
         }
     }
     }
@@ -55,6 +57,8 @@ public class TweenAudio : Tween
             if (_InDestination)
             if (_InDestination)
             {
             {
                 Target.volume = Destination;
                 Target.volume = Destination;
+
+                FinishForward();
             }
             }
         }
         }
     }
     }
@@ -67,7 +71,7 @@ public class TweenAudio : Tween
 
 
     #endregion
     #endregion
 
 
-    public TweenAudio(AudioSource target, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve)
+    public TweenAudio(AudioSource target, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false) : base(cg, target)
     {
     {
         Func = ManaAnim.CurveFuncDicF[curve];
         Func = ManaAnim.CurveFuncDicF[curve];
         Target = target;
         Target = target;
@@ -79,6 +83,8 @@ public class TweenAudio : Tween
         Origin = origin;
         Origin = origin;
         Duration = duration;
         Duration = duration;
         Destination = destination;
         Destination = destination;
+        DestActive = destActive;
+        OriginActive = originActive;
     }
     }
 
 
 
 
@@ -116,6 +122,8 @@ public class TweenAudio : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishForward();
+
             Timer = 0;
             Timer = 0;
 
 
             InForward = false;
             InForward = false;
@@ -144,6 +152,8 @@ public class TweenAudio : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishBackward();
+
             Timer = 0;
             Timer = 0;
 
 
             InBackward = false;
             InBackward = false;

+ 9 - 11
Assets/Script/Tool/Anim/TweenCG.cs

@@ -29,8 +29,8 @@ public class TweenCG : Tween
             if (_InOrigin)
             if (_InOrigin)
             {
             {
                 Target.alpha = Origin;
                 Target.alpha = Origin;
-                Target.SetActive(OriginActive);
-                Target.interactable = OriginActive;
+
+                FinishBackward();
             }
             }
         }
         }
     }
     }
@@ -57,8 +57,8 @@ public class TweenCG : Tween
             if (_InDestination)
             if (_InDestination)
             {
             {
                 Target.alpha = Destination;
                 Target.alpha = Destination;
-                Target.SetActive(DestActive);
-                Target.interactable = DestActive;
+
+                FinishForward();
             }
             }
         }
         }
     }
     }
@@ -71,7 +71,7 @@ public class TweenCG : Tween
 
 
     #endregion
     #endregion
 
 
-    public TweenCG(CanvasGroup target, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve)
+    public TweenCG(CanvasGroup target, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve) : base(true, target)
     {
     {
         Func = ManaAnim.CurveFuncDicF[curve];
         Func = ManaAnim.CurveFuncDicF[curve];
         Target = target;
         Target = target;
@@ -91,9 +91,6 @@ public class TweenCG : Tween
     {
     {
         base.StartForward();
         base.StartForward();
 
 
-        Target.SetActive(true);
-        Target.interactable = false;
-
         if (InBackward)
         if (InBackward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -108,9 +105,6 @@ public class TweenCG : Tween
     {
     {
         base.StartBackward();
         base.StartBackward();
 
 
-        Target.SetActive(true);
-        Target.interactable = false;
-
         if (InForward)
         if (InForward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -127,6 +121,8 @@ public class TweenCG : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishForward();
+
             Timer = 0;
             Timer = 0;
 
 
             InForward = false;
             InForward = false;
@@ -155,6 +151,8 @@ public class TweenCG : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishBackward();
+
             Timer = 0;
             Timer = 0;
 
 
             InBackward = false;
             InBackward = false;

+ 9 - 7
Assets/Script/Tool/Anim/TweenGra.cs

@@ -30,7 +30,8 @@ public class TweenGra : Tween
             if (_InOrigin)
             if (_InOrigin)
             {
             {
                 Target.color = Origin;
                 Target.color = Origin;
-                Target.SetActive(OriginActive);
+
+                FinishBackward();
             }
             }
         }
         }
     }
     }
@@ -57,7 +58,8 @@ public class TweenGra : Tween
             if (_InDestination)
             if (_InDestination)
             {
             {
                 Target.color = Destination;
                 Target.color = Destination;
-                Target.SetActive(DestActive);
+
+                FinishForward();
             }
             }
         }
         }
     }
     }
@@ -70,7 +72,7 @@ public class TweenGra : Tween
     
     
     #endregion
     #endregion
 
 
-    public TweenGra(Graphic target, Color origin, Color destination, float duration, bool originActive, bool destActive, Curve curve)
+    public TweenGra(Graphic target, Color origin, Color destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false) : base(cg, target)
     {
     {
         Func = ManaAnim.CurveFuncDicC[curve];
         Func = ManaAnim.CurveFuncDicC[curve];
         Target = target;
         Target = target;
@@ -90,8 +92,6 @@ public class TweenGra : Tween
     {
     {
         base.StartForward();
         base.StartForward();
 
 
-        Target.SetActive(true);
-
         if (InBackward)
         if (InBackward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -106,8 +106,6 @@ public class TweenGra : Tween
     {
     {
         base.StartBackward();
         base.StartBackward();
 
 
-        Target.SetActive(true);
-
         if (InForward)
         if (InForward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -124,6 +122,8 @@ public class TweenGra : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishForward();
+
             Timer = 0;
             Timer = 0;
 
 
             InForward = false;
             InForward = false;
@@ -152,6 +152,8 @@ public class TweenGra : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishBackward();
+
             Timer = 0;
             Timer = 0;
 
 
             InBackward = false;
             InBackward = false;

+ 11 - 14
Assets/Script/Tool/Anim/TweenNumber.cs

@@ -31,7 +31,8 @@ public class TweenNumber : Tween
             if (_InOrigin)
             if (_InOrigin)
             {
             {
                 Target.text = Origin.ToString();
                 Target.text = Origin.ToString();
-                Target.SetActive(OriginActive);
+
+                FinishBackward();
             }
             }
         }
         }
     }
     }
@@ -59,7 +60,7 @@ public class TweenNumber : Tween
             {
             {
                 Target.text = Destination.ToString();
                 Target.text = Destination.ToString();
 
 
-                Target.SetActive(DestActive);
+                FinishForward();
             }
             }
         }
         }
     }
     }
@@ -73,7 +74,7 @@ public class TweenNumber : Tween
 
 
     #endregion
     #endregion
 
 
-    public TweenNumber(Text target, int origin, int destination, float duration, bool originActive, bool destActive, Curve curve)
+    public TweenNumber(Text target, int origin, int destination, float duration, bool originActive, bool destActive, Curve curve, bool cg=false) : base(cg,target)
     {
     {
         Func = ManaAnim.CurveFuncDicF[curve];
         Func = ManaAnim.CurveFuncDicF[curve];
         Target = target;
         Target = target;
@@ -83,15 +84,7 @@ public class TweenNumber : Tween
 
 
         Delta = destination - origin;
         Delta = destination - origin;
         Origin = origin;
         Origin = origin;
-
-        if (origin == destination)
-        {
-            Duration = 0;
-        }
-        else
-        {
-            Duration = duration;
-        }
+        Duration = duration;
 
 
         DestActive = destActive;
         DestActive = destActive;
         Destination = destination;
         Destination = destination;
@@ -101,7 +94,7 @@ public class TweenNumber : Tween
     public override void StartForward()
     public override void StartForward()
     {
     {
         base.StartForward();
         base.StartForward();
-        Target.SetActive(true);
+
         if (InBackward)
         if (InBackward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -115,7 +108,7 @@ public class TweenNumber : Tween
     public override void StartBackward()
     public override void StartBackward()
     {
     {
         base.StartBackward();
         base.StartBackward();
-        Target.SetActive(true);
+
         if (InForward)
         if (InForward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -132,6 +125,8 @@ public class TweenNumber : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishForward();
+
             Timer = 0;
             Timer = 0;
 
 
             InForward = false;
             InForward = false;
@@ -160,6 +155,8 @@ public class TweenNumber : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishBackward();
+
             Timer = 0;
             Timer = 0;
 
 
             InBackward = false;
             InBackward = false;

+ 7 - 24
Assets/Script/Tool/Anim/TweenRect.cs

@@ -29,12 +29,7 @@ public class TweenRect : Tween
             {
             {
                 Target.sizeDelta = Origin;
                 Target.sizeDelta = Origin;
 
 
-                Target.SetActive(OriginActive);
-
-                if (CG != null)
-                {
-                    CG.interactable = OriginActive;
-                }
+                FinishBackward();
             }
             }
         }
         }
     }
     }
@@ -62,12 +57,7 @@ public class TweenRect : Tween
             {
             {
                 Target.sizeDelta = Destination;
                 Target.sizeDelta = Destination;
 
 
-                Target.SetActive(DestActive);
-
-                if (CG != null)
-                {
-                    CG.interactable = DestActive;
-                }
+                FinishForward();
             }
             }
         }
         }
     }
     }
@@ -75,13 +65,12 @@ public class TweenRect : Tween
     protected Vector2 Delta;
     protected Vector2 Delta;
     protected Vector2 Origin;
     protected Vector2 Origin;
     protected Vector2 Destination;
     protected Vector2 Destination;
-    protected CanvasGroup CG;
     protected RectTransform Target;
     protected RectTransform Target;
     protected CurveFunctionV Func;
     protected CurveFunctionV Func;
 
 
     #endregion
     #endregion
 
 
-    public TweenRect(RectTransform target, Vector2 origin, Vector2 destination, float duration, bool originActive, bool destActive, Curve curve)
+    public TweenRect(RectTransform target, Vector2 origin, Vector2 destination, float duration, bool originActive, bool destActive, Curve curve,bool cg=false) : base(cg,target)
     {
     {
         CG = target.GetComponent<CanvasGroup>();
         CG = target.GetComponent<CanvasGroup>();
         Func = ManaAnim.CurveFuncDicV[curve];
         Func = ManaAnim.CurveFuncDicV[curve];
@@ -101,12 +90,7 @@ public class TweenRect : Tween
     public override void StartForward()
     public override void StartForward()
     {
     {
         base.StartForward();
         base.StartForward();
-        Target.SetActive(true);
 
 
-        if (CG != null)
-        {
-            CG.interactable = false;
-        }
         if (InBackward)
         if (InBackward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -120,12 +104,7 @@ public class TweenRect : Tween
     public override void StartBackward()
     public override void StartBackward()
     {
     {
         base.StartBackward();
         base.StartBackward();
-        Target.SetActive(true);
 
 
-        if (CG != null)
-        {
-            CG.interactable = false;
-        }
         if (InForward)
         if (InForward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -142,6 +121,8 @@ public class TweenRect : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishForward();
+
             Timer = 0;
             Timer = 0;
 
 
             InForward = false;
             InForward = false;
@@ -170,6 +151,8 @@ public class TweenRect : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishBackward();
+
             Timer = 0;
             Timer = 0;
 
 
             InBackward = false;
             InBackward = false;

+ 7 - 34
Assets/Script/Tool/Anim/TweenScale.cs

@@ -30,12 +30,7 @@ public class TweenScale : Tween
             {
             {
                 Target.localScale = Origin;
                 Target.localScale = Origin;
 
 
-                Target.SetActive(OriginActive);
-
-                if (CG != null)
-                {
-                    CG.interactable = OriginActive;
-                }
+                FinishBackward();
             }
             }
         }
         }
     }
     }
@@ -63,12 +58,7 @@ public class TweenScale : Tween
             {
             {
                 Target.localScale = Destination;
                 Target.localScale = Destination;
 
 
-                Target.SetActive(DestActive);
-
-                if (CG != null)
-                {
-                    CG.interactable = DestActive;
-                }
+                FinishForward();
             }
             }
         }
         }
     }
     }
@@ -77,12 +67,11 @@ public class TweenScale : Tween
     public Vector3 Origin;
     public Vector3 Origin;
     public Vector3 Destination;
     public Vector3 Destination;
     public Transform Target;
     public Transform Target;
-    public CanvasGroup CG;
     public CurveFunctionV Func;
     public CurveFunctionV Func;
 
 
     #endregion
     #endregion
 
 
-    public TweenScale(Transform target, Vector3 origin, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve)
+    public TweenScale(Transform target, Vector3 origin, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve,bool cg = false) : base(cg,target)
     {
     {
         CG = target.GetComponent<CanvasGroup>();
         CG = target.GetComponent<CanvasGroup>();
         Func = ManaAnim.CurveFuncDicV[curve];
         Func = ManaAnim.CurveFuncDicV[curve];
@@ -103,12 +92,7 @@ public class TweenScale : Tween
     public override void StartForward()
     public override void StartForward()
     {
     {
         base.StartForward();
         base.StartForward();
-        Target.SetActive(true);
 
 
-        if (CG != null)
-        {
-            CG.interactable = false;
-        }
         if (InBackward)
         if (InBackward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -122,12 +106,7 @@ public class TweenScale : Tween
     public override void StartBackward()
     public override void StartBackward()
     {
     {
         base.StartBackward();
         base.StartBackward();
-        Target.SetActive(true);
 
 
-        if (CG != null)
-        {
-            CG.interactable = false;
-        }
         if (InForward)
         if (InForward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -144,16 +123,13 @@ public class TweenScale : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishForward();
+
             Timer = 0;
             Timer = 0;
 
 
             InForward = false;
             InForward = false;
             InDestination = true;
             InDestination = true;
 
 
-            if (CG != null)
-            {
-                CG.interactable = DestActive;
-            }
-
             if (OnForwardFinish != null)
             if (OnForwardFinish != null)
             {
             {
                 OnForwardFinish.Invoke();
                 OnForwardFinish.Invoke();
@@ -177,16 +153,13 @@ public class TweenScale : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishBackward();
+
             Timer = 0;
             Timer = 0;
 
 
             InBackward = false;
             InBackward = false;
             InOrigin = true;
             InOrigin = true;
 
 
-            if (CG != null)
-            {
-                CG.interactable = OriginActive;
-            }
-
             if (OnBackwardFinish != null)
             if (OnBackwardFinish != null)
             {
             {
                 OnBackwardFinish.Invoke();
                 OnBackwardFinish.Invoke();

+ 9 - 5
Assets/Script/Tool/Anim/TweenSr.cs

@@ -37,7 +37,7 @@ public class TweenSr : Tween
                     }
                     }
                 }
                 }
 
 
-                Target.SetActive(OriginActive);
+                FinishBackward();
             }
             }
         }
         }
     }
     }
@@ -73,7 +73,7 @@ public class TweenSr : Tween
                     }
                     }
                 }
                 }
 
 
-                Target.SetActive(DestActive);
+                FinishForward();
             }
             }
         }
         }
     }
     }
@@ -88,7 +88,7 @@ public class TweenSr : Tween
 
 
     #endregion
     #endregion
 
 
-    public TweenSr(SpriteRenderer target, Color origin, Color destination, float duration, bool group, bool originActive, bool destActive, Curve curve)
+    public TweenSr(SpriteRenderer target, Color origin, Color destination, float duration, bool originActive, bool destActive, Curve curve,bool cg = false,bool group=false) : base(cg,target)
     {
     {
         Func = ManaAnim.CurveFuncDicC[curve];
         Func = ManaAnim.CurveFuncDicC[curve];
         Target = target;
         Target = target;
@@ -108,7 +108,7 @@ public class TweenSr : Tween
     public override void StartForward()
     public override void StartForward()
     {
     {
         base.StartForward();
         base.StartForward();
-        Target.SetActive(true);
+
         if (Group)
         if (Group)
         {
         {
             Targets = Target.GetComponentsInChildren<SpriteRenderer>();
             Targets = Target.GetComponentsInChildren<SpriteRenderer>();
@@ -127,7 +127,7 @@ public class TweenSr : Tween
     public override void StartBackward()
     public override void StartBackward()
     {
     {
         base.StartBackward();
         base.StartBackward();
-        Target.SetActive(true);
+
         if (Group)
         if (Group)
         {
         {
             Targets = Target.GetComponentsInChildren<SpriteRenderer>();
             Targets = Target.GetComponentsInChildren<SpriteRenderer>();
@@ -150,6 +150,8 @@ public class TweenSr : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishForward();
+
             Timer = 0;
             Timer = 0;
 
 
             InForward = false;
             InForward = false;
@@ -186,6 +188,8 @@ public class TweenSr : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishBackward();
+
             Timer = 0;
             Timer = 0;
 
 
             InBackward = false;
             InBackward = false;

+ 11 - 5
Assets/Script/Tool/Anim/TweenText.cs

@@ -30,7 +30,8 @@ public class TweenText : Tween
             if (_InOrigin)
             if (_InOrigin)
             {
             {
                 Target.fontSize = (int)Origin;
                 Target.fontSize = (int)Origin;
-                Target.SetActive(OriginActive);
+
+                FinishBackward();
             }
             }
         }
         }
     }
     }
@@ -57,7 +58,8 @@ public class TweenText : Tween
             if (_InDestination)
             if (_InDestination)
             {
             {
                 Target.fontSize = (int)Destination;
                 Target.fontSize = (int)Destination;
-                Target.SetActive(DestActive);
+
+                FinishForward();
             }
             }
         }
         }
     }
     }
@@ -71,7 +73,7 @@ public class TweenText : Tween
 
 
     #endregion
     #endregion
 
 
-    public TweenText(Text target, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve)
+    public TweenText(Text target, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false) : base(cg, target)
     {
     {
         Func = ManaAnim.CurveFuncDicF[curve];
         Func = ManaAnim.CurveFuncDicF[curve];
         Target = target;
         Target = target;
@@ -90,7 +92,7 @@ public class TweenText : Tween
     public override void StartForward()
     public override void StartForward()
     {
     {
         base.StartForward();
         base.StartForward();
-        Target.SetActive(true);
+
         if (InBackward)
         if (InBackward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -104,7 +106,7 @@ public class TweenText : Tween
     public override void StartBackward()
     public override void StartBackward()
     {
     {
         base.StartBackward();
         base.StartBackward();
-        Target.SetActive(true);
+
         if (InForward)
         if (InForward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -121,6 +123,8 @@ public class TweenText : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishForward();
+
             Timer = 0;
             Timer = 0;
 
 
             InForward = false;
             InForward = false;
@@ -149,6 +153,8 @@ public class TweenText : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishBackward();
+
             Timer = 0;
             Timer = 0;
 
 
             InBackward = false;
             InBackward = false;

+ 7 - 28
Assets/Script/Tool/Anim/TweenVec.cs

@@ -51,12 +51,7 @@ public class TweenVec : Tween
                     Target.position = Origin;
                     Target.position = Origin;
                 }
                 }
 
 
-                Target.SetActive(OriginActive);
-
-                if (CG != null)
-                {
-                    CG.interactable = OriginActive;
-                }
+                FinishBackward();
             }
             }
         }
         }
     }
     }
@@ -105,12 +100,7 @@ public class TweenVec : Tween
                     Target.position = Destination;
                     Target.position = Destination;
                 }
                 }
 
 
-                Target.SetActive(DestActive);
-
-                if (CG != null)
-                {
-                    CG.interactable = DestActive;
-                }
+                FinishForward();
             }
             }
         }
         }
     }
     }
@@ -120,12 +110,11 @@ public class TweenVec : Tween
     protected Vector3 Origin;
     protected Vector3 Origin;
     protected Vector3 Destination;
     protected Vector3 Destination;
     protected Transform Target;
     protected Transform Target;
-    protected CanvasGroup CG;
     protected CurveFunctionV Func;
     protected CurveFunctionV Func;
 
 
     #endregion
     #endregion
 
 
-    public TweenVec(Transform target, Vector3 origin, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve)
+    public TweenVec(Transform target, Vector3 origin, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve, bool cg = false) : base(cg,target)
     {
     {
         CG = target.GetComponent<CanvasGroup>();
         CG = target.GetComponent<CanvasGroup>();
         Func = ManaAnim.CurveFuncDicV[curve];
         Func = ManaAnim.CurveFuncDicV[curve];
@@ -148,13 +137,6 @@ public class TweenVec : Tween
     {
     {
         base.StartForward();
         base.StartForward();
 
 
-        Target.SetActive(true);
-
-        if (CG != null)
-        {
-            CG.interactable = false;
-        }
-
         if (InBackward)
         if (InBackward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -176,13 +158,6 @@ public class TweenVec : Tween
     {
     {
         base.StartBackward();
         base.StartBackward();
 
 
-        Target.SetActive(true);
-
-        if (CG != null)
-        {
-            CG.interactable = false;
-        }
-
         if (InForward)
         if (InForward)
         {
         {
             Timer = Duration - Timer;
             Timer = Duration - Timer;
@@ -207,6 +182,8 @@ public class TweenVec : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishForward();
+
             Timer = 0;
             Timer = 0;
 
 
             InForward = false;
             InForward = false;
@@ -242,6 +219,8 @@ public class TweenVec : Tween
 
 
         if (Timer > Duration)
         if (Timer > Duration)
         {
         {
+            FinishBackward();
+
             Timer = 0;
             Timer = 0;
 
 
             InBackward = false;
             InBackward = false;

+ 82 - 0
Assets/Script/Tool/Anim/Zoom2D.cs

@@ -0,0 +1,82 @@
+using UnityEngine;
+
+using System.Collections;
+
+public class Zoom2D : Move
+{
+    #region 变量
+
+    public float Delta;
+    public float Timer;
+    public float Origin;
+    public float Duration;
+    public float Destination;
+    public Vector3 OriginVec;
+    public Camera Camera;
+    public Transform Target;
+    public CurveFunctionF Func;
+
+    #endregion
+
+    public Zoom2D(Camera camera)
+    {
+        Camera = camera;
+    }
+
+    public override bool Do()
+    {
+        Timer += Time.fixedDeltaTime;
+
+        if (Timer > Duration)
+        {
+            Timer = 0;
+
+            Camera.orthographicSize = Destination;
+
+            ManaAnim.MoveList.Remove(this);
+
+            return true;
+        }
+        else
+        {
+            Camera.orthographicSize = Func(Timer, Duration, Origin, Delta);
+
+            return false;
+        }
+    }
+
+    public void StartZoom(float origin, float destination, float duration, float stay, Transform target, Curve curve)
+    {
+        Origin = origin;
+        Target = target;
+        Duration = duration;
+        Destination = destination;
+
+        Func = ManaAnim.CurveFuncDicF[curve];
+        Delta = destination - origin;
+        OriginVec = Camera.transform.position;
+
+        ManaAnim.MoveList.Remove(this);
+        ManaAnim.MoveList.Add(this);
+
+        Move move = Camera.Move2D(Target.position, duration, false, curve);
+
+        move.OnForwardFinish = () =>
+        {
+            Auxiliary.Instance.DelayCall
+            (
+                () =>
+                {
+                    Delta = origin - destination;
+                    Origin = destination;
+                    Destination = origin;
+
+                    ManaAnim.MoveList.Add(this);
+
+                    Camera.Move2D(OriginVec, duration, false, curve);
+                },
+                stay
+            );
+        };
+    }
+}

+ 12 - 0
Assets/Script/Tool/Anim/Zoom2D.cs.meta

@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 856165bdd4f6d3d4ebc1213ce1a9cd25
+timeCreated: 1492085610
+licenseType: Pro
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 70 - 14
Assets/Script/Tool/Data.cs

@@ -115,6 +115,16 @@ public class Data
 
 
     #endregion
     #endregion
 
 
+    public static void SaveXml()
+    {
+        StreamWriter sw = new StreamWriter(Application.persistentDataPath + "/PlayerConfig.xml");
+
+        sw.Write(PlayerDoc.OuterXml);
+
+        sw.Close();
+    }
+
+
     private static void SaveSkillList()
     private static void SaveSkillList()
     {
     {
         XmlNode xmlNode;
         XmlNode xmlNode;
@@ -319,11 +329,7 @@ public class Data
         SaveCommon();
         SaveCommon();
         SaveFlowerList();
         SaveFlowerList();
 
 
-        StreamWriter sw = new StreamWriter(Application.persistentDataPath + "/PlayerConfig.xml");
-
-        sw.Write(PlayerDoc.OuterXml);
-
-        sw.Close();
+        SaveXml();
     }
     }
 
 
 
 
@@ -485,6 +491,8 @@ public class Data
         PlayerNode.SelectSingleNode("CircleTimer").Attributes[0].Value = "10";
         PlayerNode.SelectSingleNode("CircleTimer").Attributes[0].Value = "10";
         PlayerNode.SelectSingleNode("MiniGameIndex").Attributes[0].Value = "0";
         PlayerNode.SelectSingleNode("MiniGameIndex").Attributes[0].Value = "0";
         PlayerNode.SelectSingleNode("Player").Attributes[0].Value = "PlayerBlond";
         PlayerNode.SelectSingleNode("Player").Attributes[0].Value = "PlayerBlond";
+        PlayerNode.SelectSingleNode("Tutorial").Attributes[0].Value = "1";
+        PlayerNode.SelectSingleNode("TutorialIndex").Attributes[0].Value = "1";
     }
     }
 
 
     private static void ResetFlowerList()
     private static void ResetFlowerList()
@@ -502,35 +510,83 @@ public class Data
         ResetCommon();
         ResetCommon();
         ResetFlowerList();
         ResetFlowerList();
 
 
-        StreamWriter sw = new StreamWriter(Application.persistentDataPath + "/PlayerConfig.xml");
-
-        sw.Write(PlayerDoc.OuterXml);
-
-        sw.Close();
+        SaveXml();
     }
     }
 
 
 
 
-    public static int PlayerInt(string node)
+    public static int GetPlayerInt(string node)
     {
     {
         return int.Parse(PlayerNode.SelectSingleNode(node).Attributes[0].Value);
         return int.Parse(PlayerNode.SelectSingleNode(node).Attributes[0].Value);
     }
     }
 
 
-    public static bool PlayerBool(string node)
+    public static bool GetPlayerBool(string node)
     {
     {
         return Convert.ToBoolean(int.Parse(PlayerNode.SelectSingleNode(node).Attributes[0].Value));
         return Convert.ToBoolean(int.Parse(PlayerNode.SelectSingleNode(node).Attributes[0].Value));
     }
     }
 
 
-    public static float PlayerFloat(string node)
+    public static float GetPlayerFloat(string node)
     {
     {
         return float.Parse(PlayerNode.SelectSingleNode(node).Attributes[0].Value);
         return float.Parse(PlayerNode.SelectSingleNode(node).Attributes[0].Value);
     }
     }
 
 
-    public static double PlayerDouble(string node)
+    public static string GetPlayerString(string node)
+    {
+        return PlayerNode.SelectSingleNode(node).Attributes[0].Value;
+    }
+
+    public static double GetPlayerDouble(string node)
     {
     {
         return double.Parse(PlayerNode.SelectSingleNode(node).Attributes[0].Value);
         return double.Parse(PlayerNode.SelectSingleNode(node).Attributes[0].Value);
     }
     }
 
 
 
 
+    public static void SavePlayerInt(string node, int value)
+    {
+        PlayerNode.SelectSingleNode(node).Attributes[0].Value = value.ToString();
+
+        SaveXml();
+    }
+
+    public static void SavePlayerBool(string node, bool value)
+    {
+        string str;
+
+        if (value)
+        {
+            str = "1";
+        }
+        else
+        {
+            str = "0";
+        }
+
+        PlayerNode.SelectSingleNode(node).Attributes[0].Value = str;
+
+        SaveXml();
+    }
+
+    public static void SavePlayerFloat(string node, float value)
+    {
+        PlayerNode.SelectSingleNode(node).Attributes[0].Value = value.ToString();
+
+        SaveXml();
+    }
+
+    public static void SavePlayerString(string node, string value)
+    {
+        PlayerNode.SelectSingleNode(node).Attributes[0].Value = value;
+
+        SaveXml();
+    }
+
+    public static void SavePlayerDouble(string node, double value)
+    {
+        PlayerNode.SelectSingleNode(node).Attributes[0].Value = value.ToString();
+
+        SaveXml();
+    }
+
+
     public static List<int> GetFlowerList()
     public static List<int> GetFlowerList()
     {
     {
         List<int> list = new List<int>();
         List<int> list = new List<int>();

+ 64 - 44
Assets/Script/Tool/Extension.cs

@@ -71,6 +71,16 @@ public static class Extension
         return ManaAnim.Move3D(comp.transform, destination, duration, local, curve);
         return ManaAnim.Move3D(comp.transform, destination, duration, local, curve);
     }
     }
 
 
+    public static Zoom2D Zoom2D(Transform target, float origin, float destination, float duration, float stay, Transform targetZoom, Curve curve)
+    {
+        return ManaAnim.Zoom2D(target, origin, destination, duration, stay, targetZoom, curve);
+    }
+
+    public static Zoom2D Zoom2D(Transform target, float destination, float duration, float stay, Transform targetZoom, Curve curve)
+    {
+        return ManaAnim.Zoom2D(target, destination, duration, stay, targetZoom, curve);
+    }
+
 
 
     public static Shake GetShake(this Component comp)
     public static Shake GetShake(this Component comp)
     {
     {
@@ -87,6 +97,11 @@ public static class Extension
         return ManaAnim.GetMove3D(comp.transform);
         return ManaAnim.GetMove3D(comp.transform);
     }
     }
 
 
+    public static Zoom2D GetZoom2D(this Component comp)
+    {
+        return ManaAnim.GetZoom2D(comp.transform);
+    }
+
 
 
     public static Shake CreateShake(this Component comp)
     public static Shake CreateShake(this Component comp)
     {
     {
@@ -103,6 +118,11 @@ public static class Extension
         return ManaAnim.CreateMove3D(comp.transform);
         return ManaAnim.CreateMove3D(comp.transform);
     }
     }
 
 
+    public static Zoom2D CreateZoom2D(this Component comp)
+    {
+        return ManaAnim.CreateZoom2D(comp.transform);
+    }
+
     #endregion
     #endregion
 
 
     #region Alpha
     #region Alpha
@@ -424,24 +444,24 @@ public static class Extension
     }
     }
 
 
 
 
-    public static TweenSr CreateTweenSr(this Component comp, float origin, float destination, float duration, bool group, bool originActive, bool destActive, Curve curve)
+    public static TweenSr CreateTweenSr(this Component comp, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false, bool group = false)
     {
     {
-        return ManaAnim.CreateTweenSr(comp.transform, origin, destination, duration, group, originActive, destActive, curve);
+        return ManaAnim.CreateTweenSr(comp.transform, origin, destination, duration, originActive, destActive, curve, cg, group);
     }
     }
 
 
-    public static TweenSr CreateTweenSr(this Component comp, float destination, float duration, bool group, bool originActive, bool destActive, Curve curve)
+    public static TweenSr CreateTweenSr(this Component comp, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false, bool group = false)
     {
     {
-        return ManaAnim.CreateTweenSr(comp.transform, destination, duration, group, originActive, destActive, curve);
+        return ManaAnim.CreateTweenSr(comp.transform, destination, duration, originActive, destActive, curve, cg, group);
     }
     }
 
 
-    public static TweenSr CreateTweenSr(this Component comp, Color origin, Color destination, float duration, bool group, bool originActive, bool destActive, Curve curve)
+    public static TweenSr CreateTweenSr(this Component comp, Color origin, Color destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false, bool group = false)
     {
     {
-        return ManaAnim.CreateTweenSr(comp.transform, origin, destination, duration, group, originActive, destActive, curve);
+        return ManaAnim.CreateTweenSr(comp.transform, origin, destination, duration, originActive, destActive, curve, cg, group);
     }
     }
 
 
-    public static TweenSr CreateTweenSr(this Component comp, Color destination, float duration, bool group, bool originActive, bool destActive, Curve curve)
+    public static TweenSr CreateTweenSr(this Component comp, Color destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false, bool group = false)
     {
     {
-        return ManaAnim.CreateTweenSr(comp.transform, destination, duration, group, originActive, destActive, curve);
+        return ManaAnim.CreateTweenSr(comp.transform, destination, duration, originActive, destActive, curve, cg, group);
     }
     }
 
 
     public static TweenCG CreateTweenCG(this Component comp, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve)
     public static TweenCG CreateTweenCG(this Component comp, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve)
@@ -454,94 +474,94 @@ public static class Extension
         return ManaAnim.CreateTweenCG(comp.transform, destination, duration, originActive, destActive, curve);
         return ManaAnim.CreateTweenCG(comp.transform, destination, duration, originActive, destActive, curve);
     }
     }
 
 
-    public static TweenGra CreateTweenGra(this Component comp, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenGra CreateTweenGra(this Component comp, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenGra(comp.transform, origin, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenGra(comp.transform, origin, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenGra CreateTweenGra(this Component comp, float destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenGra CreateTweenGra(this Component comp, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenGra(comp.transform, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenGra(comp.transform, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenGra CreateTweenGra(this Component comp, Color origin, Color destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenGra CreateTweenGra(this Component comp, Color origin, Color destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenGra(comp.transform, origin, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenGra(comp.transform, origin, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenGra CreateTweenGra(this Component comp, Color destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenGra CreateTweenGra(this Component comp, Color destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenGra(comp.transform, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenGra(comp.transform, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenVec CreateTweenVec2D(this Component comp, Vector3 origin, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve)
+    public static TweenVec CreateTweenVec2D(this Component comp, Vector3 origin, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenVec2D(comp.transform, origin, destination, duration, local, originActive, destActive, curve);
+        return ManaAnim.CreateTweenVec2D(comp.transform, origin, destination, duration, local, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenVec CreateTweenVec2D(this Component comp, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve)
+    public static TweenVec CreateTweenVec2D(this Component comp, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenVec2D(comp.transform, destination, duration, local, originActive, destActive, curve);
+        return ManaAnim.CreateTweenVec2D(comp.transform, destination, duration, local, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenVec CreateTweenVec3D(this Component comp, Vector3 origin, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve)
+    public static TweenVec CreateTweenVec3D(this Component comp, Vector3 origin, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenVec3D(comp.transform, origin, destination, duration, local, originActive, destActive, curve);
+        return ManaAnim.CreateTweenVec3D(comp.transform, origin, destination, duration, local, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenVec CreateTweenVec3D(this Component comp, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve)
+    public static TweenVec CreateTweenVec3D(this Component comp, Vector3 destination, float duration, bool local, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenVec3D(comp.transform, destination, duration, local, originActive, destActive, curve);
+        return ManaAnim.CreateTweenVec3D(comp.transform, destination, duration, local, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenText CreateTweenText(this Component comp, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenText CreateTweenText(this Component comp, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenText(comp.transform, origin, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenText(comp.transform, origin, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenText CreateTweenText(this Component comp, float destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenText CreateTweenText(this Component comp, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenText(comp.transform, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenText(comp.transform, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenRect CreateTweenRect(this Component comp, Vector3 origin, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenRect CreateTweenRect(this Component comp, Vector3 origin, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenRect(comp.transform, origin, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenRect(comp.transform, origin, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenRect CreateTweenRect(this Component comp, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenRect CreateTweenRect(this Component comp, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenRect(comp.transform, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenRect(comp.transform, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenScale CreateTweenScale(this Component comp, Vector3 origin, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenScale CreateTweenScale(this Component comp, Vector3 origin, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenScale(comp.transform, origin, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenScale(comp.transform, origin, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenScale CreateTweenScale(this Component comp, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenScale CreateTweenScale(this Component comp, Vector3 destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenScale(comp.transform, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenScale(comp.transform, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenAudio CreateTweenAudio(this Component comp, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenAudio CreateTweenAudio(this Component comp, float origin, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenAudio(comp.transform, origin, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenAudio(comp.transform, origin, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenAudio CreateTweenAudio(this Component comp, float destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenAudio CreateTweenAudio(this Component comp, float destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenAudio(comp.transform, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenAudio(comp.transform, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenNumber CreateTweenNumber(this Component comp, int origin, int destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenNumber CreateTweenNumber(this Component comp, int origin, int destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenNumber(comp.transform, origin, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenNumber(comp.transform, origin, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
-    public static TweenNumber CreateTweenNumber(this Component comp, int destination, float duration, bool originActive, bool destActive, Curve curve)
+    public static TweenNumber CreateTweenNumber(this Component comp, int destination, float duration, bool originActive, bool destActive, Curve curve, bool cg = false)
     {
     {
-        return ManaAnim.CreateTweenNumber(comp.transform, destination, duration, originActive, destActive, curve);
+        return ManaAnim.CreateTweenNumber(comp.transform, destination, duration, originActive, destActive, curve, cg);
     }
     }
 
 
     #endregion
     #endregion

+ 10 - 0
Assets/Script/Tool/SceneMask.cs

@@ -8,12 +8,14 @@ public class SceneMask : MonoBehaviour
     #region 变量
     #region 变量
 
 
     public static Material Material;
     public static Material Material;
+    public static BoxCollider2D BoxCollider;
 
 
     #endregion
     #endregion
 
 
     public void Regist()
     public void Regist()
     {
     {
         Material = GetComponent<SpriteRenderer>().material;
         Material = GetComponent<SpriteRenderer>().material;
+        BoxCollider = ManaReso.Get<BoxCollider2D>("TutorialCollider");
     }
     }
 
 
     public static void SetArea(Transform tra, float radiusX, float radiusY)
     public static void SetArea(Transform tra, float radiusX, float radiusY)
@@ -34,6 +36,10 @@ public class SceneMask : MonoBehaviour
             Material.SetFloat("_RadiusY", radiusY);
             Material.SetFloat("_RadiusY", radiusY);
             Material.SetVector("_Center", screenPos);
             Material.SetVector("_Center", screenPos);
 
 
+            BoxCollider.transform.SetX(tra.position.x);
+            BoxCollider.transform.SetY(tra.position.y);
+            BoxCollider.size = new Vector2(36* radiusX, 20*radiusY);
+            
             ManaReso.Get("TutorialMask").TweenConForSr();
             ManaReso.Get("TutorialMask").TweenConForSr();
         }
         }
     }
     }
@@ -52,6 +58,10 @@ public class SceneMask : MonoBehaviour
             Material.SetFloat("_RadiusY", 0);
             Material.SetFloat("_RadiusY", 0);
             Material.SetVector("_Center", new Vector2(0, 0));
             Material.SetVector("_Center", new Vector2(0, 0));
 
 
+            BoxCollider.transform.SetX(0);
+            BoxCollider.transform.SetY(0);
+            BoxCollider.size = new Vector2();
+
             ManaReso.Get("TutorialMask").TweenConBacSr();
             ManaReso.Get("TutorialMask").TweenConBacSr();
         }
         }
     }
     }

+ 1 - 0
MyLovelyGarden.csproj

@@ -144,6 +144,7 @@
     <Compile Include="Assets\Script\Tool\Anim\TweenSr.cs" />
     <Compile Include="Assets\Script\Tool\Anim\TweenSr.cs" />
     <Compile Include="Assets\Script\Tool\Anim\TweenText.cs" />
     <Compile Include="Assets\Script\Tool\Anim\TweenText.cs" />
     <Compile Include="Assets\Script\Tool\Anim\TweenVec.cs" />
     <Compile Include="Assets\Script\Tool\Anim\TweenVec.cs" />
+    <Compile Include="Assets\Script\Tool\Anim\Zoom2D.cs" />
     <Compile Include="Assets\Script\Tool\Auxiliary.cs" />
     <Compile Include="Assets\Script\Tool\Auxiliary.cs" />
     <Compile Include="Assets\Script\Tool\Bundle.cs" />
     <Compile Include="Assets\Script\Tool\Bundle.cs" />
     <Compile Include="Assets\Script\Tool\DashGame\CallBackUtil.cs" />
     <Compile Include="Assets\Script\Tool\DashGame\CallBackUtil.cs" />

+ 13 - 16
MyLovelyGarden.sln

@@ -1,9 +1,9 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2008
-
-Project("{8A8BB0A8-D809-F2DF-89D6-F26151FFF558}") = "MyLovelyGarden", "Assembly-CSharp.csproj", "{21BB93BC-2239-D8F5-1219-201F8DCBAF49}"
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 2015
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyLovelyGarden", "MyLovelyGarden.csproj", "{9F3A3259-D53B-F6C8-8878-C5B99621035A}"
 EndProject
 EndProject
-Project("{8A8BB0A8-D809-F2DF-89D6-F26151FFF558}") = "MyLovelyGarden", "Assembly-CSharp-Editor.csproj", "{A08052E5-32CE-91C0-FF56-C60C901D6BEF}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyLovelyGarden.Editor", "MyLovelyGarden.Editor.csproj", "{B575449E-FD9A-1672-368B-EC1E1252F6E4}"
 EndProject
 EndProject
 Global
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -11,19 +11,16 @@ Global
 		Release|Any CPU = Release|Any CPU
 		Release|Any CPU = Release|Any CPU
 	EndGlobalSection
 	EndGlobalSection
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{21BB93BC-2239-D8F5-1219-201F8DCBAF49}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{21BB93BC-2239-D8F5-1219-201F8DCBAF49}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{21BB93BC-2239-D8F5-1219-201F8DCBAF49}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{21BB93BC-2239-D8F5-1219-201F8DCBAF49}.Release|Any CPU.Build.0 = Release|Any CPU
-		{A08052E5-32CE-91C0-FF56-C60C901D6BEF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{A08052E5-32CE-91C0-FF56-C60C901D6BEF}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{A08052E5-32CE-91C0-FF56-C60C901D6BEF}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{A08052E5-32CE-91C0-FF56-C60C901D6BEF}.Release|Any CPU.Build.0 = Release|Any CPU
+		{9F3A3259-D53B-F6C8-8878-C5B99621035A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{9F3A3259-D53B-F6C8-8878-C5B99621035A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{9F3A3259-D53B-F6C8-8878-C5B99621035A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{9F3A3259-D53B-F6C8-8878-C5B99621035A}.Release|Any CPU.Build.0 = Release|Any CPU
+		{B575449E-FD9A-1672-368B-EC1E1252F6E4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{B575449E-FD9A-1672-368B-EC1E1252F6E4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{B575449E-FD9A-1672-368B-EC1E1252F6E4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{B575449E-FD9A-1672-368B-EC1E1252F6E4}.Release|Any CPU.Build.0 = Release|Any CPU
 	EndGlobalSection
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE
 		HideSolutionNode = FALSE
 	EndGlobalSection
 	EndGlobalSection
-	GlobalSection(MonoDevelopProperties) = preSolution
-		StartupItem = Assembly-CSharp.csproj
-	EndGlobalSection
 EndGlobal
 EndGlobal

+ 2 - 9
ToList.txt

@@ -1,16 +1,9 @@
-小游戏时间(45)
+小游戏持续时间(45)
 
 
 ManaData ManaSkill ManaGarden 种花使用Dic
 ManaData ManaSkill ManaGarden 种花使用Dic
 
 
 
 
-ManaReso中添加获得Tween Move的ShortCut
-
-在Extension中进行委托的Null的检查
-
-自动添加销毁Canvas和GraphicRaycaster
-
-动画(是否影响CanvasGroup)
-
+动画(Move作为所有的基类)
 
 
 切换后台
 切换后台