Example #1
0
def fKickoffPlay(team):
    """time immediately after kickoff"""
    if team.brain.my.playerNumber == 2:
        return ["fKickoffPlay", PBConstants.DEFENDER] + SubRoles.pKickoffPlaySweeper(team)
    elif team.brain.my.playerNumber == 3:
        return ["fKickoffPlay"] + Roles.rChaser(team)
    # elif team.brain.my.playerNumber == 4:
    else:
        return ["fKickoffPlay", PBConstants.OFFENDER] + SubRoles.pKickoffPlayStriker(team)
Example #2
0
def fKickoff(team):
    """time immediately after kickoff"""
    if team.me.playerNumber == 2:
        team.me.role = PBConstants.DEFENDER
        return ["fKickoff", PBConstants.DEFENDER] + SubRoles.pKickoffSweeper(team)
    elif team.me.playerNumber == 3:
        team.me.role = PBConstants.CHASER
        return ["fKickoff"] + Roles.rChaser(team)
    elif team.playerNumber == 4:
        team.me.role = PBConstants.OFFENDER
        return ["fKickoff", PBConstants.OFFENDER] + SubRoles.pKickoffStriker(team)
Example #3
0
def fTwoKickoff(team):
    """
    Kickoff for only two field players
    """
    other_teammate = team.getOtherActiveTeammate()
    if team.me.playerNumber > other_teammate.playerNumber:
        team.me.role = PBConstants.CHASER
        return ["fTwoKickoff"] + (Roles.rChaser(team))
    else:
        team.me.role = PBConstants.DEFENDER
        return ["fTwoKickoff", PBConstants.DEFENDER] + SubRoles.pKickoffSweeper(team)
Example #4
0
def fReady(team):
    """kickoff positions"""

    # ready state depends on number of players alive
    inactive_teammates = team.getInactiveFieldPlayers()
    num_inactive_teammates = len(inactive_teammates)

    # if four dogs alive, position normally
    if num_inactive_teammates == 0:
        if team.me.playerNumber == 2:
            return ["fReady", PBConstants.DEFENDER] + SubRoles.pReadyDefender(team)

        elif team.me.playerNumber == 3:
            return ["fReady", PBConstants.CHASER] + SubRoles.pReadyChaser(team)

        # elif team.me.playerNumber == 4:
        else:
            return ["fReady", PBConstants.OFFENDER] + SubRoles.pReadyOffender(team)

    # two dogs alive, alter positions a bit
    elif num_inactive_teammates == 1:
        other_teammate = team.getOtherActiveTeammate()
        if team.me.playerNumber > other_teammate.playerNumber:
            return ["fReady", PBConstants.CHASER] + SubRoles.pReadyTwoChase(team)
        else:
            return ["fReady", PBConstants.DEFENDER] + SubRoles.pReadyStopper(team)
    # just you
    else:
        return ["fReady", PBConstants.CHASER] + SubRoles.pReadyChaser(team)