|
@@ -3,22 +3,29 @@ import EditorEvents = require("../../editor/EditorEvents");
|
|
|
|
|
|
|
|
class PlayMode extends Atomic.ScriptObject {
|
|
class PlayMode extends Atomic.ScriptObject {
|
|
|
|
|
|
|
|
- constructor() {
|
|
|
|
|
|
|
+ inErrorState: boolean;
|
|
|
|
|
|
|
|
- super();
|
|
|
|
|
|
|
+ constructor() {
|
|
|
|
|
|
|
|
- this.subscribeToEvent("IPCJSError", (ev:Atomic.IPCJSErrorEvent) => this.handleIPCJSError(ev));
|
|
|
|
|
|
|
+ super();
|
|
|
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ this.subscribeToEvent("IPCJSError", (ev: Atomic.IPCJSErrorEvent) => this.handleIPCJSError(ev));
|
|
|
|
|
|
|
|
- handleIPCJSError(ev:Atomic.IPCJSErrorEvent) {
|
|
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- var errorMessage = ev.errorFileName + " - " + ev.errorLineNumber + " : " + ev.errorMessage;
|
|
|
|
|
- this.sendEvent(EditorEvents.ModalError, { title: "Player JavaScript Error", message: errorMessage});
|
|
|
|
|
|
|
+ handleIPCJSError(ev: Atomic.IPCJSErrorEvent) {
|
|
|
|
|
|
|
|
- Atomic.graphics.raiseWindow();
|
|
|
|
|
|
|
+ if (this.inErrorState)
|
|
|
|
|
+ return;
|
|
|
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ this.inErrorState = true;
|
|
|
|
|
+
|
|
|
|
|
+ var errorMessage = ev.errorFileName + " - " + ev.errorLineNumber + " : " + ev.errorMessage;
|
|
|
|
|
+ this.sendEvent(EditorEvents.ModalError, { title: "Player JavaScript Error", message: errorMessage });
|
|
|
|
|
+
|
|
|
|
|
+ Atomic.graphics.raiseWindow();
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|