From 0e4891a2d990905efd09e602abf8acbc9e146945 Mon Sep 17 00:00:00 2001 From: kimura Date: Mon, 25 Jul 2022 14:35:29 +0900 Subject: [PATCH 1/2] =?UTF-8?q?=E3=82=B9=E3=83=94=E3=83=BC=E3=83=89?= =?UTF-8?q?=E3=82=A2=E3=83=83=E3=83=97=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MyGame/Scenes/MiniGame/MiniGame.unity | 17 ++- .../Scenes/MiniGame/Scripts/GameManager.cs | 1 + .../MyGame/Scenes/MiniGame/Scripts/Player.cs | 111 ++++++++++-------- 3 files changed, 81 insertions(+), 48 deletions(-) diff --git a/popcorn/Assets/MyGame/Scenes/MiniGame/MiniGame.unity b/popcorn/Assets/MyGame/Scenes/MiniGame/MiniGame.unity index cc9ea30c..a712f0c2 100644 --- a/popcorn/Assets/MyGame/Scenes/MiniGame/MiniGame.unity +++ b/popcorn/Assets/MyGame/Scenes/MiniGame/MiniGame.unity @@ -1023,6 +1023,21 @@ PrefabInstance: propertyPath: fallAcceleration value: 30 objectReference: {fileID: 0} + - target: {fileID: 2607884839347368726, guid: acd6e6365b5fe4863aedc684a50b8028, + type: 3} + propertyPath: hardSpeedMultiply + value: 1.5 + objectReference: {fileID: 0} + - target: {fileID: 2607884839347368726, guid: acd6e6365b5fe4863aedc684a50b8028, + type: 3} + propertyPath: extraSpeedMultiply + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 2607884839347368726, guid: acd6e6365b5fe4863aedc684a50b8028, + type: 3} + propertyPath: normalSpeedMultiply + value: 1 + objectReference: {fileID: 0} - target: {fileID: 2607884839347368726, guid: acd6e6365b5fe4863aedc684a50b8028, type: 3} propertyPath: hitAnimationCurve.m_PostInfinity @@ -1434,7 +1449,7 @@ MonoBehaviour: - {fileID: 2044773546} - {fileID: 184442867} - {fileID: 628830308} - bgWidth: 17.66 + bgWidth: 17.6 bgOffset: 0 holeWidth: 0 --- !u!114 &1657044091 diff --git a/popcorn/Assets/MyGame/Scenes/MiniGame/Scripts/GameManager.cs b/popcorn/Assets/MyGame/Scenes/MiniGame/Scripts/GameManager.cs index 9c1f2fee..25a0dabf 100644 --- a/popcorn/Assets/MyGame/Scenes/MiniGame/Scripts/GameManager.cs +++ b/popcorn/Assets/MyGame/Scenes/MiniGame/Scripts/GameManager.cs @@ -211,6 +211,7 @@ namespace MyGame.Scenes.MiniGame.Scripts stageManager.Difficulty.SkipLatestValueOnSubscribe().Subscribe(x => { bgManager.SetSky(x); + player.SetSpeed(x); }).AddTo(this); player.OnHitItem.Where(_ => state.Value == GameState.Play).Subscribe(x => diff --git a/popcorn/Assets/MyGame/Scenes/MiniGame/Scripts/Player.cs b/popcorn/Assets/MyGame/Scenes/MiniGame/Scripts/Player.cs index 7082bb63..5ab9b27b 100644 --- a/popcorn/Assets/MyGame/Scenes/MiniGame/Scripts/Player.cs +++ b/popcorn/Assets/MyGame/Scenes/MiniGame/Scripts/Player.cs @@ -8,6 +8,9 @@ namespace MyGame.Scenes.MiniGame.Scripts public class Player : MonoBehaviour { [SerializeField] private float speed = 5f; + [SerializeField] private float normalSpeedMultiply; + [SerializeField] private float hardSpeedMultiply; + [SerializeField] private float extraSpeedMultiply; [SerializeField] private float hitJumpTime = 1f; [SerializeField] private float hitTime = 1.5f; [SerializeField] private float hitWaitTime = 1f; @@ -35,6 +38,7 @@ namespace MyGame.Scenes.MiniGame.Scripts private bool isWall; private bool isResult; private float currentFallSpeed; + private float currentSpeedMultiply; public bool IsHit => isHit; private readonly CompositeDisposable jumpCompositeDisposable = new CompositeDisposable(); private readonly CompositeDisposable hitCompositeDisposable = new CompositeDisposable(); @@ -70,6 +74,7 @@ namespace MyGame.Scenes.MiniGame.Scripts isHole = false; isWall = false; isResult = false; + currentSpeedMultiply = 1f; } private void Stay(bool force = false) @@ -87,7 +92,7 @@ namespace MyGame.Scenes.MiniGame.Scripts { return; } - transform.AddPositionX(speed * Time.deltaTime); + transform.AddPositionX(speed * Time.deltaTime * currentSpeedMultiply); if (isJump || isHit || isFall) { return; @@ -108,7 +113,8 @@ namespace MyGame.Scenes.MiniGame.Scripts isFall = false; var lastFrame = jumpAnimationCurve[jumpAnimationCurve.length - 1]; // 最高点までのジャンプ - var jumpCoroutine = MonoBehaviourExtensions.DoCallLerp(lastFrame.time, t => + var jumpTime = lastFrame.time / currentSpeedMultiply; + var jumpCoroutine = MonoBehaviourExtensions.DoCallLerp(jumpTime, t => { transform.SetLocalPositionY(basePos.y + jumpAnimationCurve.Evaluate(t * lastFrame.time)); }, () => @@ -118,7 +124,7 @@ namespace MyGame.Scenes.MiniGame.Scripts isFall = true; }); // 通常落下 - var jumpFallCoroutine = MonoBehaviourExtensions.DoCallLerp(lastFrame.time, t => + var jumpFallCoroutine = MonoBehaviourExtensions.DoCallLerp(jumpTime, t => { transform.SetLocalPositionY(basePos.y + jumpAnimationCurve.Evaluate((t + 1) * lastFrame.time)); }, () => @@ -159,10 +165,10 @@ namespace MyGame.Scenes.MiniGame.Scripts else { animator.Play("Brother_pink_Glideing_Cancel"); - currentFallSpeed -= fallAcceleration * Time.deltaTime; + currentFallSpeed -= fallAcceleration * Time.deltaTime * currentSpeedMultiply; } - transform.AddLocalPositionY(currentFallSpeed * Time.deltaTime); + transform.AddLocalPositionY(currentFallSpeed * Time.deltaTime * currentSpeedMultiply); }, () => { currentFallSpeed = 0f; @@ -201,40 +207,34 @@ namespace MyGame.Scenes.MiniGame.Scripts // 落下時間不定によりアニメ再生停止 animator.speed = 0f; currentFallSpeed = 0f; - this.UpdateAsObservable() - .TakeWhile(_ => transform.localPosition.y > basePos.y) - .Subscribe(_ => + FallDown(basePos.y, () => + { + // 31フレームまでが落下32からズサー + animator?.PlayInFixedTime("Brother_pink_FallDown", 0, .5f); + animator.speed = currentSpeedMultiply; + transform.SetLocalPositionY(groundPos); + currentFallSpeed = 0f; + isJump = false; + isFall = false; + Observable.Timer(TimeSpan.FromSeconds(hitTime)).Subscribe(_ => { }, () => { - currentFallSpeed -= fallAcceleration * Time.deltaTime; - transform.AddLocalPositionY(currentFallSpeed * Time.deltaTime); - }, () => - { - // 31フレームまでが落下32からズサー - animator?.PlayInFixedTime("Brother_pink_FallDown", 0, .5f); - animator.speed = 1f; - transform.SetLocalPositionY(groundPos); - currentFallSpeed = 0f; - isJump = false; - isFall = false; - Observable.Timer(TimeSpan.FromSeconds(hitTime)).Subscribe(_ => { }, () => + isHitStay = true; + Observable.Timer(TimeSpan.FromSeconds(hitWaitTime)).Subscribe(_ => { }, () => { - isHitStay = true; - Observable.Timer(TimeSpan.FromSeconds(hitWaitTime)).Subscribe(_ => { }, () => + // 入れ子対策するならコルーチンにして工程ごとに分けてSelectManyするのがよい。 + isHit = false; + isHitStay = false; + if (isResult) { - // 入れ子対策するならコルーチンにして工程ごとに分けてSelectManyするのがよい。 - isHit = false; - isHitStay = false; - if (isResult) - { - Result(); - } - else - { - Stay(); - } - }).AddTo(hitCompositeDisposable); + Result(); + } + else + { + Stay(); + } }).AddTo(hitCompositeDisposable); }).AddTo(hitCompositeDisposable); + }).AddTo(jumpCompositeDisposable); }).AddTo(hitCompositeDisposable); } @@ -249,21 +249,26 @@ namespace MyGame.Scenes.MiniGame.Scripts hitCompositeDisposable.Clear(); jumpCompositeDisposable.Clear(); - this.UpdateAsObservable() - .TakeWhile(_ => transform.localPosition.y > fallLimit) + FallDown(fallLimit, () => + { + isFall = false; + currentFallSpeed = 0f; + if (isResult) + { + Result(); + } + }).AddTo(jumpCompositeDisposable); + } + + private IDisposable FallDown(float baseYPos, Action onComplete) + { + return this.UpdateAsObservable() + .TakeWhile(_ => transform.localPosition.y > baseYPos) .Subscribe(_ => { - currentFallSpeed -= fallAcceleration * Time.deltaTime; - transform.AddLocalPositionY(currentFallSpeed * Time.deltaTime); - }, () => - { - isFall = false; - currentFallSpeed = 0f; - if (isResult) - { - Result(); - } - }).AddTo(jumpCompositeDisposable); + currentFallSpeed -= fallAcceleration * Time.deltaTime * currentSpeedMultiply; + transform.AddLocalPositionY(currentFallSpeed * Time.deltaTime * currentSpeedMultiply); + }, onComplete); } public void Wall() @@ -271,6 +276,18 @@ namespace MyGame.Scenes.MiniGame.Scripts isWall = true; } + public void SetSpeed(ScrollGameDifficulty difficulty) + { + currentSpeedMultiply = difficulty switch + { + ScrollGameDifficulty.Easy => 1f, + ScrollGameDifficulty.Normal => normalSpeedMultiply, + ScrollGameDifficulty.Hard => hardSpeedMultiply, + ScrollGameDifficulty.Extra => extraSpeedMultiply, + _ => throw new ArgumentOutOfRangeException(nameof(difficulty), difficulty, null) + }; + } + public void Result() { if (isJump || isHit || isFall) From e9218e1a535653a1e97a3b768199072da9e1ffa9 Mon Sep 17 00:00:00 2001 From: kimura Date: Mon, 25 Jul 2022 14:54:10 +0900 Subject: [PATCH 2/2] =?UTF-8?q?=E3=83=98=E3=83=83=E3=83=80=E3=83=BC?= =?UTF-8?q?=E3=82=B9=E3=82=B3=E3=82=A2=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Scenes/MiniGame/Prefabs/Header.prefab | 380 ++++++++---------- .../Scenes/MiniGame/Scripts/HeaderView.cs | 37 +- 2 files changed, 178 insertions(+), 239 deletions(-) diff --git a/popcorn/Assets/MyGame/Scenes/MiniGame/Prefabs/Header.prefab b/popcorn/Assets/MyGame/Scenes/MiniGame/Prefabs/Header.prefab index 93b7b311..2b31b226 100644 --- a/popcorn/Assets/MyGame/Scenes/MiniGame/Prefabs/Header.prefab +++ b/popcorn/Assets/MyGame/Scenes/MiniGame/Prefabs/Header.prefab @@ -1,5 +1,178 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: +--- !u!1 &2570823429725665912 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7957151030862449602} + - component: {fileID: 7090706454885209789} + - component: {fileID: 6898933620753137981} + m_Layer: 5 + m_Name: Text_countDown + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7957151030862449602 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2570823429725665912} + 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: 2.3549} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1812783774180679619} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &7090706454885209789 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2570823429725665912} + m_CullTransparentMesh: 0 +--- !u!114 &6898933620753137981 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2570823429725665912} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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_text: 1 + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 1ecb91d9b4f7d1b4d9ac80b14e928555, type: 2} + m_sharedMaterial: {fileID: 5374284371091958195, guid: 1ecb91d9b4f7d1b4d9ac80b14e928555, + type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 200 + m_fontSizeBase: 200 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 1 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 1 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &3654461001691508598 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1812783774180679619} + m_Layer: 5 + m_Name: CountDown + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1812783774180679619 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3654461001691508598} + 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: 7957151030862449602} + m_Father: {fileID: 7328251774731631637} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 714} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &7328251774731631636 GameObject: m_ObjectHideFlags: 0 @@ -29,8 +202,8 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 7328251775215910466} - {fileID: 7328251775992443661} + - {fileID: 1812783774180679619} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -51,10 +224,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 109145d75cad47b886be1e9be454f54b, type: 3} m_Name: m_EditorClassIdentifier: - text: {fileID: 7932948163013127618} - timeText: {fileID: 7932948163013127618} - countDownAnimator: {fileID: 0} - countDownText: {fileID: 0} + text: {fileID: 6898933620753137981} --- !u!1 &7328251775195385351 GameObject: m_ObjectHideFlags: 0 @@ -193,124 +363,6 @@ MonoBehaviour: mGUI_ShowCallback: 0 mLocalizeTarget: {fileID: 0} mLocalizeTargetName: I2.Loc.LocalizeTarget_UnityUI_Image ---- !u!1 &7328251775215910465 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7328251775215910466} - - component: {fileID: 7328251775215910476} - - component: {fileID: 7328251775215910467} - - component: {fileID: 5864280262123773036} - m_Layer: 5 - m_Name: time - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &7328251775215910466 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7328251775215910465} - 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: 7932948163013127619} - m_Father: {fileID: 7328251774731631637} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 1} - m_AnchorMax: {x: 0.5, y: 1} - m_AnchoredPosition: {x: 0, y: -137} - m_SizeDelta: {x: 186, y: 204} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &7328251775215910476 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7328251775215910465} - m_CullTransparentMesh: 0 ---- !u!114 &7328251775215910467 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7328251775215910465} - 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: b840fc03d9c919544b8d4beefd48696d, 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!114 &5864280262123773036 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7328251775215910465} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 344445a89b4f74a0e9a0a766903df87e, type: 3} - m_Name: - m_EditorClassIdentifier: - mTerm: minigame_main_frame_time - mTermSecondary: - PrimaryTermModifier: 0 - SecondaryTermModifier: 0 - TermPrefix: - TermSuffix: - LocalizeOnAwake: 1 - IgnoreRTL: 0 - MaxCharactersInRTL: 0 - IgnoreNumbersInRTL: 1 - CorrectAlignmentForRTL: 1 - AddSpacesToJoinedLanguages: 0 - AllowLocalizedParameters: 1 - AllowParameters: 1 - TranslatedObjects: - - {fileID: 21300000, guid: b840fc03d9c919544b8d4beefd48696d, type: 3} - LocalizeEvent: - m_PersistentCalls: - m_Calls: [] - AlwaysForceLocalize: 0 - LocalizeCallBack: - Target: {fileID: 0} - MethodName: - mGUI_ShowReferences: 0 - mGUI_ShowTems: 1 - mGUI_ShowCallback: 0 - mLocalizeTarget: {fileID: 0} - mLocalizeTargetName: I2.Loc.LocalizeTarget_UnityUI_Image --- !u!1 &7328251775992443660 GameObject: m_ObjectHideFlags: 0 @@ -342,7 +394,7 @@ RectTransform: - {fileID: 7328251776013493869} - {fileID: 7328251775195385344} m_Father: {fileID: 7328251774731631637} - m_RootOrder: 1 + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -425,83 +477,3 @@ MonoBehaviour: m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 ---- !u!1 &7932948163013127616 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7932948163013127619} - - component: {fileID: 7932948163013127621} - - component: {fileID: 7932948163013127618} - m_Layer: 5 - m_Name: Text_time - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &7932948163013127619 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7932948163013127616} - 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: 7328251775215910466} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 1} - m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 86, y: -127} - m_SizeDelta: {x: 87, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &7932948163013127621 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7932948163013127616} - m_CullTransparentMesh: 0 ---- !u!114 &7932948163013127618 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7932948163013127616} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 351b4ffae35e149bf81549887561d561, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.3372549, g: 0.21960784, b: 0.14117648, 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_FontData: - m_Font: {fileID: 12800000, guid: b5532e9ce15694f55a0893a76a98cd78, type: 3} - m_FontSize: 75 - m_FontStyle: 1 - m_BestFit: 1 - m_MinSize: 0 - m_MaxSize: 75 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: 60 diff --git a/popcorn/Assets/MyGame/Scenes/MiniGame/Scripts/HeaderView.cs b/popcorn/Assets/MyGame/Scenes/MiniGame/Scripts/HeaderView.cs index af64f93f..b3a43112 100644 --- a/popcorn/Assets/MyGame/Scenes/MiniGame/Scripts/HeaderView.cs +++ b/popcorn/Assets/MyGame/Scenes/MiniGame/Scripts/HeaderView.cs @@ -8,41 +8,8 @@ namespace MyGame.Scenes.MiniGame.Scripts { public class HeaderView : MonoBehaviour { - [SerializeField] private Text text; - [SerializeField] private Text timeText; - [SerializeField] private Animator countDownAnimator; - [SerializeField] private TextMeshProUGUI countDownText; - private int count = 5; - - private void Start() - { - countDownAnimator.gameObject.SetActive(false); - } - + [SerializeField] private TextMeshProUGUI text; + public void ChangeItemCount(int value) => text.text = value.ToString(); - - public void ChangeTimeCount(float newTime) - { - timeText.text = $"{newTime:0}"; - } - - public void StartCountDown() - { - Observable.Timer(TimeSpan.Zero, TimeSpan.FromSeconds(1f)) - .Select(x => count - x) - .Take(count) - .Subscribe(x => - { - countDownAnimator.gameObject.SetActive(true); - countDownText.text = x.ToString(); - countDownAnimator.Play("CountDown", 0, 0f); - }, () => - { - Observable.Timer(TimeSpan.FromSeconds(1f)).Subscribe(_ => - { - countDownAnimator.gameObject.SetActive(false); - }).AddTo(this); - }).AddTo(this); - } } } \ No newline at end of file