Pārlūkot izejas kodu

Merge branch 'develop' into ex12-018

x89rt2 2 mēneši atpakaļ
vecāks
revīzija
5bf112893a
100 mainītis faili ar 1125 papildinājumiem un 398 dzēšanām
  1. 3 1
      Assets/AddOn/Shapes2D/Demos/Flappy Shapes/Bird.cs
  2. 2 2
      Assets/CardBaseEntity/BT18/Black/Digimon/BT18_060_P1.asset
  3. 2 2
      Assets/CardBaseEntity/BT20/Black/Digimon/BT20_056_P1.asset
  4. 2 2
      Assets/CardBaseEntity/BT20/Black/Digimon/BT20_056_P2.asset
  5. 2 2
      Assets/CardBaseEntity/BT20/Black/Digimon/BT20_056_P3.asset
  6. 2 2
      Assets/CardBaseEntity/BT20/Black/Digimon/BT20_056_P4.asset
  7. 2 2
      Assets/CardBaseEntity/BT20/Black/Digimon/BT20_056_P5.asset
  8. 1 1
      Assets/CardBaseEntity/BT23/Red/Digimon/BT23_005_P1.asset
  9. 1 1
      Assets/CardBaseEntity/BT25/Purple/Digimon/BT25_079.asset
  10. 2 2
      Assets/CardBaseEntity/BT25/Yellow/Digimon/BT25_044.asset
  11. 2 2
      Assets/CardBaseEntity/BT25/Yellow/Digimon/BT25_044_P1.asset
  12. 621 0
      Assets/Editor/UIDebugTheme.cs
  13. 1 1
      Assets/Editor/UIDebugTheme.cs.meta
  14. 4 3
      Assets/Effect/52SpecialEffectPack/EffectEditor/ShurikenEffectEditor/csShurikenEffectChanger.cs
  15. 1 1
      Assets/Effect/52SpecialEffectPack/EffectEditor/ShurikenEffectEditor/csShurikenEffectEditor.cs
  16. 179 23
      Assets/Prefab/GameplayPanel.prefab
  17. 45 101
      Assets/Scenes/BattleScene.unity
  18. 103 0
      Assets/Scenes/Opening.unity
  19. 2 39
      Assets/Scripts/CardEffect/AD1/Purple/AD1_018.cs
  20. 2 39
      Assets/Scripts/CardEffect/AD1/Yellow/AD1_017.cs
  21. 2 2
      Assets/Scripts/CardEffect/BT1/Blue/BT1_030.cs
  22. 2 2
      Assets/Scripts/CardEffect/BT1/Blue/BT1_035.cs
  23. 1 1
      Assets/Scripts/CardEffect/BT1/Green/BT1_113.cs
  24. 2 2
      Assets/Scripts/CardEffect/BT1/Yellow/BT1_049.cs
  25. 1 1
      Assets/Scripts/CardEffect/BT1/Yellow/BT1_054.cs
  26. 1 1
      Assets/Scripts/CardEffect/BT10/Black/BT10_061.cs
  27. 1 1
      Assets/Scripts/CardEffect/BT10/Black/BT10_066.cs
  28. 2 2
      Assets/Scripts/CardEffect/BT10/Black/BT10_069.cs
  29. 2 2
      Assets/Scripts/CardEffect/BT10/Black/BT10_092.cs
  30. 2 2
      Assets/Scripts/CardEffect/BT10/Blue/BT10_018.cs
  31. 1 1
      Assets/Scripts/CardEffect/BT10/Blue/BT10_024.cs
  32. 2 2
      Assets/Scripts/CardEffect/BT10/Green/BT10_056.cs
  33. 2 2
      Assets/Scripts/CardEffect/BT10/Purple/BT10_078.cs
  34. 2 2
      Assets/Scripts/CardEffect/BT10/Purple/BT10_080.cs
  35. 2 2
      Assets/Scripts/CardEffect/BT10/Purple/BT10_081.cs
  36. 2 2
      Assets/Scripts/CardEffect/BT10/Purple/BT10_083.cs
  37. 0 2
      Assets/Scripts/CardEffect/BT10/Red/BT10_095.cs
  38. 1 1
      Assets/Scripts/CardEffect/BT11/Black/BT11_005.cs
  39. 2 2
      Assets/Scripts/CardEffect/BT11/Black/BT11_071.cs
  40. 2 2
      Assets/Scripts/CardEffect/BT11/Black/BT11_072.cs
  41. 1 1
      Assets/Scripts/CardEffect/BT11/Black/BT11_106.cs
  42. 2 2
      Assets/Scripts/CardEffect/BT11/Blue/BT11_031.cs
  43. 2 2
      Assets/Scripts/CardEffect/BT11/Purple/BT11_079.cs
  44. 2 2
      Assets/Scripts/CardEffect/BT11/Purple/BT11_082.cs
  45. 2 15
      Assets/Scripts/CardEffect/BT11/Purple/BT11_086.cs
  46. 19 17
      Assets/Scripts/CardEffect/BT11/Purple/BT11_088.cs
  47. 2 2
      Assets/Scripts/CardEffect/BT11/Red/BT11_001.cs
  48. 2 2
      Assets/Scripts/CardEffect/BT11/Red/BT11_007.cs
  49. 2 18
      Assets/Scripts/CardEffect/BT11/Red/BT11_009.cs
  50. 2 2
      Assets/Scripts/CardEffect/BT11/Red/BT11_011.cs
  51. 2 2
      Assets/Scripts/CardEffect/BT11/Red/BT11_016.cs
  52. 2 2
      Assets/Scripts/CardEffect/BT11/Yellow/BT11_036.cs
  53. 2 2
      Assets/Scripts/CardEffect/BT11/Yellow/BT11_038.cs
  54. 2 2
      Assets/Scripts/CardEffect/BT11/Yellow/BT11_040.cs
  55. 1 1
      Assets/Scripts/CardEffect/BT12/Black/BT12_063.cs
  56. 1 1
      Assets/Scripts/CardEffect/BT12/Black/BT12_064.cs
  57. 1 1
      Assets/Scripts/CardEffect/BT12/Black/BT12_071.cs
  58. 1 1
      Assets/Scripts/CardEffect/BT12/Blue/BT12_032.cs
  59. 1 1
      Assets/Scripts/CardEffect/BT12/Green/BT12_051.cs
  60. 1 1
      Assets/Scripts/CardEffect/BT12/Green/BT12_054.cs
  61. 1 1
      Assets/Scripts/CardEffect/BT12/Green/BT12_056.cs
  62. 1 1
      Assets/Scripts/CardEffect/BT12/Green/BT12_105.cs
  63. 2 2
      Assets/Scripts/CardEffect/BT12/Purple/BT12_006.cs
  64. 1 1
      Assets/Scripts/CardEffect/BT12/Purple/BT12_077.cs
  65. 1 1
      Assets/Scripts/CardEffect/BT12/Purple/BT12_084.cs
  66. 1 1
      Assets/Scripts/CardEffect/BT12/Purple/BT12_085.cs
  67. 1 1
      Assets/Scripts/CardEffect/BT12/Red/BT12_011.cs
  68. 4 4
      Assets/Scripts/CardEffect/BT12/Red/BT12_012.cs
  69. 8 2
      Assets/Scripts/CardEffect/BT12/Red/BT12_015.cs
  70. 1 1
      Assets/Scripts/CardEffect/BT12/Red/BT12_017.cs
  71. 1 1
      Assets/Scripts/CardEffect/BT12/Yellow/BT12_037.cs
  72. 1 2
      Assets/Scripts/CardEffect/BT12/Yellow/BT12_041.cs
  73. 2 2
      Assets/Scripts/CardEffect/BT12/Yellow/BT12_042.cs
  74. 2 2
      Assets/Scripts/CardEffect/BT13/Black/BT13_061.cs
  75. 2 2
      Assets/Scripts/CardEffect/BT13/Black/BT13_062.cs
  76. 1 1
      Assets/Scripts/CardEffect/BT13/Black/BT13_064.cs
  77. 1 1
      Assets/Scripts/CardEffect/BT13/Black/BT13_065.cs
  78. 1 1
      Assets/Scripts/CardEffect/BT13/Black/BT13_068.cs
  79. 1 1
      Assets/Scripts/CardEffect/BT13/Black/BT13_070.cs
  80. 1 1
      Assets/Scripts/CardEffect/BT13/Black/BT13_073.cs
  81. 1 1
      Assets/Scripts/CardEffect/BT13/Black/BT13_076.cs
  82. 0 2
      Assets/Scripts/CardEffect/BT13/Green/BT13_059.cs
  83. 2 2
      Assets/Scripts/CardEffect/BT13/Purple/BT13_006.cs
  84. 1 1
      Assets/Scripts/CardEffect/BT13/Purple/BT13_078.cs
  85. 2 2
      Assets/Scripts/CardEffect/BT13/Purple/BT13_079.cs
  86. 1 1
      Assets/Scripts/CardEffect/BT13/Purple/BT13_080.cs
  87. 1 1
      Assets/Scripts/CardEffect/BT13/Purple/BT13_081.cs
  88. 2 2
      Assets/Scripts/CardEffect/BT13/Purple/BT13_082.cs
  89. 2 2
      Assets/Scripts/CardEffect/BT13/Purple/BT13_083.cs
  90. 2 2
      Assets/Scripts/CardEffect/BT13/Purple/BT13_085.cs
  91. 1 1
      Assets/Scripts/CardEffect/BT13/Purple/BT13_086.cs
  92. 1 1
      Assets/Scripts/CardEffect/BT13/Purple/BT13_089.cs
  93. 1 1
      Assets/Scripts/CardEffect/BT13/Purple/BT13_091.cs
  94. 2 2
      Assets/Scripts/CardEffect/BT13/Red/BT13_001.cs
  95. 2 2
      Assets/Scripts/CardEffect/BT13/Red/BT13_010.cs
  96. 2 2
      Assets/Scripts/CardEffect/BT13/Red/BT13_011.cs
  97. 2 2
      Assets/Scripts/CardEffect/BT13/Red/BT13_014.cs
  98. 2 2
      Assets/Scripts/CardEffect/BT13/Red/BT13_015.cs
  99. 1 1
      Assets/Scripts/CardEffect/BT13/Red/BT13_094.cs
  100. 2 2
      Assets/Scripts/CardEffect/BT13/White/BT13_093.cs

+ 3 - 1
Assets/AddOn/Shapes2D/Demos/Flappy Shapes/Bird.cs

@@ -4,7 +4,9 @@
 	using System.Collections;
 	using UnityEngine.EventSystems;
 
-	public class Bird : MonoBehaviour {
+    [RequireComponent(typeof(Rigidbody2D))]
+    [RequireComponent(typeof(Animator))]
+    public class Bird : MonoBehaviour {
 
 		Rigidbody2D rb;
 		public float force = 8;

+ 2 - 2
Assets/CardBaseEntity/BT18/Black/Digimon/BT18_060_P1.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:666450b1973e8d7448f37711fb056ffc0574320c2b67be7ec8de5a8813a7e92c
-size 1558
+oid sha256:29523e26bc8011a94c3aa79063c630891cb434d43f808a64f39c5e7e8387a876
+size 1603

+ 2 - 2
Assets/CardBaseEntity/BT20/Black/Digimon/BT20_056_P1.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:95266e4f4b121507ab2c91284a4b0c2b4cb67758056e3d39c303bcdd5bc9b225
-size 1913
+oid sha256:1d0c749c7e392cf7e2fb8fafceaca4592ed06f94839a1089402eedb57d84a4df
+size 1914

+ 2 - 2
Assets/CardBaseEntity/BT20/Black/Digimon/BT20_056_P2.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:d6dbc82b5f739e3af59604b1d7b7ba05fb15e1dc945eb8146668aa410b1a0882
-size 1913
+oid sha256:b0dc782b4d7c8626ea9f1761637d628506cfefd4fc1bde00f27efe0051eadb6f
+size 1914

+ 2 - 2
Assets/CardBaseEntity/BT20/Black/Digimon/BT20_056_P3.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:ba2cb8a609b6c42746a0a691b20e83fd33de28c30dd6c7141a6ec8debc82f54a
-size 1913
+oid sha256:7af3ebef9879a2bc6e59a116dabd4808d7ab74ad8a9af1b9c1ef8de4da790009
+size 1914

+ 2 - 2
Assets/CardBaseEntity/BT20/Black/Digimon/BT20_056_P4.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:cd9a8c9e73f2450af03111a08bb70c643ec4f35edbccc044ef50b07c09b3ffcc
-size 1913
+oid sha256:b89e57b51b412b1e8c0c07be8264435b9d8a27763cf2ab0fc66bb77bdfdc90c9
+size 1914

+ 2 - 2
Assets/CardBaseEntity/BT20/Black/Digimon/BT20_056_P5.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:99c2e62404f5ef712e0539fdbdbb3ad0a072862b559d2408fea0f4a509fba620
-size 1913
+oid sha256:32bd1f90b661515e46af0f7ebb6cc5b6a2bca0770aaa6a1570070b2010475c80
+size 1914

+ 1 - 1
Assets/CardBaseEntity/BT23/Red/Digimon/BT23_005_P1.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:62b5fe0e1ae2cdf9137b518f7bf3f9deea9dcedfe666f8888c9813da88a511a1
+oid sha256:59b5a180f9c8133b7a897fc66b1b7219c9adcd6c206c538a1cac170a0a87329d
 size 1393

+ 1 - 1
Assets/CardBaseEntity/BT25/Purple/Digimon/BT25_079.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:082189309e2373162f3f231c28681061411e94d74b6bc6428cfa40990a47ba68
+oid sha256:e0bd1b3e089585e17e86ca51824c8fb29e17dd64a73002cddf69973e2262c4a3
 size 1286

+ 2 - 2
Assets/CardBaseEntity/BT25/Yellow/Digimon/BT25_044.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:fcc1d5819730979f5b3d8240c48e701b8a29d044a1cf754b1096084757a26770
-size 1806
+oid sha256:55eee0bee2a15fa73cac63d7c79c3f291e01f50aff4a0142c6ff3356da7a88b0
+size 1804

+ 2 - 2
Assets/CardBaseEntity/BT25/Yellow/Digimon/BT25_044_P1.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:81a4c2b1cec0623b966bfa5c4227ee31dcf1db040f6bff96917a5b4d471d601b
-size 1812
+oid sha256:798bfd2bdadface95054c6072350793c0ee1d583dc91f7f69c6975742b8f78cc
+size 1810

+ 621 - 0
Assets/Editor/UIDebugTheme.cs

@@ -0,0 +1,621 @@
+using System.Collections.Generic;
+using TMPro;
+using UnityEditor;
+using UnityEngine;
+using UnityEngine.UI;
+
+[InitializeOnLoad]
+public static class UIDebugTheme
+{
+  private static readonly Color BackgroundColor = new Color(0.11f, 0.15f, 0.25f, 0.90f);
+  private static readonly Color PanelColor = new Color(0.17f, 0.24f, 0.31f, 0.85f);
+  private static readonly Color ButtonColor = new Color(0.16f, 0.50f, 0.73f, 1.00f);
+  private static readonly Color ToggleOnColor = new Color(0.53f, 0.81f, 0.98f, 1.00f); // light blue
+  private static readonly Color ToggleOffColor = new Color(0.10f, 0.22f, 0.40f, 1.00f); // dark blue  
+  private static readonly Color RadioOnColor = new Color(0.15f, 0.85f, 0.55f, 1.00f); // bright green — distinct from all blues  
+  private static readonly Color LeafColor = new Color(0.36f, 0.43f, 0.49f, 1.00f);
+
+  private static readonly Dictionary<int, Color> _originals = new Dictionary<int, Color>();
+  private static readonly Dictionary<Toggle, bool> _lastToggleStates = new Dictionary<Toggle, bool>();
+  private static readonly List<GameObject> _addedLabels = new List<GameObject>();
+  private static readonly Dictionary<int, ColorBlock> _originalBlocks = new Dictionary<int, ColorBlock>();
+  private static readonly Dictionary<int, Selectable.Transition> _originalTransitions = new Dictionary<int, Selectable.Transition>();
+  private static readonly Dictionary<int, Material> _originalMaterials = new Dictionary<int, Material>();
+
+  private static double _nextRescanTime = 0;
+
+  // ColorBlock for regular interactables (buttons etc.). normalColor=white leaves
+  // image.color unmodified in normal state; >1 values lighten on hover/select,
+  // <1 darkens on press.
+  private static readonly ColorBlock ThemedBlock = new ColorBlock
+  {
+    normalColor = Color.white,
+    highlightedColor = new Color(1.20f, 1.20f, 1.20f, 1.0f),
+    pressedColor = new Color(0.65f, 0.65f, 0.65f, 1.0f),
+    selectedColor = new Color(1.15f, 1.15f, 1.15f, 1.0f),
+    disabledColor = new Color(0.50f, 0.50f, 0.50f, 0.5f),
+    colorMultiplier = 1f,
+    fadeDuration = 0.1f,
+  };
+
+  // ColorBlock for input fields. normalColor is light gray so the background is
+  // visible and differs from pure-white text, and selectedColor shows a blue tint
+  // when the field has focus so the user can tell it is active.
+  private static readonly ColorBlock InputFieldBlock = new ColorBlock
+  {
+    normalColor = new Color(0.82f, 0.82f, 0.82f, 1.00f),
+    highlightedColor = new Color(0.90f, 0.90f, 0.90f, 1.00f),
+    pressedColor = new Color(0.60f, 0.60f, 0.60f, 1.00f),
+    selectedColor = new Color(0.65f, 0.83f, 0.98f, 1.00f), // light blue when focused
+    disabledColor = new Color(0.50f, 0.50f, 0.50f, 0.50f),
+    colorMultiplier = 1f,
+    fadeDuration = 0.1f,
+  };
+
+  static UIDebugTheme()
+  {
+    EditorApplication.playModeStateChanged += OnPlayModeStateChanged;
+  }
+
+  static void OnPlayModeStateChanged(PlayModeStateChange state)
+  {
+    switch (state)
+    {
+      case PlayModeStateChange.EnteredPlayMode:
+        ApplyTheme();
+        EditorApplication.update += PollToggleStates;
+        break;
+
+      case PlayModeStateChange.ExitingPlayMode:
+        EditorApplication.update -= PollToggleStates;
+        CleanupToggleTracking();
+        _originals.Clear();
+        _originalBlocks.Clear();
+        _originalTransitions.Clear();
+        _originalMaterials.Clear();
+        break;
+    }
+  }
+
+  static void ApplyTheme()
+  {
+    _originals.Clear();
+
+    var images = Object.FindObjectsOfType<Image>(true);
+    int count = 0;
+
+    foreach (var image in images)
+    {
+      if (!PassesSpriteFilter(image))
+      {
+        continue;
+      }
+
+      int id = image.GetInstanceID();
+      _originals[id] = image.color;
+      image.color = ClassifyColor(image);
+      count++;
+    }
+
+    SetupToggleTracking();
+    AddIconButtonLabels();
+    AddMissingAssetLabels();
+    ApplySelectableColors();
+
+    Debug.Log($"[UIDebugTheme] Applied debug colours to {count} Image component{(count == 1 ? "" : "s")} with missing sprites.");
+  }
+
+  // Returns true for Images that should receive debug theme colours:
+  // sprite must be null AND color must be near-white (or have a direct text child
+  // whose sprite was providing the label background).
+  static bool PassesSpriteFilter(Image image)
+  {
+    if (image.sprite != null) { return false; }
+
+    // Never theme images that live inside a CardImage hierarchy — those are
+    // card art / key-card visuals and must keep their original colours.
+    for (Transform t = image.transform; t != null; t = t.parent)
+    {
+      if (t.name == "CardImage" || t.name == "DetailCard") { return false; }
+    }
+
+    var c = image.color;
+    bool isBlankWhite = c.a >= 0.5f && c.r >= 0.9f && c.g >= 0.9f && c.b >= 0.9f;
+    if (isBlankWhite) { return true; }
+
+    // Non-white but has a direct text child — the sprite was providing the label
+    // background and must be replaced so text remains readable.
+    for (int i = 0; i < image.transform.childCount; i++)
+    {
+      var child = image.transform.GetChild(i);
+      if (child.GetComponent<Text>() != null || child.GetComponent<TextMeshProUGUI>() != null)
+        return true;
+    }
+    return false;
+  }
+
+  static Color ClassifyColor(Image image)
+  {
+    var go = image.gameObject;
+
+    if (go.GetComponent<Button>() != null)
+    {
+      return ButtonColor;
+    }
+
+    Toggle toggleSelf = go.GetComponent<Toggle>();
+    Toggle toggleParent = go.transform.parent != null
+        ? go.transform.parent.GetComponent<Toggle>()
+        : null;
+    Toggle owningToggle = toggleSelf ?? toggleParent;
+    if (owningToggle != null && owningToggle.targetGraphic == image)
+    {
+      Color onColor = owningToggle.group != null ? RadioOnColor : ToggleOnColor;
+      return owningToggle.isOn ? onColor : ToggleOffColor;
+    }
+
+    if (go.GetComponent<Scrollbar>() != null || go.GetComponent<Slider>() != null)
+    {
+      return ButtonColor;
+    }
+
+    var rt = image.rectTransform;
+
+    if (rt.parent != null && rt.parent.GetComponent<Canvas>() != null)
+    {
+      return BackgroundColor;
+    }
+
+    bool isFullStretch =
+        rt.anchorMin == Vector2.zero &&
+        rt.anchorMax == Vector2.one &&
+        rt.offsetMin.sqrMagnitude < 100f &&
+        rt.offsetMax.sqrMagnitude < 100f;
+
+    if (isFullStretch)
+    {
+      return BackgroundColor;
+    }
+
+    var childGraphics = go.GetComponentsInChildren<Graphic>(true);
+    if (childGraphics.Length > 1)
+    {
+      // Distinguish containers (have child Image/RawImage) from labeled badges (text-only children).
+      // Badges like player-number boxes have only a text child and should use ButtonColor.
+      bool hasChildImage = false;
+      foreach (var g in childGraphics)
+      {
+        if (g == image) { continue; }
+        if (g is Image || g is RawImage) { hasChildImage = true; break; }
+      }
+      return hasChildImage ? PanelColor : ButtonColor;
+    }
+
+    return LeafColor;
+  }
+
+  static void SetupToggleTracking()
+  {
+    var toggles = Object.FindObjectsOfType<Toggle>(true);
+    foreach (var toggle in toggles)
+    {
+      if (toggle.targetGraphic is not Image bg)
+      {
+        continue;
+      }
+      // For non-radio (non-group) toggles, skip if the targetGraphic has a valid
+      // sprite — it has a real designed visual and we shouldn't clobber it.
+      // Radio buttons (ToggleGroup members) are always processed so their state
+      // color is enforced even when the sprite reference resolves to an object.
+      if (bg.sprite != null && toggle.group == null)
+      {
+        continue;
+      }
+      if (_lastToggleStates.ContainsKey(toggle))
+      {
+        continue;
+      }
+
+      _lastToggleStates[toggle] = toggle.isOn;
+
+      Color onCol = toggle.group != null ? RadioOnColor : ToggleOnColor;
+      Color stateCol = toggle.isOn ? onCol : ToggleOffColor;
+
+      // Force-color the targetGraphic even if ApplyTheme skipped it (e.g. the
+      // Image had a non-white default color and no text child).
+      int bgId = bg.GetInstanceID();
+      if (!_originals.ContainsKey(bgId)) { _originals[bgId] = bg.color; }
+      bg.color = stateCol;
+
+      // Also color toggle.graphic (the checkmark image). Unity makes the checkmark
+      // visible when isOn=true. If it got classified as BackgroundColor by ApplyTheme
+      // it would overlay the indicator with the wrong color and mask our state color.
+      if (toggle.graphic is Image checkmark && checkmark != bg)
+      {
+        int ckId = checkmark.GetInstanceID();
+        if (!_originals.ContainsKey(ckId)) { _originals[ckId] = checkmark.color; }
+        checkmark.color = stateCol;
+      }
+
+      // Radio buttons express state through color alone —
+      // their sibling text already provides the label. Only non-grouped toggles
+      // get an ON/OFF overlay.
+      if (toggle.group == null)
+      {
+        SetToggleLabel(toggle, toggle.isOn);
+      }
+    }
+  }
+
+  static void AddIconButtonLabels()
+  {
+    var buttons = Object.FindObjectsOfType<Button>(true);
+    foreach (var btn in buttons)
+    {
+      if (btn.targetGraphic is not Image bg)
+      {
+        continue;
+      }
+      if (!_originals.ContainsKey(bg.GetInstanceID()))
+      {
+        continue;
+      }
+      if (bg.transform.Find("UIDebugTheme_IconLabel") != null)
+      {
+        continue;
+      }
+
+      string label = GetIconLabel(btn, bg, bg.rectTransform);
+      if (label == null)
+      {
+        continue;
+      }
+
+      if (btn.GetComponentsInChildren<Button>(true).Length > 1)
+      {
+        continue;
+      }
+
+      // Ensure settings buttons get a recognisable dark background.
+      // Color the full subtree (button + all child Images) AND every ancestor
+      // Image up to the Canvas, regardless of whether they were in _originals.
+      if (label == "config")
+      {
+        foreach (var img in btn.GetComponentsInChildren<Image>(true))
+        {
+          int cid = img.GetInstanceID();
+          if (!_originals.ContainsKey(cid)) { _originals[cid] = img.color; }
+          img.color = ButtonColor;
+        }
+        for (Transform t = btn.transform.parent; t != null; t = t.parent)
+        {
+          if (t.GetComponent<Canvas>() != null) { break; }
+          var parentImg = t.GetComponent<Image>();
+          if (parentImg == null) { continue; }
+          int pid = parentImg.GetInstanceID();
+          if (!_originals.ContainsKey(pid)) { _originals[pid] = parentImg.color; }
+          parentImg.color = ButtonColor;
+        }
+      }
+
+      var labelGO = new GameObject("UIDebugTheme_IconLabel");
+      labelGO.transform.SetParent(bg.transform, false);
+
+      var lrt = labelGO.AddComponent<RectTransform>();
+      lrt.anchorMin = Vector2.zero;
+      lrt.anchorMax = Vector2.one;
+      lrt.offsetMin = Vector2.zero;
+      lrt.offsetMax = Vector2.zero;
+
+      var tmp = labelGO.AddComponent<TextMeshProUGUI>();
+      tmp.text = label;
+      tmp.alignment = TextAlignmentOptions.Center;
+      tmp.color = Color.white;
+      tmp.fontStyle = FontStyles.Bold;
+      tmp.enableAutoSizing = true;
+      tmp.fontSizeMin = 8;
+      tmp.fontSizeMax = 36;
+
+      _addedLabels.Add(labelGO);
+    }
+  }
+
+  // Builds a '>'-joined lowercase path string from root to the button's GO.
+  static string GetButtonPath(Button btn)
+  {
+    var parts = new List<string>();
+    for (Transform t = btn.transform; t != null; t = t.parent)
+    {
+      parts.Add(t.name.ToLowerInvariant());
+    }
+    parts.Reverse();
+    return string.Join(">", parts);
+  }
+
+  // Returns the debug label for an icon-only button, or null to leave it unlabelled.
+  // "config" is matched by a specific container name anywhere in the full hierarchy path
+  //    (no TMP filter — the button may have internal text layers).
+  // "X" is matched by name/anchor but only on buttons with no pre-existing text children
+  //    so we don't overlay a label on top of real button text.
+  static string GetIconLabel(Button btn, Image bg, RectTransform rt)
+  {
+    string path = GetButtonPath(btn);
+
+    // Settings / option icon buttons — match by specific container name in the path.
+    if (path.Contains("optionbutton"))
+    {
+      return "config";
+    }
+
+    // For X labels only operate on buttons with no pre-existing text children,
+    // otherwise we'd overlay the label on real button text.
+    bool hasText = bg.GetComponentInChildren<TextMeshProUGUI>() != null
+                || bg.GetComponentInChildren<Text>() != null;
+    if (hasText)
+    {
+      return null;
+    }
+
+    string selfName = btn.gameObject.name.ToLowerInvariant();
+    string parentName = btn.transform.parent != null ? btn.transform.parent.name.ToLowerInvariant() : "";
+
+    // Deck editor pagination — child GOs named "Left"/"Right" inside the EditDeck panel.
+    if (path.Contains(">left>")) { return "<"; }
+    if (path.Contains(">right>")) { return ">"; }
+
+    // The EditDeck panel has no X close buttons, and many buttons anchored to
+    // the top-right of their components (card pool pagination buttons, deck 
+    // card +/- buttons), so suppress any "X" behavior.
+    if (path.Contains(">editdeck>")) { return null; }
+
+    // Close button by name (button GO or direct parent).
+    if (selfName.Contains("close") || selfName.Contains("dismiss") ||
+        parentName.Contains("close") || parentName.Contains("dismiss"))
+    {
+      return "X";
+    }
+
+    // Anchor-based fallback: top-right anchored icon-only buttons are likely close buttons.
+    if (rt.anchorMin.x >= 0.5f && rt.anchorMin.y >= 0.5f)
+    {
+      return "X";
+    }
+
+    return null;
+  }
+
+  static void PollToggleStates()
+  {
+    if (EditorApplication.timeSinceStartup >= _nextRescanTime)
+    {
+      _nextRescanTime = EditorApplication.timeSinceStartup + 1.0;
+      RescanNewImages();
+    }
+
+    // Enforce correct colors every frame — game code (Awake/Start) can reset image
+    // colors after ApplyTheme runs, and state-change detection alone won't catch that.
+    // We color every tracked image in the toggle's entire subtree (not just targetGraphic)
+    // so that the checkmark or any other child image cannot cover the indicator with
+    // a misclassified color.
+    foreach (var kvp in _lastToggleStates)
+    {
+      var toggle = kvp.Key;
+      if (toggle == null) { continue; }
+      Color onColor = toggle.group != null ? RadioOnColor : ToggleOnColor;
+      Color stateColor = toggle.isOn ? onColor : ToggleOffColor;
+      foreach (var img in toggle.GetComponentsInChildren<Image>(true))
+      {
+        if (_originals.ContainsKey(img.GetInstanceID()) && img.color != stateColor)
+          img.color = stateColor;
+      }
+    }
+
+    // Detect state changes to update ON/OFF labels and the tracked-state dict.
+    List<Toggle> changed = null;
+    foreach (var kvp in _lastToggleStates)
+    {
+      if (kvp.Key == null || kvp.Key.isOn == kvp.Value)
+      {
+        continue;
+      }
+      changed ??= new List<Toggle>();
+      changed.Add(kvp.Key);
+    }
+
+    if (changed == null)
+    {
+      return;
+    }
+
+    foreach (var toggle in changed)
+    {
+      _lastToggleStates[toggle] = toggle.isOn;
+      if (toggle.group == null)
+      {
+        SetToggleLabel(toggle, toggle.isOn);
+      }
+    }
+  }
+
+  static void RescanNewImages()
+  {
+    // Prune destroyed toggles so the dict doesn't grow unboundedly in scenes
+    // with dynamic UI (object pooling, Destroy calls, etc.).
+    var deadToggles = new List<Toggle>();
+    foreach (var toggle in _lastToggleStates.Keys)
+      if (toggle == null) deadToggles.Add(toggle);
+    foreach (var t in deadToggles) _lastToggleStates.Remove(t);
+
+    var images = Object.FindObjectsOfType<Image>(true);
+    int count = 0;
+
+    foreach (var image in images)
+    {
+      int id = image.GetInstanceID();
+      if (_originals.ContainsKey(id))
+      {
+        continue;
+      }
+      if (!PassesSpriteFilter(image))
+      {
+        continue;
+      }
+
+      _originals[id] = image.color;
+      image.color = ClassifyColor(image);
+      count++;
+    }
+
+    if (count > 0)
+    {
+      SetupToggleTracking();
+      AddIconButtonLabels();
+      AddMissingAssetLabels();
+      ApplySelectableColors();
+    }
+  }
+
+  static void SetToggleLabel(Toggle toggle, bool isOn)
+  {
+    if (toggle.targetGraphic is not Image bg)
+    {
+      return;
+    }
+
+    var existing = bg.transform.Find("UIDebugTheme_Label");
+    GameObject labelGO;
+
+    if (existing != null)
+    {
+      labelGO = existing.gameObject;
+    }
+    else
+    {
+      labelGO = new GameObject("UIDebugTheme_Label");
+      labelGO.transform.SetParent(bg.transform, false);
+
+      var rt = labelGO.AddComponent<RectTransform>();
+      rt.anchorMin = Vector2.zero;
+      rt.anchorMax = Vector2.one;
+      rt.offsetMin = Vector2.zero;
+      rt.offsetMax = Vector2.zero;
+
+      var tmp = labelGO.AddComponent<TextMeshProUGUI>();
+      tmp.alignment = TextAlignmentOptions.Center;
+      tmp.color = Color.white;
+      tmp.fontStyle = FontStyles.Bold;
+      tmp.enableAutoSizing = true;
+      tmp.fontSizeMin = 8;
+      tmp.fontSizeMax = 24;
+
+      _addedLabels.Add(labelGO);
+    }
+
+    labelGO.GetComponent<TextMeshProUGUI>().text = isOn ? "ON" : "OFF";
+  }
+
+  // For Images named "index" whose sprite is missing, add a text label derived from
+  // the parent GO's name. This covers numbered icon slots like player-index badges
+  // where the sprite asset provides the numeral.
+  static void AddMissingAssetLabels()
+  {
+    var images = Object.FindObjectsOfType<Image>(true);
+    foreach (var image in images)
+    {
+      if (image.gameObject.name != "index") { continue; }
+      if (!_originals.ContainsKey(image.GetInstanceID())) { continue; }
+      if (image.transform.Find("UIDebugTheme_IconLabel") != null) { continue; }
+
+      string text = image.transform.parent != null ? image.transform.parent.name : null;
+      if (string.IsNullOrEmpty(text)) { continue; }
+
+      var labelGO = new GameObject("UIDebugTheme_IconLabel");
+      labelGO.transform.SetParent(image.transform, false);
+
+      var lrt = labelGO.AddComponent<RectTransform>();
+      lrt.anchorMin = Vector2.zero;
+      lrt.anchorMax = Vector2.one;
+      lrt.offsetMin = Vector2.zero;
+      lrt.offsetMax = Vector2.zero;
+
+      var tmp = labelGO.AddComponent<TextMeshProUGUI>();
+      tmp.text = text;
+      tmp.alignment = TextAlignmentOptions.Center;
+      tmp.color = Color.white;
+      tmp.fontStyle = FontStyles.Bold;
+      tmp.enableAutoSizing = true;
+      tmp.fontSizeMin = 8;
+      tmp.fontSizeMax = 36;
+
+      _addedLabels.Add(labelGO);
+    }
+  }
+
+  static void ApplySelectableColors()
+  {
+    var selectables = Object.FindObjectsOfType<Selectable>(true);
+    foreach (var sel in selectables)
+    {
+      if (sel.targetGraphic is not Image img) { continue; }
+
+      bool isInputField = sel is TMP_InputField || sel is InputField;
+
+      // For input fields, apply theming regardless of whether ApplyTheme tracked
+      // the background image (it may have been skipped by the white/sprite filter).
+      // For all other selectables, only theme images that have missing sprites.
+      if (!isInputField && !_originals.ContainsKey(img.GetInstanceID())) { continue; }
+
+      int id = sel.GetInstanceID();
+      if (_originalBlocks.ContainsKey(id)) { continue; }
+
+      _originalTransitions[id] = sel.transition;
+      _originalBlocks[id] = sel.colors;
+
+      int imgId = img.GetInstanceID();
+      if (!_originals.ContainsKey(imgId)) { _originals[imgId] = img.color; }
+
+      if (isInputField)
+      {
+        // If the image has a non-default material (e.g. UI/ColorAdditive) it will
+        // render additively and always appear washed out white regardless of image.color.
+        // Override it to null (Unity's default UI/Default alpha-blend shader) so our
+        // color values actually show up.
+        if (img.material != img.defaultMaterial && !_originalMaterials.ContainsKey(imgId))
+        {
+          _originalMaterials[imgId] = img.material;
+          img.material = null;
+        }
+
+        // Light gray normal state so the field is visible; blue tint on focus.
+        sel.transition = Selectable.Transition.ColorTint;
+        sel.colors = InputFieldBlock;
+      }
+      else if (sel is Toggle)
+      {
+        // Toggle colors are managed entirely by RegisterToggleListeners/PollToggleStates.
+        // Setting ColorTint here causes CrossFadeColor(normalColor) to overwrite those
+        // colors after each click, so disable the transition instead.
+        sel.transition = Selectable.Transition.None;
+      }
+      else
+      {
+        sel.transition = Selectable.Transition.ColorTint;
+        sel.colors = ThemedBlock;
+      }
+    }
+  }
+
+  static void CleanupToggleTracking()
+  {
+    foreach (var label in _addedLabels)
+    {
+      if (label != null)
+      {
+        Object.Destroy(label);
+      }
+    }
+    _addedLabels.Clear();
+    _lastToggleStates.Clear();
+  }
+
+}

+ 1 - 1
Assets/Scripts/Script/PhotonWaitController.cs.meta → Assets/Editor/UIDebugTheme.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 623c78dd1056b73439acdda6b04d4516
+guid: 0ab76ba18c1834102a35d8f5a9d15c46
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 4 - 3
Assets/Effect/52SpecialEffectPack/EffectEditor/ShurikenEffectEditor/csShurikenEffectChanger.cs

@@ -12,9 +12,10 @@ public class csShurikenEffectChanger : MonoBehaviour
         transform.localScale *= _Value;
 
 		foreach(ParticleSystem _ParticleSystem in ParticleSystems) {
-			_ParticleSystem.startSpeed *= _Value;
-			_ParticleSystem.startSize *= _Value;
-			_ParticleSystem.gravityModifier *= _Value;
+            var main = _ParticleSystem.main;
+            main.startSpeedMultiplier = _Value;
+			main.startSizeMultiplier = _Value;
+            main.gravityModifierMultiplier = _Value;
 			SerializedObject _SerializedObject = new SerializedObject(_ParticleSystem);
 			_SerializedObject.FindProperty("CollisionModule.particleRadius").floatValue *= _Value;
 			_SerializedObject.FindProperty("ShapeModule.radius").floatValue *= _Value;

+ 1 - 1
Assets/Effect/52SpecialEffectPack/EffectEditor/ShurikenEffectEditor/csShurikenEffectEditor.cs

@@ -19,7 +19,7 @@ public class csShurikenEffectEditor : EditorWindow
 	public static void Init()
 	{
         myWindow = EditorWindow.GetWindowWithRect<csShurikenEffectEditor>(new Rect(100, 100, 300, 220)); //set Editor Position and Size
-		myWindow.title = "Scale Editor";
+		myWindow.titleContent = new GUIContent("Scale Editor");
 	}
 
     void OnGUI()

+ 179 - 23
Assets/Prefab/GameplayPanel.prefab

@@ -140,7 +140,7 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  m_Material: {fileID: 2100000, guid: 5e887a426c49a6748a021b8426a3cd53, type: 3}
+  m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 0
   m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
@@ -723,7 +723,7 @@ GameObject:
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
-  m_IsActive: 0
+  m_IsActive: 1
 --- !u!224 &7928374914756538918
 RectTransform:
   m_ObjectHideFlags: 0
@@ -826,8 +826,8 @@ MonoBehaviour:
   m_TargetGraphic: {fileID: 7928374916472540340}
   m_HandleRect: {fileID: 7928374916472540343}
   m_Direction: 2
-  m_Value: 1.0000169
-  m_Size: 0.99596745
+  m_Value: 0.62781835
+  m_Size: 0.84622556
   m_NumberOfSteps: 0
   m_OnValueChanged:
     m_PersistentCalls:
@@ -1160,6 +1160,7 @@ GameObject:
   - component: {fileID: 7928374914864650544}
   - component: {fileID: 7928374914864650547}
   - component: {fileID: 7928374914864650546}
+  - component: {fileID: 4937676638312405349}
   m_Layer: 5
   m_Name: AutoMaxCardCountButton
   m_TagString: Untagged
@@ -1313,6 +1314,18 @@ MonoBehaviour:
             m_StringArgument: 
             m_BoolArgument: 0
           m_CallState: 2
+--- !u!114 &4937676638312405349
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7928374914864650548}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 24810f441051444c9b85cd5ee64ace1e, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
 --- !u!1 &7928374914887564770
 GameObject:
   m_ObjectHideFlags: 0
@@ -1434,7 +1447,7 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  m_Material: {fileID: 2100000, guid: 3c2172383277d46b697de74b6df875e5, type: 3}
+  m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 0
   m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
@@ -2084,6 +2097,7 @@ GameObject:
   - component: {fileID: 7928374915029961593}
   - component: {fileID: 7928374915029961592}
   - component: {fileID: 7928374915029961595}
+  - component: {fileID: 4632474434352980641}
   m_Layer: 5
   m_Name: AutoHatchButton
   m_TagString: Untagged
@@ -2237,6 +2251,18 @@ MonoBehaviour:
             m_StringArgument: 
             m_BoolArgument: 0
           m_CallState: 2
+--- !u!114 &4632474434352980641
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7928374915029961597}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 24810f441051444c9b85cd5ee64ace1e, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
 --- !u!1 &7928374915051940583
 GameObject:
   m_ObjectHideFlags: 0
@@ -2600,7 +2626,7 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  m_Material: {fileID: 2100000, guid: 3c2172383277d46b697de74b6df875e5, type: 3}
+  m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 0
   m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
@@ -3211,6 +3237,7 @@ GameObject:
   - component: {fileID: 7928374915203219918}
   - component: {fileID: 7928374915203219921}
   - component: {fileID: 7928374915203219920}
+  - component: {fileID: 4016611680359036842}
   m_Layer: 5
   m_Name: AutoDeckBottomOrderButton
   m_TagString: Untagged
@@ -3364,6 +3391,18 @@ MonoBehaviour:
             m_StringArgument: 
             m_BoolArgument: 0
           m_CallState: 2
+--- !u!114 &4016611680359036842
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7928374915203219922}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 24810f441051444c9b85cd5ee64ace1e, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
 --- !u!1 &7928374915215816685
 GameObject:
   m_ObjectHideFlags: 0
@@ -3424,7 +3463,7 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  m_Material: {fileID: 2100000, guid: 3c2172383277d46b697de74b6df875e5, type: 3}
+  m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 0
   m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
@@ -3962,6 +4001,7 @@ GameObject:
   - component: {fileID: 7928374915307089664}
   - component: {fileID: 7928374915307089667}
   - component: {fileID: 7928374915307089666}
+  - component: {fileID: 3357544725572256066}
   m_Layer: 5
   m_Name: AutoDeckTopOrderButton
   m_TagString: Untagged
@@ -4115,6 +4155,18 @@ MonoBehaviour:
             m_StringArgument: 
             m_BoolArgument: 0
           m_CallState: 2
+--- !u!114 &3357544725572256066
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7928374915307089668}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 24810f441051444c9b85cd5ee64ace1e, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
 --- !u!1 &7928374915307483080
 GameObject:
   m_ObjectHideFlags: 0
@@ -4251,7 +4303,7 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  m_Material: {fileID: 2100000, guid: 6b1134f0bc52f8543b71ee696d61d89d, type: 3}
+  m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 0
   m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
@@ -4833,6 +4885,7 @@ GameObject:
   - component: {fileID: 7928374915473546153}
   - component: {fileID: 7928374915473546152}
   - component: {fileID: 7928374915473546155}
+  - component: {fileID: 7019467594845130036}
   m_Layer: 5
   m_Name: ReverseOpponentsCardsButton
   m_TagString: Untagged
@@ -4986,6 +5039,18 @@ MonoBehaviour:
             m_StringArgument: 
             m_BoolArgument: 0
           m_CallState: 2
+--- !u!114 &7019467594845130036
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7928374915473546157}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 24810f441051444c9b85cd5ee64ace1e, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
 --- !u!1 &7928374915475311728
 GameObject:
   m_ObjectHideFlags: 0
@@ -5109,9 +5174,9 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0, y: 1}
   m_AnchorMax: {x: 1, y: 1}
-  m_AnchoredPosition: {x: 0, y: -0.000015258789}
+  m_AnchoredPosition: {x: 0, y: -1011.5901}
   m_SizeDelta: {x: 0, y: 0}
-  m_Pivot: {x: 0, y: 1}
+  m_Pivot: {x: 0, y: 0}
 --- !u!114 &7928374915483523998
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -5346,9 +5411,9 @@ RectTransform:
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0, y: 0}
-  m_AnchorMax: {x: 1, y: 1}
+  m_AnchorMax: {x: 0, y: 0}
   m_AnchoredPosition: {x: 0, y: 0}
-  m_SizeDelta: {x: -17, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
   m_Pivot: {x: 0, y: 1}
 --- !u!222 &7928374915564279513
 CanvasRenderer:
@@ -5741,7 +5806,7 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  m_Material: {fileID: 2100000, guid: 5e887a426c49a6748a021b8426a3cd53, type: 3}
+  m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 0
   m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
@@ -5916,8 +5981,8 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 0.5}
   m_AnchorMax: {x: 0.5, y: 0.5}
-  m_AnchoredPosition: {x: 0, y: -53.6}
-  m_SizeDelta: {x: 1854.4, y: 891.59}
+  m_AnchoredPosition: {x: 0, y: -70}
+  m_SizeDelta: {x: 1854.4, y: 908}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!222 &7928374915775137450
 CanvasRenderer:
@@ -5964,7 +6029,7 @@ MonoBehaviour:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 7928374915775137454}
-  m_Enabled: 0
+  m_Enabled: 1
   m_EditorHideFlags: 0
   m_Script: {fileID: 11500000, guid: 1aa08ab6e0800fa44ae55d278d1423e3, type: 3}
   m_Name: 
@@ -6523,6 +6588,7 @@ GameObject:
   - component: {fileID: 7928374915840589318}
   - component: {fileID: 7928374915840589321}
   - component: {fileID: 7928374915840589320}
+  - component: {fileID: 3718408135101065587}
   m_Layer: 5
   m_Name: AutoMinDigivolutiuonCostButton
   m_TagString: Untagged
@@ -6676,6 +6742,18 @@ MonoBehaviour:
             m_StringArgument: 
             m_BoolArgument: 0
           m_CallState: 2
+--- !u!114 &3718408135101065587
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7928374915840589322}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 24810f441051444c9b85cd5ee64ace1e, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
 --- !u!1 &7928374915877382007
 GameObject:
   m_ObjectHideFlags: 0
@@ -6736,7 +6814,7 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  m_Material: {fileID: 2100000, guid: 5e887a426c49a6748a021b8426a3cd53, type: 3}
+  m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 0
   m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
@@ -7127,7 +7205,7 @@ GameObject:
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
-  m_IsActive: 0
+  m_IsActive: 1
 --- !u!224 &7928374915970859287
 RectTransform:
   m_ObjectHideFlags: 0
@@ -7239,6 +7317,7 @@ GameObject:
   - component: {fileID: 7928374916004630460}
   - component: {fileID: 7928374916004630463}
   - component: {fileID: 7928374916004630462}
+  - component: {fileID: 6508491763816116467}
   m_Layer: 5
   m_Name: AutoEffectOrderButton
   m_TagString: Untagged
@@ -7392,6 +7471,18 @@ MonoBehaviour:
             m_StringArgument: 
             m_BoolArgument: 0
           m_CallState: 2
+--- !u!114 &6508491763816116467
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7928374916004630400}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 24810f441051444c9b85cd5ee64ace1e, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
 --- !u!1 &7928374916028117480
 GameObject:
   m_ObjectHideFlags: 0
@@ -7779,7 +7870,7 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  m_Material: {fileID: 2100000, guid: 3c2172383277d46b697de74b6df875e5, type: 3}
+  m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 0
   m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
@@ -8182,6 +8273,7 @@ GameObject:
   - component: {fileID: 7928374916272943215}
   - component: {fileID: 7928374916272943214}
   - component: {fileID: 7928374916272943217}
+  - component: {fileID: 1003559647348142293}
   m_Layer: 5
   m_Name: TurnSuspendedCardsButton
   m_TagString: Untagged
@@ -8335,6 +8427,18 @@ MonoBehaviour:
             m_StringArgument: 
             m_BoolArgument: 0
           m_CallState: 2
+--- !u!114 &1003559647348142293
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7928374916272943219}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 24810f441051444c9b85cd5ee64ace1e, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
 --- !u!1 &7928374916288359320
 GameObject:
   m_ObjectHideFlags: 0
@@ -8428,6 +8532,7 @@ GameObject:
   - component: {fileID: 7928374916328845438}
   - component: {fileID: 7928374916328845377}
   - component: {fileID: 7928374916328845376}
+  - component: {fileID: 2319259301301056102}
   m_Layer: 5
   m_Name: SuspendCardRotationIsLeftButton
   m_TagString: Untagged
@@ -8581,6 +8686,18 @@ MonoBehaviour:
             m_StringArgument: 
             m_BoolArgument: 0
           m_CallState: 2
+--- !u!114 &2319259301301056102
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7928374916328845378}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 24810f441051444c9b85cd5ee64ace1e, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
 --- !u!1 &7928374916331378629
 GameObject:
   m_ObjectHideFlags: 0
@@ -8949,8 +9066,8 @@ RectTransform:
   m_Father: {fileID: 7928374915229516443}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
-  m_AnchorMin: {x: 0, y: 0.0040325522}
-  m_AnchorMax: {x: 1, y: 1}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 0, y: 0}
   m_AnchoredPosition: {x: 0, y: 0}
   m_SizeDelta: {x: 20, y: 20}
   m_Pivot: {x: 0.5, y: 0.5}
@@ -9484,7 +9601,7 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  m_Material: {fileID: 2100000, guid: 3c2172383277d46b697de74b6df875e5, type: 3}
+  m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 0
   m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
@@ -9601,7 +9718,7 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  m_Material: {fileID: 2100000, guid: 6b1134f0bc52f8543b71ee696d61d89d, type: 3}
+  m_Material: {fileID: 0}
   m_Color: {r: 1, g: 1, b: 1, a: 1}
   m_RaycastTarget: 0
   m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
@@ -9824,6 +9941,7 @@ GameObject:
   - component: {fileID: 7928374916660100987}
   - component: {fileID: 7928374916660100986}
   - component: {fileID: 7928374916660100989}
+  - component: {fileID: 3974715734184600402}
   m_Layer: 5
   m_Name: ShowCutInAnimationButton
   m_TagString: Untagged
@@ -9977,6 +10095,18 @@ MonoBehaviour:
             m_StringArgument: 
             m_BoolArgument: 0
           m_CallState: 2
+--- !u!114 &3974715734184600402
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7928374916660100991}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 24810f441051444c9b85cd5ee64ace1e, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
 --- !u!1 &7928374916702200026
 GameObject:
   m_ObjectHideFlags: 0
@@ -10066,6 +10196,7 @@ GameObject:
   - component: {fileID: 7928374916729832105}
   - component: {fileID: 7928374916729832104}
   - component: {fileID: 7928374916729832107}
+  - component: {fileID: 5460304762472086679}
   m_Layer: 5
   m_Name: CheckEndSelectButton
   m_TagString: Untagged
@@ -10219,6 +10350,18 @@ MonoBehaviour:
             m_StringArgument: 
             m_BoolArgument: 0
           m_CallState: 2
+--- !u!114 &5460304762472086679
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7928374916729832109}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 24810f441051444c9b85cd5ee64ace1e, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
 --- !u!1 &7928374916758334288
 GameObject:
   m_ObjectHideFlags: 0
@@ -10384,6 +10527,7 @@ GameObject:
   - component: {fileID: 7669067546430629117}
   - component: {fileID: 5982150575648531567}
   - component: {fileID: 7826128636079055205}
+  - component: {fileID: 5321595054649498675}
   m_Layer: 5
   m_Name: BanlistButton
   m_TagString: Untagged
@@ -10537,3 +10681,15 @@ MonoBehaviour:
             m_StringArgument: 
             m_BoolArgument: 0
           m_CallState: 2
+--- !u!114 &5321595054649498675
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8310052256679860245}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 24810f441051444c9b85cd5ee64ace1e, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 

+ 45 - 101
Assets/Scenes/BattleScene.unity

@@ -2146,7 +2146,7 @@ PrefabInstance:
       objectReference: {fileID: 0}
     - target: {fileID: 724948943841632850, guid: da57e4314e2e6c143b10f07331349856, type: 3}
       propertyPath: m_AnchoredPosition.x
-      value: 106
+      value: 106.00006
       objectReference: {fileID: 0}
     - target: {fileID: 724948943841632851, guid: da57e4314e2e6c143b10f07331349856, type: 3}
       propertyPath: m_Color.b
@@ -17805,7 +17805,6 @@ GameObject:
   m_Component:
   - component: {fileID: 198236645}
   - component: {fileID: 198236644}
-  - component: {fileID: 198236643}
   - component: {fileID: 198236642}
   - component: {fileID: 198236641}
   - component: {fileID: 198236649}
@@ -17911,20 +17910,6 @@ MonoBehaviour:
   sceneViewId: 10
   InstantiationId: 0
   isRuntimeInstantiated: 0
---- !u!114 &198236643
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 198236640}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: 623c78dd1056b73439acdda6b04d4516, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
-  SyncText: {fileID: 633043498}
-  keys: []
 --- !u!114 &198236644
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -18008,7 +17993,6 @@ MonoBehaviour:
   burstEffectObject: {fileID: 1621258405}
   _backgroundParticles:
   - {fileID: 1235943521}
-  photonWaitController: {fileID: 198236643}
   CloseWhenEndingGameObjects:
   - {fileID: 331894840}
   - {fileID: 2023852511}
@@ -18225,7 +18209,6 @@ MonoBehaviour:
   m_Name: 
   m_EditorClassIdentifier: 
   _selectedCount: 0
-  _endSelect: 0
 --- !u!114 &198236664
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -26546,6 +26529,7 @@ GameObject:
   - component: {fileID: 333201483}
   - component: {fileID: 333201482}
   - component: {fileID: 333201484}
+  - component: {fileID: 333201485}
   m_Layer: 0
   m_Name: Scroll View
   m_TagString: Untagged
@@ -26644,6 +26628,19 @@ MonoBehaviour:
   m_OnValueChanged:
     m_PersistentCalls:
       m_Calls: []
+--- !u!114 &333201485
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 333201480}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 9f6b2a2af89a64321a893f32d37bedf1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  scrollSpeed: 1
 --- !u!1 &336989510
 GameObject:
   m_ObjectHideFlags: 0
@@ -49395,86 +49392,6 @@ CanvasRenderer:
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 631465159}
   m_CullTransparentMesh: 0
---- !u!1 &633043496
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 633043497}
-  - component: {fileID: 633043499}
-  - component: {fileID: 633043498}
-  m_Layer: 0
-  m_Name: SyncText
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 0
---- !u!224 &633043497
-RectTransform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 633043496}
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: 0, y: 0, z: 0}
-  m_LocalScale: {x: 0.18, y: 0.18, z: 1}
-  m_ConstrainProportionsScale: 0
-  m_Children: []
-  m_Father: {fileID: 1948517706}
-  m_RootOrder: 10
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
-  m_AnchorMin: {x: 0.5, y: 0.5}
-  m_AnchorMax: {x: 0.5, y: 0.5}
-  m_AnchoredPosition: {x: -897.1, y: -478.6}
-  m_SizeDelta: {x: 160, y: 30}
-  m_Pivot: {x: 0.5, y: 0.5}
---- !u!114 &633043498
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 633043496}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
-  m_Material: {fileID: 0}
-  m_Color: {r: 1, g: 1, b: 1, a: 1}
-  m_RaycastTarget: 0
-  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
-  m_Maskable: 1
-  m_OnCullStateChanged:
-    m_PersistentCalls:
-      m_Calls: []
-  m_FontData:
-    m_Font: {fileID: 12800000, guid: 385dce3fc9f7d434cb640e4d4d497263, type: 3}
-    m_FontSize: 300
-    m_FontStyle: 0
-    m_BestFit: 0
-    m_MinSize: 3
-    m_MaxSize: 300
-    m_Alignment: 0
-    m_AlignByGeometry: 0
-    m_RichText: 1
-    m_HorizontalOverflow: 1
-    m_VerticalOverflow: 1
-    m_LineSpacing: 1
-  m_Text: Syncing...
---- !u!222 &633043499
-CanvasRenderer:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 633043496}
-  m_CullTransparentMesh: 0
 --- !u!1 &633409994
 GameObject:
   m_ObjectHideFlags: 0
@@ -50976,7 +50893,7 @@ RectTransform:
   m_ConstrainProportionsScale: 0
   m_Children: []
   m_Father: {fileID: 1948517706}
-  m_RootOrder: 11
+  m_RootOrder: 10
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 0.5}
   m_AnchorMax: {x: 0.5, y: 0.5}
@@ -64729,6 +64646,7 @@ GameObject:
   - component: {fileID: 845132312}
   - component: {fileID: 845132311}
   - component: {fileID: 845132310}
+  - component: {fileID: 845132313}
   m_Layer: 0
   m_Name: Scroll View_horizontal
   m_TagString: Untagged
@@ -64826,6 +64744,19 @@ CanvasRenderer:
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 845132308}
   m_CullTransparentMesh: 0
+--- !u!114 &845132313
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 845132308}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 9f6b2a2af89a64321a893f32d37bedf1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  scrollSpeed: 1
 --- !u!1 &845703094
 GameObject:
   m_ObjectHideFlags: 0
@@ -158871,6 +158802,7 @@ GameObject:
   - component: {fileID: 1879586141}
   - component: {fileID: 1879586140}
   - component: {fileID: 1879586142}
+  - component: {fileID: 1879586143}
   m_Layer: 0
   m_Name: Scroll View
   m_TagString: Untagged
@@ -158969,6 +158901,19 @@ MonoBehaviour:
   m_OnValueChanged:
     m_PersistentCalls:
       m_Calls: []
+--- !u!114 &1879586143
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1879586138}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 9f6b2a2af89a64321a893f32d37bedf1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  scrollSpeed: 1
 --- !u!1 &1883268916
 GameObject:
   m_ObjectHideFlags: 0
@@ -163197,7 +163142,6 @@ RectTransform:
   - {fileID: 814965176}
   - {fileID: 1210417770}
   - {fileID: 1060026861}
-  - {fileID: 633043497}
   - {fileID: 647889344}
   m_Father: {fileID: 0}
   m_RootOrder: 6
@@ -173313,7 +173257,7 @@ MonoBehaviour:
   b: 1
   image: {fileID: 0}
   speed: 0.3
-  doRotate: 1
+  _doRotate: 1
   progress: {fileID: 0}
 --- !u!224 &156150922234379326
 RectTransform:

+ 103 - 0
Assets/Scenes/Opening.unity

@@ -64666,6 +64666,7 @@ GameObject:
   - component: {fileID: 1576401445}
   - component: {fileID: 1576401446}
   - component: {fileID: 1576401447}
+  - component: {fileID: 1576401448}
   m_Layer: 5
   m_Name: DeckInfoPanel
   m_TagString: Untagged
@@ -64737,6 +64738,27 @@ MonoBehaviour:
   DeckCountText: {fileID: 1988002286}
   TrialDrawButton: {fileID: 5506376018178374681}
   isFromSelectDeck: 0
+--- !u!95 &1576401448
+Animator:
+  serializedVersion: 5
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1576401444}
+  m_Enabled: 1
+  m_Avatar: {fileID: 0}
+  m_Controller: {fileID: 9100000, guid: 89b572d6698ea714097bf5420918e98c, type: 2}
+  m_CullingMode: 0
+  m_UpdateMode: 0
+  m_ApplyRootMotion: 0
+  m_LinearVelocityBlending: 0
+  m_StabilizeFeet: 0
+  m_WarningMessage: 
+  m_HasTransformHierarchy: 1
+  m_AllowConstantClipSamplingOptimization: 1
+  m_KeepAnimatorStateOnDisable: 0
+  m_WriteDefaultValuesOnDisable: 0
 --- !u!1 &1582264489
 GameObject:
   m_ObjectHideFlags: 0
@@ -72852,6 +72874,7 @@ GameObject:
   - component: {fileID: 1792775834}
   - component: {fileID: 1792775836}
   - component: {fileID: 1792775835}
+  - component: {fileID: 1792775837}
   m_Layer: 5
   m_Name: DeckInfoPanel
   m_TagString: Untagged
@@ -72923,6 +72946,27 @@ CanvasRenderer:
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 1792775833}
   m_CullTransparentMesh: 0
+--- !u!95 &1792775837
+Animator:
+  serializedVersion: 5
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1792775833}
+  m_Enabled: 1
+  m_Avatar: {fileID: 0}
+  m_Controller: {fileID: 0}
+  m_CullingMode: 0
+  m_UpdateMode: 0
+  m_ApplyRootMotion: 0
+  m_LinearVelocityBlending: 0
+  m_StabilizeFeet: 0
+  m_WarningMessage: 
+  m_HasTransformHierarchy: 1
+  m_AllowConstantClipSamplingOptimization: 1
+  m_KeepAnimatorStateOnDisable: 0
+  m_WriteDefaultValuesOnDisable: 0
 --- !u!1 &1795074585
 GameObject:
   m_ObjectHideFlags: 0
@@ -89882,6 +89926,7 @@ GameObject:
   - component: {fileID: 2123878073}
   - component: {fileID: 2123878075}
   - component: {fileID: 2123878074}
+  - component: {fileID: 2123878076}
   m_Layer: 5
   m_Name: DeckInfoPanel
   m_TagString: Untagged
@@ -89953,6 +89998,27 @@ CanvasRenderer:
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 2123878072}
   m_CullTransparentMesh: 0
+--- !u!95 &2123878076
+Animator:
+  serializedVersion: 5
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2123878072}
+  m_Enabled: 1
+  m_Avatar: {fileID: 0}
+  m_Controller: {fileID: 0}
+  m_CullingMode: 0
+  m_UpdateMode: 0
+  m_ApplyRootMotion: 0
+  m_LinearVelocityBlending: 0
+  m_StabilizeFeet: 0
+  m_WarningMessage: 
+  m_HasTransformHierarchy: 1
+  m_AllowConstantClipSamplingOptimization: 1
+  m_KeepAnimatorStateOnDisable: 0
+  m_WriteDefaultValuesOnDisable: 0
 --- !u!1 &2125303686
 GameObject:
   m_ObjectHideFlags: 0
@@ -105731,6 +105797,7 @@ GameObject:
   - component: {fileID: 7827412352382397946}
   - component: {fileID: 7827412352382397944}
   - component: {fileID: 7827412352382397945}
+  - component: {fileID: 7827412352382397950}
   m_Layer: 5
   m_Name: DeckInfoPanel
   m_TagString: Untagged
@@ -105738,6 +105805,27 @@ GameObject:
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
   m_IsActive: 1
+--- !u!95 &7827412352382397950
+Animator:
+  serializedVersion: 5
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7827412352382397949}
+  m_Enabled: 1
+  m_Avatar: {fileID: 0}
+  m_Controller: {fileID: 0}
+  m_CullingMode: 0
+  m_UpdateMode: 0
+  m_ApplyRootMotion: 0
+  m_LinearVelocityBlending: 0
+  m_StabilizeFeet: 0
+  m_WarningMessage: 
+  m_HasTransformHierarchy: 1
+  m_AllowConstantClipSamplingOptimization: 1
+  m_KeepAnimatorStateOnDisable: 0
+  m_WriteDefaultValuesOnDisable: 0
 --- !u!222 &7827412352585523691
 CanvasRenderer:
   m_ObjectHideFlags: 0
@@ -106837,6 +106925,7 @@ GameObject:
   - component: {fileID: 7827412352956199575}
   - component: {fileID: 7827412352956199570}
   - component: {fileID: 7827412352956199571}
+  - component: {fileID: 7827412352956199576}
   m_Layer: 0
   m_Name: Opening
   m_TagString: Untagged
@@ -106859,6 +106948,20 @@ MonoBehaviour:
   playerInfo: {fileID: 7827412351893259071}
   loadingObject: {fileID: 1378047648}
   UpdateButtonParent: {fileID: 0}
+--- !u!114 &7827412352956199576
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7827412352956199574}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: f2a696ce2a233204c9fc6c9d84bf9750, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  URL: 
+  HashTacgs: []
 --- !u!222 &7827412353023664826
 CanvasRenderer:
   m_ObjectHideFlags: 0

+ 2 - 39
Assets/Scripts/CardEffect/AD1/Purple/AD1_018.cs

@@ -15,13 +15,7 @@ namespace DCGO.CardEffects.AD1
             #region Reduce Play Cost
             if (timing == EffectTiming.None)
             {
-                ChangeCostClass changeCostClass = new ChangeCostClass();
-                changeCostClass.SetUpICardEffect("Play Cost -5", CanUseCondition, card);
-                changeCostClass.SetUpChangeCostClass(changeCostFunc: ChangeCost, cardSourceCondition: CardSourceCondition, rootCondition: RootCondition, isUpDown: isUpDown, isCheckAvailability: () => false, isChangePayingCost: () => true);
-                changeCostClass.SetNotShowUI(true);
-                cardEffects.Add(changeCostClass);
-
-                bool CanUseCondition(Hashtable hashtable)
+                bool Condition()
                 {
                     return CardEffectCommons.HasMatchConditionOwnersPermanent(card, WouldPlayCondition);
                 }
@@ -32,38 +26,7 @@ namespace DCGO.CardEffects.AD1
                             && (permanent.TopCard.ContainsCardName("Knightmon") || permanent.TopCard.ContainsCardName("Lucemon"));
                 }
 
-                int ChangeCost(CardSource cardSource, int cost, SelectCardEffect.Root root,
-                        List<Permanent> targetPermanents)
-                {
-                    if (CardSourceCondition(cardSource) &&
-                        RootCondition(root) &&
-                        PermanentsCondition(targetPermanents))
-                    {
-                        cost -= 5;
-                    }
-
-                    return cost;
-                }
-
-                bool PermanentsCondition(List<Permanent> targetPermanents)
-                {
-                    return targetPermanents == null || targetPermanents.Count(targetPermanent => targetPermanent != null) == 0;
-                }
-
-                bool CardSourceCondition(CardSource cardSource)
-                {
-                    return cardSource == card;
-                }
-
-                bool RootCondition(SelectCardEffect.Root root)
-                {
-                    return true;
-                }
-
-                bool isUpDown()
-                {
-                    return true;
-                }
+                cardEffects.Add(CardEffectFactory.MandatorySelfPlayCostReduction(5, card, Condition));
             }
             #endregion
 

+ 2 - 39
Assets/Scripts/CardEffect/AD1/Yellow/AD1_017.cs

@@ -14,13 +14,7 @@ namespace DCGO.CardEffects.AD1
             #region Reduce Play Cost
             if (timing == EffectTiming.None)
             {
-                ChangeCostClass changeCostClass = new ChangeCostClass();
-                changeCostClass.SetUpICardEffect("Play Cost -5", CanUseCondition, card);
-                changeCostClass.SetUpChangeCostClass(changeCostFunc: ChangeCost, cardSourceCondition: CardSourceCondition, rootCondition: RootCondition, isUpDown: isUpDown, isCheckAvailability: () => false, isChangePayingCost: () => true);
-                changeCostClass.SetNotShowUI(true);
-                cardEffects.Add(changeCostClass);
-
-                bool CanUseCondition(Hashtable hashtable)
+                bool Condition()
                 {
                     return CardEffectCommons.MatchConditionOwnersCardCountInTrash(card, WouldPlayCondition) >= 4;
                 }
@@ -31,38 +25,7 @@ namespace DCGO.CardEffects.AD1
                             || cardSource.HasText("Witchelny");
                 }
 
-                int ChangeCost(CardSource cardSource, int cost, SelectCardEffect.Root root,
-                        List<Permanent> targetPermanents)
-                {
-                    if (CardSourceCondition(cardSource) &&
-                        RootCondition(root) &&
-                        PermanentsCondition(targetPermanents))
-                    {
-                        cost -= 5;
-                    }
-
-                    return cost;
-                }
-
-                bool PermanentsCondition(List<Permanent> targetPermanents)
-                {
-                    return targetPermanents == null || targetPermanents.Count(targetPermanent => targetPermanent != null) == 0;
-                }
-
-                bool CardSourceCondition(CardSource cardSource)
-                {
-                    return cardSource == card;
-                }
-
-                bool RootCondition(SelectCardEffect.Root root)
-                {
-                    return true;
-                }
-
-                bool isUpDown()
-                {
-                    return true;
-                }
+                cardEffects.Add(CardEffectFactory.MandatorySelfPlayCostReduction(5, card, Condition));
             }
             #endregion
 

+ 2 - 2
Assets/Scripts/CardEffect/BT1/Blue/BT1_030.cs

@@ -27,12 +27,12 @@ public class BT1_030 : CEntity_Effect
 
             bool CanUseCondition(Hashtable hashtable)
             {
-                return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
             }
 
             bool CanActivateCondition(Hashtable hashtable)
             {
-                if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                 {
                     if (card.Owner.CanAddMemory(activateClass))
                     {

+ 2 - 2
Assets/Scripts/CardEffect/BT1/Blue/BT1_035.cs

@@ -26,12 +26,12 @@ public class BT1_035 : CEntity_Effect
 
             bool CanUseCondition(Hashtable hashtable)
             {
-                return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
             }
 
             bool CanActivateCondition(Hashtable hashtable)
             {
-                if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                 {
                     if (card.Owner.CanAddMemory(activateClass))
                     {

+ 1 - 1
Assets/Scripts/CardEffect/BT1/Green/BT1_113.cs

@@ -20,7 +20,7 @@ public class BT1_113 : CEntity_Effect
 
             string EffectDiscription()
             {
-                return "[Main] Until the end of your opponent's next turn�C1 of your opponent's Digimon can't attack or block.";
+                return "[Main] Until the end of your opponent's next turn, of your opponent's Digimon can't attack or block.";
             }
 
             bool CanSelectPermanentCondition(Permanent permanent)

+ 2 - 2
Assets/Scripts/CardEffect/BT1/Yellow/BT1_049.cs

@@ -22,7 +22,7 @@ public class BT1_049 : CEntity_Effect
 
             string EffectDiscription()
             {
-                return "[Your Turn] When an opponent's Digimon is deleted by dropping to 0 DP�C trigger <Draw 1> (Draw 1 card from your deck).";
+                return "[Your Turn] When an opponent's Digimon is deleted by dropping to 0 DP, trigger <Draw 1> (Draw 1 card from your deck).";
             }
 
             bool PermanentCondition(Permanent permanent)
@@ -36,7 +36,7 @@ public class BT1_049 : CEntity_Effect
                 {
                     if (CardEffectCommons.IsOwnerTurn(card))
                     {
-                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition))
+                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition, activateClass))
                         {
                             if (CardEffectCommons.IsDPZeroDelete(hashtable))
                             {

+ 1 - 1
Assets/Scripts/CardEffect/BT1/Yellow/BT1_054.cs

@@ -20,7 +20,7 @@ public class BT1_054 : CEntity_Effect
 
             string EffectDiscription()
             {
-                return "[When Attacking] If you have 3 or more memory�C of your opponent's Digimon gets -2000 DP for the turn.";
+                return "[When Attacking] If you have 3 or more memory, 1 of your opponent's Digimon gets -2000 DP for the turn.";
             }
 
             bool CanSelectPermanentCondition(Permanent permanent)

+ 1 - 1
Assets/Scripts/CardEffect/BT10/Black/BT10_061.cs

@@ -144,7 +144,7 @@ namespace DCGO.CardEffects.BT10
                         activateClass: activateClass
                         ));
 
-                    if (CardEffectCommons.IsDijiXros(_hashtable, (count) => count == 2))
+                    if (CardEffectCommons.IsDijiXros(_hashtable, card, (count) => count == 2))
                     {
                         int maxCount = Math.Min(1, CardEffectCommons.MatchConditionPermanentCount(CanSelectPermanentCondition));
 

+ 1 - 1
Assets/Scripts/CardEffect/BT10/Black/BT10_066.cs

@@ -95,7 +95,7 @@ namespace DCGO.CardEffects.BT10
                         }
                     }
 
-                    if (CardEffectCommons.IsDijiXros(_hashtable, (count) => count == 2))
+                    if (CardEffectCommons.IsDijiXros(_hashtable, card, (count) => count == 2))
                     {
                         if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition1))
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT10/Black/BT10_069.cs

@@ -170,12 +170,12 @@ namespace DCGO.CardEffects.BT10
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (CardEffectCommons.HasMatchConditionOwnersCardInTrash(card, (cardSource) => CanSelectCardCondition(cardSource)))
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT10/Black/BT10_092.cs

@@ -134,12 +134,12 @@ namespace DCGO.CardEffects.BT10
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.CanAddMemory(activateClass))
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT10/Blue/BT10_018.cs

@@ -56,12 +56,12 @@ namespace DCGO.CardEffects.BT10
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.HandCards.Count >= 1)
                         {

+ 1 - 1
Assets/Scripts/CardEffect/BT10/Blue/BT10_024.cs

@@ -72,7 +72,7 @@ namespace DCGO.CardEffects.BT10
                         effectDuration: EffectDuration.UntilEachTurnEnd,
                         activateClass: activateClass));
 
-                    if (CardEffectCommons.IsDijiXros(_hashtable, (digixrosCount) => digixrosCount >= 1))
+                    if (CardEffectCommons.IsDijiXros(_hashtable, card, (digixrosCount) => digixrosCount >= 1))
                     {
                         if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition))
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT10/Green/BT10_056.cs

@@ -170,7 +170,7 @@ namespace DCGO.CardEffects.BT10
                         {
                             if (CardSourceCondition(cardSource))
                             {
-                                if (CardEffectCommons.CanTriggerOnDeletion(hashtable, cardSource))
+                                if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, permanent => permanent == cardSource.PermanentOfThisCard(), activateClass1))
                                 {
                                     return true;
                                 }
@@ -181,7 +181,7 @@ namespace DCGO.CardEffects.BT10
 
                         bool CanActivateCondition1(Hashtable hashtable)
                         {
-                            if (CardEffectCommons.CanActivateOnDeletion(hashtable, cardSource))
+                            if (CardEffectCommons.CanActivateOnDeletion(cardSource, activateClass1))
                             {
                                 return true;
                             }

+ 2 - 2
Assets/Scripts/CardEffect/BT10/Purple/BT10_078.cs

@@ -75,12 +75,12 @@ namespace DCGO.CardEffects.BT10
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (CardEffectCommons.HasMatchConditionOwnersCardInTrash(card, (cardSource) => CanSelectCardCondition(cardSource)))
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT10/Purple/BT10_080.cs

@@ -224,12 +224,12 @@ namespace DCGO.CardEffects.BT10
 
                             bool CanUseCondition1(Hashtable hashtable1)
                             {
-                                return CardEffectCommons.CanTriggerOnDeletion(hashtable1, card);
+                                return CardEffectCommons.CanTriggerOnDeletion(hashtable1, card, activateClass1);
                             }
 
                             bool CanActivateCondition1(Hashtable hashtable1)
                             {
-                                if (CardEffectCommons.CanActivateOnDeletion(hashtable1, card))
+                                if (CardEffectCommons.CanActivateOnDeletion(card, activateClass1))
                                 {
                                     if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition))
                                     {

+ 2 - 2
Assets/Scripts/CardEffect/BT10/Purple/BT10_081.cs

@@ -98,12 +98,12 @@ namespace DCGO.CardEffects.BT10
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (CardEffectCommons.HasMatchConditionOwnersCardInTrash(card, (cardSource) => CanSelectCardCondition(cardSource)))
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT10/Purple/BT10_083.cs

@@ -170,12 +170,12 @@ namespace DCGO.CardEffects.BT10
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (CardEffectCommons.HasMatchConditionOwnersCardInTrash(card, (cardSource) => CanSelectCardCondition(cardSource)))
                         {

+ 0 - 2
Assets/Scripts/CardEffect/BT10/Red/BT10_095.cs

@@ -104,8 +104,6 @@ namespace DCGO.CardEffects.BT10
 
                         while (canSelectEffects.Count((effect) => !activatedEffects.Contains(effect)) >= 1)
                         {
-                            yield return GManager.instance.photonWaitController.StartWait("FlyingHero_selectFirst");
-
                             if (canSelectEffects.Count((effect) => !activatedEffects.Contains(effect)) >= 2)
                             {
                                 List<SelectionElement<int>> selectionElements = new List<SelectionElement<int>>()

+ 1 - 1
Assets/Scripts/CardEffect/BT11/Black/BT11_005.cs

@@ -34,7 +34,7 @@ namespace DCGO.CardEffects.BT11
                     {
                         if (CardEffectCommons.IsOpponentTurn(card))
                         {
-                            if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition))
+                            if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition, activateClass))
                             {
                                 return true;
                             }

+ 2 - 2
Assets/Scripts/CardEffect/BT11/Black/BT11_071.cs

@@ -501,12 +501,12 @@ namespace DCGO.CardEffects.BT11
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (CardEffectCommons.HasMatchConditionOwnersCardInTrash(card, CanSelectCardCondition))
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT11/Black/BT11_072.cs

@@ -254,12 +254,12 @@ namespace DCGO.CardEffects.BT11
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.GetBattleAreaPermanents().Count(CanSelectPermanentCondition) >= 1)
                         {

+ 1 - 1
Assets/Scripts/CardEffect/BT11/Black/BT11_106.cs

@@ -167,7 +167,7 @@ namespace DCGO.CardEffects.BT11
                                 {
                                     if (CardEffectCommons.IsPermanentExistsOnBattleArea(selectedPermanent))
                                     {
-                                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable1, (permanent) => permanent == selectedPermanent))
+                                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable1, (permanent) => permanent == selectedPermanent, activateClass))
                                         {
                                             if (!selectedPermanent.TopCard.CanNotBeAffected(activateClass))
                                             {

+ 2 - 2
Assets/Scripts/CardEffect/BT11/Blue/BT11_031.cs

@@ -176,7 +176,7 @@ namespace DCGO.CardEffects.BT11
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
@@ -186,7 +186,7 @@ namespace DCGO.CardEffects.BT11
                         return true;
                     }
 
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.GetBattleAreaPermanents().Count(CanSelectPermanentCondition1) >= 1)
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT11/Purple/BT11_079.cs

@@ -28,12 +28,12 @@ namespace DCGO.CardEffects.BT11
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.LibraryCards.Count >= 1)
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT11/Purple/BT11_082.cs

@@ -113,12 +113,12 @@ namespace DCGO.CardEffects.BT11
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (CardEffectCommons.HasMatchConditionOwnersCardInTrash(card, (cardSource) => CanSelectCardCondition(cardSource)))
                         {

+ 2 - 15
Assets/Scripts/CardEffect/BT11/Purple/BT11_086.cs

@@ -105,7 +105,7 @@ namespace DCGO.CardEffects.BT11
 
                         int maxCount = 1;
 
-                        if (CardEffectCommons.IsDijiXros(_hashtable, (digixrosCount) => digixrosCount >= 1))
+                        if (CardEffectCommons.IsDijiXros(_hashtable, card, (digixrosCount) => digixrosCount >= 1))
                         {
                             maxCount += 1;
                         }
@@ -221,19 +221,6 @@ namespace DCGO.CardEffects.BT11
                     {
                         List<CardSource> selectedCards = new List<CardSource>();
 
-                        int maxCount = 1;
-
-                        if (CardEffectCommons.IsDijiXros(_hashtable, (digixrosCount) => digixrosCount >= 1))
-                        {
-                            maxCount += 1;
-                        }
-
-                        maxCount = Math.Min(maxCount,
-                            card.Owner.TrashCards.Count(CanSelectCardCondition));
-
-                        maxCount = Math.Min(maxCount,
-                            card.Owner.fieldCardFrames.Count((frame) => frame.IsEmptyFrame() && frame.IsBattleAreaFrame()));
-
                         SelectCardEffect selectCardEffect = GManager.instance.GetComponent<SelectCardEffect>();
 
                         selectCardEffect.SetUp(
@@ -244,7 +231,7 @@ namespace DCGO.CardEffects.BT11
                                     selectCardCoroutine: SelectCardCoroutine,
                                     afterSelectCardCoroutine: null,
                                     message: "Select cards to play.",
-                                    maxCount: maxCount,
+                                    maxCount: 1,
                                     canEndNotMax: false,
                                     isShowOpponent: true,
                                     mode: SelectCardEffect.Mode.Custom,

+ 19 - 17
Assets/Scripts/CardEffect/BT11/Purple/BT11_088.cs

@@ -2,6 +2,7 @@ using System.Collections;
 using System.Collections.Generic;
 using System.Linq;
 
+// Bagramon
 namespace DCGO.CardEffects.BT11
 {
     public class BT11_088 : CEntity_Effect
@@ -390,23 +391,24 @@ namespace DCGO.CardEffects.BT11
                             SelectCardEffect selectCardEffect = GManager.instance.GetComponent<SelectCardEffect>();
 
                             selectCardEffect.SetUp(
-                                        canTargetCondition: CanSelectCardCondition,
-                                        canTargetCondition_ByPreSelecetedList: null,
-                                        canEndSelectCondition: CanEndSelectCondition,
-                                        canNoSelect: () => false,
-                                        selectCardCoroutine: SelectCardCoroutine,
-                                        afterSelectCardCoroutine: null,
-                                        message: "Select 1 digivolution card to discard.",
-                                        maxCount: 1,
-                                        canEndNotMax: false,
-                                        isShowOpponent: true,
-                                        mode: SelectCardEffect.Mode.Custom,
-                                        root: SelectCardEffect.Root.Custom,
-                                        customRootCardList: card.PermanentOfThisCard().DigivolutionCards,
-                                        canLookReverseCard: true,
-                                        selectPlayer: card.Owner,
-                                        cardEffect: null);
+                                canTargetCondition: CanSelectCardCondition,
+                                canTargetCondition_ByPreSelecetedList: null,
+                                canEndSelectCondition: CanEndSelectCondition,
+                                canNoSelect: () => false,
+                                selectCardCoroutine: SelectCardCoroutine,
+                                afterSelectCardCoroutine: null,
+                                message: "Select 1 digivolution card to discard.",
+                                maxCount: 1,
+                                canEndNotMax: false,
+                                isShowOpponent: true,
+                                mode: SelectCardEffect.Mode.Custom,
+                                root: SelectCardEffect.Root.DigivolutionCards,
+                                customRootCardList: card.PermanentOfThisCard().DigivolutionCards,
+                                canLookReverseCard: true,
+                                selectPlayer: card.Owner,
+                                cardEffect: null);
 
+                            selectCardEffect.SetUseFaceDown();
                             selectCardEffect.SetUpCustomMessage("Select 1 digivolution card to discard.", "The opponent is selecting 1 digivolution card to discard.");
 
                             yield return ContinuousController.instance.StartCoroutine(selectCardEffect.Activate());
@@ -570,4 +572,4 @@ namespace DCGO.CardEffects.BT11
             return cardEffects;
         }
     }
-}
+}

+ 2 - 2
Assets/Scripts/CardEffect/BT11/Red/BT11_001.cs

@@ -24,12 +24,12 @@ namespace DCGO.CardEffects.BT11
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.LibraryCards.Count >= 1)
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT11/Red/BT11_007.cs

@@ -110,12 +110,12 @@ namespace DCGO.CardEffects.BT11
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.CanAddMemory(activateClass))
                         {

+ 2 - 18
Assets/Scripts/CardEffect/BT11/Red/BT11_009.cs

@@ -100,23 +100,7 @@ namespace DCGO.CardEffects.BT11
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.IsExistOnBattleArea(card))
-                    {
-                        if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition))
-                        {
-                            return true;
-                        }
-
-                        if (CardEffectCommons.IsDijiXros(hashtable, count => count == 2))
-                        {
-                            if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition1))
-                            {
-                                return true;
-                            }
-                        }
-                    }
-
-                    return false;
+                    return CardEffectCommons.IsExistOnBattleArea(card);
                 }
 
                 IEnumerator ActivateCoroutine(Hashtable _hashtable)
@@ -150,7 +134,7 @@ namespace DCGO.CardEffects.BT11
                         }
                     }
 
-                    if (CardEffectCommons.IsDijiXros(_hashtable, count => count == 2))
+                    if (CardEffectCommons.IsDijiXros(_hashtable, card, count => count == 2))
                     {
                         if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition1))
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT11/Red/BT11_011.cs

@@ -49,12 +49,12 @@ namespace DCGO.CardEffects.BT11
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.HandCards.Count >= 1)
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT11/Red/BT11_016.cs

@@ -195,12 +195,12 @@ namespace DCGO.CardEffects.BT11
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.HandCards.Count >= 1)
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT11/Yellow/BT11_036.cs

@@ -78,12 +78,12 @@ namespace DCGO.CardEffects.BT11
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (CardEffectCommons.HasMatchConditionOwnersCardInTrash(card, (cardSource) => CanSelectCardCondition(cardSource)))
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT11/Yellow/BT11_038.cs

@@ -44,12 +44,12 @@ namespace DCGO.CardEffects.BT11
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (CardEffectCommons.HasMatchConditionOwnersCardInTrash(card, (cardSource) => CanSelectCardCondition(cardSource)))
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT11/Yellow/BT11_040.cs

@@ -43,12 +43,12 @@ namespace DCGO.CardEffects.BT11
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.LibraryCards.Count >= 1)
                         {

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Black/BT12_063.cs

@@ -243,7 +243,7 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Black/BT12_064.cs

@@ -190,7 +190,7 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Black/BT12_071.cs

@@ -151,7 +151,7 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Blue/BT12_032.cs

@@ -207,7 +207,7 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Green/BT12_051.cs

@@ -258,7 +258,7 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Green/BT12_054.cs

@@ -49,7 +49,7 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Green/BT12_056.cs

@@ -29,7 +29,7 @@ namespace DCGO.CardEffects.BT12
 
                 string EffectDiscription()
                 {
-                    return "[When Digivolving] Suspend 1 of your opponent�f Digimon. Then, you may attack your opponent's Digimon with this Digimon.";
+                    return "[When Digivolving] Suspend 1 of your opponent's Digimon. Then, you may attack your opponent's Digimon with this Digimon.";
                 }
 
                 bool CanSelectPermanentCondition(Permanent permanent)

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Green/BT12_105.cs

@@ -128,7 +128,7 @@ namespace DCGO.CardEffects.BT12
                                 {
                                     if (CardEffectCommons.IsPermanentExistsOnBattleArea(selectedPermanent))
                                     {
-                                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable1, (permanent) => permanent == selectedPermanent))
+                                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable1, (permanent) => permanent == selectedPermanent, activateClass))
                                         {
                                             if (!selectedPermanent.TopCard.CanNotBeAffected(activateClass))
                                             {

+ 2 - 2
Assets/Scripts/CardEffect/BT12/Purple/BT12_006.cs

@@ -24,12 +24,12 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.LibraryCards.Count >= 1)
                         {

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Purple/BT12_077.cs

@@ -108,7 +108,7 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Purple/BT12_084.cs

@@ -574,7 +574,7 @@ namespace DCGO.CardEffects.BT12
                 {
                     if (CardEffectCommons.IsExistOnBattleArea(card))
                     {
-                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition))
+                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition, activateClass))
                         {
                             return true;
                         }

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Purple/BT12_085.cs

@@ -105,7 +105,7 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Red/BT12_011.cs

@@ -258,7 +258,7 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 4 - 4
Assets/Scripts/CardEffect/BT12/Red/BT12_012.cs

@@ -62,12 +62,12 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.HandCards.Count >= 1)
                         {
@@ -152,12 +152,12 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.HandCards.Count >= 1)
                         {

+ 8 - 2
Assets/Scripts/CardEffect/BT12/Red/BT12_015.cs

@@ -362,10 +362,16 @@ namespace DCGO.CardEffects.BT12
                                                 payCost: true,
                                                 targetPermanent: selectedPermanent,
                                                 isTapped: false,
+                                                failedProcess: OnFail,
                                                 root: SelectCardEffect.Root.Hand,
                                                 activateETB: true).PlayCard());
                                         }
 
+                                        IEnumerator OnFail(CardSource cardSource)
+                                        {
+                                            yield return ContinuousController.instance.StartCoroutine(CardObjectController.AddTrashCard(card));
+                                        }
+
                                         #region 6
 
                                         foreach (Func<EffectTiming, ICardEffect> GetCardEffect in GetCardEffects)
@@ -417,7 +423,7 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
@@ -467,4 +473,4 @@ namespace DCGO.CardEffects.BT12
             return cardEffects;
         }
     }
-}
+}

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Red/BT12_017.cs

@@ -129,7 +129,7 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT12/Yellow/BT12_037.cs

@@ -248,7 +248,7 @@ namespace DCGO.CardEffects.BT12
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 2
Assets/Scripts/CardEffect/BT12/Yellow/BT12_041.cs

@@ -70,7 +70,6 @@ namespace DCGO.CardEffects.BT12
                         {
                             for (int i = 0; i < count; i++)
                             {
-                                yield return GManager.instance.photonWaitController.StartWait("Cho-Hakkaimon");
 
                                 if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition))
                                 {
@@ -129,7 +128,7 @@ namespace DCGO.CardEffects.BT12
                     {
                         if (CardEffectCommons.IsOwnerTurn(card))
                         {
-                            if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition))
+                            if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition, activateClass))
                             {
                                 if (CardEffectCommons.IsDPZeroDelete(hashtable))
                                 {

+ 2 - 2
Assets/Scripts/CardEffect/BT12/Yellow/BT12_042.cs

@@ -105,7 +105,7 @@ namespace DCGO.CardEffects.BT12
                 {
                     if (CardEffectCommons.IsExistOnBattleArea(card))
                     {
-                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition))
+                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition, activateClass))
                         {
                             return true;
                         }
@@ -224,7 +224,7 @@ namespace DCGO.CardEffects.BT12
                 {
                     if (CardEffectCommons.IsExistOnBattleArea(card))
                     {
-                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition))
+                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition, activateClass))
                         {
                             return true;
                         }

+ 2 - 2
Assets/Scripts/CardEffect/BT13/Black/BT13_061.cs

@@ -33,12 +33,12 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.LibraryCards.Count >= 1)
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT13/Black/BT13_062.cs

@@ -187,12 +187,12 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (CardEffectCommons.HasMatchConditionOwnersCardInTrash(card, (cardSource) => CanSelectCardCondition(cardSource)))
                         {

+ 1 - 1
Assets/Scripts/CardEffect/BT13/Black/BT13_064.cs

@@ -69,7 +69,7 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT13/Black/BT13_065.cs

@@ -29,7 +29,7 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT13/Black/BT13_068.cs

@@ -67,7 +67,7 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT13/Black/BT13_070.cs

@@ -67,7 +67,7 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT13/Black/BT13_073.cs

@@ -53,7 +53,7 @@ namespace DCGO.CardEffects.BT13
                 {
                     if (CardEffectCommons.IsExistOnBattleArea(card))
                     {
-                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition))
+                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition, activateClass))
                         {
                             return true;
                         }

+ 1 - 1
Assets/Scripts/CardEffect/BT13/Black/BT13_076.cs

@@ -66,7 +66,7 @@ namespace DCGO.CardEffects.BT13
                 {
                     if (CardEffectCommons.IsExistOnBattleArea(card))
                     {
-                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition))
+                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition, activateClass))
                         {
                             return true;
                         }

+ 0 - 2
Assets/Scripts/CardEffect/BT13/Green/BT13_059.cs

@@ -280,8 +280,6 @@ namespace DCGO.CardEffects.BT13
 
                 IEnumerator ActivateCoroutine(Hashtable _hashtable)
                 {
-                    yield return GManager.instance.photonWaitController.StartWait("Examon_Select_ET13_059");
-
                     List<SelectionElement<bool>> selectionElements = new List<SelectionElement<bool>>()
                         {
                             new SelectionElement<bool>(message: $"Suspend 1 Digimon", value : true, spriteIndex: 0),

+ 2 - 2
Assets/Scripts/CardEffect/BT13/Purple/BT13_006.cs

@@ -41,12 +41,12 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.HandCards.Count >= 1)
                         {

+ 1 - 1
Assets/Scripts/CardEffect/BT13/Purple/BT13_078.cs

@@ -23,7 +23,7 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 2 - 2
Assets/Scripts/CardEffect/BT13/Purple/BT13_079.cs

@@ -107,12 +107,12 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (!CardEffectCommons.IsByBattle(hashtable))
                         {

+ 1 - 1
Assets/Scripts/CardEffect/BT13/Purple/BT13_080.cs

@@ -418,7 +418,7 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT13/Purple/BT13_081.cs

@@ -112,7 +112,7 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 2 - 2
Assets/Scripts/CardEffect/BT13/Purple/BT13_082.cs

@@ -30,12 +30,12 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (!CardEffectCommons.IsByBattle(hashtable))
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT13/Purple/BT13_083.cs

@@ -413,12 +413,12 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.TrashCards.Count(CanSelectCardCondition) >= 2)
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT13/Purple/BT13_085.cs

@@ -101,12 +101,12 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (!CardEffectCommons.IsByBattle(hashtable))
                         {

+ 1 - 1
Assets/Scripts/CardEffect/BT13/Purple/BT13_086.cs

@@ -437,7 +437,7 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT13/Purple/BT13_089.cs

@@ -198,7 +198,7 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 1 - 1
Assets/Scripts/CardEffect/BT13/Purple/BT13_091.cs

@@ -240,7 +240,7 @@ namespace DCGO.CardEffects.BT13
 
                 string EffectDiscription()
                 {
-                    return "[End of Opponent�f Turn] If this Digimon is [Belphemon: Sleep Mode], trash the top card of this Digimon. ";
+                    return "[End of Opponent's Turn] If this Digimon is [Belphemon: Sleep Mode], trash the top card of this Digimon. ";
                 }
 
                 bool CanUseCondition(Hashtable hashtable)

+ 2 - 2
Assets/Scripts/CardEffect/BT13/Red/BT13_001.cs

@@ -38,12 +38,12 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition))
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT13/Red/BT13_010.cs

@@ -147,12 +147,12 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.LibraryCards.Count >= 1)
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT13/Red/BT13_011.cs

@@ -163,12 +163,12 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.LibraryCards.Count >= 1)
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT13/Red/BT13_014.cs

@@ -218,12 +218,12 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion( hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition))
                         {

+ 2 - 2
Assets/Scripts/CardEffect/BT13/Red/BT13_015.cs

@@ -153,7 +153,7 @@ namespace DCGO.CardEffects.BT13
                 {
                     if (CardEffectCommons.IsExistOnBattleArea(card))
                     {
-                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition))
+                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition, activateClass))
                         {
                             return true;
                         }
@@ -275,7 +275,7 @@ namespace DCGO.CardEffects.BT13
                 {
                     if (CardEffectCommons.IsExistOnBattleArea(card))
                     {
-                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition))
+                        if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable, PermanentCondition, activateClass))
                         {
                             return true;
                         }

+ 1 - 1
Assets/Scripts/CardEffect/BT13/Red/BT13_094.cs

@@ -177,7 +177,7 @@ namespace DCGO.CardEffects.BT13
                                         {
                                             if (CardEffectCommons.IsPermanentExistsOnBattleArea(selectedPermanent))
                                             {
-                                                if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable1, (permanent) => permanent == selectedPermanent))
+                                                if (CardEffectCommons.CanTriggerOnPermanentDeleted(hashtable1, (permanent) => permanent == selectedPermanent, activateClass))
                                                 {
                                                     if (!selectedPermanent.TopCard.CanNotBeAffected(activateClass))
                                                     {

+ 2 - 2
Assets/Scripts/CardEffect/BT13/White/BT13_093.cs

@@ -94,12 +94,12 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnDeletion(hashtable, card, activateClass);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(hashtable, card))
+                    if (CardEffectCommons.CanActivateOnDeletion(card, activateClass))
                     {
                         if (card.Owner.HandCards.Count(CanSelectCardCondition) >= 1)
                         {

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels