code: function(mapData, charToType, defaultType){
              var _this = this,
                  width = mapData[0].length,
                  height = mapData.length;
  
              if(width !== this.map.width || height !== this.map.height){
                  this.setSize(width, height);
              }
  
              // loop over each coord in the Array2d (val will be undefined)
              this.map.each(function(val, x, y){
                  var char = mapData[y][x],
                      type = charToType[char];
                  if(type === void 0 && defaultType){
                      type = defaultType;
                  }
                  if(type !== void 0){
                      var entity = _this.makeNewObjectFromType(type);
                      _this.add(x, y, entity);
                  }
              });
          }
docs: Loads Obj data from an array of strings.
  @method loadEntitiesFromArrayString
  @param {Array} mapData - The array of strings to load.
  @param {Object} charToType - An object mapping string characters to Obj types (see Obj.Types[type]). Characters in mapData not in charToType are ignored.
  @param {String} [defaultType] - If set, all characters in `mapData` not found in `charToType` will be replaced by an object with `defaultType`.
  @example
  
  var mapData = [
  '####',
  '#..#',
  '#.Z#',
  '####',
  ],
  charToType = {
  'Z': 'zombie'
  };
  
  entityManager.loadTilesFromArrayString(mapData, charToType);