Для DoubleDragon (вопрос из потока).
Смотри, есть код:
<<loop $имя.length>> <<if $счетчик_хода0[$i] lt 10>> <<set $place.push("000" + $счетчик_хода0[$i] + "|" + $i)>> <<elseif $счетчик_хода0[$i] lt 100>> <<set $place.push("00" + $счетчик_хода0[$i] + "|" + $i)>> <<else>> <<set $place.push($счетчик_хода0[$i] + "|" + $i)>> <<endif>> <<set $i++>> <<endloop>>
Этот код соритрует и показывает мне лидера гонки:
750 - Вася
985 - Петя
1055 - Коля
А если у меня такие значения получаются в гонке:
9750 - Вася
9985 - Петя
10055 - Коля
Как мне надо будет код записать?
Неактивен
Пост 548 - проблему решил
Неактивен
Да вроде с сортировкой разобрался. Зацените что имеем на выходе сейчас.
https://cloud.mail.ru/public/a6478949ef … %D1%80.rar
Просьба подсказать, как сделать так, чтобы спортсмены, у которых счетчик хода достигнет нуля, получали статус финишировавших, и получали места и очки, в порядке финиша.
Неактивен
Вот такую ошибку постоянно выдает программа. Ошибка не только у меня, но и у друзей.
Неактивен
Парни, нужна помощь! Есть массив в начале игры:
<<set $очки = [0, 0, 0, 0, 0, 0, 0, 0]>>
Теперь значит есть такой кусок кода:
<<set $i = 0>> <<loop $имя.length>> <<set $индекс = $place[$i].split('|')[1]>> <<print ($i + 1)>> место: <<print $имя[$индекс]>> (<<print $промахов0_лежа1[$индекс]>>, <<print $промахов0_лежа2[$индекс]>>, <<print $промахов0_стоя1[$индекс]>>, <<print $промахов0_стоя2[$индекс]>>) - <<print $счетчик_хода0[$индекс]>> метров до финиша. <<set $i++>> <<endloop>>
Требуется сделать, чтобы первому, у кого это значение параметра
$счетчик_хода0[$индекс]
становится равно 0 или меньше, присуждается 60 очков, следующему - 54 и так далее. При этом, если игрок финишировал, то он уже не должен отображаться в следующем ходе.
Неактивен
Еще вопрос:
Вот кусок кода:
<<row 'Промежуточная отметка'>> <<set $place = []>> <<set $i = 0>> <<loop $имя.length>> <<if $счетчик_хода0[$i] lt 0>> <<goto 'Результаты Гонки-1'>> <<endif>> <<if $счетчик_хода0[$i] lt 10>> <<set $place.push("0000" + $счетчик_хода0[$i] + "|" + $i)>> <<elseif $счетчик_хода0[$i] lt 100>> <<set $place.push("000" + $счетчик_хода0[$i] + "|" + $i)>> <<elseif $счетчик_хода0[$i] lt 1000>> <<set $place.push("00" + $счетчик_хода0[$i] + "|" + $i)>> <<elseif $счетчик_хода0[$i] lt 10000>> <<set $place.push("0" + $счетчик_хода0[$i] + "|" + $i)>> <<else>> <<set $place.push($счетчик_хода0[$i] + "|" + $i)>> <<endif>> <<set $i++>> <<endloop>>
По идее, эта часть кода
<<if $счетчик_хода0[$i] lt 0>> <<goto 'Результаты Гонки-1'>> <<endif>>
говорит нам о том, что если значение меньше нуля, то переходим к другому параграфу, но почему то работает это вот так (указано на скриншоте). Почему появляется кнопка "далее", которой нет в параграфе "Результаты Гонки-1", но есть в параграфе с тем куском кода. И при нажатии на эту кнопку продолжается тот параграф?!
Неактивен
Есть такой массив в начале игры: <<set $очки = [0, 0, 0, 0]>>
И есть такой: <<set $имя = [Вася, Петя, Игорь, Илья]>>
Нужно, чтобы после финиша гонки спортсмены записали на свой счет очки. За первое место 60, за второе 55, за третье 50 и за четвертое - 45.
Есть код:
<<set $i = 0>> <<set $финишировал = 65>> <<loop $имя.length>> <<set $финишировал = $финишировал - 5>> <<set $очки[$индекс] = $очки[$индекс] + $финишировал>> <<set $индекс = $place[$i].split('|')[1]>> <<print ($i + 1)>> место: <<print $имя[$индекс]>> (<<print $промахов0_лежа1[$индекс]>>, <<print $промахов0_лежа2[$индекс]>>, <<print $промахов0_стоя1[$индекс]>>, <<print $промахов0_стоя2[$индекс]>>) - <<print $финишировал>> очков за гонку. <<set $i++>> <<endloop>>
На экране выводятся результаты, типа:
Игорь - 60 очков за гонку
Вася - 55 очков за гонку
Илья - 50 очков за гонку
Петя - 45 очков за гонку
После этого захожу в параграф статистики. Вот его код:
<<set $place = []>> <<set $i = 0>> <<loop $имя.length>> <<if $очки[$i] lt 10>> <<set $place.push("00" + $очки[$i] + "|" + $i)>> <<elseif $очки[$i] lt 100>> <<set $place.push("0" + $очки[$i] + "|" + $i)>> <<else>> <<set $place.push($очки[$i] + "|" + $i)>> <<endif>> <<set $i++>> <<endloop>> <<set $place = $place.sort().reverse()>> <<row 'Общий зачет Кубка мира'>> <<set $i = 0>> <<loop $имя.length>> <<set $индекс = $place[$i].split('|')[1]>> <<print ($i + 1)>> место: <<print $имя[$индекс]>> (<<print $очки[$индекс]>>) <<set $i++>> <<endloop>>
Все бы хорошо, но, почему то, спортсмен, занявший в гонке последнее место, в статистике получает 60 очков (т.е., за первое место в гонке).
Петя - 60 очков за гонку
Игорь - 55 очков за гонку
Вася - 50 очков за гонку
Илья - 45 очков за гонку
В чем ошибка?
Отредактировано alfa10 (15.01.2015 18:27)
Неактивен
Пост 556 - проблема решена
Неактивен
Спасибо, дружище!
Вопрос! Есть код:
<<set $i = 0>> <<set $финишировал = 65>> <<loop $имя.length>> <<set $финишировал = $финишировал - 5>> <<if $финишировал lt 0>> <<set $финишировал = 0>> <<endif>> <<set $индекс = $place[$i].split('|')[1]>> <<set $очки[$индекс] = $очки[$индекс] + $финишировал>> <<set $очки_индивидуалка[$индекс] = $очки_индивидуалка[$индекс] + $финишировал>> <<print ($i + 1)>> место: <<print $имя[$индекс]>> - <<print $финишировал>> очков (Общий зачет - <<print $очки[$индекс]>>; Индивидуальная гонка <<print $очки_индивидуалка[$индекс]>>) <<set $i++>> <<endloop>>
Он начисляет очки так: 1 место - 60, второе - 55, третье - 50 ... и так до нуля. Как можно сделать, чтобы очки начислялись так: 1 место - 60, второе - 54, третье - 50, четвертое - 48, пятое - 46... (вообщем начисление без логики какой-то, просто реальное начисление согласно биатлонному правилу)???
Неактивен
Привет парни. Делаю новую версию биатлона (Морыч с даблдраганом сильно помогли в тот раз, но код игры был потерян, восстанавливаю все заново. Есть вопросы, помогите плиз:
1 вопрос
спойлер…
Выводятся значения, вида: 56,877777777. Как сделать, чтобы число округлялось, типа - 57?
2 вопрос
спойлер…
Код выводит информацию:
1 место: Вася - 1000 метров до финиша
2 место: Игорь - 1350 метров до финиша.
Как сделать, чтобы было так:
1 место: Вася - 1000 метров до финиша
2 место: Игорь - 350 метров от Васи
???
Неактивен
файл весит 29 МБ. при попытке вывести игру в html-файл после долгого ожидания (час) происходит ошибка (вернее, операция сбрасывается). как быть и почему?
Неактивен
в кабинете вроде только ссылки на .sm файл есть, вроде же, а не на html? просто должно открываться окно, где выбираем куда сохранить html-файл, а окно не открывается. каков допустимый размер файла? просто все нужно, удалять код где то не вариант))))
Неактивен
а где ссылка в личном кабинете? вижу файлы, счёт и публикации. и все. тип ака - про
Неактивен
а при выводе html интернет должен быть включён? а то я экспортировал без интернета
Неактивен
Все заработало! Инет нужен был))))
Кстати, не самопиар а так - хотелось бы показать народу свою игру - Биатлон, чтобы видели, что можно выжать из платформы AXMA.
Неактивен
DoubleDragon написал:
alfa10 написал:
Все заработало! Инет нужен был))))
Кстати, не самопиар а так - хотелось бы показать народу свою игру - Биатлон, чтобы видели, что можно выжать из платформы AXMA.Ну так показывай
Чет не выкладывается, пишет ошибку. Видимо файл большого размера
Неактивен
Есть переменные: команда1, команда2 и т.д... Как сделать, чтобы рандомно составлялась сетка турнира между этими командами?
Например, Команда3 против Команда1, Команда2 против Команда10.
И дальше чтобы проигравшие в сите не участвовали уже. Т.е., если Команда3 и Команда2 проиграли, дальше сеялись уже без них сетки
Неактивен
И еще вопрос - прописываю команды:
<<set $команда1 = 'Россия'>>
<<set $команда2 = 'Чехия'>>
<<set $команда3 = 'Канада'>>
Как сделать, чтобы при выборе конкретной команды для игры, на экран выводилась фотография флага страны?
Неактивен
Еще вопрос. Прописал восемь команд, прописал массив из очков для этих команд:
<<set $очки = [0, 0, 0, 0, 0, 0, 0, 0]>>
Теперь к примеру играет команда1 с командой8, и команда8 победила, как прописать ей в очки 3 очка?
Неактивен
Код:
<<set $очки[8] = $очки[8] + 3>> или <<set $очки[8] += 3>>
Только почему-то первая команда в массиве идет как очки[0], а не очки[1].
Неактивен
Решил продолжить создание игры "Биатлон". При попытке запустить игру (в программе - кнопка "запустить") программа зависает (висит более 30 минут точно). Как можно решить эту проблему? Да, данных в игре много, но все они нужны...
Неактивен
А в какой версии это происходит?
В текущей. В программе и в онлайн. А на старой версии (не помню ее, но в ней еще в первой появились окна справа вверху), игра норм запускалась. Ну как норм - долго, но запускалась в итоге. А в новой версии - висит и все...
Отредактировано alfa10 (28.02.2017 16:24)
Неактивен
Скинул
Отредактировано alfa10 (28.02.2017 22:56)
Неактивен
DoubleDragon написал:
Получил.
Надеюсь, сможешь помочь. Кстати, такую игру в каком игровом редакторе лучше делать? Можешь подсказать?
Неактивен
Уже половину данных удалил - все равно виснит при нажатии на "Запустить"
Неактивен