mirror of
https://github.com/Cardidi/dotween-upm-fork.git
synced 2025-12-21 01:36:05 +08:00
43 lines
1.5 KiB
C#
43 lines
1.5 KiB
C#
using UnityEngine;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using DG.Tweening;
|
|
using UnityEngine.SceneManagement;
|
|
|
|
public class TempPro : MonoBehaviour
|
|
{
|
|
public Transform target;
|
|
public Vector3 damageShakeStrength = new Vector3( 0.4f, 0.2f, 0 );
|
|
public int damageShakeVibration = 7;
|
|
public float damageShakeRandomness = 15;
|
|
public float damageShakeDuration = 1.5f;
|
|
private Tweener screenShake;
|
|
|
|
private Vector3 original;
|
|
|
|
// Use this for initialization
|
|
void Start()
|
|
{
|
|
original = target.position;
|
|
}
|
|
|
|
// Update is called once per frame
|
|
void Update()
|
|
{
|
|
if ( Input.GetKeyDown( KeyCode.K ) )
|
|
Time.timeScale = Time.timeScale < 1 ? Time.timeScale = 1 : 0;
|
|
|
|
if ( Input.GetKeyDown( KeyCode.S ) )
|
|
{
|
|
Vector3 shakeOffset = new Vector3();
|
|
screenShake = DOTween.Shake( () => shakeOffset, x => { shakeOffset = x; target.position += x; }, damageShakeDuration, damageShakeStrength, damageShakeVibration, damageShakeRandomness, false )
|
|
.SetUpdate( false );
|
|
// screenShake = target.DOMoveX(10, damageShakeDuration);
|
|
// screenShake = target.DOShakePosition(damageShakeDuration, damageShakeStrength, damageShakeVibration, damageShakeRandomness, false);
|
|
screenShake.OnComplete( () =>
|
|
{
|
|
screenShake = target.DOMove( original, 0.5f ).OnComplete( () => screenShake = null ).SetUpdate( false );
|
|
} );
|
|
}
|
|
}
|
|
} |