diff --git a/Assets/Art/BugEnemySprite.png b/Assets/Art/BugEnemySprite.png index 03625e0d..5a1eb89f 100644 Binary files a/Assets/Art/BugEnemySprite.png and b/Assets/Art/BugEnemySprite.png differ diff --git a/Assets/Prefabs/Bosses/CasinoTemp.prefab b/Assets/Prefabs/Bosses/CasinoTemp.prefab index 45fe562c..458efb34 100644 --- a/Assets/Prefabs/Bosses/CasinoTemp.prefab +++ b/Assets/Prefabs/Bosses/CasinoTemp.prefab @@ -35,7 +35,8 @@ Transform: m_LocalPosition: {x: 1.6193917, y: 0.14268205, z: 0} m_LocalScale: {x: 8, y: 8, z: 8} m_ConstrainProportionsScale: 1 - m_Children: [] + m_Children: + - {fileID: 7644711912953640354} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &7384148377432724362 @@ -165,7 +166,7 @@ MonoBehaviour: speed: 2 numberRepeat: 8 movementType: 2 - meleeCollider: {fileID: 0} + meleeCollider: {fileID: 8318695897008011483} enemySpawnEnabled: 1 enemySpawnFrequency: 5 enemySpawn: @@ -253,3 +254,70 @@ MonoBehaviour: m_EditorClassIdentifier: scriptNames: - House +--- !u!1 &8644997855419299419 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7644711912953640354} + - component: {fileID: 8318695897008011483} + m_Layer: 0 + m_Name: MeleeCollider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7644711912953640354 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8644997855419299419} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0.000000014901161, y: 0.0000000037252903, z: 0} + m_LocalScale: {x: 0.125, y: 0.125, z: 0.125} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5016926345024838351} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!58 &8318695897008011483 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8644997855419299419} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Radius: 0.5 diff --git a/Assets/Prefabs/Bosses/Ice Spider & Imp.prefab b/Assets/Prefabs/Bosses/Ice Spider & Imp.prefab index f8c95ae6..fc2ac060 100644 --- a/Assets/Prefabs/Bosses/Ice Spider & Imp.prefab +++ b/Assets/Prefabs/Bosses/Ice Spider & Imp.prefab @@ -199,6 +199,7 @@ GameObject: - component: {fileID: 6472719709612196679} - component: {fileID: 8549655467703271645} - component: {fileID: 4550987503695292491} + - component: {fileID: 7030223653675539645} m_Layer: 0 m_Name: Ice Spider & Imp m_TagString: Boss @@ -221,6 +222,7 @@ Transform: m_Children: - {fileID: 2603338525091998154} - {fileID: 1622726623639472454} + - {fileID: 7438002813629306437} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!95 &4419052581618362151 @@ -258,6 +260,7 @@ MonoBehaviour: m_EditorClassIdentifier: maxHealth: 1800 postBossDialogue: {fileID: 0} + onDeathPrefab: {fileID: 0} --- !u!114 &5498695415664551577 MonoBehaviour: m_ObjectHideFlags: 0 @@ -332,7 +335,7 @@ MonoBehaviour: speed: 0.5 numberRepeat: 3 movementType: 3 - meleeCollider: {fileID: 8549655467703271645} + meleeCollider: {fileID: 8457147173203145800} enemySpawnEnabled: 0 enemySpawnFrequency: 0 enemySpawn: @@ -390,3 +393,83 @@ MonoBehaviour: DamagedColor: {r: 1, g: 0, b: 0, a: 1} HealthyColor: {r: 1, g: 1, b: 1, a: 1} sprite: {fileID: 8320375468443315675} +--- !u!114 &7030223653675539645 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3307996292842739383} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ccf1194074bf9f026900709e92d1621b, type: 3} + m_Name: + m_EditorClassIdentifier: + damage: 10 +--- !u!1 &6679003961693119365 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7438002813629306437} + - component: {fileID: 8457147173203145800} + m_Layer: 0 + m_Name: MeleeCollider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7438002813629306437 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6679003961693119365} + serializedVersion: 2 + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 8491363988752904066} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!58 &8457147173203145800 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6679003961693119365} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Radius: 0.5 diff --git a/Assets/Prefabs/Bosses/JanitorTemp.prefab b/Assets/Prefabs/Bosses/JanitorTemp.prefab index 4244e8cb..6e852a0d 100644 --- a/Assets/Prefabs/Bosses/JanitorTemp.prefab +++ b/Assets/Prefabs/Bosses/JanitorTemp.prefab @@ -37,6 +37,7 @@ Transform: m_Children: - {fileID: 9040406120549701635} - {fileID: 6783217302273350735} + - {fileID: 1678545212786414196} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &-8957824631930683985 @@ -128,7 +129,7 @@ MonoBehaviour: speed: 1 numberRepeat: 0 movementType: 3 - meleeCollider: {fileID: 4414830741808293254} + meleeCollider: {fileID: 7586810157599920545} enemySpawnEnabled: 0 enemySpawnFrequency: 0 enemySpawn: @@ -307,6 +308,73 @@ Animator: m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorStateOnDisable: 0 m_WriteDefaultValuesOnDisable: 0 +--- !u!1 &6132063426267235275 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1678545212786414196} + - component: {fileID: 7586810157599920545} + m_Layer: 0 + m_Name: MeleeCollider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1678545212786414196 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6132063426267235275} + serializedVersion: 2 + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1910689527327930077} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!58 &7586810157599920545 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6132063426267235275} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Radius: 0.5 --- !u!1 &8624633124082938887 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Prefabs/Enemies/BugEnemy.prefab b/Assets/Prefabs/Enemies/BugEnemy.prefab index 6b55e0f7..b3c29cda 100644 --- a/Assets/Prefabs/Enemies/BugEnemy.prefab +++ b/Assets/Prefabs/Enemies/BugEnemy.prefab @@ -157,13 +157,13 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6612840467964046646} serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: -0.7071068, w: 0.7071068} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 2, y: 2, z: 2} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 2142963959086616992} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: -90} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &4307154717410899638 SpriteRenderer: m_ObjectHideFlags: 0 diff --git a/Assets/Prefabs/Weapons/LovelyLullabyProjectile.prefab b/Assets/Prefabs/Weapons/LovelyLullabyProjectile.prefab index a6772ee9..129d0658 100644 --- a/Assets/Prefabs/Weapons/LovelyLullabyProjectile.prefab +++ b/Assets/Prefabs/Weapons/LovelyLullabyProjectile.prefab @@ -74,7 +74,7 @@ SpriteRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: fa582e06ab758c545ab166494f4ea644, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 0.011764706} + m_Color: {r: 1, g: 1, b: 1, a: 0.09803922} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 diff --git a/Assets/PrettyParasolSprite.cs b/Assets/PrettyParasolSprite.cs index 39bc7910..1c5af774 100644 --- a/Assets/PrettyParasolSprite.cs +++ b/Assets/PrettyParasolSprite.cs @@ -23,6 +23,6 @@ public void OnSwingingAnimationEnd() { void Start() { - Debug.Assert(TryGetComponent(out animator)); + PrettyParasol.Assert(TryGetComponent(out animator)); } } diff --git a/Assets/Resources/Sounds/Music/DeathMusic.asset b/Assets/Resources/Sounds/Music/DeathMusic.asset index a697f8cb..46504687 100644 --- a/Assets/Resources/Sounds/Music/DeathMusic.asset +++ b/Assets/Resources/Sounds/Music/DeathMusic.asset @@ -18,6 +18,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level01Boss.asset b/Assets/Resources/Sounds/Music/Level01Boss.asset index 653efc57..c698aedb 100644 --- a/Assets/Resources/Sounds/Music/Level01Boss.asset +++ b/Assets/Resources/Sounds/Music/Level01Boss.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level01Theme.asset b/Assets/Resources/Sounds/Music/Level01Theme.asset index 3e739f2d..8c89a429 100644 --- a/Assets/Resources/Sounds/Music/Level01Theme.asset +++ b/Assets/Resources/Sounds/Music/Level01Theme.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level02Boss.asset b/Assets/Resources/Sounds/Music/Level02Boss.asset index 3a1e15d6..065b651b 100644 --- a/Assets/Resources/Sounds/Music/Level02Boss.asset +++ b/Assets/Resources/Sounds/Music/Level02Boss.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level02Theme.asset b/Assets/Resources/Sounds/Music/Level02Theme.asset index fd5c7732..599baa90 100644 --- a/Assets/Resources/Sounds/Music/Level02Theme.asset +++ b/Assets/Resources/Sounds/Music/Level02Theme.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level03Boss.asset b/Assets/Resources/Sounds/Music/Level03Boss.asset index 82412d40..c795af5b 100644 --- a/Assets/Resources/Sounds/Music/Level03Boss.asset +++ b/Assets/Resources/Sounds/Music/Level03Boss.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level03Theme.asset b/Assets/Resources/Sounds/Music/Level03Theme.asset index 7de7f6f9..2a224629 100644 --- a/Assets/Resources/Sounds/Music/Level03Theme.asset +++ b/Assets/Resources/Sounds/Music/Level03Theme.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level04Boss.asset b/Assets/Resources/Sounds/Music/Level04Boss.asset index 4139f196..5708f17c 100644 --- a/Assets/Resources/Sounds/Music/Level04Boss.asset +++ b/Assets/Resources/Sounds/Music/Level04Boss.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level04Theme.asset b/Assets/Resources/Sounds/Music/Level04Theme.asset index cfb0dcee..69de7609 100644 --- a/Assets/Resources/Sounds/Music/Level04Theme.asset +++ b/Assets/Resources/Sounds/Music/Level04Theme.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level05Boss.asset b/Assets/Resources/Sounds/Music/Level05Boss.asset index 54d9b59f..40a4abbf 100644 --- a/Assets/Resources/Sounds/Music/Level05Boss.asset +++ b/Assets/Resources/Sounds/Music/Level05Boss.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level05Theme.asset b/Assets/Resources/Sounds/Music/Level05Theme.asset index 2eb1fdbb..6e6b9e6a 100644 --- a/Assets/Resources/Sounds/Music/Level05Theme.asset +++ b/Assets/Resources/Sounds/Music/Level05Theme.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level06Boss.asset b/Assets/Resources/Sounds/Music/Level06Boss.asset index 169abce3..97e340a1 100644 --- a/Assets/Resources/Sounds/Music/Level06Boss.asset +++ b/Assets/Resources/Sounds/Music/Level06Boss.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level06Theme.asset b/Assets/Resources/Sounds/Music/Level06Theme.asset index 587c9573..88fa41e4 100644 --- a/Assets/Resources/Sounds/Music/Level06Theme.asset +++ b/Assets/Resources/Sounds/Music/Level06Theme.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level07Boss.asset b/Assets/Resources/Sounds/Music/Level07Boss.asset index e44ca1e7..4e3bc40d 100644 --- a/Assets/Resources/Sounds/Music/Level07Boss.asset +++ b/Assets/Resources/Sounds/Music/Level07Boss.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Resources/Sounds/Music/Level07Theme.asset b/Assets/Resources/Sounds/Music/Level07Theme.asset index de9ab286..4756e968 100644 --- a/Assets/Resources/Sounds/Music/Level07Theme.asset +++ b/Assets/Resources/Sounds/Music/Level07Theme.asset @@ -19,6 +19,6 @@ MonoBehaviour: pitch: 1 pitchVariance: 0 minimumDistance: 10 - loop: 0 + loop: 1 mixerGroup: {fileID: -5511264307445594271, guid: e61ba0ca00a19cd06b1d5c09bcb40e46, type: 2} source: {fileID: 0} diff --git a/Assets/Scenes/Build Scenes/Level07.unity b/Assets/Scenes/Build Scenes/Level07.unity index 2e06d938..30e37c62 100644 --- a/Assets/Scenes/Build Scenes/Level07.unity +++ b/Assets/Scenes/Build Scenes/Level07.unity @@ -2223,7 +2223,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 28dca6f7595a9ca46b0e34ca1b67d9c7, type: 3} m_Name: m_EditorClassIdentifier: - levelSong: Level07Boss + levelSong: Level07Theme --- !u!4 &1737528709 Transform: m_ObjectHideFlags: 0 diff --git a/Assets/Scenes/Build Scenes/Level07Boss.unity b/Assets/Scenes/Build Scenes/Level07Boss.unity index 930d46a8..456042d0 100644 --- a/Assets/Scenes/Build Scenes/Level07Boss.unity +++ b/Assets/Scenes/Build Scenes/Level07Boss.unity @@ -3283,7 +3283,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 28dca6f7595a9ca46b0e34ca1b67d9c7, type: 3} m_Name: m_EditorClassIdentifier: - levelSong: Level07Theme + levelSong: Level07Boss --- !u!4 &1737528709 Transform: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Equipment/Weapons/ProjectileWeapon/PrettyParasol.cs b/Assets/Scripts/Equipment/Weapons/ProjectileWeapon/PrettyParasol.cs index 7b7e7175..f951fa5d 100644 --- a/Assets/Scripts/Equipment/Weapons/ProjectileWeapon/PrettyParasol.cs +++ b/Assets/Scripts/Equipment/Weapons/ProjectileWeapon/PrettyParasol.cs @@ -1,4 +1,6 @@ +using Unity.VisualScripting; using UnityEngine; +using UnityEngine.Assertions; public class PrettyParasol : ProjectileWeapon { PrettyParasolSprite sprite; @@ -7,8 +9,22 @@ public class PrettyParasol : ProjectileWeapon { [SerializeField] GameObject spritePrefab; + /// + /// Ensures is true by throwing an exception otherwise. + /// This function is not optimized away during release builds, so it should + /// be used over Debug.Assert if + /// is derived from side effects (e.g. Assert(TryGetComponent(out etc))) + /// + /// If false, this function will throw. + /// Thrown when is false. + public static void Assert(bool shouldBeTrue) { + if (!shouldBeTrue) { + throw new System.Exception("Assertion failed."); + } + } + void Setup() { - Debug.Assert(Instantiate(spritePrefab, Player.instance.transform).TryGetComponent(out sprite)); + Assert(Instantiate(spritePrefab, Player.instance.transform).TryGetComponent(out sprite)); // we're only going to fire when the correct frame in the animation is displayed sprite.ShouldFire += base.Fire; diff --git a/Assets/Scripts/Equipment/Weapons/Projectiles/CupquakeProjectile.cs b/Assets/Scripts/Equipment/Weapons/Projectiles/CupquakeProjectile.cs index bb2330ae..e07be706 100644 --- a/Assets/Scripts/Equipment/Weapons/Projectiles/CupquakeProjectile.cs +++ b/Assets/Scripts/Equipment/Weapons/Projectiles/CupquakeProjectile.cs @@ -66,7 +66,7 @@ public void SetupExt( base.Setup(weapon, target.transform.position, damage, pierceCount, speed, knockback, size, dotRate); alt = UnityEngine.Random.Range(0f, 1f) < 0.5; - Debug.Assert(TryGetComponent(out animator)); + PrettyParasol.Assert(TryGetComponent(out animator)); animator.SetBool("Alt", alt); if (followTarget) {