====== Classe GameState====== ===== Explications ===== La classe gamestate permet de : * gérer les événements liés aux différents organes du robot * traiter les événements En somme, elle s'occupe de toute la gestion des éléments extérieurs qui modifient l'état du robot. ===== Import===== * re : module de gestion des expressions régulières * time * threading : pour gérer les threads * inspect : permet d’avoir des info sur la vie des objets * itertools : fournit des iterateurs * math ===== Propriétés ===== * hokuyo : param hokyuo * objects : liste des ennemis (param) * event_bigrobot_pos_update : threading event * event_minirobot_pos_update : idem * event_hokyuo_update : idem * event_on_pong : idem (sert à quoi ?) * event_bigrobot_visio_update : idem * event_minirobot_visio_update : idem * bigrobot : param * minirobot : param * ennemy1 : param * ennemy2 : param * sums : dico * gateau : type Gateau * verre : type Verre * us_detect : booléan de détection sharp * enemies_angle_mort : bool, si les ennemis sont dans l’angle mort ===== Méthodes ===== Le deuxième niveau des lites à puce représente les paramètres envoyés à la méthode (ou dans de rares cas les différentes actions effectuées par la méthode). Précision importante : il se pourrait que l'interprétation des méthodes on_msg_x ne soit pas bonne. * reset : fait un reset * update_robots : met à jour les robots (le graph de navigation) * ask_update : maj pos robot et hokuyo * wait_update : attend une mise à jour du robot * ping : permet de faire un ping * canal * ask_hokuyo_for_pos : demande position du robot à l’hokuyo * ask_asserv_for_pos : idem pour l’asserv * robot * take_picture : demande à la visio de prendre une photo * process_sharp : appel le process_sharp de Robot * on_msg : envoie un message (protocole de com ?) * canal * auteur * msg * on_msg_pos : message de mise à jour des pos du robot * resp * robot * on_msg_hokuyo : fait des calculs avec l’hokuyo * resp * on_msg_visio : merge des data gateau * args * on_msg_us : truc en rapport avec us_detect * args * robots : retourne la liste des robots * enemyrobots : retourne la liste des robots enemy * print_stats : print les stats de sums