This function is too large. Suggest splitting the body of this `for` loop into a separate function; perhaps `processCreature`? Also, you can build `hasCreatures` in a separate function using a separate for loop; a separate function `getHasCreatures`?