diff --git a/roboc/configuration.py b/roboc/configuration.py new file mode 100644 index 0000000..b30962b --- /dev/null +++ b/roboc/configuration.py @@ -0,0 +1,34 @@ +""" +Author: freezed 2018-02-11 +Version: 0.1 +Licence: `GNU GPL v3` GNU GPL v3: http://www.gnu.org/licenses/ + +Ce fichier fait partie du projet `roboc` + +""" + + +# CONFIGURATION + +MAP_DIRECTORY = 'cartes/' # repertoire des fichiers carte +MAP_EXTENTION = '.txt' # extention des fichiers carte +SAVED_GAME_FILENAME = '.backup' # fichier de sauvegarde +DIRECTIONS = ['n', 'e', 's', 'o'] # commandes de deplacement +MAZE_ELEMENTS = {'wall': 'O', # elements dispo dans le labyrinthe + 'door': '.', + 'exit': 'U', + 'robo': 'X'} +ERR_MAP_FILE = "ERR_MAP_FILE" +ERR_PLAGE = "Il faut saisir un nombre dans la plage indiquée! " +ERR_SAISIE = "Il faut saisir un nombre! " +MSG_DISCLAMER = "Bienvenue dans Roboc." +MSG_AVAIBLE_MAP = "Cartes disponible: " +MSG_CHOOSE_MAP = "Choississez un numéro de carte: " +MSG_SELECTED_MAP = "Vous avez fait le choix #{}, la carte «{}»." +DEBUG = False + + +# VARIABLES + +maps_name_list = list() # liste des maps proposees a l'utilisateur +user_select_map_id = -1 # carte choisie par l'utilisateur diff --git a/roboc/map.py b/roboc/map.py index 2feb8ca..17fbbac 100644 --- a/roboc/map.py +++ b/roboc/map.py @@ -1,6 +1,3 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- - """ Author: freezed 2018-02-06 Version: 0.1 @@ -9,8 +6,9 @@ Licence: `GNU GPL v3` GNU GPL v3: http://www.gnu.org/licenses/ Ce fichier fait partie du projet `roboc` """ + import os -from roboc import MAZE_ELEMENTS +from configuration import MAZE_ELEMENTS, ERR_MAP_FILE class Map: @@ -39,9 +37,12 @@ class Map: >>> print("_line_nb: {}".format(TestMap._line_nb)) _line_nb: 4 - >>> print("_line_position: {}".format(TestMap._line_position)) + >>> print("_init_position: {}".format(TestMap._init_position)) _line_position: + >>> print("_current_position: {}".format(TestMap._current_position)) + _current_position: + >>> type(TestMap._data_text) @@ -59,7 +60,6 @@ class Map: Initialisation de la carte utilise :param map_file: """ - # Chargement du fichier carte choisi if os.path.isfile(map_file) is True: with open(map_file, "r") as map_data: @@ -73,7 +73,7 @@ class Map: self._line_nb = len(self._data_list) else: - raise FileNotFoundError('ERR_MAP_FILE: {}'.format(map_file)) + raise FileNotFoundError('{}: {}'.format(ERR_MAP_FILE, map_file)) line = int(self._line_nb) while line == 0: @@ -83,7 +83,6 @@ class Map: # la position courante est la position initiale self._current_position = self._init_position - line -= 1 def map_print(self): diff --git a/roboc/roboc.py b/roboc/roboc.py index 9b18e42..443d7bc 100644 --- a/roboc/roboc.py +++ b/roboc/roboc.py @@ -20,33 +20,11 @@ une sortie. Arrive sur ce point, la partie est terminee. """ -from map import Map import os +from map import Map +from configuration import * # import pickle -# CONFIGURATION -MAP_DIRECTORY = 'cartes/' # repertoire des fichiers carte -MAP_EXTENTION = '.txt' # extention des fichiers carte -SAVED_GAME_FILENAME = '.backup' # fichier de sauvegarde -DIRECTIONS = ['n', 'e', 's', 'o'] # commandes de deplacement -MAZE_ELEMENTS = {'wall': 'O', # elements dispo dans le labyrinthe - 'door': '.', - 'exit': 'U', - 'robo': 'X'} -# ERR_MAP_FILE = "ERR_MAP_FILE" -ERR_PLAGE = "Il faut saisir un nombre dans la plage indiquée! " -ERR_SAISIE = "Il faut saisir un nombre! " -MSG_DISCLAMER = "Bienvenue dans Roboc." -MSG_AVAIBLE_MAP = "Cartes disponible: " -MSG_CHOOSE_MAP = "Choississez un numéro de carte: " -MSG_SELECTED_MAP = "Vous avez fait le choix #{}, la carte «{}»." -DEBUG = False - -# VARIABLES -maps_name_list = list() # liste des maps proposees a l'utilisateur -user_select_map_id = -1 # carte choisie par l'utilisateur - - # FONCTIONS @@ -77,11 +55,11 @@ for maps_name in maps_name_list: i += 1 # Choix de la carte par l'utilisateur -while user_select_map_id > len(maps_name_list) or \ - user_select_map_id < 0: +while user_select_map_id > len(maps_name_list) or user_select_map_id < 0: user_select_map_id = input(MSG_CHOOSE_MAP) try: user_select_map_id = int(user_select_map_id) + # ? if user_select_map_id is int(): ? except ValueError as except_detail: if DEBUG: print("ValueError: «{}»".format(except_detail))