Если у Вас есть вопросы, как сделать что-то в программе или Вы не понимаете чего-то (то ли это ошибка, то ли фича и т.д.), то спрашивайте в этой теме.
Неактивен
Да, можно.
if $1 eq 2
bla-bla1
if $2 gte 7
bla-bla2
else
bla-bla3
endif
endif
Неактивен
Как увеличить или уменьшить элемент списка? Не присвоить новое значение, а просто изменить.
Неактивен
Спасибо. Может стоит добавить в "Руководство пользователя"?
Отредактировано Oldrik (22.04.2013 15:21)
Неактивен
Morych написал:
Oldrik написал:
Как увеличить или уменьшить элемент списка? Не присвоить новое значение, а просто изменить.
По-моему, изменяя значение элемента списка, ты и присваиваешь ему новое значение. Вот в примере выше мы присваиваем новое значение, которое больше текущего значения на 1.
Просто был нужен пример кода.
Неактивен
О, уже ответили.
Отредактировано Oldrik (29.10.2013 10:46)
Неактивен
Morych, код самому не понравился.
Немного переделал:
<<set $gg = [0,0]>> - Где 0 - опыт Главного Героя (ГГ)(например опыт = забитых мячей), 1 - навык.
<<set $com_gg = [0,0]>> - команда ГГ, где 0 - название, 1 - навык.
<<set $match = [0,0,0,0]>> - Где 0 - с кем играли, 1 - сколько пропустили, 2 - сколько забили, 3 - сколько забил ГГ.
<<set $random $a0 = 3>> - выбирается с кем играли.
<<set $match[0] = $a0>>
<<display 'com'>> - тут названия команд и их характеристики. (<<set $com = ['Газмяс',1]>> Название и навык команды).
<<random $a1 = 10>>
<<random $a2 = 10>>
<<if $com[1] gt $com_gg[1]>>
<<set $a1 = $a1 + 1>>
<<elseif $com[1] lt $com_gg[1]>>
<<set $a2 = $a2 + 1>>
<<endif>>
#Какая команда опытнее та и забила один гарантированный гол. Можно сделать шанс на забитие.#
<<random $b = 9>>
<<if $gg[1] gte 3 and $gg[1] lt 6>>
<<set $b = $b + 1>>
<<elseif $gg[1] gte 6 and $gg[1] lt 9>>
<<set $b = $b + 2>>
<<elseif $gg[1] gte 9>>
<<set $b = $b + 3>>
<<endif>>
#Чем больше навык игрока - тем больше его шанс забить гол.#
<<if $b gte 4 and $b lt 6>>
<<set $match[3] = $match[3] + 1>>
Игрок забил один мяч.
<<elseif $b gte 6 and $b lt 9>>
<<set $match[3] = $match[3] + 2>>
Игрок забил два мяча.
<<elseif $b gte 9>>
<<set $match[3] = $match[3] + 3>>
Игрок забил три мяча.
<<endif>>
#Участие игрока в матче#
<<set $a2 = $a2 + $match[3]>> - результат команды игрока.
<<set $gg[0] = $gg[0] + $match[3]>> - прокачка ГГ.
<<if $a1 gt $a2>>
Проиграли.
<<elseif $a1 eq $a2>>
Ничья.
<<else>>
Победа.
<<endif>>
#Результат матча#
Счёт - <<print $a1>> : <<print $a2>>
Отредактировано Oldrik (29.10.2013 13:05)
Неактивен
мне кажется, что здесь
<<set $random $a0 = 3>> - выбирается с кем играли. ---->>> ошибка
ни как не могу врубиться в следующее:
- что означает объект и рядом с ним []. например - $match[3]
- если возможно для чайника объясните по -шагово... я не понимаю, почему ставятся те или иные числа (((
Да, разумеется ошибка. Надо было хоть разок глазами пробежать.
<<random $a0 = 3>> - Так правильно.
Неактивен
Можно и без них. Но так проще - всё в одном месте.
Можно сделать несколько списков, и потом смотреть результат нескольких прошедших игр.
Неактивен
<<set $ясила = 3>>
<<set $врагсила = 6>>
<<set $жизнь = 10>>
<<set $жизнь1 = 5>>
<<random $кубик = 10>>
<<if $кубик gte ($врагсила-$ясила)>>
<<set $жизнь1 = $жизнь1 - 1>>
<<print $я>> - <<print $жизнь>>
<<print $враг>> - <<print $жизнь1>>
<<else>>
<<set $жизнь = $жизнь - 1>>
<<print $я>> - <<print $жизнь>>
<<print $враг>> - <<print $жизнь1>>
<<endif>>
Так должно работать.
Ошибка в <<print $жизнь-1>>. Print служит для вывода значения объекта, а не его изменения.
Неактивен
А ещё ТриДэ, стотыщь полигонов только на мяч, фото текстуры и Лондонский Симфонический на подпевке. Начинай с малого, с чем-то большим ты перегоришь раньше времени.
Неактивен
Вопрос по макросу "goto".
В описании сказано: "Этот макрос совершает мгновенный переход на указанный параграф, прерывая выполнение текущего параграфа"
Пример:
Параграф_0
<<if $условие eq 10>>
<<goto 'Параграф_1'>>
<<endif>>
Какой-то текст
Если $условие равно десяти происходит переход на "Параграф_1" и отображается текст как из "Параграфа_1", так и из "Параграфа_0". Так и должно быть? Я понимал, что исходя из "прерывая выполнение текущего параграфа" текст из "Параграфа_0" не должен отображаться.
Неактивен