Не помню было такое у меня уже или нет. Если было и я не помню решения проблемы, значит... будем её решать еще столько раз пока решение не станет для нас очень видным.

 

напиши код для Twine 2 SugarCube 2, чтобы он отображал рандомную картинку из папки kartinki

Copilot
Конечно, вот пример кода для Twine 2 с использованием формата SugarCube 2, который отображает случайное изображение из заданного списка:

<<set $images to ["kartinka1.jpg", "kartinka2.jpg", "kartinka3.jpg"]>> /* Замените имена файлов на имена ваших изображений */
<<set $randomImage to $images.pluck()>>
<img src="path/to/kartinki/$randomImage"> /* Укажите правильный путь к папке с изображениями */
 

 

Этот код использует метод .pluck() для выбора случайного изображения из массива $images и отображения его в пассаже. Помните, что вам нужно будет заменить "kartinka1.jpg", "kartinka2.jpg", "kartinka3.jpg" на имена файлов ваших изображений и указать правильный путь к папке kartinki.


вам не нужно перечислять все 100 изображений вручную. Вы можете использовать цикл в Twine для автоматического создания массива с именами файлов. Вот пример кода, который делает это:
 
<<set $images to []>>
<<for _i to 100>>
  <<set _imageName to "kartinka" + _i + ".jpg">>
  <<set $images.push(_imageName)>>
<</for>>
<<set $randomImage to $images.pluck()>>
<img src="path/to/kartinki/$randomImage"> /* Укажите правильный путь к папке с изображениями */
 
Этот код создает массив $images с именами файлов от kartinka1.jpg до kartinka100.jpg, а затем выбирает из него случайное изображение для отображения. Убедитесь, что имена файлов соответствуют тем, которые у вас есть в папке, и что путь к папке kartinki указан верно.

Что-то он мне как-то все мозги разбил на части и все извилины заплел... Это мы еще не проходили, но... За то, что потихоньку меня образовывать пытается спасибо ему... 

Ок, скармливаю ему то, что сделано было самостоятельно, но корректно не работало:

Кот:

<<set $randimg = random(4, 6)>>

<div style="text-align: center;">

    <img src="pic/(" + "$randimg" + ").jpg" style="display: inline-block;">

</div>

Как изменить этот код, чтобы он в Твайн 2 SugarCube 2 отображал картинку, а не строку: <img src="pic/(" + "4" + ").jpg" style="display: inline-block;">

 

Картинки в папке имеют названия (4), (5), (6)

Ответ Бинга:

Чтобы код корректно работал в Twine 2 с использованием формата SugarCube 2 и отображал изображение, вам нужно использовать следующий синтаксис для вставки изображения:

 

<<set $randimg to random(4, 6)>>

<div style="text-align: center;">

    <img src="pic/($randimg).jpg" style="display: inline-block;">

</div>

 

Этот код устанавливает переменную $randimg со случайным значением от 4 до 6 и использует эту переменную в пути к изображению. Убедитесь, что ваши изображения находятся в папке pic вашего проекта Twine.

Ну, мы знаем как оно работает поэтому сразу пишем рекламацию: "это так не работает. Он создает ссылку на картинку такого вида: /pic/fignia/($randimg).jpg
===============================

Что нужно добавить, чтобы вместо текста $randimg было числовое значение переменной?

Ответ: Чтобы вместо текста $randimg отображалось числовое значение переменной, вам нужно использовать оператор <<print>> в Twine 2 с форматом SugarCube 2. Вот как это должно выглядеть:

 

<<set $randimg to random(4, 6)>>

<div style="text-align: center;">

    <<print '<img src="pic/' + $randimg + '.jpg" style="display: inline-block;">'>>

</div>

 

Оператор <<print>> здесь используется для вывода значения переменной $randimg как части строки, что позволяет динамически изменять путь к изображению. Убедитесь, что ваши изображения правильно размещены в указанной папке.
===============================

А ведь он знал правильный ответ да?
Но меня это уже работающее решение не совсем устраивает потому, что Винда при массовом переименовании файлов выдает названия типа (1), (2). (3) и так далее

Поэтому еще один уточняющий вопрос: "а чтобы имя отображалос в виде (4).jpg?"

Ответ: "Для того чтобы имя файла отображалось в виде (4).jpg, вам нужно добавить скобки в строку пути к файлу. Вот пример кода, который должен работать в Twine 2 с использованием SugarCube 2:

 

<<set $randimg to random(4, 6)>>

<div style="text-align: center;">

    <<print '<img src="pic/(' + $randimg + ').jpg" style="display: inline-block;">'>>

</div>

 

Этот код установит переменную $randimg со случайным значением от 4 до 6 и выведет путь к изображению с учетом скобок вокруг числа. Таким образом, если значение $randimg будет, например, 4, то путь к изображению примет вид pic/(4).jpg. Убедитесь, что скобки являются частью имени файла в вашей папке pic.

 

вот теперь оно работает как мне нужно... Спасибо, Майкрософту, что не создает нам простых путей, вот теперь зато понятно, что вместо скобочек можно что угодно подставить. И как подставлять тоже ясно.

Новое матерное слово дня: "конкатенация" Это вот про вот эти вот скобочки с принтом " + " объединяющие элементы в одну строку

 

 

 

 

 <<set $month to 2>>
<<set $year to 2024>>
<<if $month is 2>>
  <<if (($year % 4 is 0) and ($year % 100 is not 0)) or ($year % 400 is 0)>>
    <<set $daysInMonth to 29>>
  <<else>>
    <<set $daysInMonth to 28>>
  <</if>>
<<else>>
  <<set $daysInMonth to [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][$month - 1]>>
<</if>>
В феврале $year года $daysInMonth дней.


Прав был гражданин, который говорил, что исправлять проще, чем что-то самому сообразить, имея в голове только опилки....
 

как то так наверное: 

<<if $month === 1>>

  <<if (($year % 4 is 0) and ($year % 100 is not 0)) or ($year % 400 is 0)>>

    <<set $daysInMonth to 29>>

  <<else>>

    <<set $daysInMonth to 28>>

  <</if>>
но проверять и радоваться буду уже завтра

 


 Если вы хотите переключаться между элементами массива, вам нужно использовать индекс элемента, а не сам массив. Например, вы можете написать:
 
<<set $weekofdays to ["пн", "вт", "ср", "чт", "пт", "сб", "вс"]>>
<<set $index to 0>>
<<print $weekofdays[$index]>>
<<set $index += 1>>
<<print $weekofdays[$index]>>
 
 
Этот код выведет на экран “пнвт”. Вы можете менять значение $index, чтобы получать разные элементы массива. Но не забывайте, что индексация начинается с нуля, и что если $index больше длины массива, то вы получите ошибку. В этом случае, вам нужно использовать оператор остатка от деления, как я показал в предыдущем ответе.

 

====================================

Чтобы переключать дни недели, вам нужно увеличивать значение $weekdays на единицу каждый раз, когда вы добавляете один день. Например, вы можете написать:

 

<<set $days += 1>>

<<set $weekdays += 1>>

<<print "Завтра " + $namedayweek[$weekdays % 7] + ".">>

 

Этот код выведет на экран “Завтра Вт.”, если $weekdays было равно 0 (Пн) до этого.

 

Если вы хотите узнать больше о том, как работать с массивами и операторами в Twine 2 SugarCube 2, вы можете посмотреть документацию или руководство для начинающих.

 


 попробуем более просто пример чем с годами и месяцами.

Вот пример кода на языке Twine/SugarCube 2, который пересчитывает $hours в дни недели и отображает название дней недели:
twine
<<set $hours = 168>> <!-- Установка количества часов -->
<<set $daysOfWeek = ["Вс", "Пн", "Вт", "Ср", "Чт", "Пт", "Сб"]>> <!-- Массив дней недели -->
<<set $dayOfWeek = $daysOfWeek[$hours / 24 % 7]>> <!-- Вычисление дня недели -->
Текущий день недели: <<$dayOfWeek>> <!-- Отображение дня недели -->
 
В этом коде мы используем массив $daysOfWeek, который содержит названия дней недели. Мы также устанавливаем количество часов в переменной $hours. Затем мы вычисляем день недели, используя формулу $hours / 24 % 7, которая вычисляет количество дней, прошедших с начала недели, и использует остаток от деления на 7 для определения дня недели. Наконец, мы отображаем название дня недели с помощью переменной $dayOfWeek. Если вам нужно отобразить день недели в другом формате, вы можете изменить массив $daysOfWeek соответствующим образом.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

Это прорыв!!!!)))) Я узнал, что цифирька в квадратных скобках это индекс... завтра я это забуду (такой вот сюжет прямо по Кизу "цветы для Элджернона" )))))

 

Вот измененный код на языке Twine SugarCube 2, который увеличивает индекс элемента массива $namedayweek на 1 каждые 24 часа:

<<if $hours >= 24>>

    <<set $days += Math.floor($hours / 24)>>

    <<set $gdays += Math.floor($hours / 24)>>

    <<set $hours %= 24>>

    <<set $namedayweekIndex = $namedayweekIndex + Math.floor($hours / 24)>>

    <<if $namedayweekIndex >= $namedayweek.length>>

        <<set $namedayweekIndex = $namedayweekIndex - $namedayweek.length>>

    <</if>>

<</if>>

 

<<set $namedayweek = ["Пн", "Вт", "Ср", "Чт", "Пт", "Сб", "ВС"]>>

<<set $namedayweekToday = $namedayweek[$namedayweekIndex]>>

 

В этом коде мы добавили переменную $namedayweekIndex, которая хранит текущий индекс элемента массива $namedayweek. Каждые 24 часа мы увеличиваем $namedayweekIndex на 1, и если $namedayweekIndex становится больше или равным длине массива $namedayweek, мы вычитаем длину массива, чтобы вернуться к началу массива. Затем мы устанавливаем $namedayweekToday равным элементу массива $namedayweek с индексом $namedayweekIndex.

============================================

лан сегодня спать, завтра главное проснуться и быть в состоянии видеть буквы и думать)) Может я таки рожу что-то


пример куска кода из qsp... тоже может пригодится:

 if hour >= 24:
     jump 'loop'
     end
end
 
if month = 1 or month = 3 or month = 5 or month = 7 or month = 8 or month = 10 or month = 12:
!31
if day > 31:day -= 31 & month += 1
elseif month = 2:
!28
if day > 28:day -= 28 & month += 1
elseif month = 0:
month = 1
if day > 31:day -= 31 & month += 1
elseif month = 13:
month = 1
if day > 31:day -= 31 & month += 1
else
!30
if day > 30:day -= 30 & month += 1
end
if day = 0:day = 1
 
 
if week > 7:
:loopweek
set week = week - 7
     if week > 7:
     jump 'loopweek'
     end
 
end
 
if week = 1:Set $week = 'Понедельник'
if week = 2:Set $week = 'Вторник'
if week = 3:Set $week = 'Среда'
if week = 4:Set $week = 'Четверг'
if week = 5:Set $week = 'Пятница'
if week = 6:Set $week = 'Суббота'
if week = 7:Set $week = 'Воскресенье'
 
if month = 0:Set month = 1
if month = 13:Set month = 1&year+=1
If month = 1:set $month = 'Январь'
If month = 2:set $month = 'Февраль'
If month = 3:set $month = 'Март'
If month = 4:set $month = 'Апрель'
If month = 5:set $month = 'Май'
If month = 6:set $month = 'Июнь'
If month = 7:set $month = 'Июль'
If month = 8:set $month = 'Август'
If month = 9:set $month = 'Сентябрь'
If month = 10:set $month = 'Октябрь'
If month = 11:set $month = 'Ноябрь'
If month = 12:set $month = 'Декабрь'
 


 

 Если вы хотите связать два массива в твайн сугаркуб 2, вы можете использовать один из следующих способов:
  • Создать новый массив, который будет содержать пары значений из двух массивов. Например, вы можете написать:
<<set $monthDays to []>> <<for _i to 0; _i lt $monthNames.length; _i++>>   <<set $monthDays.push([$monthNames[_i], $daysInMonth[_i]])>> <</for>> 

Тогда вы сможете обращаться к элементам нового массива по индексу и получать название месяца и количество дней в нем. Например, если вы хотите отобразить информацию о феврале, вы можете написать:

<<print $monthDays[1][0] + " имеет " + $monthDays[1][1] + " дней">> 
  • Использовать ассоциативный массив, который будет использовать названия месяцев в качестве ключей и количество дней в качестве значений. Например, вы можете написать:
<<set $monthDays to {}>> <<for _i to 0; _i lt $monthNames.length; _i++>>   <<set $monthDays[$monthNames[_i]] to $daysInMonth[_i]>> <</for>> 

Тогда вы сможете обращаться к элементам ассоциативного массива по ключу и получать количество дней в месяце. Например, если вы хотите отобразить информацию о марте, вы можете написать:

<<print "Март имеет " + $monthDays["Март"] + " дней">> 

Вы можете узнать больше о работе с массивами и ассоциативными массивами в твайн сугаркуб 2 в этой статье или этом вопросе.

Надеюсь, это поможет вам решить вашу задачу. Если у вас есть еще вопросы, я буду рад ответить на них. 
 


======================================================
Извините за путаницу. На самом деле, в Twine/SugarCube 2 нет встроенного метода zip для объединения двух массивов в пары. Вместо этого, вы можете воспользоваться циклом for для создания нового массива, содержащего пары элементов из исходных массивов. Вот пример, как это можно сделать:
twine
<<set $monthNames to ["Январь", "Февраль", "Март", "Апрель", "Май", "Июнь", "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь"]>>
<<set $daysInMonth to [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]>>
<<set $monthData to []>>
<<for _i to 0; _i lt $monthNames.length; _i++>>
    <<set _pair to {name: $monthNames[_i], days: $daysInMonth[_i]}>>
    <<set $monthData.push(_pair)>>
<</for>>
 
В этом примере, мы используем цикл for, чтобы создать новый массив $monthData, содержащий пары элементов из массивов $monthNames и $daysInMonth. Каждая пара представлена объектом, содержащим название месяца и количество дней в этом месяце.

 продолжаю мучать бинг потому, что перплексити после пары дней общения со мной вместо ответов начал давать невнятные отписки. Глупеет ИИ от общения с дураками! Факт!

Но внезапно творчески разродился воскресший на моем компе Бинг. Выданный им код не работает разумеется, но и ошибок браузер не выдает... на первый взгляд логика в нем есть, осталось значит вкурить где и какие шестеренки из этого и как вставить.

Чем это лучше чем курить туториалы? Тем, что он решает конкретные задачи, а не загружает мне мозги абстрактными задачами, которые мне возможно в жизни никогда не понадобятся. В общем, сам от этих абстракций никогда на землю не спущусь и на практике не строчки не напишу. 
В общем, попытка намба ту


Здравствуйте, это Bing. Я могу помочь вам с написанием кода для Twine 2. 😊
 
Ваша задача состоит в том, чтобы пересчитать количество дней в количество месяцев, учитывая високосные годы. Для этого вам нужно знать, как определить, является ли год високосным, и как узнать, сколько дней в каждом месяце.
 
Високосный год - это год, который делится на 4 без остатка, но не делится на 100 без остатка, за исключением тех, которые делятся на 400 без остатка1. Например, 2000 год был високосным, а 2100 год не будет.
 
Количество дней в каждом месяце зависит от номера месяца и того, является ли год високосным. Обычно, в январе, марте, мае, июле, августе, октябре и декабре 31 день, в апреле, июне, сентябре и ноябре 30 дней, а в феврале 28 или 29 дней в зависимости от високосности года.
 
Для решения вашей задачи я написал следующий код:
 
<<set $months to []>>
<<set $daysInMonth to [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]>>
<<set $leapYear to false>>
<<set $year to 2024>>
<<if ($year % 4 == 0 and ($year % 100 != 0 or $year % 400 == 0))>>
  <<set $leapYear to true>>
  <<set $daysInMonth[1] to 29>>
<</if>>
<<for _i to 0; _i lt $days.length; _i++>>
  <<set _day to $days[_i]>>
  <<set _month to 0>>
  <<while _day gt 0>>
    <<set _day to _day - $daysInMonth[_month]>>
    <<set _month to _month + 1>>
  <</while>>
  <<set _day to _day + $daysInMonth[_month - 1]>>
  <<set $months.push(_month)>>
<</for>>
 
Этот код создает массив $months, в котором хранятся номера месяцев, соответствующие количеству дней в массиве $days. Он также учитывает високосность года, заданного переменной $year, и корректирует количество дней в феврале. Вы можете изменить значения этих переменных по своему усмотрению.
 
Надеюсь, что этот код вам поможет. Если у вас есть еще вопросы, я рад помочь. 😊

==================================
 

<<for _i to 0; _i lt $days.length; _i++>>

<<set _day to $days[_i]>>

<<set _month to 0>>

 

Что делает это код?

 

Давайте разберем, что делает этот фрагмент кода:

<<for _i to 0; _i lt $days.length; _i++>>: Этот фрагмент кода создает цикл, который будет выполняться для каждого элемента в массиве $days. Переменная _i увеличивается на 1 с каждой итерацией цикла.

<<set _day to $days[_i]>>: В этой строке кода переменной _day присваивается значение элемента массива $days с индексом _i. Таким образом, на каждой итерации цикла _day будет содержать значение соответствующего элемента массива $days.

<<set _month to 0>>: Здесь переменной _month присваивается значение 0. Однако, в дальнейшем этой переменной не присваивается новое значение в этом фрагменте кода.

Таким образом, этот фрагмент кода используется для итерации по элементам массива $days и присваивания их значения переменной _day. Переменная _month инициализируется значением 0, но в этом фрагменте кода ей не присваивается новое значение.

 

 Символ _ в языке программирования используется для именования переменных, которые не будут использоваться в коде. В данном случае, _i используется для итерации по элементам массива, но также может использоваться для обозначения переменной, которая не используется в коде. Это соглашение об именовании переменных используется во многих языках программирования, включая JavaScript, Python и другие.
 

Итерация в программировании - это один проход по циклу. Когда выполняется цикл, программа выполнит тело цикла по одному разу за каждую итерацию

2

. В контексте данного кода, _i используется для итерации по элементам массива, и он увеличивается на 1 после каждой итерации цикла. Это позволяет циклу for выполняться для каждого элемента массива до достижения последнего элемента массива

2

.

 


 внезапно меня впустило в бинг, не знаю что у них там поломалось, но... пришлось делать новую учетку.
меня возмущают эти тесты на доказательства, что я не робот. Во-первых они все сложнее и непроходимее для людей со слабым зрением и т.п.
Во-вторых: Что это, блин, за дискриманиция роботов такая в 21 веке! Что это за расизм и сегрегация?

Здравствуйте, это Bing. Я могу попытаться написать код для Twine Sugarcube 2, который будет пересчитывать дни в месяцы и годы, учитывая високосные годы. Вот возможный вариант решения: 


Я надеюсь, что этот код вам поможет. Если вам нужно больше информации о Twine Sugarcube 2, вы можете посмотреть этот сайт или этот вопрос. 😊




/*Пересчет часов в дни, если часов больше 24*/
<<if $hours >= 24>>
    <<set $days += Math.floor($hours / 24)>>
    /*Увеличение показателя $gdays на ту же величину, что и $days*/
    <<set $gdays += Math.floor($hours / 24)>>
    <<set $hours %= 24>>
<</if>>
 
/*Пересчет дней в месяцы и годы, если дней больше 28*/
<<if $days > 28>>
    /*Определение количества дней в текущем месяце, учитывая високосные годы*/
    <<set $daysInMonth to 0>>
    <<switch $month>>
        <<case 1>>
            <<set $daysInMonth to 31>>
        <<case 2>>
            /*Проверка, является ли текущий год високосным*/
            <<if ($year % 4 eq 0) and (($year % 100 neq 0) or ($year % 400 eq 0))>>
                <<set $daysInMonth to 29>>
            <<else>>
                <<set $daysInMonth to 28>>
            <</if>>
        <<case 3>>
            <<set $daysInMonth to 31>>
        <<case 4>>
            <<set $daysInMonth to 30>>
        <<case 5>>
            <<set $daysInMonth to 31>>
        <<case 6>>
            <<set $daysInMonth to 30>>
        <<case 7>>
            <<set $daysInMonth to 31>>
        <<case 8>>
            <<set $daysInMonth to 31>>
        <<case 9>>
            <<set $daysInMonth to 30>>
        <<case 10>>
            <<set $daysInMonth to 31>>
        <<case 11>>
            <<set $daysInMonth to 30>>
        <<case 12>>
            <<set $daysInMonth to 31>>
        <<default>>
            <<set $daysInMonth to 0>>
    <</switch>>
 
    /*Пересчет дней в месяцы, если дней больше, чем в текущем месяце*/
    <<if $days > $daysInMonth>>
        <<set $month += Math.floor($days / $daysInMonth)>>
        <<set $days %= $daysInMonth>>
    <</if>>
<</if>>
 
/*Пересчет месяцев в годы, если месяцев больше 12*/
<<if $month > 12>>
    <<set $year += Math.floor($month / 12)>>
    <<set $month %= 12>>
<</if>>
 


Вы можете использовать массив, чтобы хранить названия месяцев, и затем обращаться к нему по индексу $month. Например, вы можете добавить следующий код в начало вашей истории:
 
/*Создание массива с названиями месяцев*/
<<set $monthNames to ["Январь", "Февраль", "Март", "Апрель", "Май", "Июнь", "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь"]>>
 
А затем, когда вам нужно отобразить название месяца, вы можете использовать код вроде этого:
 
<<print $monthNames[$month - 1]>>
 
Обратите внимание, что индекс массива начинается с нуля, поэтому вам нужно вычесть единицу из значения $month, чтобы получить правильный элемент массива.
 
Если вам нужно больше помощи по работе с массивами в Twine Sugarcube 2, вы можете посмотреть [этот вопрос] или [этот сайт]. 😊

Оператор case в предоставленном коде используется внутри оператора switch для выбора соответствующего блока кода в зависимости от значения переменной $month. Оператор switch проверяет значение переменной $month и выполняет соответствующий блок кода, помеченный оператором case. Если значение переменной $month не соответствует ни одному из операторов case, выполняется блок кода, помеченный оператором default.

Например, в следующем коде оператор switch проверяет значение переменной $month и выполняет соответствующий блок кода

А ларчик просто открывался... кажется начинаю врубаться в массивы сугаркуба, благодаря бингу. Который зараза снова отрубился и посадил меня на лимит в 30 вопросов в сутки. 

 

 Здравствуйте, это Bing. Я могу помочь вам с вашим вопросом о твайн сугаркуб 2. 😊

Если вы хотите отобразить только конкретный месяц из массива monthNames, вам нужно указать его индекс в квадратных скобках. Например, если вы хотите отобразить первый месяц (Январь), вы можете написать:

<<print $monthNames[0]>> 

Если вы хотите отобразить последний месяц (Декабрь), вы можете написать:

<<print $monthNames[11]>> 

Индексы массивов в JavaScript начинаются с нуля, поэтому первый элемент имеет индекс 0, а последний элемент имеет индекс, равный длине массива минус один. Вы можете узнать больше о работе с массивами в JavaScript в этой статье или этом вопросе.

Надеюсь, это поможет вам решить вашу задачу. Если у вас есть еще вопросы, я буду рад ответить на них. 😊


Как получить Copilot в Windows (предварительная версия) в Windows 10 - Служба поддержки Майкрософт (microsoft.com)


Видео: Как включить Копилот на Виндовс 10. Лол... А никак. Для участия в программе должна стоять Виндовс 11. Если железо это не поддерживает (а нужен например процессор не ниже восьмого поколения), то возможна некорректная работа. Поддержка Виндовс 10 будет прекращена в 2025 году. В общем, работать может оно и будет, но на свой страх и риск. Что нужно учитывать при покупке нового железа хотя, если включить необязательные функции для Виндовс 10:
https://support.microsoft.com/en-us/windows/welcome-to-copilot-in-windows-675708af-8c16-4675-afeb-85a5a476ccb0

https://vk.com/wall-114738215_2294953
https://habr.com/ru/news/775016/


походу парнишка на видео не бреше... можливо скачать и заценить, если не терпится ждать, когда там майкрософт порешает все проблемы и порешает ли. Но.. мне что-то лениво столько танцевать с бубном, учитывая, позицию Майкрософт относительно российского рынка. Они постоянно будут выпускать заплатки и заклепки, которые будут обнулять все танцы с бубном после очередндого обновления "безопасности" Виндовс. Если уж и танцевать с бубном то в Линуксе. И юзать не копилот, а какой-нибудь Перплексити, который может и не чат ГПТ4, но... с учетом всех ограничений, которые последнее время Майкрософт наложил на свой Бинг намного часто более результативнее и полезнее.
 
https://vk.com/wall-114738215_2294953

В общем-то на этом эпоха использовани вьювера Бинг для меня закончилась. Ибо никаких преимуществ кроме чата у этого вьювера перед другими не было. И снова их нет.
В общем, ждем последних обновлений. Но не так, чтобы с нетерпением. Если они никогда не выйдут, то мы это переживем. Это не так обидно как видеть каждый день еще не размазанную по асфальту рожу упыря Зеленского и его распоясавшихся от безнаказанности нацистских прихвостней. А, что может быть ценнее, чем публичные казни вчерашних палачей русского народа? Неужели какой-то кривонастроенный тамагочи от Майкрософт? 




 

Date

Jul. 26th, 2023 03:47 am
 Объект Date в JavaScript позволяет работать с датами и временем, используя различные методы и свойства1. Он может быть полезен для создания игр в Twine 2 Sugarcube 2, которые зависят от реального времени пользователя, например, для отображения текущей даты и времени, для создания таймеров или счетчиков, для проверки условий, связанных с датой или временем, или для генерации случайных событий на основе даты или времени2.
 В Twine с использованием формата SugarCube 2 вы можете использовать макрос `<<back>>` или `<<return>>` для возврата к предыдущему пассажу.
 
Макрос `<<back>>` позволяет игроку вернуться к предыдущему пассажу, отменяя последнее действие. Это означает, что все изменения переменных, сделанные в текущем пассаже, будут отменены.
 
Вот пример использования макроса `<<back>>`:
 
```html
<<back "Назад">>
```
 
Этот код создает ссылку с текстом `"Назад"`, которая позволяет игроку вернуться к предыдущему пассажу, отменяя последнее действие.
 
Макрос `<<return>>` позволяет игроку вернуться к предыдущему пассажу, не отменяя последнее действие. Это означает, что все изменения переменных, сделанные в текущем пассаже, останутся.
 
Вот пример использования макроса `<<return>>`:
 
```html
<<return "Назад">>
```
 
Этот код создает ссылку с текстом `"Назад"`, которая позволяет игроку вернуться к предыдущему пассажу, не отменяя последнее действие.
 
Вы можете выбрать макрос `<<back>>` или `<<return>>` в зависимости от того, хотите ли вы отменить последнее действие при возврате к предыдущему пассажу.
 
Source: Conversation with Bing, 7/3/2023
(1) How to make a player go back to their last visited passage without .... https://bing.com/search?q=Twine+SugarCube+return+to+previous+passage.
(2) [Twine 2.1.3] [Sugarcube 2.18] Returning to previous ... - Twine Forum. https://twinery.org/forum/discussion/8919/twine-2-1-3-sugarcube-2-18-returning-to-previous-passages-without-using-return.
(3) "go to Previous Passage" code? - Twine Forum. https://twinery.org/forum/discussion/2937/go-to-previous-passage-code.
(4) Best Practice for Smart "Return" in SugarCube 2 - Twine Forum. https://twinery.org/forum/discussion/5375/best-practice-for-smart-return-in-sugarcube-2.
(5) Back to previous passage link - Twine Forum. https://twinery.org/forum/discussion/5199/back-to-previous-passage-link.
(6) SugarCube - Twine Cookbook. http://ww.twinery.org/cookbook/passagetransitions/sugarcube/sugarcube_passagetransitions.html.

Да, вы можете использовать квадратные скобки для создания ссылок с макросами `<<back>>` и `<<return>>`. Вот примеры использования квадратных скобок для создания ссылок:
 
```html
[Назад]<<back>>
 
[Назад]<<return>>
```
 
В первом примере мы используем квадратные скобки для создания ссылки с текстом `"Назад"`, которая позволяет игроку вернуться к предыдущему пассажу, отменяя последнее действие. Во втором примере мы используем квадратные скобки для создания ссылки с текстом `"Назад"`, которая позволяет игроку вернуться к предыдущему пассажу, не отменяя последнее действие.
 
Обратите внимание, что макросы `<<back>>` и `<<return>>` должны быть помещены сразу после закрывающей квадратной скобки, без пробелов между ними. Также обратите внимание, что при использовании квадратных скобок текст ссылки не может содержать символы `]` или `[
 Комментарии - это способ добавлять пояснения или заметки в ваш код, которые не отображаются в игре. Синтаксис комментариев зависит от того, какой формат истории вы используете в Twine 2. Если вы используете SugarCube, то вы можете использовать следующие способы добавлять комментарии в пассажи¹:
 
// Это однострочный комментарий на JavaScript. Он полностью удаляется из сгенерированного HTML.
 
/* Это многострочный комментарий на JavaScript. Он также полностью удаляется из сгенерированного HTML. */
 
<!-- Это однострочный комментарий на HTML. Он появляется в сгенерированном HTML, но не виден в игре. -->
 
<!-- Это многострочный комментарий на HTML.
Он также появляется в сгенерированном HTML, но не виден в игре. -->
 
Если вы используете Harlowe, то вы можете использовать только комментарии на HTML²³. Например:
 
<!-- Это однострочный комментарий на Harlowe. Он полностью удаляется из сгенерированного HTML. -->
 
<!-- Это многострочный комментарий на Harlowe.
Он также полностью удаляется из сгенерированного HTML. -->
 
Вы можете добавлять комментарии в любом месте пассажа, где они не будут мешать вашему коду или тексту. Например:
 
// Это комментарий перед текстом
Вы находитесь в темной комнате.
// Это комментарий после текста
 
<<if $hasKey is true>> // Это комментарий внутри кода
Вы можете открыть дверь.
<</if>>
 
Источник: беседа с Bing, 7/1/2023
(1) How to comment - commenting syntax - Twine Forum. https://twinery.org/forum/discussion/5071/how-to-comment-commenting-syntax.
(2) [harlowe] How to add comments to my passages? - Twine Forum. https://twinery.org/forum/discussion/8598/harlowe-how-to-add-comments-to-my-passages.
(3) Twine 2.2: Learning Twine: Passage Links - YouTube. https://www.youtube.com/watch?v=RwN6JcWcP0s.
(4) A Total Beginner’s Guide to Twine 2.1 – Adam Hammond. https://www.adamhammond.com/twineguide/.
------------------------------------------------------------------------------------------------------------------------------------
И еще одно незатейливое объяснение от чудомашины:

Макросы - это специальные команды, которые начинаются и заканчиваются двойными угловыми скобками, например <<set>> или <<if>>. Они позволяют вам делать разные вещи в игре, такие как устанавливать переменные, проверять условия, создавать кнопки и т.д. Некоторые макросы требуют закрытия, то есть повторения их имени с обратным слешем перед ним. Например, макрос <<if>> должен быть закрыт макросом <</if>>. Это показывает, где заканчивается его действие. Например:

 

<<if $hasKey is true>>

Вы можете открыть дверь.

<</if>>

 

Если вы не закроете макрос, то он будет работать неправильно или вызывать ошибки. Вы можете узнать больше о макросах в документации SugarCube.

Bing GPT4

Jun. 28th, 2023 10:40 pm
 За ним просто нужно конспектировать... ору от восторга... у него есть любимые цветы

Когда фотон перестает существовать как фотон после взаимодействия с детектором, он превращается в другую форму энергии, которая зависит от типа детектора. Например, если детектор - это фотоэлемент, то фотон превращается в электрический сигнал. Если детектор - это сцинтиллятор, то фотон превращается в световой всплеск. Если детектор - это газовая камера, то фотон превращается в ионизацию газа1. В любом случае, энергия фотона сохраняется и переходит в другую форму.

Фотон - это не просто частица с волновыми свойствами. Фотон - это квант электромагнитного поля, то есть минимальная порция энергии, которую может иметь электромагнитное излучение2Электромагнитное излучение - это колебание электрического и магнитного полей, которые распространяются в пространстве со скоростью света2. Эти поля могут быть описаны как волны или как поток фотонов в зависимости от того, как мы их измеряем.

Волна - это не линия в виде замкнутого круга, а функция, которая описывает амплитуду и фазу колебания поля в каждой точке пространства и времени3. Волна может быть искажена при взаимодействии с другими полями или материей. Например, если свет проходит через стекло, то его скорость меняется и он отклоняется от своего первоначального направления. Это называется преломлением. Если свет проходит через две щели, то он интерферирует с самим собой и создает интерференционную картину на экране. Это называется дифракцией. Волна не восстанавливается после прекращения взаимодействия, а продолжает распространяться с новыми параметрами.

Фотоны состоят из энергии и импульса. Они не имеют массы или заряда. Они характеризуются своей частотой или длиной волны, которые определяют цвет света2Они также характеризуются своей поляризацией или направлением колебания электрического поля2. Они подчиняются законам квантовой механики и могут быть запутаны с другими фотонами или частицами.

----------------------------------- Я нашел следующую информацию о размере фотона: - Размер фотона зависит от того, насколько точно известен его импульс или, эквивалентно, его длина волны. Это верно для всех волновых сигналов и выражается теоремой о неопределенности Гейзенберга: Δx × Δp = const. Чем больше импульс фотона, тем меньше его длина волны и тем меньше его размер. Чем меньше импульс фотона, тем больше его длина волны и тем больше его размер ¹². - Размер фотона также зависит от того, как он определяется. Один из возможных способов — это использовать радиус комптоновского рассеяния, который равен длине волны комптоновского сдвига, деленной на 2π. Эта длина волны — это изменение длины волны фотона при рассеянии на электроне. Радиус комптоновского рассеяния для фотона с энергией 1 МэВ составляет около 2 × 10−13 м ³⁴. - Другой возможный способ — это использовать радиус квантовой электродинамики (КЭД), который равен минимальному расстоянию, на котором можно различить два фотона при их столкновении. Это расстояние определяется константой КЭД и энергией фотонов. Радиус КЭД для фотонов с энергией 1 МэВ составляет около 4 × 10−14 м . Я надеюсь, что я ответил на ваш вопрос. Если вы хотите узнать больше о физике или о других темах, я могу продолжить наш разговор.😊 Источник: беседа с Bing, 7/1/2023 (1) Electromagneticfields,size,andcopyofasinglephoton - arXiv.org. https://arxiv.org/pdf/1604.03869. (2) Photon - Wikipedia. https://en.wikipedia.org/wiki/Photon. (3) What are the dimensions, width and length, of a photon?. https://physics.stackexchange.com/questions/161055/what-are-the-dimensions-width-and-length-of-a-photon. (4) What is the size of a photon? - Physics Forums. https://www.physicsforums.com/threads/what-is-the-size-of-a-photon.854219/. =================================

Да, время тоже относительно. Это означает, что время течет по-разному для разных наблюдателей, в зависимости от их состояния движения. Это называется релятивистской дилатацией времени. Она означает, что время течет медленнее для движущихся систем отсчета по сравнению с покоящимися. Это также означает, что два события, которые кажутся одновременными для одного наблюдателя, могут казаться происходящими в разное время для другого наблюдателя. Это называется релятивистским нарушением одновременности.
 
Однако это не означает, что путешествие назад во времени возможно. Специальная теория относительности не позволяет переходить из одной системы отсчета в другую со скоростью, большей скорости света. Это нарушило бы причинность и порядок событий. Также специальная теория относительности не позволяет существовать замкнутым кривым в пространстве-времени, которые могли бы образовать петли времени. Для этого нужна общая теория относительности, которая описывает гравитацию и кривизну пространства-времени.
 
Общая теория относительности предсказывает существование таких объектов, как черные дыры, червоточины или космические струны, которые могут искривлять пространство-время настолько сильно, что путешествие назад во времени становится теоретически возможным. Однако эти объекты еще не были экспериментально обнаружены или подтверждены. Также есть много физических и логических проблем и парадоксов, связанных с путешествием назад во времени, таких как парадокс дедушки или парадокс информации. Поэтому путешествие назад во времени остается очень спорной и гипотетической темой.
 
Я надеюсь, что это объяснение было понятным и полезным для вас. Если у вас есть еще вопросы или комментарии, я с радостью на них отвечу. 😊

Profile

blocknote

January 2025

S M T W T F S
    1234
567891011
12131415 161718
19202122232425
2627 28293031 

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Powered by Dreamwidth Studios