Exemplo n.º 1
0
    public static MiniTweenerFOV start(Camera cam, float targetFov, float duration, string easingType, float delay = 0.0f, System.Delegate callback = null, params object[] args)
    {
        MiniTweenerFOV mt = new MiniTweenerFOV();

        mt.init(cam, targetFov, duration, easingType, delay, callback, args);
        return(mt);
    }
Exemplo n.º 2
0
    public void setCutSceneCameraMove(Transform target, bool setCamCenter, Vector2 centerPoint, bool setCamPos, Vector3 newCamPos, bool setCamRot, Vector3 newCamRot, float fov, float motionTime, int newMotionType = -1, int nowMotionType = -1, string easingType = null)
    {
        useHandHeldAfterCameraMoving = false;

        usePlayerPositionOffsetWhenSkillEffectCam = true;
        isFollowPlayerWhenSkillEffectCamIdle      = false;

        if (useHandHeld)
        {
            _v = handHeldEffect.tf.localPosition;
            gameCameraPosContainer.localPosition += _v;
            handHeldEffect.tf.localPosition       = Vector3.zero;
        }

        useHandHeld         = false;
        camAround.isEnabled = false;

        clearTweener();

        _motionDelta = 0.0f;

        if (target != null)
        {
            cameraTarget = target;
        }
        if (setCamCenter)
        {
            csCamPositionCalcVector.x = GameManager.screenWidth * gameCamera.rect.x + GameManager.screenWidth * gameCamera.rect.width * (centerPoint.x / GameManager.screenSize.x);
            csCamPositionCalcVector.y = GameManager.screenHeight * gameCamera.rect.y + GameManager.screenHeight * gameCamera.rect.height * (centerPoint.y / GameManager.screenSize.y);

            csCamOffset.x = (GameManager.screenSize.x * 0.5f - centerPoint.x) / GameManager.screenSize.x;
            csCamOffset.y = (GameManager.screenSize.y * 0.5f - centerPoint.y) / GameManager.screenSize.y;
            csCamOffset.x = GameManager.screenWidth * csCamOffset.x * gameCamera.rect.width;
            csCamOffset.y = GameManager.screenHeight * csCamOffset.y * gameCamera.rect.height;
        }

        this.motionTime = motionTime;

        if ((target != null || setCamCenter))        //&& setCamPos == false)
        {
            motionStartTime      = Time.time;
            targetChangeTweening = true;
            _startCameraPos      = gameCamera.transform.localPosition;
            _startCameraRot      = gameCamera.transform.rotation;
        }
        else
        {
            targetChangeTweening = false;
        }

        if (nowSkillEffectCamStatus == SKILL_EFFECT_CAM_STATUS.Play)
        {
            newCamPos += getUnitSkillCamOffsetPosition();
        }

        if (fov > 0)
        {
            tweener.Add(MiniTweenerFOV.start(gameCamera, fov, motionTime, easingType));
        }
        if (setCamPos)
        {
            tweener.Add(MiniTweenerLocalPosition.start(gameCameraPosContainer, newCamPos, motionTime, easingType));
        }
        if (setCamRot)
        {
            tweener.Add(MiniTweenerCamRotation.start(gameCamera, newCamRot, motionTime, easingType));
        }

        nextMotionType = csCamMoveType;
        if (newMotionType > -1)
        {
            nextMotionType = newMotionType;
        }
        if (nowMotionType > -1)
        {
            csCamMoveType = nowMotionType;
        }

        System.Action <int> callbackFunc = onCompleteCameraMove;
        tweener.Add(MiniTweenerDelayMethod.start(motionTime, 0.0f, callbackFunc, nextMotionType));
    }