for (int i = 0; i < ForgeDirection.VALID_DIRECTIONS.length; i++) {
final String key = "Gate[" + i + "]";
Gate gate = gates[i];
if (gate != null) {
NBTTagCompound gateNBT = new NBTTagCompound();
gate.writeToNBT(gateNBT);
data.setTag(key, gateNBT);
} else {
data.removeTag(key);
}
}