def squatPosition(player): brain = player.brain position = brain.play.getPosition() nav = brain.nav my = brain.my if player.firstFrame(): player.changeOmniGoToCounter = 0 player.isChasing = False player.squatting = False if brain.ball.x >= constants.ACTIVE_LOC_THRESH: brain.tracker.activeLoc() else: brain.tracker.trackBall() useOmni = helper.useOmni(player) changedOmni = False ball = brain.ball bearing = None if (not nav.atDestinationGoalie() or not nav.atHeading()): if not useOmni: nav.goTo((PBConstants.GOALIE_HOME_X, PBConstants.GOALIE_HOME_Y,\ NogginConstants.OPP_GOAL_HEADING)) else: nav.omniGoTo((PBConstants.GOALIE_HOME_X, PBConstants.GOALIE_HOME_Y,\ NogginConstants.OPP_GOAL_HEADING)) else: player.stopWalking() return player.goLater("squat") return player.stay()
def goalieAwesomePosition(player): """ Have the robot navigate to the position reported to it from playbook """ brain = player.brain position = brain.play.getPosition() nav = brain.nav my = brain.my if player.firstFrame(): player.changeOmniGoToCounter = 0 if brain.ball.dist >= constants.ACTIVE_LOC_THRESH: player.brain.tracker.activeLoc() else: player.brain.tracker.trackBall() useOmni = helper.useOmni(player) changedOmni = False ball = brain.ball bearing = None if ball.on: bearing = ball.bearing elif ball.framesOff < 3: bearing = ball.locBearing else: bearing = NogginConstants.OPP_GOAL_HEADING if (not nav.atDestinationGoalie() or not nav.atHeading()): if not useOmni: nav.goTo((position[0], position[1], my.h + bearing)) else: nav.omniGoTo((position[0], position[1], my.h + bearing)) else: return player.goLater("goalieAtPosition") return player.stay()