瀏覽代碼

Merge pull request #3 from lcswillems/master

Goal can overlap
Maxime Chevalier-Boisvert 7 年之前
父節點
當前提交
2b9f8f57fd
共有 1 個文件被更改,包括 4 次插入1 次删除
  1. 4 1
      gym_minigrid/minigrid.py

+ 4 - 1
gym_minigrid/minigrid.py

@@ -93,6 +93,9 @@ class Goal(WorldObj):
     def __init__(self):
     def __init__(self):
         super(Goal, self).__init__('goal', 'green')
         super(Goal, self).__init__('goal', 'green')
 
 
+    def canOverlap(self):
+        return True
+
     def render(self, r):
     def render(self, r):
         self._setColor(r)
         self._setColor(r)
         r.drawPolygon([
         r.drawPolygon([
@@ -759,7 +762,7 @@ class MiniGridEnv(gym.Env):
             targetCell = self.grid.get(newPos[0], newPos[1])
             targetCell = self.grid.get(newPos[0], newPos[1])
             if targetCell == None or targetCell.canOverlap():
             if targetCell == None or targetCell.canOverlap():
                 self.agentPos = newPos
                 self.agentPos = newPos
-            elif targetCell.type == 'goal':
+            if targetCell != None and targetCell.type == 'goal':
                 done = True
                 done = True
                 reward = 1000 - self.stepCount
                 reward = 1000 - self.stepCount