背景ループ対応
This commit is contained in:
parent
eb2d4b9db4
commit
3abe56ab3f
|
|
@ -491,6 +491,11 @@ PrefabInstance:
|
|||
propertyPath: m_Name
|
||||
value: BackGround (6)
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6693468020679260202, guid: 10a5596421a45564397efb765bcabb55,
|
||||
type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 10a5596421a45564397efb765bcabb55, type: 3}
|
||||
--- !u!4 &480107652 stripped
|
||||
|
|
@ -937,6 +942,11 @@ PrefabInstance:
|
|||
propertyPath: m_Name
|
||||
value: BackGround (9)
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6693468020679260202, guid: 10a5596421a45564397efb765bcabb55,
|
||||
type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 10a5596421a45564397efb765bcabb55, type: 3}
|
||||
--- !u!4 &930800256 stripped
|
||||
|
|
@ -1024,6 +1034,11 @@ PrefabInstance:
|
|||
propertyPath: m_Name
|
||||
value: BackGround (5)
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6693468020679260202, guid: 10a5596421a45564397efb765bcabb55,
|
||||
type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 10a5596421a45564397efb765bcabb55, type: 3}
|
||||
--- !u!4 &931896957 stripped
|
||||
|
|
@ -1111,6 +1126,11 @@ PrefabInstance:
|
|||
propertyPath: m_Name
|
||||
value: BackGround (4)
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6693468020679260202, guid: 10a5596421a45564397efb765bcabb55,
|
||||
type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 10a5596421a45564397efb765bcabb55, type: 3}
|
||||
--- !u!4 &962275291 stripped
|
||||
|
|
@ -1769,6 +1789,11 @@ PrefabInstance:
|
|||
propertyPath: m_Name
|
||||
value: BackGround (7)
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6693468020679260202, guid: 10a5596421a45564397efb765bcabb55,
|
||||
type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 10a5596421a45564397efb765bcabb55, type: 3}
|
||||
--- !u!4 &1328382763 stripped
|
||||
|
|
@ -1869,6 +1894,11 @@ PrefabInstance:
|
|||
propertyPath: m_Name
|
||||
value: BackGround (10)
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6693468020679260202, guid: 10a5596421a45564397efb765bcabb55,
|
||||
type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 10a5596421a45564397efb765bcabb55, type: 3}
|
||||
--- !u!4 &1363981461 stripped
|
||||
|
|
@ -1943,6 +1973,7 @@ GameObject:
|
|||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1471947211}
|
||||
- component: {fileID: 1471947212}
|
||||
m_Layer: 0
|
||||
m_Name: BG
|
||||
m_TagString: Untagged
|
||||
|
|
@ -1976,6 +2007,26 @@ Transform:
|
|||
m_Father: {fileID: 1871342}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &1471947212
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1471947210}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 42c1f932a2ec462bb884344bfe785b04, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
bgArray:
|
||||
- {fileID: 894575454}
|
||||
- {fileID: 2044773546}
|
||||
- {fileID: 184442867}
|
||||
- {fileID: 628830308}
|
||||
bgWidth: 17.66
|
||||
bgOffset: 0
|
||||
holeWidth: 0
|
||||
--- !u!114 &1657044091
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
|
|
@ -2319,6 +2370,11 @@ PrefabInstance:
|
|||
propertyPath: m_Name
|
||||
value: BackGround (8)
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6693468020679260202, guid: 10a5596421a45564397efb765bcabb55,
|
||||
type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 10a5596421a45564397efb765bcabb55, type: 3}
|
||||
--- !u!4 &1862591112 stripped
|
||||
|
|
@ -2376,6 +2432,7 @@ MonoBehaviour:
|
|||
stageSelectView: {fileID: 2071735749}
|
||||
footerManager: {fileID: 4559813503860727170}
|
||||
stageManager: {fileID: 1870432536}
|
||||
bgManager: {fileID: 1471947212}
|
||||
resultManager: {fileID: 5034752974072861423}
|
||||
readyObject: {fileID: 978217474}
|
||||
tutorialPopupObject: {fileID: 7325523898178317160}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,36 @@
|
|||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
namespace MyGame.Scenes.MiniGame.Scripts
|
||||
{
|
||||
public class BGManager : MonoBehaviour
|
||||
{
|
||||
// [SerializeField] private int bgCount = 3;
|
||||
[SerializeField] private Transform[] bgArray;
|
||||
[SerializeField] private float bgWidth = 17.66f;
|
||||
[SerializeField] private float bgOffset = 0f;
|
||||
[SerializeField] private float holeWidth;
|
||||
private int bgIndex = 0;
|
||||
|
||||
public void ResetBg(float targetXPos)
|
||||
{
|
||||
bgIndex = 0;
|
||||
for (var i = 0; i < bgArray.Length; i++)
|
||||
{
|
||||
var bg = bgArray[i];
|
||||
bg.SetPositionX(targetXPos + bgWidth / 2 + bgOffset + (i - 1) * bgWidth);
|
||||
}
|
||||
}
|
||||
|
||||
public void UpdatePos(float targetXPos)
|
||||
{
|
||||
var bg = bgArray[bgIndex];
|
||||
if (targetXPos - bg.position.x + bgOffset >= bgWidth)
|
||||
{
|
||||
// 一番奥にセット
|
||||
bg.SetPositionX(bgArray[(bgArray.Length + bgIndex - 1) % bgArray.Length].position.x + bgWidth);
|
||||
bgIndex = (bgIndex + 1) % bgArray.Length;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 42c1f932a2ec462bb884344bfe785b04
|
||||
timeCreated: 1658451249
|
||||
|
|
@ -31,6 +31,7 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
[SerializeField] private StageSelectView stageSelectView;
|
||||
[SerializeField] private FooterManager footerManager;
|
||||
[SerializeField] private StageManager stageManager;
|
||||
[SerializeField] private BGManager bgManager;
|
||||
[SerializeField] private ResultManager resultManager;
|
||||
[SerializeField] private GameObject readyObject;
|
||||
[SerializeField] private GameObject tutorialPopupObject;
|
||||
|
|
@ -201,9 +202,12 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
characterBeginPos = playerTransform.position;
|
||||
var cameraTransform = Camera.main.transform;
|
||||
var cameraOffset = cameraTransform.position - characterBeginPos.x * Vector3.right;
|
||||
state.Where(x => x == GameState.Ready).Subscribe(_ =>
|
||||
state.Where(x => x is GameState.Ready).Subscribe(_ =>
|
||||
{
|
||||
cameraTransform.position = playerTransform.position.x * Vector3.right + cameraOffset;
|
||||
var playerPosX = playerTransform.position.x;
|
||||
// カメラ移動
|
||||
cameraTransform.position = playerPosX * Vector3.right + cameraOffset;
|
||||
bgManager.ResetBg(playerPosX);
|
||||
}).AddTo(this);
|
||||
state.Where(x => x == GameState.Play)
|
||||
.Select(_ => this.UpdateAsObservable())
|
||||
|
|
@ -218,8 +222,10 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
}
|
||||
player.SetJumpHold(Input.GetMouseButton(0) || Input.GetKey(KeyCode.Space));
|
||||
player.Move();
|
||||
var playerPosX = playerTransform.position.x;
|
||||
// カメラ移動
|
||||
cameraTransform.position = playerTransform.position.x * Vector3.right + cameraOffset;
|
||||
cameraTransform.position = playerPosX * Vector3.right + cameraOffset;
|
||||
bgManager.UpdatePos(playerPosX);
|
||||
}).AddTo(this);
|
||||
|
||||
player.OnHitItem.Where(_ => state.Value == GameState.Play).Subscribe(x =>
|
||||
|
|
|
|||
Loading…
Reference in New Issue