Untitled diff

Created Diff never expires
/*:
/*:
* @plugindesc v1.10 Plugin supports Tiled Map Editor maps with some additional
* @plugindesc v1.20 Plugin supports Tiled Map Editor maps with some additional
* features.
* features.
* @author Dr.Yami
* @author Dr.Yami
*
*
* @param Z - Player
* @param Z - Player
* @desc Z Index for Same as Characters events and Players.
* @desc Z Index for Same as Characters events and Players.
* Default: 3
* Default: 3
* @default 3
* @default 3
*
*
* @param Z - Below Player
* @param Z - Below Player
* @desc Z Index for Below Characters events.
* @desc Z Index for Below Characters events.
* Default: 1
* Default: 1
* @default 1
* @default 1
*
*
* @param Z - Above Player
* @param Z - Above Player
* @desc Z Index for Above Characters events.
* @desc Z Index for Above Characters events.
* Default: 5
* Default: 5
* @default 5
* @default 5
*
*
* @param Half-tile movement
* @param Half-tile movement
* @desc Moving and collision checking by half a tile.
* @desc Moving and collision checking by half a tile.
* Can be true or false
* Can be true or false
* @default true
* @default true
*
*
* @param Priority Tiles Limit
* @param Priority Tiles Limit
* @desc Limit for priority tile sprites.
* @desc Limit for priority tile sprites.
* Should not be too large.
* Should not be too large.
* @default 256
* @default 256
*
*
* @param Map Level Variable
* @param Map Level Variable
* @desc Get and set map level by variable
* @desc Get and set map level by variable
* @default 0
* @default 0
*
*
* @help
* @help
* Use these properties in Tiled Map's layer:
* Use these properties in Tiled Map's layer:
* zIndex
* zIndex
* The layer will have z-index == property's value
* The layer will have z-index == property's value
*
*
* collision
* collision
* The layer will be collision mask layer. Use one of these value:
* The layer will be collision mask layer. Use one of these value:
* full - Normal collision (1 full-tile)
* full - Normal collision (1 full-tile)
* arrow - Arrow collision
* arrow - Arrow collision
* up-left - Half-tile collision up-left quarter
* up-left - Half-tile collision up-left quarter
* up-right - Half-tile collision up-right quarter
* up-right - Half-tile collision up-right quarter
* down-left - Half-tile collision down-left quarter
* down-left - Half-tile collision down-left quarter
* down-right - Half-tile collision down-right quarter
* down-right - Half-tile collision down-right quarter
*
*
* arrowImpassable
* arrowImpassable
* If the layer is an arraw collision mask layer, it will make one direction be impassable
* If the layer is an arraw collision mask layer, it will make one direction be impassable
* Value can be up, down, left, right
* Value can be up, down, left, right
*
*
* regionId
* regionId
* Mark the layer as region layer, the layer ID will be the value of property
* Mark the layer as region layer, the layer ID will be the value of property
*
*
* priority
* priority
* Mark the layer as priority layer, allows it goes above player when player is behind,
* Mark the layer as priority layer, allows it goes above player when player is behind,
* below player when player is in front of. Value should be > 0, zIndex should be
* below player when player is in front of. Value should be > 0, zIndex should be
* the same as player z-index.
* the same as player z-index.
*
*
* level
* level
* Mark the layer on different level, use for multiple levels map (for example a bridge).
* Mark the layer on different level, use for multiple levels map (for example a bridge).
* Default level is 0. Use this for collision and regionId.
* Default level is 0. Use this for collision and regionId.
*
*
* hideOnLevel
* hideOnLevel
* Hide the layer when on a certain level.
* Hide the layer when on a certain level.
*
*
* toLevel
* toLevel
* The tiles on this layer will transfer player to another level.
* The tiles on this layer will transfer player to another level.
*/
*/
/******/ (function(modules) { // webpackBootstrap
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ // The module cache
/******/ var installedModules = {};
/******/ var installedModules = {};


/******/ // The require function
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ function __webpack_require__(moduleId) {


/******/ // Check if module is in cache
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ return installedModules[moduleId].exports;


/******/ // Create a new module (and put it into the cache)
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ var module = installedModules[moduleId] = {
/******/ exports: {},
/******/ exports: {},
/******/ id: moduleId,
/******/ id: moduleId,
/******/ loaded: false
/******/ loaded: false
/******/ };
/******/ };


/******/ // Execute the module function
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);


/******/ // Flag the module as loaded
/******/ // Flag the module as loaded
/******/ module.loaded = true;
/******/ module.loaded = true;


/******/ // Return the exports of the module
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ return module.exports;
/******/ }
/******/ }




/******/ // expose the modules object (__webpack_modules__)
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ __webpack_require__.m = modules;


/******/ // expose the module cache
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ __webpack_require__.c = installedModules;


/******/ // __webpack_public_path__
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/ __webpack_require__.p = "";


/******/ // Load entry module and return exports
/******/ // Load entry module and return exports
/******/ return __webpack_require__(0);
/******/ return __webpack_require__(0);
/******/ })
/******/ })
/************************************************************************/
/************************************************************************/
/******/ ({
/******/ ({


/***/ 0:
/***/ 0:
/***/ function(module, exports, __webpack_require__) {
/***/ function(module, exports, __webpack_require__) {


"use strict";
"use strict";


__webpack_require__(73);
__webpack_require__(73);


__webpack_require__(74);
__webpack_require__(74);


var _TiledTilemap = __webpack_require__(75);
var _TiledTilemap = __webpack_require__(75);


__webpack_require__(76);
__webpack_require__(76);


__webpack_require__(77);
__webpack_require__(77);


__webpack_require__(78);
__webpack_require__(78);


__webpack_require__(79);
__webpack_require__(79);


/***/ },
/***/ },


/***/ 73:
/***/ 73:
/***/ function(module, exports) {
/***/ function(module, exports) {


"use strict";
"use strict";


DataManager._tempTiledData = null;
DataManager._tempTiledData = null;
DataManager._tiledLoaded = false;
DataManager._tiledLoaded = false;
DataManager._tilesetToLoad = 0;


var _loadMapData = DataManager.loadMapData;
var _loadMapData = DataManager.loadMapData;
DataManager.loadMapData = function (mapId) {
DataManager.loadMapData = function (mapId) {
_loadMapData.call(this, mapId);
_loadMapData.call(this, mapId);
if (mapId > 0) {
if (mapId > 0) {
this.loadTiledMapData(mapId);
this.loadTiledMapData(mapId);
} else {
} else {
this.unloadTiledMapData();
this.unloadTiledMapData();
}
}
};
};


DataManager.loadTiledMapData = function (mapId) {
DataManager.loadTiledMapData = function (mapId) {
var xhr = new XMLHttpRequest();
var xhr = new XMLHttpRequest();
xhr.open('GET', "./maps/Map" + mapId + ".json");
xhr.open('GET', "./maps/Map" + mapId + ".json");
xhr.overrideMimeType('application/json');
xhr.overrideMimeType('application/json');


// on success callback
// on success callback
xhr.onreadystatechange = function () {
xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
if (xhr.readyState === 4) {
if (xhr.status === 200 || xhr.responseText !== "") {
if (xhr.status === 200 || xhr.responseText !== "") {
DataManager._tempTiledData = JSON.parse(xhr.responseText);
DataManager._tempTiledData = JSON.parse(xhr.responseText);
}
}
DataManager.loadTilesetData();
DataManager._tiledLoaded = true;
DataManager._tiledLoaded = true;
}
}
};
};


// set data to null and send request
// set data to null and send request
this.unloadTiledMapData();
this.unloadTiledMapData();
xhr.send();
xhr.send();
};
};


DataManager.loadTilesetData = function () {
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;

try {
var _loop = function _loop() {
var tileset = _step.value;

if (!tileset.source) {
return "continue";
}

DataManager._tilesetToLoad++;
var filename = tileset.source.replace(/^.*[\\\/]/, '');
var xhr = new XMLHttpRequest();

xhr.open('GET', "./maps/" + filename);
xhr.overrideMimeType('application/json');

xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
if (xhr.status === 200 || xhr.responseText !== "") {
Object.assign(tileset, JSON.parse(xhr.responseText));
}
DataManager._tilesetToLoad--;
}
};

xhr.send();
};

for (var _iterator = DataManager._tempTiledData.tilesets[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
var _ret = _loop();

if (_ret === "continue") continue;
}
} catch (err) {
_didIteratorError = true;
_iteratorError = err;
} finally {
try {
if (!_iteratorNormalCompletion && _iterator.return) {
_iterator.return();
}
} finally {
if (_didIteratorError) {
throw _iteratorError;
}
}
}
};

DataManager.unloadTiledMapData = function () {
DataManager.unloadTiledMapData = function () {
DataManager._tempTiledData = null;
DataManager._tempTiledData = null;
DataManager._tiledLoaded = false;
DataManager._tiledLoaded = false;
DataManager._tilesetToLoad = 0;
};
};


var _isMapLoaded = DataManager.isMapLoaded;
var _isMapLoaded = DataManager.isMapLoaded;
DataManager.isMapLoaded = function () {
DataManager.isMapLoaded = function () {
var defaultLoaded = _isMapLoaded.call(this);
var defaultLoaded = _isMapLoaded.call(this);
var tiledLoaded = DataManager._tiledLoaded;
var tiledLoaded = DataManager._tiledLoaded;
var tilesetLoaded = DataManager._tilesetToLoad <= 0;


return defaultLoaded && tiledLoaded;
return defaultLoaded && tiledLoaded && tilesetLoaded;
};
};


/***/ },
/***/ },


/***/ 74:
/***/ 74:
/***/ function(module, exports) {
/***/ function(module, exports) {


"use strict";
"use strict";


ImageManager.loadParserTileset = function (path, hue) {
ImageManager.loadParserTileset = function (path, hue) {
if (!path) {
if (!path) {
return this.loadEmptyBitmap();
return this.loadEmptyBitmap();
}
}
var paths = path.split("/");
var paths = path.split("/");
var filename = paths[paths.length - 1];
var filename = paths[paths.length - 1];
var realPath = "img/tilesets/" + filename;
var realPath = "img/tilesets/" + filename;


return this.loadNormalBitmap(realPath, hue);
return this.loadNormalBitmap(realPath, hue);
};
};


ImageManager.loadParserParallax = function (path, hue) {
ImageManager.loadParserParallax = function (path, hue) {
if (!path) {
if (!path) {
return this.loadEmptyBitmap();
return this.loadEmptyBitmap();
}
}
var paths = path.split("/");
var paths = path.split("/");
var filename = paths[paths.length - 1];
var filename = paths[paths.length - 1];
var realPath = "img/parallaxes/" + filename;
var realPath = "img/parallaxes/" + filename;


return this.loadNormalBitmap(realPath, hue);
return this.loadNormalBitmap(realPath, hue);
};
};


/***/ },
/***/ },


/***/ 75:
/***/ 75:
/***/ function(module, exports) {
/***/ function(module, exports) {


'use strict';
'use strict';


Object.defineProperty(exports, "__esModule", {
Object.defineProperty(exports, "__esModule", {
value: true
value: true
});
});


var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();


var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } };
var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } };


function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }


function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }


function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }


var TiledTilemap = exports.TiledTilemap = function (_ShaderTilemap) {
var TiledTilemap = exports.TiledTilemap = function (_ShaderTilemap) {
_inherits(TiledTilemap, _ShaderTilemap);
_inherits(TiledTilemap, _ShaderTilemap);


function TiledTilemap() {
function TiledTilemap() {
_classCallCheck(this, TiledTilemap);
_classCallCheck(this, TiledTilemap);


return _possibleConstructorReturn(this, (TiledTilemap.__proto__ || Object.getPrototypeOf(TiledTilemap)).apply(this, arguments));
return _possibleConstructorReturn(this, (TiledTilemap.__proto__ || Object.getPrototypeOf(TiledTilemap)).apply(this, arguments));
}
}


_createClass(TiledTilemap, [{
_createClass(TiledTilemap, [{
key: 'initialize',
key: 'initialize',
value: function initialize(tiledData) {
value: function initialize(tiledData) {
this._tiledData = {};
this._tiledData = {};
this._layers = [];
this._layers = [];
this._priorityTiles = [];
this._priorityTiles = [];
this._priorityTilesCount = 0;
this._priorityTilesCount = 0;
this.tiledData = tiledData;
this.tiledData = tiledData;
_get(TiledTilemap.prototype.__proto__ || Object.getPrototypeOf(TiledTilemap.prototype), 'initialize', this).call(this);
_get(TiledTilemap.prototype.__proto__ || Object.getPrototypeOf(TiledTilemap.prototype), 'initialize', this).call(this);
this.setupTiled();
this.setupTiled();
}
}
}, {
}, {
key: 'setupTiled',
key: 'setupTiled',
value: function setupTiled() {
value: function setupTiled() {
this._setupSize();
this._setupSize();
this._setupAnim();
this._setupAnim();
}
}
}, {
}, {
key: '_setupSize',
key: '_setupSize',
value: function _setupSize() {
value: function _setupSize() {
var width = this._width;
var width = this._width;
var height = this._height;
var height = this._height;
var margin = this._margin;
var margin = this._margin;
var tileCols = Math.ceil(width / this._tileWidth) + 1;
var tileCols = Math.ceil(width / this._tileWidth) + 1;
var tileRows = Math.ceil(height / this._tileHeight) + 1;
var tileRows = Math.ceil(height / this._tileHeight) + 1;
this._tileWidth = this.tiledData.tilewidth;
this._tileWidth = this.tiledData.tilewidth;
this._tileHeight = this.tiledData.tileheight;
this._tileHeight = this.tiledData.tileheight;
this._layerWidth = tileCols * this._tileWidth;
this._layerWidth = tileCols * this._tileWidth;
this._layerHeight = tileRows * this._tileHeight;
this._layerHeight = tileRows * this._tileHeight;
this._mapWidth = this.tiledData.width;
this._mapWidth = this.tiledData.width;
this._mapHeight = this.tiledData.height;
this._mapHeight = this.tiledData.height;
}
}
}, {
}, {
key: '_setupAnim',
key: '_setupAnim',
value: function _setupAnim() {
value: function _setupAnim() {
this._animFrame = {};
this._animFrame = {};
this._animDuration = {};
this._animDuration = {};
}
}
}, {
}, {
key: '_createLayers',
key: '_createLayers',
value: function _createLayers() {
value: function _createLayers() {
var id = 0;
var id = 0;
this._needsRepaint = true;
this._needsRepaint = true;


var parameters = PluginManager.parameters('ShaderTilemap');
var parameters = PluginManager.parameters('ShaderTilemap');
var useSquareShader = Number(parameters.hasOwnProperty('squareShader') ? parameters['squareShader'] : 1);
var useSquareShader = Number(parameters.hasOwnProperty('squareShader') ? parameters['squareShader'] : 1);


var _iteratorNormalCompletion = true;
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _didIteratorError = false;
var _iteratorError = undefined;
var _iteratorError = undefined;


try {
try {
for (var _iterator = this.tiledData.layers[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
for (var _iterator = this.tiledData.layers[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
var layerData = _step.value;
var layerData = _step.value;


var zIndex = 0;
var zIndex = 0;
if (layerData.type != "tilelayer") {
if (layerData.type != "tilelayer") {
id++;
id++;
continue;
continue;
}
}


if (!!layerData.properties && !!layerData.properties.zIndex) {
if (!!layerData.properties && !!layerData.properties.zIndex) {
zIndex = parseInt(layerData.properties.zIndex);
zIndex = parseInt(layerData.properties.zIndex);
}
}


if (!!layerData.properties && !!layerData.properties.collision) {
if (!!layerData.properties && !!layerData.properties.collision) {
id++;
id++;
continue;
continue;
}
}


if (!!layerData.properties && !!layerData.properties.toLevel) {
if (!!layerData.properties && !!layerData.properties.toLevel) {
id++;
id++;
continue;
continue;
}
}


if (!!layerData.properties && !!layerData.properties.regionId) {
if (!!layerData.properties && !!layerData.properties.regionId) {
id++;
id++;
continue;
continue;
}
}


var layer = new PIXI.tilemap.CompositeRectTileLayer(zIndex, [], useSquareShader);
var layer = new PIXI.tilemap.CompositeRectTileLayer(zIndex, [], useSquareShader);
layer.layerId = id; // @dryami: hack layer index
layer.layerId = id; // @dryami: hack layer index
layer.spriteId = Sprite._counter++;
layer.spriteId = Sprite._counter++;
this._layers.push(layer);
this._layers.push(layer);
this.addChild(layer);
this.addChild(layer);
id++;
id++;
}
}
} catch (err) {
} catch (err) {
_didIteratorError = true;
_didIteratorError = true;
_iteratorError = err;
_iteratorError = err;
} finally {
} finally {
try {
try {
if (!_iteratorNormalCompletion && _iterator.return) {
if (!_iteratorNormalCompletion && _iterator.return) {
_iterator.return();
_iterator.return();
}
}
} finally {
} finally {
if (_didIteratorError) {
if (_didIteratorError) {
throw _iteratorError;
throw _iteratorError;
}
}
}
}
}
}


this._createPriorityTiles();
this._createPriorityTiles();
}
}
}, {
}, {
key: '_createPriorityTiles',
key: '_createPriorityTiles',
value: function _createPriorityTiles() {
value: function _createPriorityTiles() {
var pluginParams = PluginManager.parameters("YED_Tiled");
var pluginParams = PluginManager.parameters("YED_Tiled");
var size = parseInt(pluginParams["Priority Tiles Limit"]);
var size = parseInt(pluginParams["Priority Tiles Limit"]);
var zIndex = parseInt(pluginParams["Z - Player"]);
var zIndex = parseInt(pluginParams["Z - Player"]);
var _iteratorNormalCompletion2 = true;
var _iteratorNormalCompletion2 = true;
var _didIteratorError2 = false;
var _didIteratorError2 = false;
var _iteratorError2 = undefined;
var _iteratorError2 = undefined;


try {
try {
for (var _iterator2 = Array(size).keys()[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
for (var _iterator2 = Array(size).keys()[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
var x = _step2.value;
var x = _step2.value;


var sprite = new Sprite_Base();
var sprite = new Sprite_Base();
sprite.z = sprite.zIndex = zIndex;
sprite.z = sprite.zIndex = zIndex;
sprite.layerId = -1;
sprite.layerId = -1;
sprite.hide();
sprite.hide();
this.addChild(sprite);
this.addChild(sprite);
this._priorityTiles.push(sprite);
this._priorityTiles.push(sprite);
}
}
} catch (err) {
} catch (err) {
_didIteratorError2 = true;
_didIteratorError2 = true;
_iteratorError2 = err;
_iteratorError2 = err;
} finally {
} finally {
try {
try {
if (!_iteratorNormalCompletion2 && _iterator2.return) {
if (!_iteratorNormalCompletion2 && _iterator2.return) {
_iterator2.return();
_iterator2.return();
}
}
} finally {
} finally {
if (_didIteratorError2) {
if (_didIteratorError2) {
throw _iteratorError2;
throw _iteratorError2;
}
}
}
}
}
}
}
}
}, {
}, {
key: '_hackRenderer',
key: '_hackRenderer',
value: function _hackRenderer(renderer) {
value: function _hackRenderer(renderer) {
return renderer;
return renderer;
}
}
}, {
}, {
key: 'refreshTileset',
key: 'refreshTileset',
value: function refreshTileset() {
value: function refreshTileset() {
var bitmaps = this.bitmaps.map(function (x) {
var bitmaps = this.bitmaps.map(function (x) {
return x._baseTexture ? new PIXI.Texture(x._baseTexture) : x;
return x._baseTexture ? new PIXI.Texture(x._baseTexture) : x;
});
});
var _iteratorNormalCompletion3 = true;
var _iteratorNormalCompletion3 = true;
var _didIteratorError3 = false;
var _didIteratorError3 = false;
var _iteratorError3 = undefined;
var _iteratorError3 = undefined;


try {
try {
for (var _iterator3 = this._layers[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
for (var _iterator3 = this._layers[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
var layer = _step3.value;
var layer = _step3.value;


layer.setBitmaps(bitmaps);
layer.setBitmaps(bitmaps);
}
}
} catch (err) {
} catch (err) {
_didIteratorError3 = true;
_didIteratorError3 = true;
_iteratorError3 = err;
_iteratorError3 = err;
} finally {
} finally {
try {
try {
if (!_iteratorNormalCompletion3 && _iterator3.return) {
if (!_iteratorNormalCompletion3 && _iterator3.return) {
_iterator3.return();
_iterator3.return();
}
}
} finally {
} finally {
if (_didIteratorError3) {
if (_didIteratorError3) {
throw _iteratorError3;
throw _iteratorError3;
}
}
}
}
}
}
}
}
}, {
}, {
key: 'update',
key: 'update',
value: function update() {
value: function update() {
_get(TiledTilemap.prototype.__proto__ || Object.getPrototypeOf(TiledTilemap.prototype), 'update', this).call(this);
_get(TiledTilemap.prototype.__proto__ || Object.getPrototypeOf(TiledTilemap.prototype), 'update', this).call(this);
this._updateAnim();
this._updateAnim();
}
}
}, {
}, {
key: '_updateAnim',
key: '_updateAnim',
value: function _updateAnim() {
value: function _updateAnim() {
var needRefresh = false;
var needRefresh = false;
for (var key in this._animDuration) {
for (var key in this._animDuration) {
this._animDuration[key] -= 1;
this._animDuration[key] -= 1;
if (this._animDuration[key] <= 0) {
if (this._animDuration[key] <= 0) {
this._animFrame[key] += 1;
this._animFrame[key] += 1;
needRefresh = true;
needRefresh = true;
}
}
}
}


if (needRefresh) {
if (needRefresh) {
this.refresh();
this.refresh();
}
}
}
}
}, {
}, {
key: '_updateLayerPositions',
key: '_updateLayerPositions',
value: function _updateLayerPositions(startX, startY) {
value: function _updateLayerPositions(startX, startY) {
var ox = 0;
var ox = 0;
var oy = 0;
var oy = 0;
if (this.roundPixels) {
if (this.roundPixels) {
ox = Math.floor(this.origin.x);
ox = Math.floor(this.origin.x);
oy = Math.floor(this.origin.y);
oy = Math.floor(this.origin.y);
} else {
} else {
ox = this.origin.x;
ox = this.origin.x;
oy = this.origin.y;
oy = this.origin.y;
}
}


var _iteratorNormalCompletion4 = true;
var _iteratorNormalCompletion4 = true;
var _didIteratorError4 = false;
var _didIteratorError4 = false;
var _iteratorError4 = undefined;
var _iteratorError4 = undefined;


try {
try {
for (var _iterator4 = this._layers[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {
for (var _iterator4 = this._layers[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {
var layer = _step4.value;
var layer = _step4.value;


var layerData = this.tiledData.layers[layer.layerId];
var layerData = this.tiledData.layers[layer.layerId];
var offsetX = layerData.offsetx || 0;
var offsetX = layerData.offsetx || 0;
var offsetY = layerData.offsety || 0;
var offsetY = layerData.offsety || 0;
layer.position.x = startX * this._tileWidth - ox + offsetX;
layer.position.x = startX * this._tileWidth - ox + offsetX;
layer.position.y = startY * this._tileHeight - oy + offsetY;
layer.position.y = startY * this._tileHeight - oy + offsetY;
}
}
} catch (err) {
} catch (err) {
_didIteratorError4 = true;
_didIteratorError4 = true;
_iteratorError4 = err;
_iteratorError4 = err;
} finally {
} finally {
try {
try {
if (!_iteratorNormalCompletion4 && _iterator4.return) {
if (!_iteratorNormalCompletion4 && _iterator4.return) {
_iterator4.return();
_iterator4.return();
}
}
} finally {
} finally {
if (_didIteratorError4) {
if (_didIteratorError4) {
throw _iteratorError4;
throw _iteratorError4;
}
}
}
}
}
}


var _iteratorNormalCompletion5 = true;
var _iteratorNormalCompletion5 = true;
var _didIteratorError5 = false;
var _didIteratorError5 = false;
var _iteratorError5 = undefined;
var _iteratorError5 = undefined;


try {
try {
for (var _iterator5 = this._priorityTiles[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
for (var _iterator5 = this._priorityTiles[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
var sprite = _step5.value;
var sprite = _step5.value;


var _layerData = this.tiledData.layers[sprite.layerId];
var _layerData = this.tiledData.layers[sprite.layerId];
var _offsetX = _layerData ? _layerData.offsetx || 0 : 0;
var _offsetX = _layerData ? _layerData.offsetx || 0 : 0;
var _offsetY = _layerData ? _layerData.offsety || 0 : 0;
var _offsetY = _layerData ? _layerData.offsety || 0 : 0;
sprite.x = sprite.origX + startX * this._tileWidth - ox + _offsetX + sprite.width / 2;
sprite.x = sprite.origX + startX * this._tileWidth - ox + _offsetX + sprite.width / 2;
sprite.y = sprite.origY + startY * this._tileHeight - oy + _offsetY + sprite.height;
sprite.y = sprite.origY + startY * this._tileHeight - oy + _offsetY + sprite.height;
}
}
} catch (err) {
} catch (err) {
_didIteratorError5 = true;
_didIteratorError5 = true;
_iteratorError5 = err;
_iteratorError5 = err;
} finally {
} finally {
try {
try {
if (!_iteratorNormalCompletion5 && _iterator5.return) {
if (!_iteratorNormalCompletion5 && _iterator5.return) {
_iterator5.return();
_iterator5.return();
}
}
} finally {
} finally {
if (_didIteratorError5) {
if (_didIteratorError5) {
throw _iteratorError5;
throw _iteratorError5;
}
}
}
}
}
}
}
}
}, {
}, {
key: '_paintAllTiles',
key: '_paintAllTiles',
value: function _paintAllTiles(startX, startY) {
value: function _paintAllTiles(startX, startY) {
this._priorityTilesCount = 0;
this._priorityTilesCount = 0;
var _iteratorNormalCompletion6 = true;
var _iteratorNormalCompletion6 = true;
var _didIteratorError6 = false;
var _didIteratorError6 = false;
var _iteratorError6 = undefined;
var _iteratorError6 = undefined;


try {
try {
for (var _iterator6 = this._layers[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
for (var _iterator6 = this._layers[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
var layer = _step6.value;
var layer = _step6.value;


layer.clear();
layer.clear();
this._paintTiles(layer, startX, startY);
this._paintTiles(layer, startX, startY);
}
}
} catch (err) {
} catch (err) {
_didIteratorError6 = true;
_didIteratorError6 = true;
_iteratorError6 = err;
_iteratorError6 = err;
} finally {
} finally {
try {
try {
if (!_iteratorNormalCompletion6 && _iterator6.return) {
if (!_iteratorNormalCompletion6 && _iterator6.return) {
_iterator6.return();
_iterator6.return();
}
}
} finally {
} finally {
if (_didIteratorError6) {
if (_didIteratorError6) {
throw _iteratorError6;
throw _iteratorError6;
}
}
}
}
}
}


var id = 0;
var id = 0;
var _iteratorNormalCompletion7 = true;
var _iteratorNormalCompletion7 = true;
var _didIteratorError7 = false;
var _didIteratorError7 = false;
var _iteratorError7 = undefined;
var _iteratorError7 = undefined;


try {
try {
for (var _iterator7 = this.tiledData.layers[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) {
for (var _iterator7 = this.tiledData.layers[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) {
var layerData = _step7.value;
var layerData = _step7.value;


if (layerData.type != "objectgroup") {
if (layerData.type != "objectgroup") {
id++;
id++;
continue;
continue;
}
}
this._paintObjectLayers(id, startX, startY);
this._paintObjectLayers(id, startX, startY);
id++;
id++;
}
}
} catch (err) {
} catch (err) {
_didIteratorError7 = true;
_didIteratorError7 = true;
_iteratorError7 = err;
_iteratorError7 = err;
} finally {
} finally {
try {
try {
if (!_iteratorNormalCompletion7 && _iterator7.return) {
if (!_iteratorNormalCompletion7 && _iterator7.return) {
_iterator7.return();
_iterator7.return();
}
}
} finally {
} finally {
if (_didIteratorError7) {
if (_didIteratorError7) {
throw _iteratorError7;
throw _iteratorError7;
}
}
}
}
}
}


while (this._priorityTilesCount < this._priorityTiles.length) {
while (this._priorityTilesCount < this._priorityTiles.length) {
var sprite = this._priorityTiles[this._priorityTilesCount];
var sprite = this._priorityTiles[this._priorityTilesCount];
sprite.hide();
sprite.hide();
sprite.layerId = -1;
sprite.layerId = -1;
this._priorityTilesCount++;
this._priorityTilesCount++;
}
}
}
}
}, {
}, {
key: '_paintTiles',
key: '_paintTiles',
value: function _paintTiles(layer, startX, startY) {
value: function _paintTiles(layer, startX, startY) {
var layerData = this.tiledData.layers[layer.layerId];
var layerData = this.tiledData.layers[layer.layerId];


if (!layerData.visible) {
if (!layerData.visible) {
return;
return;
}
}


if (layerData.type == "tilelayer") {
if (layerData.type == "tilelayer") {
this._paintTilesLayer(layer, startX, startY);
this._paintTilesLayer(layer, startX, startY);
}
}
}
}
}, {
}, {
key: '_paintObjectLayers',
key: '_paintObjectLayers',
value: function _paintObjectLayers(layerId, startX, startY) {
value: function _paintObjectLayers(layerId, startX, startY) {
var layerData = this.tiledData.layers[layerId];
var layerData = this.tiledData.layers[layerId];
var objects = layerData.objects || [];
var objects = layerData.objects || [];


var _iteratorNormalCompletion8 = true;
var _iteratorNormalCompletion8 = true;
var _didIteratorError8 = false;
var _didIteratorError8 = false;
var _iteratorError8 = undefined;
var _iteratorError8 = undefined;


try {
try {
for (var _iterator8 = objects[Symbol.iterator](), _step8; !(_iteratorNormalCompletion8 = (_step8 = _iterator8.next()).done); _iteratorNormalCompletion8 = true) {
for (var _iterator8 = objects[Symbol.iterator](), _step8; !(_iteratorNormalCompletion8 = (_step8 = _iterator8.next()).done); _iteratorNormalCompletion8 = true) {
var obj = _step8.value;
var obj = _step8.value;


if (!obj.gid) {
if (!obj.gid) {
continue;
continue;
}
}
if (!obj.visible) {
if (!obj.visible) {
continue;
continue;
}
}
var tileId = obj.gid;
var tileId = obj.gid;
var textureId = this._getTextureId(tileId);
var textureId = this._getTextureId(tileId);
var dx = obj.x - startX * this._tileWidth;
var dx = obj.x - startX * this._tileWidth;
var dy = obj.y - startY * this._tileHeight - obj.height;
var dy = obj.y - startY * this._tileHeight - obj.height;
this._paintPriorityTile(layerId, textureId, tileId, startX, startY, dx, dy);
this._paintPriorityTile(layerId, textureId, tileId, startX, startY, dx, dy);
}
}
} catch (err) {
} catch (err) {
_didIteratorError8 = true;
_didIteratorError8 = true;
_iteratorError8 = err;
_iteratorError8 = err;
} finally {
} finall
try {
if (!_iteratorNormalCompletion8 && _iterator8.return) {
_iterator8.return();
}
} finally {
if (_didIteratorError8) {
throw _iteratorError8;
}
}
}
}
}, {
key: '_paintTilesLayer',
value: function _paintTilesLayer(layer, startX, startY) {
var tileCols = Math.ceil(this._width / this._tileWidth) + 1;
var tileRows = Math.ceil(this._height / this._tileHeight) + 1;

var _iteratorNormalCompletion9 = true;
var _didIteratorError9 = false;
var _iteratorError9 = undefined;

try {
for (var _iterator9 = Array(tileRows).keys()[Symbol.iterator](), _step9; !(_iteratorNormalCompletion9 = (_step9 = _iterator9.next()).done); _iteratorNormalCompletion9 = true) {
var y = _step9.value;
var _iteratorNormalCompletion10 = true;
var _didIteratorError10 = false;
var _iteratorError10 = undefined;

try {
for (var _iterator10 = Array(tileCols).keys()[Symbol.iterator](), _step10; !(_iteratorNormalCompletion10 = (_step10 = _iterator10.next()).done); _iteratorNormalCompletion10 = true) {
var x = _step10.value;

this._paintTile(layer, startX, startY, x, y);
}
} catch (err) {
_didIteratorError10 = true;
_iteratorError10 = err;
} finally {
try {
if (!_iteratorNormalCompletion10 &&