Skip to content

Commit

Permalink
fetch KeySounder
Browse files Browse the repository at this point in the history
  • Loading branch information
itfray committed Feb 6, 2021
1 parent b62058d commit 86557b1
Show file tree
Hide file tree
Showing 16 changed files with 482 additions and 37 deletions.
307 changes: 306 additions & 1 deletion Grinch2D/Assets/Prefabs/key/key0.prefab
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ GameObject:
- component: {fileID: 308226852408147017}
- component: {fileID: 308226852408147023}
- component: {fileID: -3149896182219089591}
- component: {fileID: 4024363525386818464}
m_Layer: 0
m_Name: key0
m_TagString: Key
Expand All @@ -29,7 +30,8 @@ Transform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.18, y: 0.18, z: 0.18}
m_Children: []
m_Children:
- {fileID: 3460783705721761243}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
Expand Down Expand Up @@ -130,3 +132,306 @@ MonoBehaviour:
waitSecDiappearBlocks: 1
collider2d: {fileID: 308226852408147023}
spriteRndr: {fileID: 308226852408147017}
--- !u!114 &4024363525386818464
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 308226852408147019}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 3d0852ba54b469f4e95bf870dee63ae2, type: 3}
m_Name:
m_EditorClassIdentifier:
keySound: {fileID: 7035999278312756769}
lockSound: {fileID: 5887805239439504692}
keyHnd: {fileID: -3149896182219089591}
--- !u!1 &1230997946935796206
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1714857940749470885}
- component: {fileID: 7035999278312756769}
m_Layer: 0
m_Name: KeySound
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1714857940749470885
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1230997946935796206}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 3460783705721761243}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!82 &7035999278312756769
AudioSource:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1230997946935796206}
m_Enabled: 1
serializedVersion: 4
OutputAudioMixerGroup: {fileID: -4373753073864100216, guid: e79dfacdd485e744bb7fd063cd1b304f,
type: 2}
m_audioClip: {fileID: 8300000, guid: ba8a37851831602478a816a93109da35, type: 3}
m_PlayOnAwake: 0
m_Volume: 1
m_Pitch: 1
Loop: 0
Mute: 0
Spatialize: 0
SpatializePostEffects: 0
Priority: 128
DopplerLevel: 1
MinDistance: 1
MaxDistance: 500
Pan2D: 0
rolloffMode: 0
BypassEffects: 0
BypassListenerEffects: 0
BypassReverbZones: 0
rolloffCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
panLevelCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
spreadCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
reverbZoneMixCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
--- !u!1 &7754939985332025909
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3460783705721761243}
m_Layer: 0
m_Name: sounds
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &3460783705721761243
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7754939985332025909}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 5.555555, y: 5.555555, z: 5.555555}
m_Children:
- {fileID: 1714857940749470885}
- {fileID: 8871815272163729851}
m_Father: {fileID: 308226852408147016}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &7904321456370347711
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8871815272163729851}
- component: {fileID: 5887805239439504692}
m_Layer: 0
m_Name: LockSound
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &8871815272163729851
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7904321456370347711}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 3460783705721761243}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!82 &5887805239439504692
AudioSource:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7904321456370347711}
m_Enabled: 1
serializedVersion: 4
OutputAudioMixerGroup: {fileID: -4373753073864100216, guid: e79dfacdd485e744bb7fd063cd1b304f,
type: 2}
m_audioClip: {fileID: 8300000, guid: 35c1a66ae6db3b448990a327031bf2c1, type: 3}
m_PlayOnAwake: 0
m_Volume: 1
m_Pitch: 1
Loop: 0
Mute: 0
Spatialize: 0
SpatializePostEffects: 0
Priority: 128
DopplerLevel: 1
MinDistance: 1
MaxDistance: 500
Pan2D: 0
rolloffMode: 0
BypassEffects: 0
BypassListenerEffects: 0
BypassReverbZones: 0
rolloffCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
panLevelCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
spreadCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
reverbZoneMixCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
7 changes: 7 additions & 0 deletions Grinch2D/Assets/Scripts/GameObjHnds/KeyHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ public class KeyHandler : DisappearHandler
public event KeyEventHandler OnDestroyLockBlocks; // event called when all blocks destoyed
public event KeyEventHandler OnAppearKey; // event called when key appeared
public event KeyEventHandler OnDisappearKey; // event called when key disappeared
public event KeyEventHandler OnAppearLockBlock; // event called when one of locked blocks appeared
public event KeyEventHandler OnDisappearLockBlock;

private List<GameObject> lock_blocks = new List<GameObject>(); // locked blocks
public List<GameObject> lockedBlocks { get { return lock_blocks; } } // locked blocks
Expand Down Expand Up @@ -123,6 +125,11 @@ private IEnumerator AppearBlocks(bool value, float waitSec)
foreach (GameObject block in lock_blocks)
{
block.SetActive(value);
if (value)
OnAppearLockBlock?.Invoke();
else
OnDisappearLockBlock?.Invoke();

yield return new WaitForSeconds(waitSec);
}

Expand Down
1 change: 1 addition & 0 deletions Grinch2D/Assets/Scripts/GameSceneHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -237,6 +237,7 @@ public void StopGame(bool value)
playerField.SetActive(!value); // stop player field activity
sawsField.SetActive(!value); // stop saws field activity
turretsField.SetActive(!value); // stop turrets field activity
keysField.SetActive(!value);

state = value ? GameState.Stoped : GameState.Started;
}
Expand Down
34 changes: 34 additions & 0 deletions Grinch2D/Assets/Scripts/Sounders/KeySounder.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

/// <summary>
/// KeySounder is class for playing key object action sounds
/// </summary>
public class KeySounder : Sounder
{
public AudioSource keySound; // key sound
public AudioSource lockSound; // lock sound

public KeyHandler keyHnd; // key handler

protected override void Init()
{
if (keyHnd)
{
if (keySound)
{
keyHnd.OnDisappearKey += () => keySound.Play(); // add playing sound of key object in callback
audios.Add(keySound);
}

if (lockSound)
{
keyHnd.OnDisappearLockBlock += () => lockSound.Play();
audios.Add(lockSound);
}
}

base.Init();
}
}
Loading

0 comments on commit 86557b1

Please sign in to comment.