function Игра() { this.создать = function() { var корень = document.getElementById("корень"); мир.события = new События(); мир.состояние = new Состояние(); мир.состояние.обработчик = (к, п, з) => { this.обработатьКлюч(к, п, з) }; this.ключники = [ new Заголовок(), new Изображения(корень), ]; var z64 = мир.параметрыЗапуска()["z64"]; this.исполнитьКод(z64); this.отслеживатьОбновленияКода(); }; this.исполнитьКод = function(z64) { if (z64) { var код = мир.изZ64(z64); eval(код); } }; this.обработатьКлюч = function(ключ, путь, значение) { for (var номер in this.ключники) { var ключник = this.ключники[номер]; ключник.обработатьКлюч(ключ, путь, значение); } }; this.отслеживатьОбновленияКода = function() { var тут = this; window.addEventListener("message", function(событие) { тут.исполнитьКод(событие.data); }); }; // Конструктор. this.создать(); }