From a72da072c5773f384ad6cb8eec2143fc97be95c9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9tro?= <yann.roberge@polymtl.ca>
Date: Sun, 25 Oct 2020 02:25:23 -0400
Subject: [PATCH] =?UTF-8?q?Impl=C3=A9mentation=20de=20facesBlock?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 bloc_ids.lua  | 12 ++++++++++++
 bucher.lua    |  1 +
 rsiTurtle.lua | 15 ++++++++++-----
 test.lua      |  7 ++++++-
 4 files changed, 29 insertions(+), 6 deletions(-)
 create mode 100644 bloc_ids.lua

diff --git a/bloc_ids.lua b/bloc_ids.lua
new file mode 100644
index 0000000..ee0ee78
--- /dev/null
+++ b/bloc_ids.lua
@@ -0,0 +1,12 @@
+-- bloc_ids.lua
+-- Created on:  2020-10-16
+-- Author:      Rétro
+-- 
+-- Fichier de macros pour les ID des blocs
+--
+-- Utilisation: __include 'bloc_ids'
+--
+
+ID_LOG      = "log"
+ID_STONE    = "stone"
+ID_COBBLE   = "cobblestone"
diff --git a/bucher.lua b/bucher.lua
index 5695cbb..91a6a7a 100644
--- a/bucher.lua
+++ b/bucher.lua
@@ -10,6 +10,7 @@ local RSI_Bucheron = {}
 RSI_Bucheron.__index = RSI_Bucheron
 
 rsiT = require("rsiTurtle")
+require("bloc_ids")
 
 ---
 -- \brief Constructeur de RSI_Bucheron
diff --git a/rsiTurtle.lua b/rsiTurtle.lua
index 8303496..aa0965c 100644
--- a/rsiTurtle.lua
+++ b/rsiTurtle.lua
@@ -12,6 +12,7 @@ local RSI_Turtle = {}
 RSI_Turtle.__index = RSI_Turtle
 
 require("printf")
+require("bloc_ids")
 
 ---
 -- \brief Affiche un hello world
@@ -553,11 +554,15 @@ end
 
 
 ---
--- \brief Vérifier l'ID du bloc en face
--- \param Nom du bloc à vérifier
--- \return bool Bloc en face identique à l'argument
-function RSI_Turtle:facesBlock(block_id)
-    --TODO: Implementer
+-- \brief Vérifier si l'ID du bloc en face contient la regex
+-- \param string    blockIdRegex   Regex correspondant au bloc à vérifier
+-- \return bool Bloc en face match la regex
+function RSI_Turtle:facesBlock(blockIdRegex)
+    local isNotAir, blockData = turtle.inspect()
+    if (isNotAir)
+    then
+        return string.match(blockData.name, blockIdRegex)
+    end
 end
 
 return RSI_Turtle
diff --git a/test.lua b/test.lua
index 498543d..3870b88 100644
--- a/test.lua
+++ b/test.lua
@@ -8,6 +8,8 @@ rsiT = require("rsiTurtle")
 rsiB = require("bucher")
 rsiE = require("excaver")
 
+require("bloc_ids")
+
 rsiT.helloWorld()
 
 print("Test de RSI_Turtle")
@@ -147,7 +149,10 @@ end
 -- assert(checkPos(4,0,4))
 
 -- assert(t:goThroughArea(15, 15, true, nil))
-assert(t:goThroughAreaGrounded(3, 3, turtle.placeUp))
+-- assert(t:goThroughAreaGrounded(3, 3, turtle.placeUp))
+
+print("Tests facesBlock")
+assert(t:facesBlock(ID_LOG))
 
 assert(t:moveToOrigin())
 print(t:getPos())
-- 
GitLab