落下を加速度で指定するように変更

This commit is contained in:
kimura 2022-07-19 13:49:50 +09:00
parent 1b7dd861c1
commit 2612f82f53
2 changed files with 15 additions and 6 deletions

View File

@ -1394,8 +1394,8 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 2607884839347368726, guid: acd6e6365b5fe4863aedc684a50b8028, - target: {fileID: 2607884839347368726, guid: acd6e6365b5fe4863aedc684a50b8028,
type: 3} type: 3}
propertyPath: flyingFallSpeed propertyPath: fallAcceleration
value: 0.02 value: 19.6
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4931350312200274921, guid: acd6e6365b5fe4863aedc684a50b8028, - target: {fileID: 4931350312200274921, guid: acd6e6365b5fe4863aedc684a50b8028,
type: 3} type: 3}

View File

@ -13,8 +13,8 @@ namespace MyGame.Scenes.MiniGame.Scripts
[SerializeField] private float hitWaitTime = 1f; [SerializeField] private float hitWaitTime = 1f;
[SerializeField] private AnimationCurve jumpAnimationCurve; [SerializeField] private AnimationCurve jumpAnimationCurve;
[SerializeField] private AnimationCurve hitAnimationCurve; [SerializeField] private AnimationCurve hitAnimationCurve;
[SerializeField] private float flyingFallSpeed; [SerializeField] private float flyingFallSpeed = 1f;
[SerializeField] private float fallSpeed; [SerializeField] private float fallAcceleration = 9.8f;
[SerializeField] private GameObject itemHitCollider; [SerializeField] private GameObject itemHitCollider;
[SerializeField] private GameObject obstacleHitCollider; [SerializeField] private GameObject obstacleHitCollider;
[SerializeField] private GameObject level1; [SerializeField] private GameObject level1;
@ -124,6 +124,7 @@ namespace MyGame.Scenes.MiniGame.Scripts
if (isFall && active && !isFlying) if (isFall && active && !isFlying)
{ {
isFlying = true; isFlying = true;
var currentSpeed = 0f;
this.SafeStopCoroutine(jumpFallCoroutine); this.SafeStopCoroutine(jumpFallCoroutine);
jumpHoldDisposable?.Dispose(); jumpHoldDisposable?.Dispose();
jumpHoldDisposable = this.UpdateAsObservable() jumpHoldDisposable = this.UpdateAsObservable()
@ -131,8 +132,16 @@ namespace MyGame.Scenes.MiniGame.Scripts
.Subscribe(_ => .Subscribe(_ =>
{ {
// 滑空or落下切り替え // 滑空or落下切り替え
var currentSpeed = isButtonHold ? -flyingFallSpeed : -fallSpeed; if (isButtonHold)
transform.AddLocalPositionY(currentSpeed); {
currentSpeed = -flyingFallSpeed;
}
else
{
currentSpeed -= fallAcceleration * Time.deltaTime;
}
transform.AddLocalPositionY(currentSpeed * Time.deltaTime);
}, () => }, () =>
{ {
isJump = false; isJump = false;