def goaliePositionForSave(player): if player.firstFrame(): player.stopWalking() player.brain.tracker.trackBall() strafeDir = helper.strafeDirForSave(player) if strafeDir == -1: helper.strafeRightSpeed(player) elif strafeDir == 1: helper.strafeLeftSpeed(player) else: player.stopWalking() return player.stay()
def goaliePositionBallClose(player): nav = player.brain.nav player.brain.tracker.trackBall() #if not nav.atHeading(NogginConstants.OPP_GOAL_HEADING): # return player.goLater('goalieSpinToPosition') if helper.useLeftStrafeCloseSpeed(player): helper.strafeLeftSpeed(player) elif helper.useRightStrafeCloseSpeed(player): helper.strafeRightSpeed(player) else: player.stopWalking() #switch out if we lose the ball for multiple frames if helper.useFarPosition(player): return player.goNow('goaliePositionBallFar') return player.stay()
def goaliePositionBallFar(player): nav = player.brain.nav player.brain.tracker.activeLoc() if helper.outOfPosition(player): player.goLater('goalieOutOfPosition') #elif not nav.atHeading(NogginConstants.OPP_GOAL_HEADING): # return player.goLater('goalieSpinToPosition') elif helper.useLeftStrafeFarSpeed(player): helper.strafeLeftSpeed(player) elif helper.useRightStrafeFarSpeed(player): helper.strafeRightSpeed(player) else: player.stopWalking() #Don't switch out if we don't see the ball if helper.useClosePosition(player): return player.goLater('goaliePositionBallClose') return player.stay()