diff --git a/Assets/Scenes/Level2.shade b/Assets/Scenes/Level2.shade index e3de1671..cb330d56 100644 --- a/Assets/Scenes/Level2.shade +++ b/Assets/Scenes/Level2.shade @@ -4833,14 +4833,14 @@ Enabled: true - EID: 10 Name: Pause Canvas - IsActive: true + IsActive: false NumberOfChildren: 4 Components: Canvas Component: Canvas Width: 1920 Canvas Height: 1080 Scale by canvas width: false - IsActive: true + IsActive: false Scripts: ~ - EID: 8 Name: ResumeButton @@ -13435,4 +13435,43 @@ Components: ~ Scripts: - Type: SHADE_Scripting.UI.TweenManager - Enabled: true \ No newline at end of file + Enabled: true +- EID: 524 + Name: Canvas + IsActive: true + NumberOfChildren: 1 + Components: + Canvas Component: + Canvas Width: 1920 + Canvas Height: 1080 + Scale by canvas width: false + IsActive: true + Scripts: ~ +- EID: 525 + Name: StealFoodLogo + IsActive: true + NumberOfChildren: 0 + Components: + Transform Component: + Translate: {x: 0, y: 0, z: 0} + Rotate: {x: 0, y: 0, z: 0} + Scale: {x: 0, y: 0, z: 1} + IsActive: true + Renderable Component: + Mesh: 141771688 + Material: 127459277 + IsActive: true + UI Component: + Canvas ID: 524 + Hovered: false + Clicked: false + IsActive: true + Scripts: + - Type: SHADE_Scripting.UI.StealFoodPopUp + Enabled: true + popInDuration: 0.5 + popOutDuration: 0.5 + stayDuration: 1 + rotationAmt: 1800 + scaleAmtX: 538 + scaleAmtY: 377 \ No newline at end of file diff --git a/Assets/Scripts/Gameplay/SC_GameManager.cs b/Assets/Scripts/Gameplay/SC_GameManager.cs index 00eeadbb..b61928ba 100644 --- a/Assets/Scripts/Gameplay/SC_GameManager.cs +++ b/Assets/Scripts/Gameplay/SC_GameManager.cs @@ -90,6 +90,11 @@ public class GameManager : Script protected override void update() { + if (Input.GetKeyDown(Input.KeyCode.G)) + ItemScored(); + + + if (GamePause) { return; diff --git a/Assets/Scripts/UI/EasingHelper.cs b/Assets/Scripts/UI/EasingHelper.cs index d0480f7a..37c54d06 100644 --- a/Assets/Scripts/UI/EasingHelper.cs +++ b/Assets/Scripts/UI/EasingHelper.cs @@ -52,12 +52,12 @@ namespace SHADE_Scripting.UI private static float EaseInSine(float value) { - return (float)(1.0f - Math.Cos((value * Math.PI) / 2.0f)); + return (float)(1.0f - Math.Cos((value * Math.PI / 2.0f) )); } private static float EaseOutSine(float value) { - return (float)(Math.Sin(value * Math.PI) / 2.0f); + return (float)(Math.Sin(value * Math.PI / 2.0f) ); } diff --git a/Assets/Scripts/UI/SC_MultiplierTextFx.cs b/Assets/Scripts/UI/SC_MultiplierTextFx.cs index 1b3129ec..ccd2a4a8 100644 --- a/Assets/Scripts/UI/SC_MultiplierTextFx.cs +++ b/Assets/Scripts/UI/SC_MultiplierTextFx.cs @@ -11,6 +11,7 @@ namespace SHADE_Scripting.UI { [NonSerialized] private TweenThread sizeThread; + private TweenThread sizeInvertThread; private TweenThread alphaThread; @@ -20,6 +21,7 @@ namespace SHADE_Scripting.UI private bool showMultiplier = false; + const float sizeUpDuration = 0.1f; [NonSerialized] private Vector3 defaultScale; @@ -27,6 +29,7 @@ namespace SHADE_Scripting.UI protected override void start() { sizeThread = TweenManager.CreateTweenThread(0.0f, maxSize, minSize, EASING_METHOD.EASE_IN_SINE); + sizeInvertThread = TweenManager.CreateTweenThread(sizeUpDuration, minSize, maxSize, EASING_METHOD.EASE_IN_SINE); alphaThread = TweenManager.CreateTweenThread(0.0f, 1.0f, minAlpha, EASING_METHOD.EASE_OUT_SINE); Transform transform = GetComponent(); if (transform != null) @@ -43,8 +46,29 @@ namespace SHADE_Scripting.UI protected override void update() { Transform transform = GetComponent(); + + if (transform != null && showMultiplier == true) { + if(!sizeInvertThread.IsCompleted()) + { + transform.LocalScale = defaultScale * sizeInvertThread.GetValue(); + + Renderable rend = GetComponentInChildren(); + if(rend) + { + rend.Material.SetProperty("data.alpha", 1.0f); + } + + TextRenderable text = GetComponent(); + if (text) + { + Color clr = text.TextColor; + text.TextColor = new Color(clr.r, clr.g, clr.b, 1.0f); + } + return; + } + if(sizeThread.IsCompleted()) { transform.LocalScale = Vector3.Zero; @@ -53,7 +77,18 @@ namespace SHADE_Scripting.UI else { transform.LocalScale = defaultScale * sizeThread.GetValue(); - GetComponentInChildren().Material.SetProperty("data.alpha",alphaThread.GetValue()); + + Renderable rend = GetComponentInChildren(); + if (rend) + { + rend.Material.SetProperty("data.alpha", alphaThread.GetValue()); + } + TextRenderable text = GetComponent(); + if(text) + { + Color clr = text.TextColor; + text.TextColor = new Color(clr.r,clr.g,clr.b,alphaThread.GetValue() * 1.3f); + } } } } @@ -62,9 +97,10 @@ namespace SHADE_Scripting.UI public void ShowMultiplier(int multiplier, float duration) { GetComponent().Text = $"X {multiplier}"; - sizeThread.duration = duration; - alphaThread.duration = duration; + sizeThread.duration = duration + sizeUpDuration; + alphaThread.duration = duration + sizeUpDuration; + sizeInvertThread.Reset(); sizeThread.Reset(); alphaThread.Reset(); showMultiplier = true; diff --git a/SHADE_Managed/src/Components/TextRenderable.cxx b/SHADE_Managed/src/Components/TextRenderable.cxx index 3eb1f3b9..93d80b65 100644 --- a/SHADE_Managed/src/Components/TextRenderable.cxx +++ b/SHADE_Managed/src/Components/TextRenderable.cxx @@ -19,6 +19,7 @@ of DigiPen Institute of Technology is prohibited. #include "Assets/NativeAsset.hxx" #include "Utility/Convert.hxx" + namespace SHADE { /*---------------------------------------------------------------------------------*/ @@ -55,4 +56,16 @@ namespace SHADE GetNativeComponent()->SetFont(value.NativeObject); } } + + Color TextRenderable::TextColor::get() + { + return Convert::ToCLI(GetNativeComponent()->GetColour()); + } + + void TextRenderable::TextColor::set(Color value) + { + GetNativeComponent()->SetColour(Convert::ToNative(value)); + } + + } diff --git a/SHADE_Managed/src/Components/TextRenderable.hxx b/SHADE_Managed/src/Components/TextRenderable.hxx index b17a919c..b65f9c59 100644 --- a/SHADE_Managed/src/Components/TextRenderable.hxx +++ b/SHADE_Managed/src/Components/TextRenderable.hxx @@ -60,6 +60,13 @@ namespace SHADE FontAsset get(); void set(FontAsset value); } + + property Color TextColor + { + Color get(); + void set(Color value); + } + }; } diff --git a/SHADE_Managed/src/Components/Transform.cxx b/SHADE_Managed/src/Components/Transform.cxx index d5b38967..3216d0f0 100644 --- a/SHADE_Managed/src/Components/Transform.cxx +++ b/SHADE_Managed/src/Components/Transform.cxx @@ -22,6 +22,7 @@ namespace SHADE : Component(entity) {} + /*-----------------------------------------------------------------------------------*/ /* Properties */ /*-----------------------------------------------------------------------------------*/