From 9bed3a9fea76689c6660c236d2b67e4f79c6e274 Mon Sep 17 00:00:00 2001 From: Pacien TRAN-GIRARD Date: Mon, 7 Dec 2015 11:10:15 +0100 Subject: Explain changes in README --- README | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ readme.md | 1 - 2 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 README delete mode 100644 readme.md diff --git a/README b/README new file mode 100644 index 0000000..3097650 --- /dev/null +++ b/README @@ -0,0 +1,65 @@ +CS-107 - Project 2: Maze +======================== + +My JAVAmazing Maze. + + +Maze and Daedalus entities implementation +----------------------------------------- + +### Use of Sets + +The choices arrays have been replaced by Sets of Direction in order to guarantee the uniqueness of each possibility and +directly provide common collection methods, avoiding costly systematic conversions from array to Collection and vice +versa. + +The old methods returning and taking as parameter arrays of Direction have been kept and deprecated to keep the +compatibility with the provided and hidden classes and tests. + + +### Strategies + +Choices elimination and picking strategies have been implemented as "traits" (interfaces with default method in Java) +enabling a better modularization, avoiding code duplication between animals sharing identical behaviours pieces in their +decision making process. + + +### DaedalusAware interface + +Some code shared by the Predator and the Prey classes has been factored in the DaedalusAware interface as default +methods. + + +### Ghosts + +An intermediate Ghost class has been inserted between ghosts and the Predator class in the inheritance chain in order to +implement common behaviours such as the chase mode and the common prey selection and targeting. + + +### PacMan + +The strategy implemented for PacMan to live as long as possible is to simply navigating by maximizing the distance to +the closest Predator. + + +"Utilities" additions and modifications +--------------------------------------- + +### Direction + +A set of the possible moving directions (excluding the NONE Direction) has been added the the Direction enum class. + + +### Vector2D + +A zero vector constructor has been added the the Vector2D class. + + +### SimulationGenerator + +The simulation generating functions have been moved from the main programs to this utility class. + + +### Trail + +A Trail class handling the Panda's marking has been added. diff --git a/readme.md b/readme.md deleted file mode 100644 index 91a8976..0000000 --- a/readme.md +++ /dev/null @@ -1 +0,0 @@ -CS-107 - Project 2: Maze -- cgit v1.2.3