private void DestroyAnimationCompleted() { transform.DOKill(); GetCore.GetComponent <MeshRenderer>().material.DOKill(); GetMeshRenderer.GetComponent <MeshRenderer>() .material.DOKill(); InSlot.SetJewel = null; Destroy(gameObject); }
public void DestroySelf(float animationSpeed) { transform.DOScale(Vector3.one * 1.1f, 0.5f).OnComplete(Implode); transform.DOShakePosition(0.75f, 0.05f, 20, 90f, false, false).SetEase(Ease.InExpo).OnComplete(DestroyAnimationCompleted); var lightAnimator = GetMeshRenderer.AddComponent <AnimateMaterialEmission>(); lightAnimator.AnimateLight(Color.white, 1, GetCore.GetComponent <Renderer>()); }
public void LightOn(bool slow = false) { if (IsLit) { return; } var lightAnimator = GetMeshRenderer.AddComponent <AnimateMaterialEmission>(); lightAnimator.AnimateLight(_litEmissionColor, 15, GetCore.GetComponent <Renderer>()); IsLit = true; lightAnimator.transform.DOShakePosition(0.15f, Vector3.one * 0.25f, 100); CancelInvoke(); }
public void LightOff(bool slow = false) { if (!IsLit) { return; } var speed = 4; if (slow) { speed = 2; } var lightAnimator = GetMeshRenderer.AddComponent <AnimateMaterialEmission>(); lightAnimator.AnimateLight(Color.black, speed, GetCore.GetComponent <Renderer>()); IsLit = false; }