正在加载此比较的其余部分。

rpg_managers.js versus new_rpg_managers.js

创建于 差异永不过期
34 删除
847 行
34 添加
842 行
//=============================================================================
//=============================================================================
// rpg_managers.js v1.5.2
// rpg_managers.js v1.5.2
//=============================================================================
//=============================================================================


//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// DataManager
// DataManager
//
//
// The static class that manages the database and game objects.
// The static class that manages the database and game objects.


function DataManager() {
function DataManager() {
throw new Error('This is a static class');
throw new Error('This is a static class');
}
}


var $dataActors = null;
var $dataActors = null;
var $dataClasses = null;
var $dataClasses = null;
var $dataSkills = null;
var $dataSkills = null;
var $dataItems = null;
var $dataItems = null;
var $dataWeapons = null;
var $dataWeapons = null;
var $dataArmors = null;
var $dataArmors = null;
var $dataEnemies = null;
var $dataEnemies = null;
var $dataTroops = null;
var $dataTroops = null;
var $dataStates = null;
var $dataStates = null;
var $dataAnimations = null;
var $dataAnimations = null;
var $dataTilesets = null;
var $dataTilesets = null;
var $dataCommonEvents = null;
var $dataCommonEvents = null;
var $dataSystem = null;
var $dataSystem = null;
var $dataMapInfos = null;
var $dataMapInfos = null;
var $dataMap = null;
var $dataMap = null;
var $gameTemp = null;
var $gameTemp = null;
var $gameSystem = null;
var $gameSystem = null;
var $gameScreen = null;
var $gameScreen = null;
var $gameTimer = null;
var $gameTimer = null;
var $gameMessage = null;
var $gameMessage = null;
var $gameSwitches = null;
var $gameSwitches = null;
var $gameVariables = null;
var $gameVariables = null;
var $gameSelfSwitches = null;
var $gameSelfSwitches = null;
var $gameActors = null;
var $gameActors = null;
var $gameParty = null;
var $gameParty = null;
var $gameTroop = null;
var $gameTroop = null;
var $gameMap = null;
var $gameMap = null;
var $gamePlayer = null;
var $gamePlayer = null;
var $testEvent = null;
var $testEvent = null;


DataManager._globalId = 'RPGMV';
DataManager._globalId = 'RPGMV';
DataManager._lastAccessedId = 1;
DataManager._lastAccessedId = 1;
DataManager._errorUrl = null;
DataManager._errorUrl = null;


DataManager._databaseFiles = [
DataManager._databaseFiles = [
{ name: '$dataActors', src: 'Actors.json' },
{ name: '$dataActors', src: 'Actors.json' },
{ name: '$dataClasses', src: 'Classes.json' },
{ name: '$dataClasses', src: 'Classes.json' },
{ name: '$dataSkills', src: 'Skills.json' },
{ name: '$dataSkills', src: 'Skills.json' },
{ name: '$dataItems', src: 'Items.json' },
{ name: '$dataItems', src: 'Items.json' },
{ name: '$dataWeapons', src: 'Weapons.json' },
{ name: '$dataWeapons', src: 'Weapons.json' },
{ name: '$dataArmors', src: 'Armors.json' },
{ name: '$dataArmors', src: 'Armors.json' },
{ name: '$dataEnemies', src: 'Enemies.json' },
{ name: '$dataEnemies', src: 'Enemies.json' },
{ name: '$dataTroops', src: 'Troops.json' },
{ name: '$dataTroops', src: 'Troops.json' },
{ name: '$dataStates', src: 'States.json' },
{ name: '$dataStates', src: 'States.json' },
{ name: '$dataAnimations', src: 'Animations.json' },
{ name: '$dataAnimations', src: 'Animations.json' },
{ name: '$dataTilesets', src: 'Tilesets.json' },
{ name: '$dataTilesets', src: 'Tilesets.json' },
{ name: '$dataCommonEvents', src: 'CommonEvents.json' },
{ name: '$dataCommonEvents', src: 'CommonEvents.json' },
{ name: '$dataSystem', src: 'System.json' },
{ name: '$dataSystem', src: 'System.json' },
{ name: '$dataMapInfos', src: 'MapInfos.json' }
{ name: '$dataMapInfos', src: 'MapInfos.json' }
];
];


DataManager.loadDatabase = function() {
DataManager.loadDatabase = function() {
// The initialization of DB driver below would ideally be on the main.html page
localforage.defineDriver(window.cordovaSQLiteDriver).then(function() {
return localforage.setDriver([
window.cordovaSQLiteDriver._driver,
localforage.INDEXEDDB,
localforage.WEBSQL,
localforage.LOCALSTORAGE
]);
}

var test = this.isBattleTest() || this.isEventTest();
var test = this.isBattleTest() || this.isEventTest();
var prefix = test ? 'Test_' : '';
var prefix = test ? 'Test_' : '';
for (var i = 0; i < this._databaseFiles.length; i++) {
for (var i = 0; i < this._databaseFiles.length; i++) {
var name = this._databaseFiles[i].name;
var name = this._databaseFiles[i].name;
var src = this._databaseFiles[i].src;
var src = this._databaseFiles[i].src;
this.loadDataFile(name, prefix + src);
this.loadDataFile(name, prefix + src);
}
}
if (this.isEventTest()) {
if (this.isEventTest()) {
this.loadDataFile('$testEvent', prefix + 'Event.json');
this.loadDataFile('$testEvent', prefix + 'Event.json');
}
}
};
};


DataManager.loadDataFile = function(name, src) {
DataManager.loadDataFile = function(name, src) {
var xhr = new XMLHttpRequest();
var xhr = new XMLHttpRequest();
var url = 'data/' + src;
var url = 'data/' + src;
xhr.open('GET', url);
xhr.open('GET', url);
xhr.overrideMimeType('application/json');
xhr.overrideMimeType('application/json');
xhr.onload = function() {
xhr.onload = function() {
if (xhr.status < 400) {
if (xhr.status < 400) {
window[name] = JSON.parse(xhr.responseText);
window[name] = JSON.parse(xhr.responseText);
DataManager.onLoad(window[name]);
DataManager.onLoad(window[name]);
}
}
};
};
xhr.onerror = this._mapLoader || function() {
xhr.onerror = this._mapLoader || function() {
DataManager._errorUrl = DataManager._errorUrl || url;
DataManager._errorUrl = DataManager._errorUrl || url;
};
};
window[name] = null;
window[name] = null;
xhr.send();
xhr.send();
};
};


DataManager.isDatabaseLoaded = function() {
DataManager.isDatabaseLoaded = function() {
this.checkError();
this.checkError();
for (var i = 0; i < this._databaseFiles.length; i++) {
for (var i = 0; i < this._databaseFiles.length; i++) {
if (!window[this._databaseFiles[i].name]) {
if (!window[this._databaseFiles[i].name]) {