Commit 6d3096d6 authored by SherryChaos's avatar SherryChaos

Card Effect SE: Dominus Purge & Dominus Impulse

parent a89a6671
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -6758,6 +6758,7 @@ MonoBehaviour: ...@@ -6758,6 +6758,7 @@ MonoBehaviour:
ES_sortSum: 0 ES_sortSum: 0
ES_turnString: ES_turnString:
duelEnded: 0 duelEnded: 0
nextNegateAction_AdditionalManager: {fileID: 0}
lastSelectedCard: 0 lastSelectedCard: 0
nextMoveManager: {fileID: 0} nextMoveManager: {fileID: 0}
nextMoveTime: 0 nextMoveTime: 0
...@@ -8062,7 +8063,7 @@ RectTransform: ...@@ -8062,7 +8063,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 1, y: 0} m_AnchorMin: {x: 1, y: 0}
m_AnchorMax: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 600, y: 0} m_AnchoredPosition: {x: 599.99994, y: 0}
m_SizeDelta: {x: 600, y: 0} m_SizeDelta: {x: 600, y: 0}
m_Pivot: {x: 1, y: 0.5} m_Pivot: {x: 1, y: 0.5}
--- !u!114 &1850716665 --- !u!114 &1850716665
......
...@@ -2395,6 +2395,7 @@ namespace MDPro3 ...@@ -2395,6 +2395,7 @@ namespace MDPro3
ModelAt(p, model); ModelAt(p, model);
manager = model.GetComponent<ElementObjectManager>(); manager = model.GetComponent<ElementObjectManager>();
} }
var cardFace = manager.GetElement<Transform>("CardModel").GetChild(1).GetComponent<Renderer>(); var cardFace = manager.GetElement<Transform>("CardModel").GetChild(1).GetComponent<Renderer>();
var originMono = cardFace.material.GetFloat("_Monochrome"); var originMono = cardFace.material.GetFloat("_Monochrome");
Tools.ChangeLayer(model, "DuelOverlay3D"); Tools.ChangeLayer(model, "DuelOverlay3D");
...@@ -2404,6 +2405,20 @@ namespace MDPro3 ...@@ -2404,6 +2405,20 @@ namespace MDPro3
var pivot = manager.GetElement<Transform>("Pivot"); var pivot = manager.GetElement<Transform>("Pivot");
var offset = manager.GetElement<Transform>("Offset"); var offset = manager.GetElement<Transform>("Offset");
var scale = pivot.localScale; var scale = pivot.localScale;
bool additional = false;
if (Program.instance.ocgcore.nextNegateAction_Additional != null)
{
Program.instance.ocgcore.nextNegateAction_AdditionalManager.transform.SetParent(offset, false);
Program.instance.ocgcore.nextNegateAction_Additional?.Invoke();
Program.instance.ocgcore.nextNegateAction_Additional = null;
additional = true;
}
var showTime = 0.5f;
if (additional)
showTime += Program.instance.ocgcore.nextNegateAction_AdditionalTime;
var sequence = DOTween.Sequence(); var sequence = DOTween.Sequence();
if ((p.location & (uint)CardLocation.Onfield) > 0 if ((p.location & (uint)CardLocation.Onfield) > 0
|| (p.location & (uint)CardLocation.Extra) > 0 || (p.location & (uint)CardLocation.Extra) > 0
...@@ -2412,11 +2427,11 @@ namespace MDPro3 ...@@ -2412,11 +2427,11 @@ namespace MDPro3
HideLabel(); HideLabel();
sequence.Append(offset.DOLocalMoveY(5, 0.1f)); sequence.Append(offset.DOLocalMoveY(5, 0.1f));
sequence.Join(DOTween.To(() => originMono, x => cardFace.material.SetFloat("_Monochrome", x), 1, 0.1f)); sequence.Join(DOTween.To(() => originMono, x => cardFace.material.SetFloat("_Monochrome", x), 1, 0.1f));
sequence.AppendInterval(0.5f); sequence.AppendInterval(showTime);
sequence.Append(offset.DOLocalMoveY(0f, 0.2f)); sequence.Append(offset.DOLocalMoveY(0f, 0.2f));
sequence.Join(DOTween.To(() => 1, x => cardFace.material.SetFloat("_Monochrome", x), 0, 0.2f)); sequence.Join(DOTween.To(() => 1, x => cardFace.material.SetFloat("_Monochrome", x), 0, 0.2f));
sequence.Insert(0, pivot.DOScale(1f, 0.1f)); sequence.Insert(0, pivot.DOScale(1f, 0.1f));
sequence.Insert(0.6f, pivot.DOScale(scale, 0.2f)); sequence.Insert(0.1f + showTime, pivot.DOScale(scale, 0.2f));
sequence.OnComplete(() => sequence.OnComplete(() =>
{ {
Tools.ChangeLayer(model, "Default"); Tools.ChangeLayer(model, "Default");
...@@ -2440,14 +2455,14 @@ namespace MDPro3 ...@@ -2440,14 +2455,14 @@ namespace MDPro3
sequence.Join(pivot.DOLocalRotate(Vector3.zero, 0.1f)); sequence.Join(pivot.DOLocalRotate(Vector3.zero, 0.1f));
sequence.Join(manager.GetElement<Transform>("Turn").DOLocalRotate(Vector3.zero, 0.1f)); sequence.Join(manager.GetElement<Transform>("Turn").DOLocalRotate(Vector3.zero, 0.1f));
sequence.Join(DOTween.To(() => originMono, x => cardFace.material.SetFloat("_Monochrome", x), 1, 0.1f)); sequence.Join(DOTween.To(() => originMono, x => cardFace.material.SetFloat("_Monochrome", x), 1, 0.1f));
sequence.Append(offset.DOLocalMoveY(1.2f, 0.5f)); sequence.Append(offset.DOLocalMoveY(1.2f, showTime));
sequence.Join(offset.DOLocalMoveZ(5.5f, 0.5f)); sequence.Join(offset.DOLocalMoveZ(5.5f, showTime));
sequence.Append(offset.DOLocalMoveY(0f, 0.2f)); sequence.Append(offset.DOLocalMoveY(0f, 0.2f));
sequence.Join(offset.DOLocalMoveZ(0f, 0.2f)); sequence.Join(offset.DOLocalMoveZ(0f, 0.2f));
sequence.Join(pivot.DOLocalRotate(originRotaion, 0.15f)); sequence.Join(pivot.DOLocalRotate(originRotaion, 0.15f));
sequence.Join(DOTween.To(() => 1, x => cardFace.material.SetFloat("_Monochrome", x), 0, 0.2f)); sequence.Join(DOTween.To(() => 1, x => cardFace.material.SetFloat("_Monochrome", x), 0, 0.2f));
sequence.Insert(0, pivot.DOScale(1.2f, 0.2f)); sequence.Insert(0, pivot.DOScale(1.2f, 0.2f));
sequence.Insert(0.6f, pivot.DOScale(scale, 0.2f)); sequence.Insert(showTime + 0.1f, pivot.DOScale(scale, 0.2f));
sequence.OnComplete(() => sequence.OnComplete(() =>
{ {
Tools.ChangeLayer(model, "Default"); Tools.ChangeLayer(model, "Default");
...@@ -2462,11 +2477,11 @@ namespace MDPro3 ...@@ -2462,11 +2477,11 @@ namespace MDPro3
offset.localPosition = new Vector3(0, -5, 0); offset.localPosition = new Vector3(0, -5, 0);
sequence.Append(offset.DOLocalMoveY(0, 0.1f)); sequence.Append(offset.DOLocalMoveY(0, 0.1f));
sequence.Join(DOTween.To(() => originMono, x => cardFace.material.SetFloat("_Monochrome", x), 1, 0.1f)); sequence.Join(DOTween.To(() => originMono, x => cardFace.material.SetFloat("_Monochrome", x), 1, 0.1f));
sequence.AppendInterval(0.5f); sequence.AppendInterval(showTime);
sequence.Append(offset.DOLocalMoveY(-5f, 0.2f)); sequence.Append(offset.DOLocalMoveY(-5f, 0.2f));
sequence.Join(DOTween.To(() => 1, x => cardFace.material.SetFloat("_Monochrome", x), 0, 0.2f)); sequence.Join(DOTween.To(() => 1, x => cardFace.material.SetFloat("_Monochrome", x), 0, 0.2f));
sequence.Insert(0, offset.DOScale(1f, 0.1f)); sequence.Insert(0, offset.DOScale(1f, 0.1f));
sequence.Insert(0.6f, offset.DOScale(Vector3.one * 0.2f, 0.2f)); sequence.Insert(showTime + 0.1f, offset.DOScale(Vector3.one * 0.2f, 0.2f));
sequence.OnComplete(() => sequence.OnComplete(() =>
{ {
Destroy(model); Destroy(model);
......
using System.Threading.Tasks;
using System.Threading;
using UnityEngine; using UnityEngine;
using UnityEngine.Networking;
namespace MDPro3 namespace MDPro3
{ {
...@@ -10,17 +7,21 @@ namespace MDPro3 ...@@ -10,17 +7,21 @@ namespace MDPro3
public static void DestroyAllChildren(this Transform transform) public static void DestroyAllChildren(this Transform transform)
{ {
for (int i = 0; i < transform.childCount; i++) for (int i = 0; i < transform.childCount; i++)
UnityEngine.Object.Destroy(transform.GetChild(i).gameObject); Object.Destroy(transform.GetChild(i).gameObject);
} }
public static Transform GetChildByName(this Transform parent, string childName) public static Transform GetChildByName(this Transform parent, string childName)
{ {
foreach (var t in parent.GetComponentsInChildren<Transform>(true)) foreach (var t in parent.GetComponentsInChildren<Transform>(true))
{ if (t.name == childName)
if (t.name == childName) return t;
return t;
}
return null; return null;
} }
public static void DestroyChildByName(this Transform parent, string childName)
{
Object.Destroy(parent.GetChildByName(childName).gameObject);
}
} }
} }
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment