Please or Регистрация to create posts and topics.

Вопрос по переменным

Я с вами не согласен и функционал работает нормально.
\ [[<img src='files/Obey.jpg'>|https://axma.info/ru/manual/]] вот пример использования с локальным файлом, а не url. Файл размещен в папке files.
Для того, чтобы работа с файлами была верной, убедитесь, что используемый sm файл сохранен и папка files находится в директории проекта. Убедитесь, что формат изображения доступен в ASM и не превышает допустимый размер. Если не поможет - попробуйте привязать путь до локальной картинки через вызов функции picture из бокового меню. Может так он "подсосет" файл в проект. Для проверки использовалась winn64 версия программы. Как работать с локальными файлами в онлайн-версии программы, я, увы, не знаю.

А, всё. Беру свои слова назад. Нашла, где собака зарыта.
Я бы поправила в «Руководстве» этот момент, вообще не очевидно, что перед <img src='путь'> нужно ставить обратный слэш. Хотя там и кроме этого хватает всяких недосказанностей.
Непонятно также, в чём принципиальная разница вывода изображения функцией (image) и <img src>, что первая не позволяет работать с локальными файлами.
В любом случае, большое спасибо за помощь.

Цитата: Obey от 09.04.19, 12:31

А, всё. Беру свои слова назад. Нашла, где собака зарыта.
Я бы поправила в «Руководстве» этот момент, вообще не очевидно, что перед <img src='путь'> нужно ставить обратный слэш. Хотя там и кроме этого хватает всяких недосказанностей.
Непонятно также, в чём принципиальная разница вывода изображения функцией (image) и <img src>, что первая не позволяет работать с локальными файлами.
В любом случае, большое спасибо за помощь.

А можно у вас я спрошу? В js можно как-то сделать так чтобы в конце игры выдало сколько баллов заслужил игрок после прохождения ?

Цитата: Runa от 10.04.19, 16:19

А можно у вас я спрошу? В js можно как-то сделать так чтобы в конце игры выдало сколько баллов заслужил игрок после прохождения ?

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

Если это что-то более специфическое, то объясните саму идею подробнее.

Цитата: Obey от 10.04.19, 16:33
Цитата: Runa от 10.04.19, 16:19

А можно у вас я спрошу? В js можно как-то сделать так чтобы в конце игры выдало сколько баллов заслужил игрок после прохождения ?

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

Если это что-то более специфическое, то объясните саму идею подробнее.

Да-да все верно вы поняли! Спасибо Вам) Только вот с переменными я дуб( Если, например, объявлю переменную в параграфе start и вообще как их правильно объявлять с баллами-то( ..

У меня будет как тест с 4 вариантами ответов. За каждый ответ начисляется определенный бал (пример- выбрал 1-й вариант тебе 3 балла и так далее максимум 5 баллов)

Вопрос: каким образом объявляется переменная чтоб в конце прохождения теста игроку выдавалось количество набранных очков в сумме и интерпретация сего (например- вы набрали  от 15-25 баллов поэтому вы такой то. Пожалуйста, объясните наглядно)

 

 

1. Переменная объявляется очень просто, в вашем случае это будет выглядеть так:
points = 0;

Теперь у вас есть переменная points (назвать вы её, впрочем, можете как угодно), и ей присвоено значение ноль. Сделайте это в параграфе Start — и там же можете добавить какой-то приветственный текст, то есть о чём ваш тест, зачем его проходить и так далее.

Сам тест можете начать здесь же, а можете на следующей странице — в этом случае после текста добавьте ссылку:

\[[Далее|Вопрос 1]]

Текст в квадратных скобках разбит чертой на две части. Первая — это то, что увидит читатель, а вторая — куда ссылка ведёт, то есть на следующий параграф с названием «Вопрос 1». Создайте его.

2. Параграф «Вопрос 1» содержит, собственно, текст вашего первого вопроса и варианты выбора. Например, он может выглядеть так:

\ Какой из нижеперечисленных музыкальных сервисов вы бы порекомендовали своему другу меломану?
\ <br>

\ [[Яндекс Музыка|Вопрос 2 {points = points+1}]]
\ [[Google Play|Вопрос 2 {points = points+2}]]
\ [[Apple Music|Вопрос 2 {points = points+3}]]
\ [[Spotify|Вопрос 2 {points = points+4}]]

Что мы тут видим? Текст вопроса, пустую строку (то есть <br>), которая не обязательна, но лучше бахнуть, и четыре варианта ответов. Все ответы ведут на следующую страницу (параграф с названием «Вопрос 2»), а в фигурных скобках увеличивается значение переменной points.
И вот таким образом вы поступаете во всех следующих параграфах.

3. В самом последнем параграфе у вас будет подсчёт баллов и итоговый вердикт. Выглядеть это может примерно так:

print('Количество набранных баллов: '+points);
\ <br>
if (points >= 1 && points <= 20) {
\ Текст, если количество баллов от 1 до 20 включительно.
} else if (points >= 21 && points <= 40) {
\ Текст, если количество баллов от 21 до 40 включительно.
} else if (points >= 41 && points <= 60) {
\ Текст, если количество баллов от 41 до 60 включительно.
} else {
\ Тест при любом другом условии.
}

Здесь простая функция «если — то».
Если (if) количество баллов от 1 до 20 (то есть значение переменной points больше или равно единице (>=1) и (&&) меньше или равно 20 (<=20)), то выводится один вариант текста. Если от 21 до 40, то другой (уже else if, потому что второе условие). И так далее.

Вот как-то так. Вообще, часть из этого неплохо описана в «Руководстве». Вы почитайте его, получите знания о самых основах, это вам здорово поможет.
Кроме того, всё, что я тут описала, можно сделать разными способами — и проще, и сложнее. Я постаралась на пальцах разжевать. Может, если сюда кто более опытный заглянет, он подскажет, как это сделать ещё проще.

Цитата: Obey от 09.04.19, 12:31

А, всё. Беру свои слова назад. Нашла, где собака зарыта.
Я бы поправила в «Руководстве» этот момент, вообще не очевидно, что перед <img src='путь'> нужно ставить обратный слэш. Хотя там и кроме этого хватает всяких недосказанностей.
Непонятно также, в чём принципиальная разница вывода изображения функцией (image) и <img src>, что первая не позволяет работать с локальными файлами.
В любом случае, большое спасибо за помощь.

В шаблоне примера перед <img ...> стоит обратный слэш.
Вы сами ответили касательно принципиальной разницы. Во-первых, image работает со спрайтами, как вы и сами сказали. Это четко написано при вызове функции (Смотрите боковую панель справа от параграфа). Во-вторых, там где собака зарыта, имеется второе отличие, позволяющее использовать img внутри текста. Img позволяет создавать сложные конструкции (Лично я при помощи img вывожу кликабельные иконки игровых вкладок в поле menu).

Цитата: Artyom от 11.04.19, 00:35

Вы сами ответили касательно принципиальной разницы. Во-первых, image работает со спрайтами, как вы и сами сказали. Это четко написано при вызове функции (Смотрите боковую панель справа от параграфа).

Так функция image позволяет выводить изображения в тексте и как спрайт, и по ссылке в интернете. Но не из корневой папки игры. Вот тут в чём принципиальное отличие? То есть я могу бахнуть любую картинку из инета, вообще не относящуюся к проекту — почему она будет «спрайт», а локальный файл «неспрайт»?

Цитата: Obey от 11.04.19, 00:08

1. Переменная объявляется очень просто, в вашем случае это будет выглядеть так:
points = 0;

Теперь у вас есть переменная points (назвать вы её, впрочем, можете как угодно), и ей присвоено значение ноль. Сделайте это в параграфе Start — и там же можете добавить какой-то приветственный текст, то есть о чём ваш тест, зачем его проходить и так далее.

Сам тест можете начать здесь же, а можете на следующей странице — в этом случае после текста добавьте ссылку:

\[[Далее|Вопрос 1]]

Текст в квадратных скобках разбит чертой на две части. Первая — это то, что увидит читатель, а вторая — куда ссылка ведёт, то есть на следующий параграф с названием «Вопрос 1». Создайте его.

2. Параграф «Вопрос 1» содержит, собственно, текст вашего первого вопроса и варианты выбора. Например, он может выглядеть так:

\ Какой из нижеперечисленных музыкальных сервисов вы бы порекомендовали своему другу меломану?
\ <br>

\ [[Яндекс Музыка|Вопрос 2 {points = points+1}]]
\ [[Google Play|Вопрос 2 {points = points+2}]]
\ [[Apple Music|Вопрос 2 {points = points+3}]]
\ [[Spotify|Вопрос 2 {points = points+4}]]

Что мы тут видим? Текст вопроса, пустую строку (то есть <br>), которая не обязательна, но лучше бахнуть, и четыре варианта ответов. Все ответы ведут на следующую страницу (параграф с названием «Вопрос 2»), а в фигурных скобках увеличивается значение переменной points.
И вот таким образом вы поступаете во всех следующих параграфах.

3. В самом последнем параграфе у вас будет подсчёт баллов и итоговый вердикт. Выглядеть это может примерно так:

print('Количество набранных баллов: '+points);
\ <br>
if (points >= 1 && points <= 20) {
\ Текст, если количество баллов от 1 до 20 включительно.
} else if (points >= 21 && points <= 40) {
\ Текст, если количество баллов от 21 до 40 включительно.
} else if (points >= 41 && points <= 60) {
\ Текст, если количество баллов от 41 до 60 включительно.
} else {
\ Тест при любом другом условии.
}

Здесь простая функция «если — то».
Если (if) количество баллов от 1 до 20 (то есть значение переменной points больше или равно единице (>=1) и (&&) меньше или равно 20 (<=20)), то выводится один вариант текста. Если от 21 до 40, то другой (уже else if, потому что второе условие). И так далее.

Вот как-то так. Вообще, часть из этого неплохо описана в «Руководстве». Вы почитайте его, получите знания о самых основах, это вам здорово поможет.
Кроме того, всё, что я тут описала, можно сделать разными способами — и проще, и сложнее. Я постаралась на пальцах разжевать. Может, если сюда кто более опытный заглянет, он подскажет, как это сделать ещё проще.

Спасибо Вам огромное! Буду пробовать)