mirror of
https://github.com/logsol/chuck.js.git
synced 2026-05-11 10:37:34 +00:00
Bugfixing - unsubscribing game related topics, to prevent double calls and leaking references, added offAll method to nc. fixes no rendering bug
This commit is contained in:
parent
40e396fc23
commit
39f684315b
8 changed files with 57 additions and 19 deletions
|
|
@ -12,21 +12,24 @@ function (DomController, Settings, Exception, Nc) {
|
|||
this.canvas = null;
|
||||
this.debugMode = false;
|
||||
|
||||
Nc.on(Nc.ns.client.view.mesh.create, this.createMesh, this);
|
||||
Nc.on(Nc.ns.client.view.animatedMesh.create, this.createAnimatedMesh, this);
|
||||
Nc.on(Nc.ns.client.view.mesh.add, this.addMesh, this);
|
||||
Nc.on(Nc.ns.client.view.mesh.remove, this.removeMesh, this);
|
||||
Nc.on(Nc.ns.client.view.mesh.update, this.updateMesh, this);
|
||||
this.ncTokens = [
|
||||
Nc.on(Nc.ns.client.view.mesh.create, this.createMesh, this),
|
||||
Nc.on(Nc.ns.client.view.animatedMesh.create, this.createAnimatedMesh, this),
|
||||
Nc.on(Nc.ns.client.view.mesh.add, this.addMesh, this),
|
||||
Nc.on(Nc.ns.client.view.mesh.remove, this.removeMesh, this),
|
||||
Nc.on(Nc.ns.client.view.mesh.update, this.updateMesh, this),
|
||||
|
||||
Nc.on(Nc.ns.client.view.fullscreen.change, this.onFullscreenChange, this);
|
||||
Nc.on(Nc.ns.client.view.debugMode.toggle, this.onToggleDebugMode, this);
|
||||
Nc.on(Nc.ns.client.view.fullscreen.change, this.onFullscreenChange, this),
|
||||
Nc.on(Nc.ns.client.view.debugMode.toggle, this.onToggleDebugMode, this),
|
||||
|
||||
Nc.on(Nc.ns.client.view.playerInfo.createAndAdd, this.onCreateAndAddPlayerInfo, this);
|
||||
Nc.on(Nc.ns.client.view.playerInfo.update, this.onUpdatePlayerInfo, this);
|
||||
Nc.on(Nc.ns.client.view.playerInfo.remove, this.onRemovePlayerInfo, this);
|
||||
Nc.on(Nc.ns.client.view.playerInfo.createAndAdd, this.onCreateAndAddPlayerInfo, this),
|
||||
Nc.on(Nc.ns.client.view.playerInfo.update, this.onUpdatePlayerInfo, this),
|
||||
Nc.on(Nc.ns.client.view.playerInfo.remove, this.onRemovePlayerInfo, this),
|
||||
|
||||
Nc.on(Nc.ns.client.view.preloadBar.update, this.onUpdateLoader, this),
|
||||
];
|
||||
|
||||
Nc.on(Nc.ns.client.view.preloadBar.update, this.onUpdateLoader, this);
|
||||
|
||||
}
|
||||
|
||||
AbstractView.prototype.isWebGlEnabled = function () {
|
||||
|
|
@ -152,5 +155,11 @@ function (DomController, Settings, Exception, Nc) {
|
|||
throw new Exception('Abstract Function onUpdateLoader not overwritten');
|
||||
};
|
||||
|
||||
AbstractView.prototype.destroy = function() {
|
||||
for (var i = 0; i < this.ncTokens.length; i++) {
|
||||
Nc.off(this.ncTokens[i]);
|
||||
};
|
||||
};
|
||||
|
||||
return AbstractView;
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue