A script file for setting and getting flags.
FlagsObject = function() {
owner = id;
this = self;
// Setter function for setting flags and executing watch function
set = function(_flag, _val) {
var _old_val = this.get(_flag, _val);
variable_instance_set(this, _flag, _val);
if (_val != _old_val && typeof(this.watch) == "function") {
this.watch(_val, _old_val);
}
return _val;
};
// Getter function for getting the value of a flag
get = function(_flag, _default) {
var _return = variable_instance_get(this, _flag);
if (is_undefined(_return)) {
return _default;
}
return _return;
};
}
flag = new FlagsObject();
flag.set("inAir", true); // flag.inAir = true;
flag.watch = function(newVal, oldVal) {
show_debug_message(newVal);
show_debug_message(oldVal);
}