март 22, 2022

Give him the Hook 10 by Commocore

Добавить в
Мои игры
Торрент
Скачать

Дайте ему крючок

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

Это мой третий 10-строчный текст, написанный на BASIC для Commodore 64.

Эта игра была представлена ​​на конкурс Basic 10-Liner Contest 2022 в категории PUR-80.

Вдохновлен польским плакатом 70-х годов под названием "Klowni" Яна Млодоженьца для фильма "Клоуны" режиссера Федерико Феллини.

Сюжет

----

Это первая игра из серии The Trick Triptych. Перспективный клоун (хотя именно так о нем говорили 20 лет назад) немного ошалел, попивая во время циркового представления какое-то подозрительное зелье из фляги. Поскольку его выступление в лучшем случае можно было охарактеризовать как скучное, нетворческое и размытое, люди начали кричать, а неопознанные летающие объекты (НЛО) начали летать туда-сюда.

Осталось только убрать клоуна со сцены...

К счастью, у вас есть подходящий инструмент для работы: крючок Vaudeville. Имейте в виду, что это часть традиции использовать крючок при необходимости!

Как директор цирка "Искусство, трюки, жонглирование, акробатика и спасение животных", вы точно знаете, что должны делать.

Попробуйте оттащить клоуна со сцены: "Дайте ему крючок!", кричат ​​зрители.

Однако он упрямый парень, так что не удивляйтесь, когда он попытается вернуться на сцену. И когда он это сделает, вам придется начинать эту комедию заново!

Экран

-------

В левом верхнем углу вы можете увидетье текущий уровень. По мере продвижения расстояние крюка увеличивается.

Элементы управления

--------

Используйте джойстик в порту 2. Чтобы управлять положением крюка, перемещайте джойстик влево или вправо. Чтобы освободить крюк, нажмите кнопку огня.

Советы и рекомендации

--------

Попробуйте прицелиться клоуну в заднюю ногу.

Описание кода

----------------

Большая проблема с этим 10-строчным текстом заключалась в том, что у меня не было места для операторов IF (поскольку в таком случае дальнейший код не может быть выполнен после). Это заставило меня задуматься

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

умножение условия. Всегда интересно посмотреть на вещи по-другому, и это то, что мне понравилось в этом вызове. Например,

Определение следующего игрового уровня в одном условии было довольно удобной задачей:

```

V=-(G=-1)*(V*-(G=-1))+1

```

Если G равно 0, уровень будет сброшен на 0. Если он равен -1, уровень увеличится на 1.

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

10, но 11 строк, начиная с 0! Поэтому мне нужно было сократить одну полную строку кода BASIC. Из-за этого я не смог добавить ни одного звука,

что-то, что я хотел иметь изначально. Тем не менее, я надеюсь, что в эту игру по-прежнему интересно играть!

Построчный обзор кода

--------------------------

– Строка 0:

- Построение хука с использованием цикла FOR, также строка, используемая во время анимации при перемещении хука вверх, инициализация начального уровня

— Сохранение верхней части клоуна (в A$), которая хранится в DATA (строка 9)

 — Определение строки, используемой для управления вертикальным положением крючка (в долларах США)

- Установка адреса памяти экрана (в S)

– Строка 1:

- Настройка средней части клоуна (в B$)

– Строка 2:

- Установка нижней части клоуна в нормальное состояние (в C$(0))

 — Настройка нескольких переменных (описано в обзоре переменных ниже)

– Строка 3:

- Настройка нижней части клоуна в состоянии прыжка (в C$(1))

 — Настройка нескольких переменных (описано в обзоре переменных ниже)

 — Очистка экрана

- Отображение текущего уровня

– Строка 4:

 – здесь начинается цикл игры

- Настройка нижней части клоуна в состоянии извлечения из состояния сцены (в C$(2))

- Чтение джойстика в порту 2

- Настройка цвета фона и границы экрана (не осталось места, чтобы поставить его перед игровым циклом)

– Строка 5:

- Чтение адреса порта 2 джойстика

- Установка горизонтального положения крюка (в L), также включает ограничение и то, что крюк нельзя перемещать после его отпускания (если M равно -1, то кнопка огня быланажал)

- Для переменной E (вертикальное положение крюка), если была нажата кнопка огня, это значение уменьшится, поэтому крюк будет двигаться вверх, пока не достигнет E = 0

– Строка 6:

- В случае, если E = 0, это означает, что крючок уже был отпущен и достиг вершины, поэтому горизонтальное положение также будет скорректировано, чтобы воспроизвести анимацию перемещения крючка вправо

- Отображение клоуна в правильном положении на экране

— Отображение хука

– Строка 7:

- Рандомизация следующей позиции клоуна

- Регулировать следующее положение клоуна только в том случае, если оно удовлетворяет а) пределам горизонтального положения (X > 5 и X < 20) б) прыжок не выполняется (переменная U) в) крюк не достиг сверху (переменная E)

- Сохранение состояния в переменной G, если крюк зацепил клоунскую лапку (когда X = L)

– Строка 8:

- Очистка следующей строки хука в случае, если выполняется анимация перемещения хука вверх

- При установке G клоун будет стягиваться с крючком (X увеличится)

- U содержит состояние, если клоун прыгает (когда крюк был близко к клоуну по горизонтали (ABS(X-L)<5) и крюк уже сверху (E=0))

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

– Строка 9:

- В случае, если крюк все еще не достиг вершины или горизонтальное положение крюка находится в диапазоне, conпродолжить цикл, перейдя к строке 4

- В противном случае вычислить следующий уровень (если клоуна притянули, уровень повысится, иначе сбросится на 1), перейти к строке 2 для инициализации уровня

- В конце DATA, содержащие верхнюю часть клоуна, которая читается в строке 0

Обзор переменных и некоторые хитрости

-------------------------------------------------------

- P$ - строка с крючком

- G$ - строка, очищающая старую позицию хука

- V - начальный уровень

- A$ - верхняя часть клоуна

- U$ - строка, используемая для вертикального положения крючка

- S - адрес памяти экрана, используемый для POKE'ов

- B$ - средняя часть клоуна

- C$(0-2) - графика нижней части клоуна для каждого состояния (см. описание состояний в переменной A)

- A - состояние анимации нижней части клоуна: 0 - нормально, 1 - клоун прыгает, 2 - клоун стаскивается со сцены

- E - вертикальное положение крючка, а также текущий уровень, настройка в зависимости от результата из строки 9

- G - сохраняет состояние, если клоуна вытащили со сцены

- L - горизонтальное положение крюка

- M - сохраняет состояние, если была нажата кнопка фаер джойстика

- X - горизонтальное положение клоуна

- J - чтение адреса порта 2 джойстика (56320)

- K - используется для определения следующего положения крючка, а также повторно используется для рандомизации следующего горизонтального положения клоуна (-1, 0 или 1)

- U - сохраняет состояние, есликлоун прыгает

Как скачать Give him the Hook 10 by Commocore через торрент

Всего несколько простых шагов:

  • Устанавливаем программу μTorrent, через которую мы будем скачивать торренты
  • Выбираем и скачиваем подходящий торрент-файл репака Give him the Hook 10 by Commocore
  • Двойным кликом открываем скаченный файл, программа μTorrent запустится автоматически и предложит выбрать место для сохранения дистрибутива.
  • После того как репак скачается, запускайте его. Начнется установка и... это все, приятной игры!