From d4d8b3444833035f2fcf1af0b5c11d4ee5f494c8 Mon Sep 17 00:00:00 2001 From: cm898946 Date: Sun, 13 Mar 2016 22:44:47 -0400 Subject: [PATCH] Finished AI toolbox --- Diagonal.png | Bin 0 -> 298097 bytes Hop.png | Bin 0 -> 299283 bytes astar.py | 21 ++++++++++++++------- 3 files changed, 14 insertions(+), 7 deletions(-) create mode 100644 Diagonal.png create mode 100644 Hop.png diff --git a/Diagonal.png b/Diagonal.png new file mode 100644 index 0000000000000000000000000000000000000000..69b524dc246a159c8e9305a5e668c497da72dbf5 GIT binary patch literal 298097 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