don't load same javascript file more than once
This commit is contained in:
parent
c5a096afaf
commit
844c70c21e
2 changed files with 17 additions and 28 deletions
|
@ -42,33 +42,13 @@ var global = this;
|
|||
|
||||
if (typeof metadata == "undefined")
|
||||
metadata = 0;
|
||||
|
||||
var world = (__self instanceof org.bukkit.entity.Player)?__self.location.world:(__self instanceof org.bukkit.command.BlockCommandSender)?__self.block.location.world:null;
|
||||
|
||||
var pl = org.bukkit.entity.Player;
|
||||
var cs = org.bukkit.command.BlockCommandSender;
|
||||
var world = (__self instanceof pl)?__self.location.world:(__self instanceof cs)?__self.block.location.world:null;
|
||||
var block = world.getBlockAt(x,y,z);
|
||||
/*
|
||||
if (blockId === 6){
|
||||
var treeType = null;
|
||||
switch (metadata){
|
||||
case 0:
|
||||
treeType = org.bukkit.TreeType.BIG_TREE;
|
||||
break;
|
||||
case 1:
|
||||
treeType = org.bukkit.TreeType.REDWOOD;
|
||||
break;
|
||||
case 2:
|
||||
treeType = org.bukkit.TreeType.BIRCH;
|
||||
break;
|
||||
case 3:
|
||||
treeType = org.bukkit.TreeType.JUNGLE;
|
||||
break;
|
||||
}
|
||||
return world.generateTree(block.location,treeType);
|
||||
}else{
|
||||
*/
|
||||
if (block.typeId != blockId || block.data != metadata)
|
||||
block.setTypeIdAndData(blockId,metadata,false);
|
||||
// }
|
||||
if (block.typeId != blockId || block.data != metadata)
|
||||
block.setTypeIdAndData(blockId,metadata,false);
|
||||
|
||||
};
|
||||
|
||||
var _putSign = function(texts, x, y, z, blockId, meta){
|
||||
|
|
|
@ -38,6 +38,7 @@ var verbose = verbose || false;
|
|||
var jsPluginsRootDirName = _canonize(jsPluginsRootDir);
|
||||
|
||||
|
||||
var _loaded = {};
|
||||
/*
|
||||
Load the contents of the file and evaluate as javascript
|
||||
*/
|
||||
|
@ -45,8 +46,12 @@ var verbose = verbose || false;
|
|||
{
|
||||
var result = null;
|
||||
var file = new java.io.File(filename);
|
||||
|
||||
var canonizedFilename = _canonize(file);
|
||||
//
|
||||
// wph 20130123 don't load the same file more than once.
|
||||
//
|
||||
if (_loaded[canonizedFilename])
|
||||
return;
|
||||
|
||||
if (verbose)
|
||||
print("loading " + canonizedFilename);
|
||||
|
@ -58,6 +63,7 @@ var verbose = verbose || false;
|
|||
__engine.put("__folder",(parent?_canonize(parent):"")+"/");
|
||||
try{
|
||||
result = __engine.eval(reader);
|
||||
_loaded[canonizedFilename] = true;
|
||||
}catch (e){
|
||||
__plugin.logger.severe("Error evaluating " + filename + ", " + e );
|
||||
}
|
||||
|
@ -95,6 +101,7 @@ var verbose = verbose || false;
|
|||
*/
|
||||
var _reload = function(pluginDir)
|
||||
{
|
||||
_loaded = [];
|
||||
var jsFiles = [];
|
||||
_listJsFiles(jsFiles,pluginDir);
|
||||
//
|
||||
|
@ -107,9 +114,11 @@ var verbose = verbose || false;
|
|||
// then it's assumed that _myMiniGame_currency.js and _myMiniGame_events.js will be loaded
|
||||
// as dependencies by myMiniGame.js and do not need to be loaded via js reload
|
||||
//
|
||||
for (var i = 0;i < jsFiles.length; i++){
|
||||
var len = jsFiles.length;
|
||||
for (var i = 0;i < len; i++){
|
||||
load(_canonize(jsFiles[i]),true);
|
||||
}
|
||||
print("Loaded " + len + " javascript files");
|
||||
};
|
||||
|
||||
/*
|
||||
|
|
Reference in a new issue