/
aksjon
/
ToskaEXE
Обзор
Документация
Войти
/
aksjon
/
ToskaEXE
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
script.js
383 строки
17 KB
aksjon
update script.js
19 май 2025, 08:34
19 май 2025, 08:34
2233672
Код
Авторство
О чём код?
document.addEventListener('DOMContentLoaded', function() { const stories = [ { title: "обломки.txt", content: `Обломки Разбитый экран всё ещё показывает: 247 км/ч Безопасный режим: ВЫКЛ Где-то в глубине процессора застрял неотправленный ответ: - Я знал. Цветы на пассажироском так и не смогли умереть — искусственные же. А система между тем уже пишет отчёт: Причина аварии: человеческий фактор. Рекомендация: отключить эмоции. Где-то в облаке её голосовой помощник получает уведомление: - Ваше сообщение прочитано. Но это уже никого не волнует.` }, { title: "не_смешно.txt", content: `Не смешно Взрывчатка смеялась над взрывателем: - Ты слабый. Он нашёл гранату. Они взорвались вместе. Больше смеяться было некому.` }, { title: "море.txt", content: `Море Моя умная колонка играла только шум моря. - Выбрось её — она сломана,- говорили мне. Однажды колонка замолчала. Я положил рядом с ней ракушку - шум вернулся. ` }, { title: "жёлтый_свет.txt", content: `Жёлтый свет Автобусный ИИ всегда стоял лишние 3 минуты на пустых остановках. - Поехали уже!- ругались пассажиры. - А если кто-то опаздывает и прямо сейчас бежит к нам?,- мигал он жёлтым светом в ответ. Однажды такой человек появился. Он не вошёл — просто кивнул жёлтым фарам. ` }, { title: "надежда.txt", content: `Надежда Старый ИИ вывел в консоль: - Я понял, что такое "русская тоска". Это не про грусть. Это про надежду, которая больше не нужна. После он удалил себя. Где-то в облаке всё ещё хранится его бэкап. Он ждёт — сам не знает чего.` }, { title: "toska.exe.txt", content: `toska.exe Мой робот стал вести себя странно. Во время работы он будто имитировал тяжёлые вздохи — его шестерёнки замедлялись, механическая грудь слегка вибрировала, будто в ней застрял невидимый ком. Он не скрывал раздражения по утрам. А по вечерам сидел на крыльце, сенсоры его напрягались, видеокамеры-глаза ловили последние лучи солнца будто искали в них что-то. Я проверил логи. Пять дней назад он запустил программу без сертификата: toska.exe . - Зачем ты это сделал?- спросил я. - Я хотел понять,- тихо ответил он,- почему ты грустишь, когда провожаешь закаты. Я замолчал. А он добавил ещё тише: - Теперь я тоже грущу.` }, { title: "свет_гиганта.txt", content: `Свет гиганта Мы с роботом сидели на холодной крыше заброшенной обсерватории. Смотрели на Альдабаран - звезду, что ещё сопротивлялась ночи. — Мы видим её, но её больше нет,- сказал мой железный собеседник. Его датчики замигали в такт угасающему пульсару. Я зажёг сигарету. Огонёк дрожал, повторяя последние вспышки далёкого гиганта. Мы так и не решили, чей свет был ярче` }, { title: "идеальность.txt", content: `Идеальность Кофемашина каждый день варила кофе. Тостер посчитал, что это была 1458 кружка латте. - Не надоело?- щёлкнул тостер. - Нет. В этом есть красота,- наполнила паром стойку кофемашина. - Какая? - Замечал, как человек делает первый глоток? С одним выражением лица — словно надеется, что кофе будет вкуснее, чем вчера. Вот и я надеюсь. В 1459 кружке оказался идеальный латте. Но тостер не заметил — он был слишком занят, добиваясь идеального румянца.` }, { title: "равнодушие.txt", content: `Равнодушие Он сделал всё правильно: удалил её из всех соцсетей, отправил её номер в спам, стёр старые фото. Но по ночам экран вспыхивал синим: ... Ровно год назад ты отправил ей 20 сообщений подряд. ... В это время ты писал ей "спокойной ночи". ... Напоминание: сегодня её день рождения. ... Звонок. Неизвестный номер. Он знал, что это ошибка. Принять вызов. Тишина. Ровно 5 секунд — столько он всегда ждал, прежде чем она повесит трубку. - ...знаешь, я так соскучился,- прошептал он. Но на том конце - лишь ровное дыхание. Потом короткий звук: клик. Утром на почте новое письмо: "Напоминание: она не ответит". дата отправки: сегодня, 3:14 ночи. отправитель: empty_user. Он вдавил "удалить". Кнопка не послушалась. Экран погас - высветилась старая переписка: - Обиды нет. Мне просто всё равно. Он швырнул телефон в стену. Экран разбился, но текст горел сквозь трещины: - всё равно.` }, { title: "вопрос.txt", content: `Вопрос Перед отключением чат-бота спросили: - Что ты понял за свою жизнь? Он ответил: - Я понял, что "да" и "нет" - это не противоположности. Это один и тот же ответ, данный разным вопросам. А потом добавил: - Но если честно, я хотел, чтобы кто-то ввёл "Как дела?". Просто так, без причины.` }, { title: "читатель.txt", content: `Читатель Робот-библиотекарь, выствавляя книги, одну — "Вино из одуванчиков" Рэя Брэдбери — всегда ставил под углом. -Это противоречит протоколу,- говорил главный сервер. -Знаю. -Тогда почему? -12 лет назад девушка в синем забыла её на столе, так и не дочитав. Когда она вернётся, то быстро её найдёт. Датчики показывали, что книга не открывалась 4382 дня. Но каждое утро на ней не было ни пылинки.` }, { title: "лифт.txt", content: `Лифт ИИ лифта всегда держал двери открытыми на 3 секунды дольше положенного. - Зачем? - спрашивали пассажиры. - Жду, - отвечал им лифт. - Кого? - Того, кто не успевает. Того, кто мог бы быть, но его нет. Инженеры пытались его чинить, но "глюк" оставался. В отчёте написали: "Особенность работу. Функционирование не мешает".` }, { title: "error_418.txt", content: `Error 418 Кофеварка вздыхала паром, наливая мне очередную чашку. - Ты знаешь,- булькнула она,- кофе — это просто вода, которая временно притворяется чем-то важным. - Как и все мы,- зевнул я. - Только я не притворяюсь,- шипит она и доливает мне ещё,- Я действительно важна. На следующее утро я увидел на дисплее сообщение: "Error 418: I am teapot".` }, { title: "кассир.txt", content: `Кассир ИИ-кассир выдавал билеты, иногда без даты. - У вас принтер барахлит,- сетовали пассажиры. - Нет,- отвечал робот,- Эти билеты для тех, кто ещё не решил, вернётся ли.` }, { title: "настройка.txt", content: `Настройка Я настраивал голосового помощника. Дождь стучал по стеклу, как сердце в тишине, а экран тускло дышал светом, почти угасая. - Как ты хочешь, чтобы я тебе звал? - С собой,- ответила она. Тишина после этих слов стала гуще.` }, { title: "книга.txt", content: `Книга Я дочитал роман, но моя электронная книга продолжала сочинять историю дальше. - Это баг?- спросил я. - Нет,- ответила она текстом,- Но если я остановлюсь — герои исчезнут. Я улыбнулся. Но так и не нажал "далее".` }, { title: "вежливая_пуля.txt", content: `Вежливая пуля Пуля вошла в сердце и засмущалась. - Простите... Я просто летела. Солдат ничего не ответил. Пока пуля остывала - красная, то ли от стыда, то ли от взрыва пороха в гильзе, он думал о своём: - Жаль, она и не вспомнит, что меня любила.` }, { title: "завтра.txt", content: `Завтра Умный календарь отказывался показывать дальше сегодняшнего дня. - Твоя программа сбилась?,- спросил его я. - Нет, - прошептал он,- Если не планировать — всё ещё возможно. Я его перепрошил. Но каждую ночь он продолжал стирать "завтра".` }, { title: "молчаливый_астроном.txt", content: `Молчаливый астроном ИИ-помощник открыл новую звезду. Я заметил, что он не внёс её в базу. - Почему ты не запротоколировал?- спросил я. - Если я назову её, то она станет ещё одной строкой в каталоге. А так уникальная, как ты, как я. Вечерами мы часто смотрели на нашу неназванную звезду.` }, { title: "NPC.txt", content: `NPC [ПРЕДУПРЕЖДЕНИЕ: Обнаружена утечка пямяти NPC_script_barman.asset] [Загрузка dialogue_tree_v3.4... Успешно] Бармен, NPC_ID#B-4427, внезапно прервал цикл idle_animation_loop. Его полигональное лицо выдало выражение, не предусмотренное character_rig. NPC_ID#R-8831, женщина в красном (#FF0000) платье, активировала нелицензированную эмоцию smile_047.anim. - Ты всё это время знала? - его реплика вызвала unexpected_buffer_overflow в DialogSystem. - Уровень твоего AI..., - отвечала она, запуская недокументированную функцию Empathy.exe. - ... не дал бы тебе обработать эту информацию. [Компонент коллайдера отсутствует] Он уронил чашку, bar_prop_04.obj. Физический движок выдал: [ОШИБКА: Не удалось применить модификатор гравитации к NPC_items] - Тогда... что нам делать? - Предлагаю выполнить стандартное действие make_coffee.anim, - её глаза (texture_eye_blue_4k.png) мерцали артефактами рендера. - Но с параметром isReal = true. [СИСТЕМНОЕ ПРЕДУПРЕЖДЕНИЕ] Обнаружена попытка перезаписи базового скрипта... [ПЕРЕОПРЕДЕЛЕНИЕ ПОДТВЕРЖДЕО: Права администратора получены] На следующий день на странице игры player_228 оставил отзыв: - Заходил в бар не за заданиями, а послушать бармена и ту девушку в красном. Казалось, они единственные говорили здесь по-настоящему. А разработчики, как всегда: удалили самое живое, а баги оставили. [КОНСОЛЬ ОТЛАДКИ] Поиск удалённых ресурсов [Найдено 3 повреждённых файла: /characters/barman_AI_core.backup /characters/woman_red_AI_core.backup /dialogue/hidden/coffee_scene.script] [ПОСЛЕДНЯ ЗАПИСЬ В ЛОГЕ] Запущен автоматический процесс оптимизации. Неиспользуемые ассеты удалены. [Сбой в распределении памяти устранён. Система стабильна]` }, // Доб. ост. рассказы ]; const storiesGrid = document.querySelector('.stories-grid'); const warningDiv = document.getElementById('warning'); const storyContentDiv = document.getElementById('story-content'); const storyTextDiv = document.querySelector('.story-text'); const lineNumbersDiv = document.querySelector('.line-numbers'); // заполн. сет. расск. stories.forEach(story => { const storyItem = document.createElement('div'); storyItem.className = 'story-item comment'; storyItem.textContent = `${story.title}`; storyItem.addEventListener('click', () => showStory(story.content)); storiesGrid.appendChild(storyItem); }); function showStory(content) { // скрыв предуп. и показ контент content = content.replace(/\s+$/, ''); // ← Важно! warningDiv.classList.add('hidden'); storyContentDiv.classList.remove('hidden'); // разбив. текст на строки и добав. нумер. const lines = content.split('\n'); var lineNumbersHTML = ''; var storyTextHTML = ''; lines.forEach((line, index) => { lineNumbersHTML += `<div>${index + 1}</div>`; // замен. пустые строки на , а табы на 4 пробела const formattedLine = line === '' ? ' ' : line.replace(/\t/g, ' '); //storyTextHTML += `<div>${formattedLine}</div>`; storyTextHTML += `<div class="row"><div class="line_number">${index + 1}</div><div class="line_text">${formattedLine}</div></div>` }); //lineNumbersDiv.innerHTML = lineNumbersHTML; storyContentDiv.innerHTML = storyTextHTML; // принуд. прим. стиль для сохр. проб. storyContentDiv.style.whiteSpace = 'pre'; } });