diff --git a/Assets/Scenes/Main.unity b/Assets/Scenes/Main.unity index 604a807..1a180a8 100644 --- a/Assets/Scenes/Main.unity +++ b/Assets/Scenes/Main.unity @@ -136,6 +136,7 @@ GameObject: - component: {fileID: 19625094} - component: {fileID: 19625093} - component: {fileID: 19625097} + - component: {fileID: 19625098} m_Layer: 5 m_Name: WinCanvas m_TagString: Untagged @@ -236,9 +237,24 @@ CanvasGroup: m_GameObject: {fileID: 19625092} m_Enabled: 1 m_Alpha: 0 - m_Interactable: 0 - m_BlocksRaycasts: 1 + m_Interactable: 1 + m_BlocksRaycasts: 0 m_IgnoreParentGroups: 0 +--- !u!114 &19625098 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 19625092} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3ab69031478b416bb744d340062beae1, type: 3} + m_Name: + m_EditorClassIdentifier: + canvasGroup: {fileID: 19625097} + winBackground: {fileID: 1957919960} + winText: {fileID: 1331759576} --- !u!1 &23275625 GameObject: m_ObjectHideFlags: 0 @@ -2647,11 +2663,11 @@ RectTransform: m_Children: [] m_Father: {fileID: 361312882} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 1} - m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 175, y: -115} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -2.5, y: 7.5} m_SizeDelta: {x: 125, y: 25} - m_Pivot: {x: 0, y: 1} + m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1331759577 MonoBehaviour: m_ObjectHideFlags: 0 @@ -2806,7 +2822,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: bar: {fileID: 843204721} - numberToWin: 10 + numberToWin: 5 --- !u!1 &1488949019 GameObject: m_ObjectHideFlags: 0 @@ -3894,11 +3910,11 @@ RectTransform: m_Children: [] m_Father: {fileID: 361312882} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 1} - m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 155, y: -85} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 7.5, y: 3} m_SizeDelta: {x: 185, y: 94} - m_Pivot: {x: 0, y: 1} + m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1957919961 MonoBehaviour: m_ObjectHideFlags: 0 diff --git a/Assets/Scenes/Menu.unity b/Assets/Scenes/Menu.unity index 905426f..b98924d 100644 --- a/Assets/Scenes/Menu.unity +++ b/Assets/Scenes/Menu.unity @@ -180,7 +180,7 @@ MonoBehaviour: m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} - m_Transition: 1 + m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} @@ -204,7 +204,19 @@ MonoBehaviour: m_TargetGraphic: {fileID: 179030657} m_OnClick: m_PersistentCalls: - m_Calls: [] + m_Calls: + - m_Target: {fileID: 1769819445} + m_TargetAssemblyTypeName: Flow.MainMenu, Assembly-CSharp + m_MethodName: LoadGame + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 --- !u!114 &179030657 MonoBehaviour: m_ObjectHideFlags: 0 @@ -300,7 +312,7 @@ MonoBehaviour: m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} - m_Transition: 1 + m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} @@ -554,81 +566,6 @@ RectTransform: m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 480, y: 0} m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &1536555903 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1536555904} - - component: {fileID: 1536555906} - - component: {fileID: 1536555905} - m_Layer: 5 - m_Name: Background - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1536555904 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1536555903} - 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: 1957123385} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1536555905 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1536555903} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 7cee144168e83734dbfc7747fd2e6abe, type: 3} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!222 &1536555906 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1536555903} - m_CullTransparentMesh: 1 --- !u!1 &1560325472 GameObject: m_ObjectHideFlags: 0 @@ -778,7 +715,7 @@ MonoBehaviour: m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} - m_Transition: 1 + m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} @@ -853,6 +790,7 @@ GameObject: - component: {fileID: 1769819443} - component: {fileID: 1769819442} - component: {fileID: 1769819441} + - component: {fileID: 1769819445} m_Layer: 5 m_Name: Canvas m_TagString: Untagged @@ -943,6 +881,18 @@ RectTransform: m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} +--- !u!114 &1769819445 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1769819440} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7398bc374b9e57e4fb95861c2fb07f2b, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &1795360675 GameObject: m_ObjectHideFlags: 0 @@ -1018,121 +968,6 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1795360675} m_CullTransparentMesh: 1 ---- !u!1 &1842845467 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1842845472} - - component: {fileID: 1842845471} - - component: {fileID: 1842845470} - - component: {fileID: 1842845469} - - component: {fileID: 1842845468} - m_Layer: 5 - m_Name: Mockup - m_TagString: EditorOnly - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!225 &1842845468 -CanvasGroup: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1842845467} - m_Enabled: 1 - m_Alpha: 0.5 - m_Interactable: 1 - m_BlocksRaycasts: 1 - m_IgnoreParentGroups: 0 ---- !u!114 &1842845469 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1842845467} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 4294967295 ---- !u!114 &1842845470 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1842845467} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} - m_Name: - m_EditorClassIdentifier: - m_UiScaleMode: 1 - m_ReferencePixelsPerUnit: 100 - m_ScaleFactor: 1 - m_ReferenceResolution: {x: 480, y: 270} - m_ScreenMatchMode: 0 - m_MatchWidthOrHeight: 1 - m_PhysicalUnit: 3 - m_FallbackScreenDPI: 96 - m_DefaultSpriteDPI: 96 - m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 0 ---- !u!223 &1842845471 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1842845467} - m_Enabled: 1 - serializedVersion: 3 - m_RenderMode: 0 - m_Camera: {fileID: 0} - m_PlaneDistance: 100 - m_PixelPerfect: 0 - m_ReceivesEvents: 1 - m_OverrideSorting: 0 - m_OverridePixelPerfect: 0 - m_SortingBucketNormalizedSize: 0 - m_VertexColorAlwaysGammaSpace: 0 - m_AdditionalShaderChannelsFlag: 25 - m_UpdateRectTransformForStandalone: 0 - m_SortingLayerID: 0 - m_SortingOrder: 10 - m_TargetDisplay: 0 ---- !u!224 &1842845472 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1842845467} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0, y: 0, z: 0} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1957123385} - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0} --- !u!1 &1938195249 GameObject: m_ObjectHideFlags: 0 @@ -1201,47 +1036,10 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1957123384 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1957123385} - m_Layer: 5 - m_Name: Container - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1957123385 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1957123384} - 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: - - {fileID: 1536555904} - m_Father: {fileID: 1842845472} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0} - m_AnchorMax: {x: 0.5, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 480, y: 0} - m_Pivot: {x: 0.5, y: 0.5} --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 1560325475} - {fileID: 1769819444} - - {fileID: 1842845472} - {fileID: 1938195252} diff --git a/Assets/Scripts/Flow/MainMenu.cs b/Assets/Scripts/Flow/MainMenu.cs new file mode 100644 index 0000000..c9ffbd5 --- /dev/null +++ b/Assets/Scripts/Flow/MainMenu.cs @@ -0,0 +1,10 @@ +using UnityEngine; +using UnityEngine.SceneManagement; + +namespace Flow { + public class MainMenu : MonoBehaviour { + public void LoadGame() { + SceneManager.LoadScene(sceneBuildIndex: 1); + } + } +} \ No newline at end of file diff --git a/Assets/Scripts/Flow/MainMenu.cs.meta b/Assets/Scripts/Flow/MainMenu.cs.meta new file mode 100644 index 0000000..720adf7 --- /dev/null +++ b/Assets/Scripts/Flow/MainMenu.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7398bc374b9e57e4fb95861c2fb07f2b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Flow/ProgressBar.cs b/Assets/Scripts/Flow/ProgressBar.cs index 12cafe4..2eccae3 100644 --- a/Assets/Scripts/Flow/ProgressBar.cs +++ b/Assets/Scripts/Flow/ProgressBar.cs @@ -14,12 +14,19 @@ namespace Flow { UpdateFill(); } - public void AddProgress() { + public bool AddProgress() { _progressDone++; if (_progressDone <= numberToWin) { UpdateFill(); } + + if (_progressDone >= numberToWin) { + FindObjectOfType().Win(); + return true; + } + + return false; } private void UpdateFill() { diff --git a/Assets/Scripts/Flow/WinScreen.cs b/Assets/Scripts/Flow/WinScreen.cs new file mode 100644 index 0000000..6739e67 --- /dev/null +++ b/Assets/Scripts/Flow/WinScreen.cs @@ -0,0 +1,33 @@ +using System; +using DG.Tweening; +using UnityEngine; +using UnityEngine.Serialization; + +namespace Flow { + public class WinScreen : MonoBehaviour { + [SerializeField] private CanvasGroup canvasGroup; + + [SerializeField] private RectTransform winBackground; + [SerializeField] private RectTransform winText; + + private bool _hasWon; + + public void Win() { + _hasWon = true; + + canvasGroup.blocksRaycasts = true; + canvasGroup.DOFade(1f, .5f); + + winBackground.localScale = new Vector3(0, 0, 1); + winText.localScale = new Vector3(0, 0, 1); + winBackground.DOScale(1f, .25f).SetDelay(.5f).SetEase(Ease.OutBack); + winText.DOScale(1f, .25f).SetDelay(.55f).SetEase(Ease.OutBack); + } + + private void Update() { + if (_hasWon && Input.anyKeyDown) { + Application.Quit(); + } + } + } +} \ No newline at end of file diff --git a/Assets/Scripts/Flow/WinScreen.cs.meta b/Assets/Scripts/Flow/WinScreen.cs.meta new file mode 100644 index 0000000..6b15c0d --- /dev/null +++ b/Assets/Scripts/Flow/WinScreen.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 3ab69031478b416bb744d340062beae1 +timeCreated: 1706439699 \ No newline at end of file diff --git a/Assets/Scripts/Messaging/Typer/MessageManager.cs b/Assets/Scripts/Messaging/Typer/MessageManager.cs index 20fca3e..c6a1edd 100644 --- a/Assets/Scripts/Messaging/Typer/MessageManager.cs +++ b/Assets/Scripts/Messaging/Typer/MessageManager.cs @@ -73,12 +73,15 @@ namespace Messaging { if (message == _currentJoke.AnswerMessage.Key) { _sendButton.Lock(); bool isCorrect = _currentJokeIndex != 0; - Coroutine routine = StartCoroutine(ShowRealTexts(isCorrect)); - StartCoroutine(SendRandomJoke(routine, sendJokeDelay)); if (isCorrect) { - FindObjectOfType().AddProgress(); + if (FindObjectOfType().AddProgress()) + return; } + + Coroutine routine = StartCoroutine(ShowRealTexts(isCorrect)); + StartCoroutine(SendRandomJoke(routine, sendJokeDelay)); + _lives.ResetLives(); } else { _lives.Wrong(); if (_lives.CurrentLives == 0) { diff --git a/ProjectSettings/EditorBuildSettings.asset b/ProjectSettings/EditorBuildSettings.asset index 0147887..ada6dad 100644 --- a/ProjectSettings/EditorBuildSettings.asset +++ b/ProjectSettings/EditorBuildSettings.asset @@ -4,5 +4,11 @@ EditorBuildSettings: m_ObjectHideFlags: 0 serializedVersion: 2 - m_Scenes: [] + m_Scenes: + - enabled: 1 + path: Assets/Scenes/Menu.unity + guid: e24cf9e8e8ef8f343a240072cb9739d5 + - enabled: 1 + path: Assets/Scenes/Main.unity + guid: 38ae8f12759af39408f90a5c2301dd39 m_configObjects: {}