Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
3905693487
Э64-fix: подтверждение выпуска в диалоге «Слоты» — под строкой жильца, а не внизу панели. #aqShopConfirm лежал после #aqShopBody — при 12 слотах блок оказывался вдали от нажатой кнопки «Выпустить». renderAqShop() теперь ПЕРЕНОСИТ узел (не пересоздаёт — слушатели кнопок живут): перед innerHTML-пересборкой вынимается из #aqShopBody, при pending вставляется сразу после подсвеченной строки .replace — ДО заполнения текстов (иначе после вынимания $('aqShopConfirmText') вернул бы null), при снятии pending возвращается на место после списка; в обработчике askrelease — scrollIntoView({block:'nearest'}) (блок может выглядывать за край панели). Перетыкание «Выпустить» на другой строке без «Отмены» — рабочий кейс (при приёмке всплыл крах первой версии правки — суита его не ловила, пин добавлен). Тесты: §AQ(8) +1 проверка (узел жив, previousElementSibling — .replace-строка, текст новой рыбы) — 262/262 PASS exit 0; check.mjs OK; визуально 390×844 (row0/смена на row2/отмена/нижняя строка со скроллом). Геймплей/сейв/i18n/emoji не тронуты. Доки: AGENTS.md (пункт «Диалог улучшений аквариума», Э64).
e734f90e1b
Стартовое меню: кнопка «Играть» над инструкцией. #btnPlay перенесён в .panel с конца (после #menuP4) на строку после .title — раньше на низких окнах кнопка оказывалась за нижним краем панели и требовала прокрутки, теперь видна сразу под заголовком, а текст инструкции при необходимости скроллится под кнопкой. Id и класс big сохранены (renderMenu() и тесты обращаются по #btnPlay, узлы не пересоздаются). CSS: scoped-правило #menu .big{margin:12px 0 16px} — отступы кнопки от заголовка и текста; .big в других диалогах (сброс, карточка) не сдвигаются. Чистая раскладка DOM: баланс/сейв/ачивки/i18n/emoji не тронуты. Проверки: check.mjs OK; test.js 261/261 PASS exit 0; визуально 1280×720 и 390×844 — кнопка и весь текст влезают без скролла.
b3f5b0724c
Этап 64: выпуск рыбы из аквариума — только из диалога «Слоты» и с подтверждением; перерисовка наживок (червь на конце крючка, воблер-минноу, блёстка-вращалка). Выпуск: кнопка #btnAqRelease из поповера #aqPop убрана (поповер — чистое инфо), на строке жильца во вкладке «Слоты» #aqShop — кнопка «Выпустить» (data-act=askrelease, делегирование #aqShopBody), inline-подтверждение #aqShopConfirm (паттерн #aqPickConfirm, строка подсвечивается .replace, текст aq_release_q RU/EN), подтверждение — aqReleaseAt(i) (переименовано из aqReleaseSel: индекс вместо aqSel; aqSel при выпуске левее сдвигается, по индексу — снимается), по-прежнему без монет и без телепорта остальных; aqShopRelPending сбрасывается в openAqShop/closeAqShop/setAqTab и при сбросе прогресса. Наживки (чистый визуал, данные в записях LURES.hook, switch по id нет): Воблер — body (тельце-минноу: эллипс+хвост+брюшко+лопатка, bead — красный глаз, крючок выглядит тройником под вобом), Блёстка — blade (золотой лепесток с шириной |sin(t·4.5)|, кромка+блик, рисуется внутри gold-тени до restore), Червь — bait вдоль жала с торчащим кончиком и головным утолщением (lineWidth 1.6→2.2). Геометрия hx/hy/hookPos не тронута; баланс/сейв/ачивки/i18n/emoji не тронуты, миграция не нужна. Тесты: §10e2 — пин body/blade (#hex, у остальных нет); §AQ(8) переписан на новый флоу (поповер без кнопок → askrelease → подтверждение → «Отмена»/«Выпустить»), (8b) — aqReleaseAt(0). Проверки: check.mjs OK; emoji --check OK; test.js 261/261 PASS exit 0. Доки: AGENTS.md (тест-глобалы, пункты Э46/Э52/Э62/Э63), DEVLOG (Этап 64).