diff options
author | Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> | 2021-11-06 20:27:52 +0800 |
---|---|---|
committer | Soopyboo32 <49228220+Soopyboo32@users.noreply.github.com> | 2021-11-06 20:27:52 +0800 |
commit | cc668931e3f2031f65fd77b5b773b2d9a0e55ed0 (patch) | |
tree | ebd027cfd63b59ef25f10e68f9edc84ac7d75f98 /featureClass | |
parent | f71ab91a7089c614cec49b318968b734dea49651 (diff) | |
download | SoopyV2-cc668931e3f2031f65fd77b5b773b2d9a0e55ed0.tar.gz SoopyV2-cc668931e3f2031f65fd77b5b773b2d9a0e55ed0.tar.bz2 SoopyV2-cc668931e3f2031f65fd77b5b773b2d9a0e55ed0.zip |
Error handling for loading modules
Diffstat (limited to 'featureClass')
-rw-r--r-- | featureClass/featureManager.js | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/featureClass/featureManager.js b/featureClass/featureManager.js index 92b9cd8..99f5483 100644 --- a/featureClass/featureManager.js +++ b/featureClass/featureManager.js @@ -9,6 +9,7 @@ import { registerForge as registerForgeBase, unregisterForge as unregisterForgeB class FeatureManager { constructor(){ + this.messagePrefix = "&6[SOOPY V2]&7 " this.enabled = true //make triggers work with this context this.features = {}; @@ -335,15 +336,21 @@ class FeatureManager { loadFeature(feature){ //run in seperate thread so onenable can do network requests if(this.features[feature]) return - let LoadedFeature = require("../features/" + feature + "/index.js") - - this.features[feature] = LoadedFeature - - LoadedFeature.class.setId(feature) - - LoadedFeature.class._onEnable(this) - - logger.logMessage("Loaded feature " + feature, 3) + try{ + let LoadedFeature = require("../features/" + feature + "/index.js") + + this.features[feature] = LoadedFeature + + LoadedFeature.class.setId(feature) + + LoadedFeature.class._onEnable(this) + + logger.logMessage("Loaded feature " + feature, 3) + }catch(e){ + logger.logMessage("Error loading feature " + feature, 1) + console.log(JSON.stringify(e, undefined, 2)) + ChatLib.chat(this.messagePrefix + "Error loading feature " + feature) + } return this } |