From 0b32ce7036795bd670ea79a7fa488c10de741e1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20LUDWIG?= Date: Fri, 16 May 2025 19:27:38 +0200 Subject: [PATCH] feat: sounds effects (click on button, win and death) (#67) --- Assets/Resources/InGame/Save.png | Bin 0 -> 9086 bytes Assets/Resources/InGame/Save.png.meta | 155 ++++++++++++++++++ Assets/Resources/Sounds.meta | 8 + Assets/Resources/Sounds/click.mp3 | Bin 0 -> 8913 bytes Assets/Resources/Sounds/click.mp3.meta | 23 +++ Assets/Resources/Sounds/death.mp3 | Bin 0 -> 10168 bytes Assets/Resources/Sounds/death.mp3.meta | 23 +++ Assets/Resources/Sounds/win.mp3 | Bin 0 -> 37293 bytes Assets/Resources/Sounds/win.mp3.meta | 23 +++ Assets/Scenes/EditorChoiceScene.unity | 132 +++++++++++++++ Assets/Scenes/HomeScene.unity | 131 +++++++++++++++ Assets/Scenes/ImportScene.unity | 131 +++++++++++++++ Assets/Scenes/LevelEditorScene.unity | 140 +++++++++++++++- Assets/Scenes/LevelScene.unity | 136 ++++++++++++++- Assets/Scenes/SelectLevelScene.unity | 137 ++++++++++++++++ Assets/Scenes/SelectLevelToEditScene.unity | 134 +++++++++++++++ Assets/{AI.cs => Scripts/AIToggle.cs} | 0 .../{AI.cs.meta => Scripts/AIToggle.cs.meta} | 0 Assets/Scripts/GameMode/NormalGameMode.cs | 24 +-- Assets/Scripts/GameMode/ShipGameMode.cs | 12 +- Assets/Scripts/LevelLoader.cs | 18 +- .../Scripts/LevelsSelect/LevelHomeButton.cs | 15 +- .../Scripts/LevelsSelect/LevelNextButton.cs | 4 + .../LevelsSelect/LevelPreviousButton.cs | 4 + Assets/Scripts/MainMenu.cs | 33 +++- Assets/Scripts/PauseMenu.cs | 14 +- Assets/Scripts/Player.cs | 28 ++++ Assets/Scripts/TestManager.cs | 3 +- 28 files changed, 1265 insertions(+), 63 deletions(-) create mode 100644 Assets/Resources/InGame/Save.png create mode 100644 Assets/Resources/InGame/Save.png.meta create mode 100644 Assets/Resources/Sounds.meta create mode 100644 Assets/Resources/Sounds/click.mp3 create mode 100644 Assets/Resources/Sounds/click.mp3.meta create mode 100644 Assets/Resources/Sounds/death.mp3 create mode 100644 Assets/Resources/Sounds/death.mp3.meta create mode 100644 Assets/Resources/Sounds/win.mp3 create mode 100644 Assets/Resources/Sounds/win.mp3.meta rename Assets/{AI.cs => Scripts/AIToggle.cs} (100%) rename Assets/{AI.cs.meta => Scripts/AIToggle.cs.meta} (100%) diff --git a/Assets/Resources/InGame/Save.png b/Assets/Resources/InGame/Save.png new file mode 100644 index 0000000000000000000000000000000000000000..5a5f40830b613c31d3ead6b4305d808521bce052 GIT binary patch literal 9086 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 aa8z{Oru{N)niAuUG%-ATGXI3*z5fG0t&Ft* literal 0 HcmV?d00001 diff --git a/Assets/Resources/InGame/Save.png.meta b/Assets/Resources/InGame/Save.png.meta new file mode 100644 index 0000000..919c2fd --- /dev/null +++ b/Assets/Resources/InGame/Save.png.meta @@ -0,0 +1,155 @@ +fileFormatVersion: 2 +guid: 58314e7be35f3201e8f3d376508d5800 +TextureImporter: + internalIDToNameTable: + - first: + 213: -522367714226421056 + second: Save_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: Save_0 + rect: + serializedVersion: 2 + x: 24 + y: 23 + width: 464 + height: 464 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: 0c2c66fd45d20c8f0800000000000000 + internalID: -522367714226421056 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sounds.meta b/Assets/Resources/Sounds.meta new file mode 100644 index 0000000..42448a2 --- /dev/null +++ b/Assets/Resources/Sounds.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1f762bc8c54d24bc38a9c08ae37e1861 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sounds/click.mp3 b/Assets/Resources/Sounds/click.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..55953dd100b2af14112bf327ce0e412b0b1a2479 GIT binary patch literal 8913 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.Combine("Musics", levelsLoader.levelCurrent.musicName)); + musicSource.clip = Resources.Load(Path.Combine("Musics", levelsLoader.levelCurrent.musicName)); if (PlayerPrefs.HasKey("Volume")) { - audioSource.volume = PlayerPrefs.GetFloat("Volume"); + musicSource.volume = PlayerPrefs.GetFloat("Volume"); } else { - audioSource.volume = 1f; + musicSource.volume = 1f; } - audioSource.Play(); + musicSource.Play(); } private void LoadElements() @@ -40,10 +40,10 @@ public class LevelLoader : MonoBehaviour GameObject prefab = GetPrefab(element.type); GameObject instance = Instantiate(prefab, new Vector3(element.x, element.y, 0), Quaternion.identity); - // if (prefab.CompareTag("Kill")) - // { - Instantiate(Resources.Load("AICollider"), new Vector3(element.x - 1, element.y, 0), Quaternion.identity); - // } + if (prefab.CompareTag("Kill")) + { + Instantiate(Resources.Load("AICollider"), new Vector3(element.x - 1, element.y, 0), Quaternion.identity); + } Vector3 originalScale = instance.transform.localScale; float newScaleX = element.scaleX > 0 ? element.scaleX : originalScale.x; diff --git a/Assets/Scripts/LevelsSelect/LevelHomeButton.cs b/Assets/Scripts/LevelsSelect/LevelHomeButton.cs index 8c598ad..e61ac40 100644 --- a/Assets/Scripts/LevelsSelect/LevelHomeButton.cs +++ b/Assets/Scripts/LevelsSelect/LevelHomeButton.cs @@ -1,12 +1,25 @@ +using System.Collections; +using System.IO; using UnityEngine; using UnityEngine.SceneManagement; public class LevelHomeButton : MonoBehaviour { + public AudioSource sfxSource; + + public static IEnumerator PlaySoundAndLoadScene(AudioSource sfxSource, string scene) + { + yield return new WaitWhile(() => sfxSource.isPlaying); + SceneManager.LoadScene(scene); + } + public void GoToHome() { PlayerPrefs.SetInt("CreateMode", 0); PlayerPrefs.SetInt("EditMode", 0); - SceneManager.LoadScene("HomeScene"); + + sfxSource.clip = Resources.Load(Path.Combine("Sounds", "click")); + sfxSource.Play(); + StartCoroutine(PlaySoundAndLoadScene(sfxSource, "HomeScene")); } } diff --git a/Assets/Scripts/LevelsSelect/LevelNextButton.cs b/Assets/Scripts/LevelsSelect/LevelNextButton.cs index c85343d..b170fa5 100644 --- a/Assets/Scripts/LevelsSelect/LevelNextButton.cs +++ b/Assets/Scripts/LevelsSelect/LevelNextButton.cs @@ -1,7 +1,9 @@ +using System.IO; using UnityEngine; public class LevelNextButton : MonoBehaviour { + public AudioSource sfxSource; public LevelsLoader levelsLoader; public void Start() @@ -20,5 +22,7 @@ public class LevelNextButton : MonoBehaviour public void NextLevel() { levelsLoader.NextLevel(); + sfxSource.clip = Resources.Load(Path.Combine("Sounds", "click")); + sfxSource.Play(); } } diff --git a/Assets/Scripts/LevelsSelect/LevelPreviousButton.cs b/Assets/Scripts/LevelsSelect/LevelPreviousButton.cs index dab713c..3ea3d79 100644 --- a/Assets/Scripts/LevelsSelect/LevelPreviousButton.cs +++ b/Assets/Scripts/LevelsSelect/LevelPreviousButton.cs @@ -1,7 +1,9 @@ +using System.IO; using UnityEngine; public class LevelPreviousButton : MonoBehaviour { + public AudioSource sfxSource; public LevelsLoader levelsLoader; public void Start() @@ -20,5 +22,7 @@ public class LevelPreviousButton : MonoBehaviour public void PreviousLevel() { levelsLoader.PreviousLevel(); + sfxSource.clip = Resources.Load(Path.Combine("Sounds", "click")); + sfxSource.Play(); } } diff --git a/Assets/Scripts/MainMenu.cs b/Assets/Scripts/MainMenu.cs index 56f5042..713c06f 100644 --- a/Assets/Scripts/MainMenu.cs +++ b/Assets/Scripts/MainMenu.cs @@ -1,16 +1,25 @@ +using System.IO; using UnityEngine; using UnityEngine.SceneManagement; public class MainMenu : MonoBehaviour { + public AudioSource sfxSource; + public void LaunchGame() { - SceneManager.LoadSceneAsync("SelectLevelScene"); + sfxSource.clip = Resources.Load(Path.Combine("Sounds", "click")); + sfxSource.Play(); + + StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "SelectLevelScene")); } public void OpenImport() { - SceneManager.LoadSceneAsync("ImportScene"); + sfxSource.clip = Resources.Load(Path.Combine("Sounds", "click")); + sfxSource.Play(); + + StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "ImportScene")); } public void QuitGame() @@ -20,22 +29,34 @@ public class MainMenu : MonoBehaviour public void LevelEditor() { - SceneManager.LoadSceneAsync("LevelEditorScene"); + sfxSource.clip = Resources.Load(Path.Combine("Sounds", "click")); + sfxSource.Play(); + + StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "LevelEditorScene")); } public void CreateVoidLevel() { PlayerPrefs.SetInt("CreateMode", 1); - SceneManager.LoadScene("LevelEditorScene"); + sfxSource.clip = Resources.Load(Path.Combine("Sounds", "click")); + sfxSource.Play(); + + StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "LevelEditorScene")); } public void EditorChoice() { - SceneManager.LoadSceneAsync("EditorChoiceScene"); + sfxSource.clip = Resources.Load(Path.Combine("Sounds", "click")); + sfxSource.Play(); + + StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "EditorChoiceScene")); } public void EditLevel() { - SceneManager.LoadSceneAsync("SelectLevelToEditScene"); + sfxSource.clip = Resources.Load(Path.Combine("Sounds", "click")); + sfxSource.Play(); + + StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "SelectLevelToEditScene")); } } diff --git a/Assets/Scripts/PauseMenu.cs b/Assets/Scripts/PauseMenu.cs index 88ef849..620363a 100644 --- a/Assets/Scripts/PauseMenu.cs +++ b/Assets/Scripts/PauseMenu.cs @@ -13,26 +13,26 @@ public class PauseMenu : MonoBehaviour { if (PlayerPrefs.HasKey("Volume")) { - levelLoader.audioSource.volume = PlayerPrefs.GetFloat("Volume"); - volumeSlider.value = levelLoader.audioSource.volume; + levelLoader.musicSource.volume = PlayerPrefs.GetFloat("Volume"); + volumeSlider.value = levelLoader.musicSource.volume; } else { - levelLoader.audioSource.volume = 1f; + levelLoader.musicSource.volume = 1f; volumeSlider.value = 1f; } } public void ChangeVolume() { - levelLoader.audioSource.volume = volumeSlider.value; - PlayerPrefs.SetFloat("Volume", levelLoader.audioSource.volume); + levelLoader.musicSource.volume = volumeSlider.value; + PlayerPrefs.SetFloat("Volume", levelLoader.musicSource.volume); } public void Pause() { Time.timeScale = 0; - levelLoader.audioSource.Pause(); + levelLoader.musicSource.Pause(); pauseMenu.SetActive(true); pauseButton.SetActive(false); @@ -47,7 +47,7 @@ public class PauseMenu : MonoBehaviour public void Resume() { Time.timeScale = 1; - levelLoader.audioSource.Play(); + levelLoader.musicSource.Play(); pauseMenu.SetActive(false); pauseButton.SetActive(true); diff --git a/Assets/Scripts/Player.cs b/Assets/Scripts/Player.cs index 5a819e5..bc88a92 100644 --- a/Assets/Scripts/Player.cs +++ b/Assets/Scripts/Player.cs @@ -1,3 +1,4 @@ +using System.IO; using UnityEngine; using UnityEngine.SceneManagement; @@ -12,6 +13,8 @@ public class Player : MonoBehaviour public bool HasStarted { get; set; } = false; public bool CanJump { get; set; } = true; public PauseMenu pauseMenu; + public AudioSource sfxSource; + public bool editMode { get; set; } = false; public IGameMode CurrentGameMode { get; set; } public float SpeedMultiplier = 1f; @@ -87,6 +90,31 @@ public class Player : MonoBehaviour public virtual void OnCollisionEnter2D(Collision2D collision) { CurrentGameMode?.OnCollisionEnter(this, collision); + + if (collision.gameObject.CompareTag("Kill")) + { + if (editMode) + { + GameObject spawn = new GameObject("AutoSpawnPoint"); + spawn.transform.position = new Vector3(-16, -3, 0f); + transform.position = spawn.transform.position; + RigidBody.linearVelocity = Vector2.zero; + SpeedMultiplier = 1f; + } + else + { + sfxSource.clip = Resources.Load(Path.Combine("Sounds", "death")); + sfxSource.Play(); + StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, SceneManager.GetActiveScene().name)); + } + } + + if (collision.gameObject.CompareTag("Win")) + { + sfxSource.clip = Resources.Load(Path.Combine("Sounds", "win")); + sfxSource.Play(); + StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "SelectLevelScene")); + } } public void OnCollisionExit2D(Collision2D collision) diff --git a/Assets/Scripts/TestManager.cs b/Assets/Scripts/TestManager.cs index 89344e7..ccd1a94 100644 --- a/Assets/Scripts/TestManager.cs +++ b/Assets/Scripts/TestManager.cs @@ -8,6 +8,7 @@ public class TestManager : MonoBehaviour public Transform spawnPoint; public GameObject editorUI; public PlayerCamera playerCamera; + public AudioSource sfxSource; private bool isTesting = false; @@ -27,7 +28,7 @@ public class TestManager : MonoBehaviour else { gameMode = new NormalGameMode(); - ((NormalGameMode)gameMode).editMode = true; + currentPlayer.editMode = true; currentPlayer.ChangeGameMode(gameMode); currentPlayer.SpeedMultiplier = 0f;