| 1 | #include "Player/PlayerJudgeStartRun.h" |
| 2 | |
| 3 | #include "Player/PlayerCounterForceRun.h" |
| 4 | #include "Player/PlayerInput.h" |
| 5 | #include "Util/JudgeUtil.h" |
| 6 | #include "Util/PlayerCollisionUtil.h" |
| 7 | |
| 8 | PlayerJudgeStartRun::PlayerJudgeStartRun(const al::LiveActor* player, const PlayerConst* pConst, |
| 9 | const IUsePlayerCollision* collision, |
| 10 | const PlayerInput* input, |
| 11 | const PlayerCounterForceRun* counterForceRun, |
| 12 | const IJudge* judgeWaterSurfaceRun) |
| 13 | : mPlayer(player), mCollision(collision), mInput(input), mCounterForceRun(counterForceRun), |
| 14 | mJudgeForceLand(judgeWaterSurfaceRun) {} |
| 15 | |
| 16 | bool PlayerJudgeStartRun::judge() const { |
| 17 | if (!rs::isCollidedGround(mCollision)) |
| 18 | return false; |
| 19 | if (mCounterForceRun->isForceRun()) |
| 20 | return true; |
| 21 | if (!rs::isJudge(judge: mJudgeForceLand) && |
| 22 | (mInput->isMove() || rs::isAutoRunOnGroundSkateCode(mPlayer, mCollision, 0.5f))) |
| 23 | return true; |
| 24 | return false; |
| 25 | } |
| 26 | |