47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using System.Collections;
 | |
| using System.Collections.Generic;
 | |
| using UnityEngine;
 | |
| 
 | |
| public class IsMovingTester : MonoBehaviour
 | |
| {
 | |
|     private Animator animator;
 | |
|     private Rigidbody2D rb;
 | |
|     public AudioSource audioSource; // Reference to the AudioSource component
 | |
| 	public AudioClip watschelSound; // The sound clip to be played
 | |
|     public bool isPlaying = false; // Boolean to control the sound loop
 | |
|     private FallingDetection fallingDetection;
 | |
| 
 | |
|     void Start()
 | |
|     {
 | |
|         animator = GetComponent<Animator>();
 | |
|         rb = GetComponent<Rigidbody2D>();
 | |
|         fallingDetection = gameObject.GetComponent<FallingDetection>();
 | |
|     }
 | |
| 
 | |
|     void Update()
 | |
|     {
 | |
|         if (rb.velocity.magnitude > 0.1f)
 | |
|         {
 | |
|             animator.SetBool("IsMoving", true);
 | |
|             //Bewegt sich gerade und kein anderer Wert ist an, ausserdem Spielt es noch nicht
 | |
|             if (!animator.GetBool("IsPushing") && !animator.GetBool("IsFalling")&&!fallingDetection.isJumping){
 | |
|                 if(!isPlaying){
 | |
|                 audioSource.clip = watschelSound;
 | |
|                 audioSource.loop = true;
 | |
|                 audioSource.Play();
 | |
|                 isPlaying = true;}
 | |
|             } else {
 | |
|                 audioSource.Stop();
 | |
|                 isPlaying = false;
 | |
|             }
 | |
| 
 | |
|         }
 | |
|         else
 | |
|         {
 | |
|             animator.SetBool("IsMoving", false);
 | |
|             audioSource.Stop();
 | |
|             isPlaying = false;
 | |
|         }
 | |
|     }
 | |
| }
 |