public bool Shaking;
private float ShakeDecay;
private float ShakeIntensity;
private Vector3 OriginalPos;
private Quaternion OriginalRot;
public GameObject HealthDownEffect;
void Awake(){
HealthDownEffect.SetActive (false);
}
void Start()
{
Shaking = false;
shake ();
}
void shake(){
if(Player.snake == true)
{
DoShake();
}
}
void Update ()
{
if (ShakeIntensity > 0) {
transform.position = OriginalPos + Random.insideUnitSphere * ShakeIntensity;
/*transform.rotation = new Quaternion(OriginalRot.x + Random.Range(-ShakeIntensity, ShakeIntensity)*.2f,
OriginalRot.y + Random.Range(-ShakeIntensity, ShakeIntensity)*.2f,
OriginalRot.z + Random.Range(-ShakeIntensity, ShakeIntensity)*.2f,
OriginalRot.w + Random.Range(-ShakeIntensity, ShakeIntensity)*.2f);
*/
ShakeIntensity -= ShakeDecay;
}
else if (Shaking)
{
Shaking = false;
}
shake ();
}
IEnumerator Waiting() {
HealthDownEffect.SetActive (true);
//myPlayer.GetComponent<Rigidbody2D> ().isKinematic = true;
yield return new WaitForSeconds(0.15f);
// myPlayer.GetComponent<Rigidbody2D> ().isKinematic = false;
HealthDownEffect.SetActive (false);
}
/*void OnGUI() {
if (GUI.Button(new Rect(10, 200, 50, 30), "Shake"))
DoShake();
//Debug.Log("Shake");
}
*/
public void DoShake()
{
StartCoroutine(Waiting());
OriginalPos = transform.position;
//OriginalRot = transform.rotation;
ShakeIntensity = 0.3f;
ShakeDecay = 0.02f;
Shaking = true;
Player.snake = false;
}
private float ShakeDecay;
private float ShakeIntensity;
private Vector3 OriginalPos;
private Quaternion OriginalRot;
public GameObject HealthDownEffect;
void Awake(){
HealthDownEffect.SetActive (false);
}
void Start()
{
Shaking = false;
shake ();
}
void shake(){
if(Player.snake == true)
{
DoShake();
}
}
void Update ()
{
if (ShakeIntensity > 0) {
transform.position = OriginalPos + Random.insideUnitSphere * ShakeIntensity;
/*transform.rotation = new Quaternion(OriginalRot.x + Random.Range(-ShakeIntensity, ShakeIntensity)*.2f,
OriginalRot.y + Random.Range(-ShakeIntensity, ShakeIntensity)*.2f,
OriginalRot.z + Random.Range(-ShakeIntensity, ShakeIntensity)*.2f,
OriginalRot.w + Random.Range(-ShakeIntensity, ShakeIntensity)*.2f);
*/
ShakeIntensity -= ShakeDecay;
}
else if (Shaking)
{
Shaking = false;
}
shake ();
}
IEnumerator Waiting() {
HealthDownEffect.SetActive (true);
//myPlayer.GetComponent<Rigidbody2D> ().isKinematic = true;
yield return new WaitForSeconds(0.15f);
// myPlayer.GetComponent<Rigidbody2D> ().isKinematic = false;
HealthDownEffect.SetActive (false);
}
/*void OnGUI() {
if (GUI.Button(new Rect(10, 200, 50, 30), "Shake"))
DoShake();
//Debug.Log("Shake");
}
*/
public void DoShake()
{
StartCoroutine(Waiting());
OriginalPos = transform.position;
//OriginalRot = transform.rotation;
ShakeIntensity = 0.3f;
ShakeDecay = 0.02f;
Shaking = true;
Player.snake = false;
}
No comments:
Post a Comment