/// /// Исходный код текстовой онлайн игры "Кодим сыр" скачан с сайта https://apero.ru/ /// Пройти онлайн или скачать последнюю версию этой игры можно по адресу: https://apero.ru/Текстовые-игры/Кодим-сыр /// Авторы: Александр Ш /// Версия: от 2018-01-10 14:05:37 /// /// /// Исходный код текстовой онлайн игры "Кодим сыр" скачан с сайта http://apero.ru/ /// Пройти онлайн или скачать последнюю версию этой игры можно по адресу: http://apero.ru/Текстовые-игры/Кодим-сыр /// Авторы: Александр Ш /// Версия: от 2017-12-29 22:55:14 /// \запуск Кодим сыр в АПЕРО Код шаблон отладки, а также обновленный синтаксис Аперо, специально для NotePad. Подробности внутри. Автор: Александр Шульгин // РАЗРАБОТЧИК! // Приветствую тебя в исходнике. // Я поделил код на разделы СЕРВИС и ИГРА. Все, что тебе нужно хранится в разделе СЕРВИС. // Попробуй дополнительный синтаксис Аперо для NotePad. Ссылку на ее скачивание и другие полезные штуки найдешь на моей странице: // apero.ru/Участники/Александр-Ш \(.СервисОбъявлениеПеременных.()) [hr] \(.Уровень0., Начать игру) [hr] [i]\ССЫЛКА("apero.ru/Текстовые-игры/Исходный-код-игры-Кодим-сыр.txt","Скачать исходник")[/i] [i]\ССЫЛКА("yadi.sk/d/2cRQzX2I3R5Red","Скачать синтаксис Аперо2")[/i] [hr] Затестить цикл с присвоением уникального случайного значения: \(.ТестЦикла., Перейти к тесту) [hr] \(Индекс = 1) Пример - перебор всех пользователей, запустивших игру (для многопользовательского режима). Сейчас онлайн всего \(АПЕРО.посетители.количество): \ЦИКЛ (Индекс<=АПЕРО.посетители.количество) \СДЕЛАТЬ \(глВыполнитьКод_ = "АПЕРО.посетители.номер"+Индекс+".имя") \(\(глВыполнитьКод_)) \(Индекс = Индекс + 1) [br] \СТОП // \запуск // ТЕСТ ЦИКА // ЦИКЛ ПО МАССИВАМ или Вложенный цикл одним циклом. \.ТестЦикла. \(глДействия_ = 1) \(глВыполнитьКод_ = "\(АПЕРО.строка.позиция(глВсеЗаписи_; глСлучайно_))") \(глКоличествоИтераций_ = 10) \(глИндекс_ = 1) // я выбрал запись с номер 1 для удобства \ЦИКЛ (глИтерация98_ < 97) \СДЕЛАТЬ \(.ЦиклЗаполнитьСлучайноеЧисло.) // отобразим то, что получили Получили случайные числа: \(глИндекс_ = 1) \ЦИКЛ (глИндекс_ < 10) \СДЕЛАТЬ \(глДействия_.Номер\(глИндекс_)) \(глИндекс_ = глИндекс_ + 1) [hr] \(Запуск, Вернуться назад) \СТОП \.ЦиклЗаполнитьСлучайноеЧисло. \(глСлучайно_ = АПЕРО.случайно(1;8)) \ЕСЛИ (\(глВыполнитьКод_) = 0) \ТО \(глДействия_.Номер\(глИндекс_) = глСлучайно_) [s]\(глИндекс_ = глИндекс_ + 1) \ЕСЛИ (глИндекс_ > глКоличествоИтераций_) \ТО \(глИтерация98_ = 98) \(глИтерация98_ = глИтерация98_ + 1) \(глВсеЗаписи_ = глВсеЗаписи_ + "_" + глСлучайно_) \СТОП /*///////////////// РАЗДЕЛ /// СЕРВИС // /////////////////*/ // Первоначальная настройка игры и сервиса. \.СервисОбъявлениеПеременных.() // просто цвет кнопок в игре \(АПЕРО.кнопка.цвет="Khaki") // создаем случайным образом буквы в АПЕРО \(глЦиклИндекс_ = 1) \(глЦарапинаПещеры_ = "") \(глСимвол_ = "") \ЦИКЛ (глЦиклИндекс_ < 5) \СДЕЛАТЬ ( \(глЦиклИндекс_ = глЦиклИндекс_ + 1) \(глСлучайноеЧисло_ = АПЕРО.случайно(1;66)) \(.СервисКириллица.()) \(глЦарапинаПещеры_ = глЦарапинаПещеры_ + глСимвол_) \) // эта переменная отвечает за возврат из Настроек обратно в игру \(глТекущаяЛокация_ = "Запуск") // кнопка инвентаря "Настройки" \(_Настройки_ = 1) \(_Настройки_.название = "Настройки") \(_Настройки_.слева=" [") \(_Настройки_.справа="] ") \(_Настройки_.инверсия=1) \(_Настройки_.локация = ".СервисНастройки.") // любые переменные \(глРежим_ = 1) \(глСложность_ = "Легкая") \(глДлиннаяСтрока_ = "Вы оказались в сложной ситуации на космической станции. Искуственный интеллект обвиняет вас в совершении саботажа, переубедите его Вы оказались в сложной ситуации на космической станции. Искуственный интеллект обвиняет вас в совершении саботажа, переубедите его Вы оказались в сложной ситуации на космической станции. Искуственный интеллект обвиняет вас в совершении саботажа, переубедите его Вы оказались в сложной ситуации на космической станции. Искуственный интеллект обвиняет вас в совершении саботажа, переубедите его Вы оказались в сложной ситуации на космической станции. Искуственный интеллект обвиняет вас в совершении саботажа, переубедите его Вы оказались в сложной ситуации на космической станции. Искуственный интеллект обвиняет вас в совершении саботажа, переубедите его Вы оказались в сложной ситуации на космической станции. Искуственный интеллект обвиняет вас в совершении саботажа, переубедите его Вы оказались в сложной ситуации на космической станции. Искуственный интеллект обвиняет вас в совершении саботажа, переубедите его Вы оказались в сложной ситуации на космической станции. Искуственный интеллект обвиняет вас в совершении саботажа, переубедите его") \(глСыр_ = 1) // Для отладки \(глОтладка = 0) \(глОтладкаКод_="Включить отладку") // кодовое слово для включения Отладки! \(глОтладкаСтрока_ = "") \(глЭтоСлужебнаяЛокация_ = "") \(глЛюбаяПеременная_ = "") \(глЛюбаяПеременнаяНовоеЗначение_ = "") \СТОП // .СервисОбъявлениеПеременных.() // НАСТРОЙКИ (отрабатывается по нажатию на кнопку инвентаря "Настройки" \.СервисНастройки. // скрываем инвентарь, чтобы пользователь его не использовал на время открых настроек \(АПЕРО.инвентарь.скрыть=1) // присваиваем переменной глТекущаяЛокация_ имя локации, из которой перешли в настройки. // Устанавливаем исключения тех локаций, которые являются служебными (сервисными) и вызываются из этой локации (.Настройки.) \(глЭтоСлужебнаяЛокация_ = АПЕРО.строка.часть(АПЕРО.локация.предыдущая;1;7)) \ЕСЛИ (глЭтоСлужебнаяЛокация_ = ".Сервис") \ТО ( [] \) \ИНАЧЕ ( \(глТекущаяЛокация_ = АПЕРО.локация.предыдущая) \) //кнопка для возврата в игру \(.СервисВозвратЛокация.(), Вернуться \ЕСЛИ (глОтладка_ = 1) \ТО ([s][i](принять изменения отладки)[/i] \) ) // любые другие ваши настройки [hr] Выберите режим чтения: \(.СервисУстановитьРежимЧтения.("Стандарт"), Стандарт) \(.СервисУстановитьРежимЧтения.("ночь"), Ночь) \(.СервисУстановитьРежимЧтения.("минимализм"), Минимализм) // Отладка разработчика [hr] Режим отладки разработчика: \ЕСЛИ (глОтладка_ = 1) \ТО (\(.СервисВыполнитьОтладку.()) \) \ИНАЧЕ ((кодовое слово: "Включить отладку"): [br] \ВВОД(глОтладкаСтрока_,"") \(.СервисВключитьОтладка.(), Включить отладку)\) // бонус. Проверка на тип данных "Число" или "Строка" \ЕСЛИ (глОтладкаСтрока_ = "" ИЛИ глОтладкаСтрока_ = 0) \ТО Переменная пустая \ИНАЧЕ \ЕСЛИ (\(глОтладкаСтрока_) = 0) \ТО Переменная имеент тип "Строка" \ИНАЧЕ Переменная имеент тип "Число" \СТОП // .СервисНастройки. // Включить отладку \.СервисВключитьОтладка.() \ЕСЛИ (глОтладкаКод_ = глОтладкаСтрока_) \ТО \(глОтладка_=1) \ИНАЧЕ \(глОтладка_=0) \СТОП(.СервисНастройки.) // вернуться в Настройки // Все кнопки и поля ОТЛАДКИ \.СервисВыполнитьОтладку.() [hr] // локация, куда вы вернетесь назад из Настроек. Можно перейти в другую локацию (таблица) (строка) (столбец) Текущая локация (игры): (столбец) \(глТекущаяЛокация_) (столбец) (строка) (столбец) Перейти в другую локацию: (столбец) \ВВОД(глТекущаяЛокация_, глТекущаяЛокация_) (столбец) [i]Например, "Запуск", ".Уровень2."[/i] (/таблица) // SET и GET любой переменной [hr] (таблица) (строка) (столбец) Переменная: (столбец) \ВВОД(глЛюбаяПеременная_,глЛюбаяПеременная_) (столбец) \(.СервисПолучитьЛюбуюПеременную.(), Найти переменную) (строка) (столбец) Значение переменной: (столбец) \ВВОД(глЛюбаяПеременнаяНовоеЗначение_,глЛюбаяПеременнаяНовоеЗначение_) (столбец) \(.СервисПрисвоитьЛюбуюПеременную.(), Присвоить значение) (/таблица) // Ниже избранные переменные, которые вы добавляете сами руками в код [hr] Основные переменные: \ВВОД(глСыр_,глСыр_) глСыр_ \ВВОД(глРежим_,глРежим_) глРежим_ \ВВОД(глСложность_,глСложность_) глСложность_ \ВВОД(глВраждебность_,глВраждебность_) глВраждебность_ Переменные из раздела "случайные буквы": \ВВОД(глЦиклИндекс_, глЦиклИндекс_) глЦиклИндекс_ \ВВОД(глЦарапинаПещеры_, глЦарапинаПещеры_) глЦарапинаПещеры_ \ВВОД(глСимвол_, глСимвол_) глСимвол_ \СТОП // .СервисВключитьОтладка.() // возврат в игру (включаем инвентарь обратно) \.СервисВозвратЛокация.() \(АПЕРО.инвентарь.скрыть=0) \СТОП(\(глТекущаяЛокация_)) // .СервисВозвратЛокация.() // получить переменную - SET \.СервисПолучитьЛюбуюПеременную.() \(глЛюбаяПеременнаяНовоеЗначение_ = \(глЛюбаяПеременная_)) \СТОП(.СервисНастройки.) // .СервисПолучитьЛюбуюПеременную.() // присвоить значение переменной - GET \.СервисПрисвоитьЛюбуюПеременную.() \(\(глЛюбаяПеременная_) = глЛюбаяПеременнаяНовоеЗначение_) \СТОП(.СервисНастройки.) // .СервисПрисвоитьЛюбуюПеременную.() // Случайные буквы \.СервисКириллица.() \ЕСЛИ (глСлучайноеЧисло_ = 1) \ТО \(глСимвол_ = "А") \ЕСЛИ (глСлучайноеЧисло_ = 2) \ТО \(глСимвол_ = "Б") \ЕСЛИ (глСлучайноеЧисло_ = 3) \ТО \(глСимвол_ = "В") \ЕСЛИ (глСлучайноеЧисло_ = 4) \ТО \(глСимвол_ = "Г") \ЕСЛИ (глСлучайноеЧисло_ = 5) \ТО \(глСимвол_ = "Д") \ЕСЛИ (глСлучайноеЧисло_ = 6) \ТО \(глСимвол_ = "Е") \ЕСЛИ (глСлучайноеЧисло_ = 7) \ТО \(глСимвол_ = "Ё") \ЕСЛИ (глСлучайноеЧисло_ = 8) \ТО \(глСимвол_ = "Ж") \ЕСЛИ (глСлучайноеЧисло_ = 9) \ТО \(глСимвол_ = "З") \ЕСЛИ (глСлучайноеЧисло_ = 10) \ТО \(глСимвол_ = "И") \ЕСЛИ (глСлучайноеЧисло_ = 11) \ТО \(глСимвол_ = "Й") \ЕСЛИ (глСлучайноеЧисло_ = 12) \ТО \(глСимвол_ = "К") \ЕСЛИ (глСлучайноеЧисло_ = 13) \ТО \(глСимвол_ = "Л") \ЕСЛИ (глСлучайноеЧисло_ = 14) \ТО \(глСимвол_ = "М") \ЕСЛИ (глСлучайноеЧисло_ = 15) \ТО \(глСимвол_ = "Н") \ЕСЛИ (глСлучайноеЧисло_ = 16) \ТО \(глСимвол_ = "О") \ЕСЛИ (глСлучайноеЧисло_ = 17) \ТО \(глСимвол_ = "П") \ЕСЛИ (глСлучайноеЧисло_ = 18) \ТО \(глСимвол_ = "Р") \ЕСЛИ (глСлучайноеЧисло_ = 19) \ТО \(глСимвол_ = "С") \ЕСЛИ (глСлучайноеЧисло_ = 20) \ТО \(глСимвол_ = "Т") \ЕСЛИ (глСлучайноеЧисло_ = 21) \ТО \(глСимвол_ = "У") \ЕСЛИ (глСлучайноеЧисло_ = 22) \ТО \(глСимвол_ = "Ф") \ЕСЛИ (глСлучайноеЧисло_ = 23) \ТО \(глСимвол_ = "Х") \ЕСЛИ (глСлучайноеЧисло_ = 24) \ТО \(глСимвол_ = "Ц") \ЕСЛИ (глСлучайноеЧисло_ = 25) \ТО \(глСимвол_ = "Ч") \ЕСЛИ (глСлучайноеЧисло_ = 26) \ТО \(глСимвол_ = "Ш") \ЕСЛИ (глСлучайноеЧисло_ = 27) \ТО \(глСимвол_ = "Щ") \ЕСЛИ (глСлучайноеЧисло_ = 28) \ТО \(глСимвол_ = "Ь") \ЕСЛИ (глСлучайноеЧисло_ = 29) \ТО \(глСимвол_ = "Ы") \ЕСЛИ (глСлучайноеЧисло_ = 30) \ТО \(глСимвол_ = "Ъ") \ЕСЛИ (глСлучайноеЧисло_ = 31) \ТО \(глСимвол_ = "Э") \ЕСЛИ (глСлучайноеЧисло_ = 32) \ТО \(глСимвол_ = "Ю") \ЕСЛИ (глСлучайноеЧисло_ = 33) \ТО \(глСимвол_ = "Я") \ЕСЛИ (глСлучайноеЧисло_ = 34) \ТО \(глСимвол_ = "а") \ЕСЛИ (глСлучайноеЧисло_ = 35) \ТО \(глСимвол_ = "б") \ЕСЛИ (глСлучайноеЧисло_ = 36) \ТО \(глСимвол_ = "в") \ЕСЛИ (глСлучайноеЧисло_ = 37) \ТО \(глСимвол_ = "г") \ЕСЛИ (глСлучайноеЧисло_ = 38) \ТО \(глСимвол_ = "д") \ЕСЛИ (глСлучайноеЧисло_ = 39) \ТО \(глСимвол_ = "е") \ЕСЛИ (глСлучайноеЧисло_ = 40) \ТО \(глСимвол_ = "ё") \ЕСЛИ (глСлучайноеЧисло_ = 41) \ТО \(глСимвол_ = "ж") \ЕСЛИ (глСлучайноеЧисло_ = 42) \ТО \(глСимвол_ = "з") \ЕСЛИ (глСлучайноеЧисло_ = 43) \ТО \(глСимвол_ = "и") \ЕСЛИ (глСлучайноеЧисло_ = 44) \ТО \(глСимвол_ = "й") \ЕСЛИ (глСлучайноеЧисло_ = 45) \ТО \(глСимвол_ = "к") \ЕСЛИ (глСлучайноеЧисло_ = 46) \ТО \(глСимвол_ = "л") \ЕСЛИ (глСлучайноеЧисло_ = 47) \ТО \(глСимвол_ = "м") \ЕСЛИ (глСлучайноеЧисло_ = 48) \ТО \(глСимвол_ = "н") \ЕСЛИ (глСлучайноеЧисло_ = 49) \ТО \(глСимвол_ = "о") \ЕСЛИ (глСлучайноеЧисло_ = 50) \ТО \(глСимвол_ = "п") \ЕСЛИ (глСлучайноеЧисло_ = 51) \ТО \(глСимвол_ = "р") \ЕСЛИ (глСлучайноеЧисло_ = 52) \ТО \(глСимвол_ = "с") \ЕСЛИ (глСлучайноеЧисло_ = 53) \ТО \(глСимвол_ = "т") \ЕСЛИ (глСлучайноеЧисло_ = 54) \ТО \(глСимвол_ = "у") \ЕСЛИ (глСлучайноеЧисло_ = 55) \ТО \(глСимвол_ = "ф") \ЕСЛИ (глСлучайноеЧисло_ = 56) \ТО \(глСимвол_ = "х") \ЕСЛИ (глСлучайноеЧисло_ = 57) \ТО \(глСимвол_ = "ц") \ЕСЛИ (глСлучайноеЧисло_ = 58) \ТО \(глСимвол_ = "ч") \ЕСЛИ (глСлучайноеЧисло_ = 59) \ТО \(глСимвол_ = "ш") \ЕСЛИ (глСлучайноеЧисло_ = 60) \ТО \(глСимвол_ = "щ") \ЕСЛИ (глСлучайноеЧисло_ = 61) \ТО \(глСимвол_ = "ь") \ЕСЛИ (глСлучайноеЧисло_ = 62) \ТО \(глСимвол_ = "ы") \ЕСЛИ (глСлучайноеЧисло_ = 63) \ТО \(глСимвол_ = "ъ") \ЕСЛИ (глСлучайноеЧисло_ = 64) \ТО \(глСимвол_ = "э") \ЕСЛИ (глСлучайноеЧисло_ = 65) \ТО \(глСимвол_ = "ю") \ЕСЛИ (глСлучайноеЧисло_ = 66) \ТО \(глСимвол_ = "я") \СТОП // .СервисКириллица.() // любые другие ваши настройки. Здесь - смена фона игры \.СервисУстановитьРежимЧтения.(глЗначение_) \(АПЕРО.стиль=глЗначение_) \СТОП(.СервисНастройки.) // вернуться в Настройки /*///////////////// РАЗДЕЛ // ИГРА // /////////////////*/ // ЛОКАЦИЯ \.Уровень0. // ТЕКСТ \ЕСЛИ (глСыр_ = 1) \ТО ( [i]В игре используется переменная глСыр_, которая принимает значение от 1 до 3 и ход истории зависит от этого результата. Пройдите игру до конца, а затем попробуйте отладку[/i] [hr] [size=32][b]Глава 1.[/b][/size] [hr] \) \ЕСЛИ (глСыр_ > 1) \ТО Вернулись назад и снова "СЫЫЫЫЫЫЫЫЫР!" \ИНАЧЕ "Сыр! Сы-ы-ы-р-р! СЫЫЫЫЫЫЫЫЫР!!!!" // КНОПКИ [br][hr] \ЕСЛИ (глСыр_ = 1) \ТО ( \(.Уровень1., Посмотреть еще сыр в другой комнате.) \) \ИНАЧЕ ( \ЕСЛИ (глСыр_ = 2) \ТО ( \(.Уровень1., Кто сказал "СЫР?" и бежим в третью комнату!) \) \ИНАЧЕ ( \(.Уровень2., Забрать уже сыр и пойти домой.) \) \) \) \СТОП // ЛОКАЦИЯ \.Уровень1. // ТЕКСТ \ЕСЛИ (глСыр_ > 1) \ТО Вы внутри и вам показалось, что кто-то кричал "СЫЫЫЫЫЫЫР!" за стенкой? \ИНАЧЕ Вошли во вторую комнату, но здесь нет сыра. // КНОПКИ [br][hr] \ЕСЛИ (глСыр_ > 1) \ТО \(.Уровень0., Пойти проверить) \ИНАЧЕ \(.Уровень0., Вернуться назад) \(глСыр_ = \(глСыр_) + 1) \СТОП // ЛОКАЦИЯ \.Уровень2. // ТЕКСТ Вы дома. Крошки сыра на ваших губах говорят о недавней трапезе, а в ушах до сих пор стоит звон от собственного крика. Вы пошевелили усами, махнули хвостом, в противоположной стороне комнаты было тихо, как вдруг ленивый кот вцепился в лицо хозяина и весь дом услышал рев "СЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫР!!!!" \(АПЕРО.конец=1) \ССЫЛКА("apero.ru/Текстовые-игры/Исходный-код-игры-Кодим-сыр.txt","Скачать исходник") \ССЫЛКА("yadi.sk/d/2cRQzX2I3R5Red","Скачать синтаксис Аперо2") \СТОП