ZX Format
#07
05 декабря 1997 |
|
Игрушки - 3D construction kit: подробное описание редактора 3D игр типа Castle Master. В статье приведено описание внутреннего языка системмы, который, собственно, и превращает набор локаций и обьектов в полноценную игру.
3D CONSTRUCTION KIT music by Volga soft (C) Гил-Гелад _ МЕНЮ Итак, налюбовавшись симпатичной заста- вочкой с гордой надписью 3D CONSTRUCTION KIT, вы получаете возможность богатейшего выбора средств управления: KEMPSTON JOYSTICK SINCLAIR JOYSTICK CURSOR KEYS Что соответственно переводится как: КЕМПСТОН ДЖОЙСТИК СИНКЛЕР ДЖОЙСТИК КУРСОРНЫЕ КЛАВИШИ Ткнув в понравившуюся кнопку (НЕ RE- SET!), вы вывалетесь в рабочее меню прог- раммы, если так можно назвать кучу непо- нятных квадратиков, прямоугольничков и несколько слов, которые я уже видел на створках Моранона. Итак пойдем как положено: слева направо, а сверху вниз. File General Area Condition FILE Кто сказал-еда? Нет неправда.Это ╔═ меню работы с файлами. ║ ║ ╠═ LOAD Загрузка файла с номером 0-9 ║ В случае отсутствия файла выдается со- ║ общение об ошибке с предложением повто- ║ ра. ╠═ SAVE Сохранение файла под номером ║ 0-9 на диске (DISK) или ленте (TAPE). К ║ великому сожалению тот, кто дисковерси- ║ ровал 3D не позаботился о функции OVER- ║ WRITE, что поистине великой скорби дос- ║ тойно. Спасибо хоть за то, что вообще ║ идет работа с диском. ║ ╚═ NEW Стирание всех данных из памяти о созданной игре. Команда начисто уничто- жает любые воспоминания о существовании у вас самого компьютера. GENERAL Не бойтесь, это не из армии за ╔═ вами. Это просто установка всех ║ параметров программы. ║ ║ ╠═ RESET Опция, возвращающая вас в об- ║ ласть, заявленную исходной (см. ║ START AREA данного меню), и на- ║ чало программы, если что-то уже ║ написано. ╠═ SETUP Подменю установки параметров ║ ─┐ игры. ║ │ ║ ├─CLIMB ABILITY. Высота препятствия ║ │ преодолеваемая героем. ║ │ ║ │ -║ ├─FALL ABILYTLY. Высота, с которой ║ │ герой может упасть без особого ║ │ вреда для себя и компьютера. ║ │ (примерно высота дивана. :)) ║ │ ║ │ ║ │ ║ ├─WALK SPEED. Скорость перемещения ║ │ вперед-назад. ║ │ ║ │ ║ │ /║ ├─TURN SPEED. Скорость поворота во- ║ │ круг своей оси. ║ │ ║ │ ║ │ ,║ ├─START AREA. Начальная локация. ║ │ ║ │ ║ │ .║ ├─START ENTRANSE. Начальный выход. ║ │ ║ │ ║ │ ║ └─ACTIVATE RANGE. ║ ║ ║ ║ ╠═ INSTRUMENT Чрезвычайно полезная опция, ║ позволяющая назначать места и номера ║ выводимых на экран переменных. Имеет ║ следующий вид: ║ ║ NUMBER - Номер"инструмента". Зависит ║ от того, какую позицию вы выбрали в ║ предыдущем меню. ║ ║ TYPE - Тип представления информации. ║ может быть: ║ NUMBE - числовая ║ H BAR - горизонтальная полоса ║ V BAR - вертикальная полоса ║ BLANK - данный"инструмент"не исполь- ║ зуется. ║ ║ X KOORD─┐ Х-овая и У-овая координа- ║ ├─ та вывода значения пере- ║ Y KOORD─┘ менной на экран. ║ ║ LENGHT - длина выводимой информации ║ от 0 до 5. ║ VARIABLE - номер переменной, которая ║ выводится данным инстру- G║ ментом. ║ COLOUR - а это просто цвет. Могли бы ║ и сами догадаться. ║ ║ ╠═ WINDOW Не надо кидаться в монитор утю- ║ гами. Это не МИКРОСОВТ,это изме- ║ нение параметров вывода окна. ║ ║ Х pos - см X KOORD ║ ║ Y pos - см Y KOORD ║ ║ X size - размер по Х ║ ║ Y size - размер по У ║ ║ .╚═ TEST Самая приятная и нужная опция во всей программе.Она позволяет полю- боваться только что созданной вами программой,до которой (и в этом вы можете признаться честно) всяким DOOM-aм или задрипаным Duk-ам пых- теть и пыхтеть. AREA. Меню,позволяющее совершать вся- ╔═ кие пакости с локациями. Напри- ║ мер - РЕДАКТИРОВАТЬ их. ║ ║ ╠═ ADD AREA Создать еще одну локацию. ║ ║ ╠═ EDIT AREA Редактировать локацию. ║ ─┐ ║ │ ║ └─АРЕА (номер) ║ OBJECTS. число обьектов в ║ - локации. ║ SCALE. Масштаб ║ ║ ║ ╠═ GOTO AREA Изменение номера текущей ло- ║ кации. ║ ║ ╠═ COLOUR AREA Изменение цвета локации. ║ ─┐ ║ │ ║ ├──INC. цвет чернил(для тех, ║ │ кто еще не знает) ║ │ ║ ├──PAPER. цвет бумаги. ║ │ ║ │ ║ ├──BRIGHT. яркость. ║ │ ║ │ ║ └──BORDER. цвет бордюра. ║ ║ ║ ╠═ ADD ENTRNC Добавить выход. ║ ║ В Н И М А Н И Е ! ║ ┌$─┐ ║ │ Номер выхода должен соответствовать│ ║ │ номеру локации, куда он ведет. │ ║ └$─┘ ║ ║ ║ ╚═ EDIT ENTRNC Редактировать выход. CONDITION Самое нужное меню во всей ╔═ программе. Оно и только оно ║ позволит писать Вам всю ло- ║ гику и ругать игрока! ║ ║ ╠═ GENERAL Здесь пишется та часть прог- ║ раммы,которая должна выполнять- ║ ся независимо от номера локации ║ ╠═LOCAL А это, как Вы уже поняли, та ║ часть, которая выполняется ТОЛЬКО ║ в этой локации. ║ ╠═PROC Подпрограммы, вызываемые откуда ║ угодно (даже из ванной :) ). ║ ║ ║ ╚═ MESSAGE Сообщения, приветы друзьям и прочий текст, выводимый в ходе игры. Например "You're dead, boy." Итак, если Вы дочитали досюда, то или Вам совершенно нечего делать, или большая нужда в этом редакторе. Для вторых про- должаю. Все вышеизложенное касалось верхней стро- ки. Теперь переведите взгляд в центр эк- рана. Там Вы можете наблюдать много всего интересного. Слева располагаются 2 (два) окна: VIEW (Направление взгляда на картинку) NORTH [с севера], SOUTH [с юга], WEST [с запада], EAST [с востока] и PLAN [свер- ху]) МОDE (тип перемещения: FLY1, FLY2 [полеты] и WALK [хождение пешком]) По центру располагаются иконки управле- ния Вашим положением в локации. Думаю, здесь и так все понятно. Теперь рассмотрим надписи в нижней части экрана. GLOBAL. Ругательство, позволяющее без лишних трудов создать стены и потолок. COPY. Самое страшное заклятье. создает еще один предмет из тех, что уже созданы. CREATE. Нажав на эту иконку, Вы выпаде- те в меню создания предметов, где сможете сотворить: ЕXIT! - просто вернетесь к CREAT'у SENSR - При выборе этой опции на экране появляется точка, плюющая в игрока лазе- ром. RECT - Прямоугольник. PYRMD - Усеченная пирамида. CUBE - Куб. LINE - Отрезок прямой. TRI. - Треугольник. QUAD. - Квадрат. PENT. - Пятиугольник:) HEX. - Шестиугольник. EDIT. Выбрав эту опцию можно будет (с помощью стрелок) двигать выбранный пред- мет (MOVE), растягивать его в трех изме- рениях (STRETCH) стягивать его же в пяти изметениях (SHRINK), крутить вообще как угодно (TURN) и вроде бы даже уродовать по-всякому (перемещать вершины) (POINT). . LOAD, RESRT и SAVE дублируют аналогич- ные команды верхней строки. SHADE. Тень. Позволяет менять заливку стенок предмета. DELETE. Позволяет уничтожить слишком изуродованную фигуру. ATTR. Опция, позволяющая определить, ,каким предмет был изначально (INITIAL): - Видимым (VISBLE), или невидимым (INvI- SIBLE), а так же его текущее положение: видимый, невидимый, уничтоженный (DEST- ROYED). Ну, вроде бы с менюшками все. Теперь хорошо бы с языком разобраться. Кто захо- чет сделать это сам, или кому не понра- вится предлагаемая версия, может смело жать "волшебную кнопку" и, набрав DUMp #E850, лично ознакомиться со словарем. И если он найдет что-либо, упущенное мной, то пусть сообщит об этом мне через журнал (очень прошу). Интерпретатор 3DCK предоставляет в рас- поряжение программера 255 флагов (сиречь переменных) с которыми и производятся почти все операции. В дальнейшем рассмот- рении: = число = флаг = номер предмета = номера локаций = номер сообщения SETV a b - Присвоить флагу b значение a. например: SETV 001 002 запишет во вторую переменную число 1. - ADDV a b - Прибавить к значению флага b число а. Работает с тремя раз- рядами (0-255) - ADCV a b - Прибавить к значению флага b число а. Работает с пятью раз- рядами (0-9). SUBV а b - Вычесть из флага b число а Работает с байтом (0-255) SBCV a b - Вычесть из флага b число а Работает с 5 разрядами. ВНИМАНИЕ ! Эти арифметические операции почему-то портят значения, хранящиеся в ближайшем меньшем флаге. Может у меня версия глючная? ORV a b Просто логические операции ИЛИ ANDV a b И XORV a b ИСКЛЮЧАЮЩЕЕ ИЛИ CMPV a b - Сравнить значение Флага b с числом а IFEQ - Если они равны. (условие) IFGT - Если больше. IFLT - Eсли меньше. THEN - Тогда (слово после любого ус- ловия.) ELSE - В противном случае (ветвление в условии.) AND ] - И, ИЛИ для проверки нескольких OR ] условий. IFSHOT c - Если было попадание в предмет с номером с. IFHIT - Eсли в героя было попадание. IFCRUSH - Если герой упал с высоты, большей, чем было задано в GE- NERALSETUPFALL ABILITY. IFVIS c - Если предмет с виден. IFTIMER - Если установлен таймер. IFACTIVE с - Если предмет активизирован (условие встречается в игре- приложении [файл 0] в локации с компьютером. ) ENDIF - Обязательное слово в конце ус- ловия. VIS c - Сделать предмет с видимым INVIS c - Сделать предмет с невидимым. DESTROY c - Уничтожить предмет с. GOTO d e - Переход из локации d в лока- цию е. MODE a - Tип видения. Програмный аналог окна MODE основного меню. SETWPOS a f - Позиция игрового окна. SETWSIZE a f - Размер игрового экрана. COLOUR a f - Изменение цвета локации. - что окрашивать (001 - стены 003 - бордюр), a-цвет. SOUND a - Однократный звук типа "Тю". / SYNCSND а - Звук с возрастающей частотой и амплитудой. DELAY a - Задержка. Аналoг PAUSE в бейсике. TEXTCOL a - Цвет текста. PRINT a f z - Распечатка сообщения z REDRAW - Перерисовка экрана. CALL a - Вызов процедуры а. END - Обязательное слово в конце каждого модуля. Ставится автоматически при его создании (CREAT). Ну вот вроде бы и все, что я хотел Вам поведать. А ежели я что упустил, то прошу меня извинить, ибо то не по умыслу зло- дейскому, а токмо по серости своей и нез- нанию. За сим прощаюсь с вами. Ваш G-G.
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября