예제 #1
0
    private void PowerStore()
    {
        // Effect Control.
        float castTime   = SkillController.GetCastTime(sourceCaster, currentSkill);
        var   energeMain = powerStoreEffect.main;

        energeMain.startLifetime            = castTime;
        powerStoreEffect.transform.position = sourceCaster.transform.position;
        powerStoreEffect.Play(true);

        // Camera Control.
        ZoomInSetting[] zoomInSetting = new ZoomInSetting[]
        {
            new ZoomInSetting {
                finalZoomSize = 5.5f, duration = castTime, startDelay = 0f
            },
            new ZoomInSetting {
                finalZoomSize = 6f, duration = 0.1f, startDelay = 0.05f
            }
        };

        CameraControl.Zoom.Instance.AddSet(zoomInSetting);
        CameraControl.Shake.Instance.ShakeCameraLinear(2f, 10f, castTime);

        // Character Control.
        StartCoroutine(LockCasterPosition(castTime));
    }
예제 #2
0
    public void BurstSoul()
    {
        soulBurstParticle.Play();
        surroundWindParticle.Stop();

        // Player 吸取靈魂
        if (lastAttackMeTarget.GetComponent <Player>() != null)
        {
            #region Setting
            Player pl       = lastAttackMeTarget.GetComponent <Player>();
            float  duration = soulBurstParticle.main.startLifetime.constant;
            float  offset   = 0.5f;
            #endregion

            ChnageLayer(soulBurstParticle.gameObject, true, 1);

            pl.TriggerAttractorBurstEffect(duration);
            CameraControl.Shake.Instance.ShakeCamera(4f, 4f, 0.2f, false, duration, true);
            ZoomInSetting[] zoomInSetting = new ZoomInSetting[]
            {
                new ZoomInSetting {
                    finalZoomSize = 5.6f, duration = duration - offset, startDelay = 0f
                },
                new ZoomInSetting {
                    finalZoomSize = 6f, duration = 0.2f, startDelay = offset
                }
            };

            CameraControl.Zoom.Instance.AddSet(zoomInSetting);
        }
    }
예제 #3
0
    // 使用技能後,立即進入模糊畫面與畫面特寫
    private void GetInDarkScreenAndZoomIn()
    {
        ZoomInSetting[] zoomInSetting = new ZoomInSetting[]
        {
            new ZoomInSetting {
                finalZoomSize = 5.5f, duration = 0.05f, startDelay = 0f
            },
            new ZoomInSetting {
                finalZoomSize = 6f, duration = 0.2f, startDelay = 0.6f
            }
        };
        CameraControl.Zoom.Instance.AddSet(zoomInSetting);

        ImageEffectController.Instance.SetMotionBlur(1f, 0.2f, 0.3f);
    }