diff --git a/Assets/Scripts/Fishing/Player/States/PlayerFishing.cs b/Assets/Scripts/Fishing/Player/States/PlayerFishing.cs index 7f3f9e793..1fe49c4c1 100644 --- a/Assets/Scripts/Fishing/Player/States/PlayerFishing.cs +++ b/Assets/Scripts/Fishing/Player/States/PlayerFishing.cs @@ -99,20 +99,26 @@ namespace NBF _owner.PlayerAnimatorCtrl.PullUpRod = false; } - // if (isSubLine) - // { - // var subLineSpeed = 2; - // var addNum = subLineSpeed * Time.deltaTime; - // // _owner.currentRod. - // // _owner.currentRod.RodData.LineLength -= addNum; - // // _owner.currentRod.currentReel.animator.SetFloat("Reeling", 1); - // _owner.Gears.Reel.AnimatorCtrl.Reeling = 1; - // } - // else - // { - // // _owner.currentRod.currentReel.animator.SetFloat("Reeling", 0); - // _owner.Gears.Reel.AnimatorCtrl.Reeling = 0; - // } + if (isSubLine) + { + var subLineSpeed = 2; + var addNum = subLineSpeed * Time.deltaTime; + if (_owner.Data.lineLength > 0.4f) + { + _owner.Data.lineLength -= addNum; + } + + _owner.Data.reelSpeed = 1; + if (_owner.Data.lineLength <= 0.4f) + { + _owner.Data.lineLength = 0.4f; + ret = CheckTackFish(); + } + } + else + { + _owner.Data.reelSpeed = 0; + } return ret; } diff --git a/Assets/Scripts/Fishing/Player/States/PlayerIdle.cs b/Assets/Scripts/Fishing/Player/States/PlayerIdle.cs index 98ae7501c..9f1ef7b45 100644 --- a/Assets/Scripts/Fishing/Player/States/PlayerIdle.cs +++ b/Assets/Scripts/Fishing/Player/States/PlayerIdle.cs @@ -30,30 +30,48 @@ namespace NBF public Phase Stage = Phase.Idle; + private bool _nextState = false; protected override void onEnter() { + _nextState = false; + _owner.Data.reelSpeed = 0; _owner.PlayerAnimatorCtrl.LureThrown = false; _owner.MinorArm.IK.enabled = false; if (_owner.Gears.Rod && _owner.Gears.Reel) { _owner.Gears.Reel.Unlock(false); } - + Stage = Phase.Idle; + + InputManager.OnOp1Action += OnOp1Action; + } + + protected override void onExit() + { + base.onExit(); + InputManager.OnOp1Action -= OnOp1Action; + } + + private void OnOp1Action(bool performed) + { + if (Stage == Phase.TakeItem) + { + if (_owner.Gears.Rod) + { + //如果准备好了杆子,则可进入抛竿 + if (performed) + { + _nextState = true; + } + } + } } protected override uint onUpdate() { - // if (Input.GetKeyDown(KeyCode.O)) - // { - // SetArm(); - // _owner.Gears.Reel.AnimatorCtrl.Reeling2 = 1; - // _owner.PlayerAnimatorCtrl.PodsakAction = true; - // _owner.PlayerAnimatorCtrl.Telestick = false; - // } - if (Stage == Phase.Idle) { if (_owner && _owner.Gears.Rod) @@ -85,7 +103,7 @@ namespace NBF if (_owner.Gears.Rod) { //如果准备好了杆子,则可进入抛竿 - if (InputManager.IsOp1) + if (_nextState) { return States.Player.WaitThrow; }