I'm modifying a module for a game that we are developing and it is built with ImpactJS game engine. What we wanted to do is to make the variables private or inaccessible to other classes.
For example:
this.object.variable = 100; // Not okay.
this.object.setVariable( 100 ); // Okay.
ig.module(
'game.data.server'
).requires(
).defines(function(){
ServerData = ig.class.Extend({
_variable : -1,
get variable() {
return this._variable ;
},
setVariable: function( value ) {
this._variable = value;
}
});
});
But JavaScript setter and getter return different outputs
We can't do several revisions because this is also accessed by other games that we are developing.
Is there a better solution?