From b0d13de750485e192da4ab82dce8f5cf7f286fcd Mon Sep 17 00:00:00 2001 From: Geoffrey Frogeye Date: Thu, 12 Feb 2015 19:06:52 +0100 Subject: [PATCH] TP3 analyse_un_tir --- S2/TP3/bataille_navale.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/S2/TP3/bataille_navale.py b/S2/TP3/bataille_navale.py index c5a1163..2aea319 100644 --- a/S2/TP3/bataille_navale.py +++ b/S2/TP3/bataille_navale.py @@ -264,7 +264,7 @@ def decrire_le_jeu (jeu): print('Navires :') etats = jeu['touches']['etats_navires'] for navire in etats: - print('- %s : %d case%s' % (navire, etats[navire], 's' if etats[navire] >= 2 else '')) + print('- %s : %d case%s' % (navire, etats[navire], 's' * (etats[navire] >= 2))) print('À vous de jouer en répondant à l\'invite ?- par deux nombres séparés par une virgule.') def lire_un_tir (nom): @@ -301,6 +301,20 @@ def analyse_un_tir (jeu,tir): CU : aucune """ + jeu["coups_joues"].add(tir) + if tir in jeu['coups_joues']: + print('DEBUG Vous avez déjà joué à cet endroit.') + return ('', RATE) + elif tir in jeu['plateau']: + nav = jeu['plateau'][tir] + jeu['touches']['nb_touches'] += 1 + jeu['touches']['etats_navires'][nav] += -1 + if jeu['touches']['etats_navires'][nav] > 0: + return (nav, TOUCHE) + else: + return (nav, COULE) + else: + return ('', RATE) def tous_coules (jeu):