The bug was found when running the Junit Test. The Map which filled with prop would return false. Steps to Reproduce: Run testPropExist() in TestMap.java Actual Results: testPropExist() in TestMap.java failures. Expected Results: testPropExist() in TestMap.java pass the Junit Test.
The situation with the prop was not considered in isSwapExist(). Generally speaking, the map with prop exists should not be considered as a dead map. The solution would be adding the condition of props in isSwapExist(). result |= (itemArray[i][j].execute() > 0)