+ /* Suport for game meta-data.
+ *
+ * What we want here is an effectively static field that is
+ * accessible through either the class name (SomeGame.meta) or an
+ * instance (some_game.meta). To pull this off we do keep two copies
+ * of the data. But the game classes can just set SomeGame.meta once
+ * and then reference it either way.
+ */
+ static set meta(data) {
+ /* This allows class access (SomeGame.meta) via the get method below. */
+ this._meta = data;
+
+ /* While this allows access via an instance (some_game.meta). */
+ this.prototype.meta = data;
+ }
+
+ static get meta() {
+ return this._meta;
+ }
+