Example #1
0
def botFire(playerShips, playerGrid, botGrid) :
    """
    Un seul tir du bot. Ajourne la grille du joueur avec updateGrid.
    Affiche les deux grilles avec le nouveau tir du bot.
    
    Arguments:
    - playerShips (list) : Liste des navires de l'utilisateur.
    - playerGrid (list) : Grille de l'utilisateur.
    - botGrid (list) : Grille du bot.
    
    Retour:
    (str) Résultat du tir du bot : "M", "T", ou "S".
    
    Exemple:
    >>> from basicsFunc import createEmptyGrid
    >>> flotteJoueur=[["bateau1",(None,None),None,3,3],["bateau2",(None,None),None,2,2],["bateau3",(None,None),None,1,1]]
    >>> grilleJoueur=b.createEmptyGrid(5)
    >>> grilleBot=b.createEmptyGrid(5)
    >>> botPlaceShips(flotteBot, grilleBot)
    >>> botFire(flotteJoueur, grilleJoueur, grilleBot)
    Secteur adverse    | Votre secteur
    __|1  2  3  4  5   | __|1  2  3  4  5  
    A |  |  |  |  |  | | A |  |  |  |  |  |
    B |  |  |  |  |  | | B |  |  |  |  |  |
    C |  |  |  |  |  | | C |  |  |  |  |  |
    D |  |  |  |  |  | | D |  |  |  |  |  |
    E |  |  |  |  |  | | E |  |  |  |  |  |
    'M'
    <En couleur, et avec ClearScreen>
    """
    pos=bot.askBot(playerGrid)
    res=b.fireResult(pos, playerShips, playerGrid)
    b.updateGrid(pos, playerShips, playerGrid)
    f.printTwoGrids(botGrid, playerGrid)
    return res
Example #2
0
def playerFire(botShips, botGrid, playerGrid, dic) :
    """
    Un seul tir de l'utilisateur.
    Affiche les deux grilles (botGrid & playerGrid) avec une phrase aléatoire provenant de (dic),
    et laisse le joueur choisir une coordonnée de tir pour viser les navires du bot (botShips).
    
    Arguments:
    - botShips (list) : Liste des navires du bot.
    - botGrid (list) : Grille du bot.
    - playerGrid (list) : Grille de l'utilisateur.
    - dic (dict) : Dictionnaire aléatoire des phrases de commentaire.
    
    Retour:
    aucun
    
    Exemple:
    <Initialisation de flotteBot, flotteJoueur, grilleBot, grilleJoueur, dic, etc.>
    >>> playerFire(flotteBot, grilleBot, grilleJoueur, dic)
    Secteur adverse                   | Votre secteur
    __|1  2  3  4  5  6  7  8  9  10  | __|1  2  3  4  5  6  7  8  9  10 
    A |  |  |  |  |  |  |  |  |  |  | | A |  |  |  |  |  |  |  |  |  |  |
    B |  |  |  |  |  |  |  |  |  |  | | B |  |  |  |  |  |  |ba|  |  |  |
    C |  |  |  |  |  |  |  |  |  |  | | C |  |  |  |  |  |  |ba|  |  |  |
    D |  |  |  |  |  |  |  |  |  |  | | D |  |ba|ba|  |  |  |  |  |  |  |
    E |  |  |  |  |  |  |  |  |  |  | | E |  |  |  |  |  |  |  |  |  |  |
    F |  |  |  |  |  |  |  |  |  |  | | F |  |  |  |  |  |ba|ba|ba|  |  |
    G |  |  |  |  |  |  |  |  |  |  | | G |  |  |  |  |  |  |  |  |  |  |
    H |  |  |  |  |  |  |  |  |  |  | | H |  |  |  |  |  |  |  |  |  |  |
    I |  |  |  |  |  |  |  |  |  |  | | I |  |  |  |  |  |  |  |  |  |  |
    J |  |  |  |  |  |  |  |  |  |  | | J |  |  |  |  |  |  |  |  |  |  |
    Entrez la case :DC5
    Coordonnée hors de la grille
    Entrez la case :quoi???
    Coordonnée invalide
    Entrez la case :F7
    <En couleur, et avec ClearScreen>
    """
    f.printTwoGrids(botGrid, playerGrid)
    pos=f.inputCoord(botGrid)
    res=b.fireResult(pos, botShips, botGrid)
    while res == "E" :
        print(d.say(dic, "E"))
        pos=f.inputCoord(botGrid)
        res=b.fireResult(pos, botShips, botGrid)
    b.updateGrid(pos, botShips, botGrid)
    return res