104
1 / 104 Сoding Mugen School Rus by MidNight

Сoding mugen school rus by midnight

  • Upload
    -

  • View
    243

  • Download
    1

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Сoding mugen school rus by midnight

1 / 104

Сoding Mugen School Rus by MidNight

Page 2: Сoding mugen school rus by midnight

2 / 104

Table of contents

О движке ......................................................................................................................... 5 Основы ............................................................................................................................ 6 Подготовительный этап ................................................................................................. 7

Нарезка спрайтов ....................................................................................................... 7 Создание файлов персонажа .................................................................................. 10

Интерфейс Figher Factory Classic ................................................................................ 16 Палитра by skamp ......................................................................................................... 28 Файл Кодов ................................................................................................................... 30

Контроллеры ............................................................................................................ 30 AfterImage ............................................................................................................. 30 AfterImageTime ..................................................................................................... 31 AllPalFX ................................................................................................................ 32 AngleAdd ............................................................................................................... 32 AngleDraw ............................................................................................................. 32 AngleMul ............................................................................................................... 32 AngleSet ................................................................................................................ 33 AppendToClipboard ............................................................................................... 33 AssertSpecial ........................................................................................................ 33 AttackDist .............................................................................................................. 35 AttackMulSet ......................................................................................................... 36 BGPalFX ............................................................................................................... 36 BindToParent ........................................................................................................ 36 BindToRoot ........................................................................................................... 36 BindToTarget ......................................................................................................... 37 ChangeAnim .......................................................................................................... 37 ChangeAnim2 ........................................................................................................ 38 ChangeState ......................................................................................................... 38 ClearClipboard ...................................................................................................... 39 CtrlSet ................................................................................................................... 39 DefenceMulSet ...................................................................................................... 39 DestroySelf ............................................................................................................ 39 DisplayToClipboard ............................................................................................... 39 EnvColor................................................................................................................ 40 EnvShake .............................................................................................................. 41 Explod ................................................................................................................... 41 ExplodBindTime .................................................................................................... 46 ForceFeedBack ..................................................................................................... 47 FallEnvShake ........................................................................................................ 48 GameMakeAnim .................................................................................................... 48 Gravity ................................................................................................................... 49 Helper .................................................................................................................... 49 HitAdd ................................................................................................................... 52 HitBy ...................................................................................................................... 52 HitDef .................................................................................................................... 53 HitFallDamage ....................................................................................................... 63 HitFallSet ............................................................................................................... 63 HitFallVel ............................................................................................................... 63 HitVelSet ............................................................................................................... 64 LifeAdd .................................................................................................................. 64

Page 3: Сoding mugen school rus by midnight

3 / 104

LifeSet ................................................................................................................... 64 MakeDust .............................................................................................................. 65 ModifyExplod ......................................................................................................... 65 MoveHitReset ........................................................................................................ 65 NotHitBy ................................................................................................................ 65 Null ........................................................................................................................ 66 Offset ..................................................................................................................... 66 PalFX .................................................................................................................... 67 ParentVarAdd ........................................................................................................ 68 ParentVarSet ......................................................................................................... 69 Pause .................................................................................................................... 70 PlayerPush ............................................................................................................ 70 PlaySnd ................................................................................................................. 71 PosAdd .................................................................................................................. 72 PosFreeze ............................................................................................................. 72 PosSet ................................................................................................................... 73 PowerAdd .............................................................................................................. 73 PowerSet ............................................................................................................... 73 Projectile................................................................................................................ 73 RemapPal .............................................................................................................. 77 RemoveExplod ...................................................................................................... 77 ReversalDef ........................................................................................................... 78 ScreenBound ......................................................................................................... 78 SelfState ................................................................................................................ 78 SprPriority .............................................................................................................. 79 StateTypeSet ......................................................................................................... 79 SndPan ................................................................................................................. 79 StopSnd ................................................................................................................ 80 SuperPause ........................................................................................................... 80 TargetBind ............................................................................................................. 81 TargetDrop ............................................................................................................ 82 TargetFacing ......................................................................................................... 82 TargetLifeAdd ........................................................................................................ 83 TargetPowerAdd .................................................................................................... 83 TargetState ............................................................................................................ 83 TargetVelAdd ........................................................................................................ 84 TargetVelSet ......................................................................................................... 84 Trans ..................................................................................................................... 85 Turn ....................................................................................................................... 85 VarAdd .................................................................................................................. 86 VarRandom ........................................................................................................... 86 VarRangeSet ......................................................................................................... 87 VarSet ................................................................................................................... 88 VelAdd ................................................................................................................... 89 VelMul ................................................................................................................... 89 VelSet .................................................................................................................... 89 VelMul ................................................................................................................... 89 VictoryQuote .......................................................................................................... 90 Width ..................................................................................................................... 90

Триггеры ................................................................................................................... 91 Abs (Матем) .......................................................................................................... 91 Acos (Матем) ........................................................................................................ 91

Page 4: Сoding mugen school rus by midnight

4 / 104

AILevel .................................................................................................................. 91 Alive ...................................................................................................................... 91 Anim ...................................................................................................................... 92 AnimElem .............................................................................................................. 92 AnimElemNo ......................................................................................................... 93 AnimElemTime ...................................................................................................... 93 AnimExist .............................................................................................................. 94 AnimTime .............................................................................................................. 95 Asin (Матем) ......................................................................................................... 95 Atan(Матем).......................................................................................................... 95 AuthorName .......................................................................................................... 96 BackEdge (1.1) ...................................................................................................... 96 BackEdgeBodyDist ................................................................................................ 97 BackEdgeDist ........................................................................................................ 97 BottomEdge (1.1) .................................................................................................. 98 CameraPos (1.1) ................................................................................................... 98 CameraZoom (1.1) ................................................................................................ 99 CanRecover .......................................................................................................... 99 Ceil (Матем) .......................................................................................................... 99 Command ............................................................................................................ 100 Cond (Матем) (1.1) ............................................................................................. 100 Const ............................................................. Ошибка! Закладка не определена. Const240p ..................................................... Ошибка! Закладка не определена. Const480p ..................................................... Ошибка! Закладка не определена. Const720p ..................................................... Ошибка! Закладка не определена. Cos (Матем)........................................................................................................ 101 Ctrl ....................................................................................................................... 101 DrawGame .......................................................................................................... 101 E (Матем) ........................................................................................................... 101 Exp (Матем) ........................................................................................................ 102 Facing ................................................................................................................. 102 Floor (Матем) ...................................................................................................... 102 FrontEdge (1.1) ................................................................................................... 102 FrontEdgeBodyDist ............................................................................................. 103 FrontEdgeDist ..................................................................................................... 103

Page 5: Сoding mugen school rus by midnight

5 / 104

О движке

M.U.G.E.N - бесплатный (условно-бесплатный для расширенного

функционала) графический 2D движок виртуальных сражений, разработанный

компанией Elecbyte. Написан на языке программирования Си с

использованием библиотек Allegro. Бета версия MUGEN работает под

управлением DOS, GNU/Linux и Microsoft Windows. Дата выпуска 17

июля 1999 года.

Движок позволяет игрокам создавать своих персонажей, уровни и другие

игровые объекты при помощи интерпретируемых игрой текстовых файлов,

графики, и звуков. Для создания музыкального оформления заднего плана,

антуража главного меню и т. д., имеется поддержка звуковых

форматов: MP3, ADX, Ogg Vorbis и MIDI. Программный продукт позволяет

воссоздавать атмосферу популярных и любимых игр.

Page 6: Сoding mugen school rus by midnight

6 / 104

Основы

Для создания персонажа требуются определенные ресурсы. Это в первую

очередь спрайты и звуки, так же эффекты. Все это соединенное кодами и

командами, составляет персонажа

У каждого персонажа имеется набор файлов с определенным расширением

исполняющий некую функцию:

sprite.sff - файл с данным расширением составляет хранилище спрайтов

animation.air - в этом хранятся анимации и "скелет" персонажа

constant.cns - здесь константные данные персонажа, такие как скорость

перемещения, количество маны, жизни и т.д

state.cns - для кодов базовых атак.

common1.cns - файл содержащий базовые коды персонажа - стойка, ходьба,

бег, прыжок и т.д

command.cmd - файл содержащий коды команд, которыми будет управляться

персонаж

sound.snd - файл содержащий звуки персонажа.

pallet.act - файл палитры

Page 7: Сoding mugen school rus by midnight

7 / 104

Подготовительный этап

Перед началом кодинга персонажа, следует подготовить на него определенные ресурсы, и создать файлы которые будут хранить и использовать ресурсы. Как было сказано ранее, для создания персонада нужно: 1. Спрайты - лист с прорисованными движениями персонажа, что б использовать его в мугене, нужно сначала нарезать все фреймы, об этом отдельная глава. Беруться спрайты: 1.1)из игр (Стандартные Спрайты) 1.2)так же могут быть нарисованы самим кодером, или спрайтером под заказ (Кастом Спрайты). 1.3)есть такой вариант, что взят стандартный лист, и перерисован на другого персонажа, или того же, но иначе выгядещего (Эдит Спрайты). Если же только изменен цвет, и не затронуты детали, то это зоветься Реколор Спрайты 2. Звуки - звуковые файли, нужные для персонажа, в первую очередь это его собственные звуки, такие как голос, речь, озвучивание атак. Так же это дополнительные звуки, нужные что б сделать персонажа более реальным, это звук бега, прыжка, взмахов, удары и многие-многие другие. Звуки персонажа беруться в основном из игры в которой есть такой персонаж, дополнительные же звуки могут быть взяты откуда угодно - из другого персонажа, игры, если требуеться то даже могут быть и музыкальные композиции. 3. Эффекты - это спрайты которые содержат изображений персонажа, но отображают его действия в игровом среде: пыль, ветер, огонь, вода, линии скорости, эффеткы атак и.т.д. Эффекты беруться из игр, других персонажей, так же при хорошем владении фотошопом их можно создавать самому.

Нарезка спрайтов

Начинается все с нарезки спрайтов. Для этого нам понадобиться Photoshop, версия не имеет особого значения. Процес нарезки: Открываем фотошоп:

Открываем спрайтлист:

Page 8: Сoding mugen school rus by midnight

8 / 104

Спрайтлист должен быть очищен от лишних надписей, картинок и прочего хлама, который не совпадает по палитре со спрайтами персонажа:

Дальше переводим лист в индекс (муген воспринимает только индексированные изображения):

Page 9: Сoding mugen school rus by midnight

9 / 104

Жмем эту иконку: . Выделяем спрайт:

Жмем Enter, дальше Файл/Сохранить как/ выбираем .bmp формат, жмем Сохранить:

Page 10: Сoding mugen school rus by midnight

10 / 104

Затем возвращаемся обратно, комбинацией Ctrl+Alt+Z и вырезаем другой спрайт И так вырезаем все спрайты персонажа. Напоминаю, обязательно надо что б лист перед вырезкой был переведен в индекс иначе спрайты будут неправильно отображаться.

Создание файлов персонажа

и так, у нас готовы спайты, создана палитра, можно приступить к созданию персонажа. Для этого используется программа Fighter Factory. Есть версии Класик, Ультимейт. я пользуюсь Класик версией. Для начала создадим файлы. Для этого заполняем строки в окошке def - файла:

Page 11: Сoding mugen school rus by midnight

11 / 104

понять как заполнять и что где писать думаю не составит труда.

Дальше жмем иконку: и сохраняем файлы персонажа в отдельную папку. туда же кидаем файл созданной палитры. когда появиться вопрос в каком формате сохранить файл .sff (спрайты) выбираем с общей палитрой.

Page 12: Сoding mugen school rus by midnight

12 / 104

стоит отметить что при сохранении надо будет вписывать имена файлов. Они должны в точности совпадать с именами которые написаны в def-файле иначе просто не будут отображаться. Поэтому если используете файлы из архива что был вместе с тутором, убедитесь в том что переименовали их под вашего персонажа. для проверки правильности действий, после сохранения файлов, закрываем текущего персонажа

кнопкой Потом открываем, и если все созданные файлы отображаються, значит все сделано правильно к примеру файлы: Спрайты:

Анимации:

Page 13: Сoding mugen school rus by midnight

13 / 104

коды:

команды:

Page 14: Сoding mugen school rus by midnight

14 / 104

звук:

Также стоит добавить что некоторые файлы сохраняються только если содержат данные. К примеру файл звука нельзя сохранить пока не добавить в него хотя бы один звук. Так же можно создавать дополнительные файлы персонажа. К ним относяться дополнительные cns и act файлы (коды и палитры)

Page 15: Сoding mugen school rus by midnight

15 / 104

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

Page 16: Сoding mugen school rus by midnight

16 / 104

Интерфейс Figher Factory Classic

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

Первый и основной файл - .def с его помощью все другие созданные файлы соединяются между собой. Его окошко и кнопки управления:

Если требуется его правка, сохранять его нужно отдельно, клавишей так как общая для всех

файлов клавиша на def-файл не действует.

Окошко спрайтов:

Page 17: Сoding mugen school rus by midnight

17 / 104

Кнопки управления спрайтами:

- добавить новые спрайты

- заменить спрайт

- сохранить спрайт

- сохранить файл .sff

- дублировать спрайт

- удалить спрайт

- удалить группу спрайтов

- найти спрайт (по групе и номеру изображения)

- обрезать спрайт (удаляет не нужный фон)

- переименовать группу спрайтов

- карандаш - позволяет править некоторые дефекты спратов. Для того что бы рисовать определенным цветом, надо выбрать его в палитре из готовых или сгенерировать самому там же. Не стоит пользоваться если нет навыков рисования, так как можно испортить спрайты.

- ластик - стирает цвета, заменяя их на цвет фона. Весьма полезен если спрайты были нарезаны не акуратно, с лишними элементами.

- заливка.

- открывает панель инструментов. Данная панель может производить массовые действия нас спрайтами такие как выравнивание на определенную высоту, обрезание, поворот, изменение размера.

Page 18: Сoding mugen school rus by midnight

18 / 104

- 4 кнопки позволяющее выравнивать персонажа по X Y

- Общая палитра - определяет какую палитру использует данный спрайт. Спрайты персонажа должны использовать общую, спрайты эффектов и прочие элементы не принадлежащие к спрайтлисту должны использовать индивидуальную палитру (галочки не должно быть) Прозрачный - если стоит галочка, цвет фона не будет отображаться (если палитра создана неправильно, эта функция работать не будет)

Двигать Изображение - если стоит галочка, кнопки будут двигать изображение, если галочка снята, будет двигаться крестик-эквалайзер

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

Окошко анимаций

Page 19: Сoding mugen school rus by midnight

19 / 104

Кнопки операций над анимациями:

- создает новый файл анимации

- открыть файл анимации

- сохранить файл анимации

- сохранить как...

- изменить действие в .тхт формате.

- конвертировать анимацию в .gif - полезно для выкладывания на форумах и сайтах. Пример:

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

- останавливает запущеную анимацию

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

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

Имя - название анимации. Заполнять не обязательно, чисто для удобства.

Page 20: Сoding mugen school rus by midnight

20 / 104

Действие(№) - присваивает анимации номер. Этот номер позволяет связать анимацию с кодом. Базовые движения уже имеют определенные номера, их надо знать(см.ниже). анимациям атак, спешлов и т.д номер можно задавать самостоятельно.

- поиск анимации по номеру.

- поставить красную коробочку

- поставить синюю коробочку

- удалить коробочку

- автопостановка коробочки.

- копировать коробочки с предидущего спрайта анимации

- изменить цвет коробочки (синюю на красную и наоборот)

- выкладывает анимации по порядку возрастания номера. типа органайзер.

- время в тиках, для данного спрайта в анимации. чем меньше число тем быстрее анимация.

- поворот данного спрайта в анимации. H - горизонтальное отражение V - вертикальное отражение HV - одновременно отразить горизонтально и вертикально.

- указывает прозрачность спрайта. возможные значения: А А1 S. так же можно указывать самому цыфрами - AS220D256

- 3 кнопки с похожими функциями - позволяют зараз присвоить всем спрайтам данной анимации указанное время, поворот, прозрачность .

- если поставить галочку, анимация поменяет цикл, с того спрайта где поставлена галочка.

Page 21: Сoding mugen school rus by midnight

21 / 104

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

- кнопка операций над спрайтами, позволяет добавлять спрайты в анимацию, как по одному так и зараз. При нажатии отрывает контекстное меню (см. ниже) где перечислены возможные операции над спрайтами P.S - тоже самое меню можно вызвать нажав правой кнопкой мыши по спрайту.

Окошко кодов

- это панель перехода от одного файла кодов к другому.

Page 22: Сoding mugen school rus by midnight

22 / 104

- создает новый файл кода

- открыть файл кода

- сохранить файл кода

- сохранить как...

- вырезает выделенный код

- копирует выделенный код

- вставляет скопированый/вырезаный код

- позволяет искать нужные части текста в кодах по определеным номерам или именам и т.д. Есть возможность настройки.

- похоже на предидущий, но в отличается тем что не просто находит, а заменяет то что нашел на определеный текст, набраный предварительно.

- отменить операцию

- вернуть операцию обратно

- открывает PalFX редактор. Весьма полензная вещь. (подробно в разделе:)

- открывает панель смещения. Полезна когда надо настроить размещение еффекта/хелпера относительно персонажа. Не практичен если оригинальный размер еффекта/хелпера сильно отличается от нужного.

- очень полезная вещь. ФФ автоматически составлет список Варов (целых и переменных) и показывает где их используют, что позволет предотвратить баги связанные с Варами. Панель Кодов (Шаблонов)

Page 23: Сoding mugen school rus by midnight

23 / 104

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

- окошко - органайзер, позволяет легко искать нужные стейты,

по номеру. Для активации должна быть активирована кнопка

Page 24: Сoding mugen school rus by midnight

24 / 104

- Создает стейт-шаблон, что значительно ускоряет процес кодировки.

Активированная кнопка выглядит так: После выбора нужного стейта, представлется возможность их частичной настройки (номер стейта, номер анимации, урон, тип физики):

Окошко Команд

Page 25: Сoding mugen school rus by midnight

25 / 104

- создает новый файл кода

- открыть файл кода

- сохранить файл кода

- сохранить как...

- вырезает выделенный код

- копирует выделенный код

- вставляет скопированый/вырезаный код

- позволяет искать нужные части текста в кодах по определеным номерам или именам и т.д. Есть возможность настройки.

- активирует окно создания команды:

Page 26: Сoding mugen school rus by midnight

26 / 104

- активирует окно редакции команд:

- отменить операцию

- вернуть операцию обратно

Окошко Звуков

Page 27: Сoding mugen school rus by midnight

27 / 104

- создает файл звука

- открыть файл звука

- сохранить файл звука

- сохранить как...

- воспроизводит текущий звук

- Останавливает воспроизедение

- воспроизвод с повтором (цыклично)

- добавить звук в файл

- заменить звук

- сохранить звук из файла

- дублировать звук

- удалить звук

-

Page 28: Сoding mugen school rus by midnight

28 / 104

Палитра by skamp

Теперь мы создаѐм и прописываем палитру! Переходим в меню

палитры и появляется вот такое вот окошко.

Мы нажимаем Open image . Находим ваши нарезанные спрайты.

Открываем самый первый спрайт стойки! Теперь мы видим спрайт и его

палитру.

Нажимаем на фон который должен исчезнуть в МУГЕНЕ!

На палитре появляется выделенный квадратик. Он может быть в любом

месте. Но нам нужно, что бы он появлялся в правом нижнем уголке. Но

вам может и повезти сразу :).

Если квадратик находится хрен знает где нажимаем на и на

теперь наш цвет перенесѐн на другую палитру.

Теперь на первой палитре нажимаем в правый нижний угол! И

нажимаем кнопку .

Для проверки мы нажимаем кнопку Add и добавляем сюда

спрайт который мы открыли.

И потом нажимаем Apply the same name of images.

Page 29: Сoding mugen school rus by midnight

29 / 104

Сохраняем его куда хотите. Теперь нажимаем Open image и

выбираем этот спрайт который сохранили. И опять тыкаем по фону

который нужно убрать! Если квадратик появляется в правом нижем углу

то все получилось, а если нет то повторяем операцию еще раз но с

этим спрайтом и так далее.

Когда мы добились нужного результата, мы нажимаем(мы сохраняем

палитру) и сохраняем палитру с именем вашего персонажа. Потом

нажимаем на галочку

Use the same name of images .

И нажимаем Add добавляем все ваши нарезанные спрайты.

Потом нажимаем на кнопку Apply the same name of images.

Сохраняем в папку со спрайтами или же в другую папку. Имя ваших

спрайтов будет оригинальное. А если в одну и туже папку сохранить, то

спрайта будут заменены.

Теперь переходим в Def листаем в самый низ и находим широкое

окно с названием ACT Palettes: 1 by line.

Прописываем туда ваше название сохраненной палитры. У меня это

UchihaSasukeV1bySkamp но на конце обязательно надо дописать .act

!Не забывайте нажимать кнопку Save All!

Page 30: Сoding mugen school rus by midnight

30 / 104

Файл Кодов

Контроллеры

Подробное описание контроллеров мугена, перевод с английского.

Переводчик 1: chameleoncyborg

Переводчик 2, отредактировал и дополнил: MidNight

AfterImage

AfterImage

Активирует эффекты шлейфа. Фрэймы бойца запасаются в истории буфера, и

отображаются после задержки как шлейфы.

Дополнительные параметры:

time = длительность (целое)

Уточняет количество тиков, на протяжении которых будет отображаться шлейф. Выберите

-1 для бесконечного отображения. По умолчанию 1.

length = количество фрэймов (целое)

Выбирается вместимость истории буфера по фрэймам. История буфера будет показывать

количество недавно сохранѐнных фрэймов игрока. Принимая постоянные значения для

timegap и framegap, увеличение продолжительности может увеличить число и «возраст» (за

неимением лучшего термина) шлейфов, отбражѐнных единажды. Максимальная длина 60,

по умолчанию 20.

palcolor = цветов (целое)

palinvertall = обратить_всѐ (булево, 0 или 1)

palbright = add_r, add_g, add_b (целые)

palcontrast = mul_r, mul_g, mul_b (целые)

palposbright = add2_r, add2_g, add2_b (целые)

Эти параметры определяют эффекты палитры применительно ко всем шлейфам. Первый

уровень цвета добавлен следовательно значению palcolor, потом если invertall не ноль,

цвета обращаются. В последствии, компоненты palbright добавляются к соответствующему

компоненту палитры игрока, потом каждый компонент умножается соответствующим

компонентом palcontrast, разделѐнным на 256, затем компоненты palposbright добавляются

к результату. Значение диапазона palcolor от 0 (сероватый) до 256 (нормальный цвет). Для

примера, если красный компонент палитры бойца указан как pal_r, затем красный

компонент палитры шлейфа будет в виде: (pal_r + add_r)*mul_r/256 + add2_r , надменно

Page 31: Сoding mugen school rus by midnight

31 / 104

значения palcolor и palinvertall остаются при значениях по умолчанию. Действительные

значения для palcolor от 0 до 256, 0-255 для компонентов palbright и palposbright, и любые

не отрицательные значения для компонентов palcontrast. Умолчания:

palcolor = 256

palinvertall = 0

palbright = 30, 30, 30

palcontrast = 120, 120, 120

palposbright = 0, 0, 0

paladd = add_r, add_g, add_b (целое)

palmul = mul_r, mul_g, mul_b (плавающие числа)

Эти параметры уточняют эффекты палитры, которые приняты повторно для удавшихся

фрэймов в щлейфе в одном применении этих эффектов палитры, первые компоненты paladd

добавляются к палитре шлейфа, затем компоненты умножаются умножателем palmul.

Умолчания:

paladd = 10, 10, 25

palmul = .65, .65, .65

timegap = значение (целое)

Этот параметр контролирует, как много фрэймов пропускать между сохранениями фрэймов

игрока для истории буфера при отображении шлейфа. По умолчанию 1 (фрэймы не

пропускаются). Чтоб сохранить каждый третий фрэйм (для примера), вы должны

использовать timegap = 3.

framegap = значение (целое)

Каждый указанный фрэйм в истории буфера будет отображѐн как шлейф. Для примера,

если framegap = 4 (по умолчанию), затем первый, пятый, девятый, … фрэймы истории

буфера будут отображены как шлейфы.

trans = тип (ограничение)

Уточняет тип прозрачности для шлейфов. Действительными типами являются «none» для

непрозрачного шлейфа, «add», «add1» и «sub».

AfterImageTime

AfterImageTime

Изменяет продолжительность эффектов шлейфа игрока, если шлейф в данный момент

активен. Если в данный момент нет активного шлейфа, этот контроллер не подействует.

Известные баги: если параметр timegap в первоначальном AfterImage-контроллере не

равняется единице, использование этого контроллера заставит все местоположения

фрэймов перезапуститься.

Необходимые параметры:

Page 32: Сoding mugen school rus by midnight

32 / 104

time = новая_продолжительность (целое)

Выбирается новое число тиков для отображения шлейфа, по окончанию тиков он уберѐтся с

экрана.

Альтернативный синтаксис:

value = новая_продолжительность (целое)

AllPalFX

AllPalFX

То же, что и PalFX, исключая действие палитры арены и лайфбаров, также, как и палитру

всех бойцов и эксплодов (не считая параметра ownpal). Смотрите секцию PalFX для деталей

на параметры AllPalFX.

AngleAdd

AngleAdd

Добавляет для изображения угол поворота, используемый AngleDraw.

Необходимые параметры:

value = добавить_угол (плавающее число)

Угол должен быть заданным в градусах.

AngleDraw

AngleDraw

Рисует игрока (на 1 фрэйм), развѐрнутым по его оси, выбранной контроллером AngleSet.

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

часовой стрелки.

Дополнительные параметры:

value = угол (плавающее число)

Выбор угла рисования.

scale = х_масштабирование, у_масштабирование (плавающие числа)

Масштабирует спрайт игрока.

Примечание: Поворот/масштабирование не подействует на рамки столкновений.

AngleMul

AngleMul

Page 33: Сoding mugen school rus by midnight

33 / 104

Умножает рисование с углом поворота, используемый AngleDraw указанным фактором.

Необходимые параметры:

value = умножатель_угла (плавающее число)

Умножает угол рисования.

AngleSet

AngleSet

Выбирается угол поворота рисования, используемый AngleDraw. Угол инициализирован

возле нуля.

Необходимые параметры:

value = угол (плавающее число)

Угол должен быть задан в градусах.

AppendToClipboard

AppendToClipboard

Это то же самое, что и DisplayToClipboard, исключая добавление текстового сообщения на

новую линию, вместо переписывания любого текста уже на доске отображения. Смотрите

DisplayToClipboard для описания формата.

AssertSpecial

AssertSpecial

Этот контроллер позволяет утвердить три специальных флага одновременно. Муген будет

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

должны утверждать флаг для каждого игрового тика, который будет активен по вашему

желанию.

Необходимые параметры:

flag = имя_флага

имя_флага является уточнительным ограничением для утверждения флага.

Дополнительные параметры:

flag2 = имя_флага2

flag3 = имя_флага3

Вы можете утвердить три флага одновременно.

Page 34: Сoding mugen school rus by midnight

34 / 104

Детали:

Имя флага может быть одним из следующих:

-intro

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

утверждѐн на каждый игровой тик, пока выполняется интро.

-invisible

Делает бойца невидимым, пока утверждено. Не имеет воздействия на шлейф.

-roundnotover

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

выполняется выигрышная стойка (на каждый игровой тик).

-noBG

Отключает спрайты арены. Экран становится чѐрного цвета.

-nostandguard

Пока утверждено, отключает блок стоя для бойца.

-nocrouchguard

Пока утверждено, отключает блок сидя для бойца.

-noairguard

Пока утверждено, отключает блок в воздухе для бойца.

-noautoturn

Пока утверждено, остерегает бойца от автоматического поворота к лицу оппонента.

-nojugglecheck

Пока утверждено, отключает проверку ловкости. Второй игрок может «фокусничать» без

учѐта

очков ловкости.

-nokosnd

Подавляется проигрывание звука 11,0 (звук выигрыша) для игроков, которые уже

повержены.

Page 35: Сoding mugen school rus by midnight

35 / 104

Для игроков, у которых выигрышный звук производит эхо, nokosnd должен быть утверждѐн

для 50 или больше тиков после повержения игрока в порядке подавления всех эхо.

-nokoslow

Пока утверждено, остерегает муген от показа конца раунда в замедленном движении.

-noshadow

Пока утверждено, отключает отображение всех теней игрока.

-globalnoshadow

Отключает отображение теней всех игроков, хелперов и эксплодов.

-nomusic

Пока утверждено, приостанавливается проигрывание музыки на арене.

-nowalk

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

если он имеет контроль. Используйте, чтоб предовратить переход стэйтов бега на ходьбу.

-timefreeze

Пока утверждено, останавливает таймер раунда. Полезен для предостережения в раунде

отсчѐта

времени в центре заставки.

-unguardable

Пока утверждено, все утверждѐнные хитдэфы игрока становятся неблокируемыми, так как

их хитфлаги игнорируются.

AttackDist

AttackDist

Изменяет значение параметра guard.dist в текущем хитдэфе игрока. Guard.dist это

расстояние по Х от первого игрока, на котором второй игрок уходит в стэйт блока, если он

зажимает направление в сторону от первого игрока. Если в данный момент первый игрок не

имеет активного хитдэфа, тогда AttackDist не имеет эффекта.

Необходимые параметры:

value = расстояние_блока (целое)

Дистанция блока, в пикселях.

Page 36: Сoding mugen school rus by midnight

36 / 104

AttackMulSet

AttackMulSet

Выбирается умножатель атаки игрока. Все повреждения, нанесенные игроком,

масштабируются этим количеством.

Необходимые параметры:

value = умножатель_атаки (плавающее число)

Уточняет желаемый умножатель. Для примера, если умножатель_атаки равняется 2,

наносится двойной ущерб.

BGPalFX

BGPalFX

То же, что и PalFX, исключая воздействие палитры арены и лайфбаров вместо палитры

бойца. Смотрите секцию PalFX для деталей на параметры BGPalFX.

BindToParent

BindToParent

Если игрок – хелпер, привязывает этого игрока на назначенную дистанцию относительного

его родителя. Если игрок не является хелпером, контроллер бесполезен.

Дополнительные параметры:

time = время_привязки (целое)

Уточняет количество тиков, на протяжении которых привязка будет эффективной. По

умолчанию 1.

facing = флаг_облицовки (целое)

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

протяжении времени привязки. Если 1, игрок будет развѐрнут в ту же сторону, что и его

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

родителя. По умолчанию 0.

pos = позиция_х, позиция_у (плавающие числа)

Эти параметры уточняют смещения (от осей родителя) для привязки. По умолчанию 0,0.

Примечание: если родитель игрока уничтожен (например, если это хелпер и выполняется

DestroySelf), после этого эффект BindToParent пропадает.

BindToRoot

BindToRoot

Page 37: Сoding mugen school rus by midnight

37 / 104

Если игрок - хелпер, привязывает игрока к назначенной позиции относительно его корня.

Если игрок – не хелпер, контроллер не подействует.

Дополнительные параметры:

time = время_привязки (целое)

Назначает число тиков эффективной привязки. По умолчанию 1.

facing = флаг_облицовки (целое)

Если -1, заставляет игрока быть развѐрнутым в противоположную сторону относительно

его корня на протяжении времени привязки. Если 1, игрок будет развѐрнут в ту же сторону,

что и его корень, на протяжении времени привязки. Если 0, разворот игрока не будет

зависеть от его корня. По умолчанию 0.

pos = позиция_х, позиция_у (плавающие числа)

Эти параметры уточняют смещения (от осей корня) для привязки. По умолчанию 0,0.

Примечание: если родитель игрока уничтожен (например, если это хелпер и выполняется

DestroySelf), после этого эффект BindToRoot пропадает.

BindToTarget

BindToTarget

Привязывает игрока к уточнѐнной позиции относительно назначенной цели.

Дополнительные параметры:

time = время_привязки (целое)

Назначает количество тиков, на протяжении которых привязка будет эффективной.

ID = идентификатор_привязки (целое)

Назначает идентификационный номер для привязки к цели. По умолчанию -1 (выбирается

любая цель).

pos = позиция_х, позиция_у (плавающие числа), тип_позиции (ограничение)

позиция_х и позиция_у назначают смещения (от точки привязки) для привязки. Точка

привязки по умолчанию соответствует оси цели.

Если тип_позиции «Foot», то точка привязки – это ось цели. Если тип_позиции «Head»,

то точка привязки – это голова цели. В последних двух случаях точка привязки

определяется из значений параметров head.pos и mid.pos в CNS-файле цели. Точка привязки

не гарантирует точного сопоставления с головой и торсом цели.

ChangeAnim

Page 38: Сoding mugen school rus by midnight

38 / 104

ChangeAnim

Изменяет номер действующей анимации игрока.

Необходимые параметры:

value = номер_анимации (целое)

Номер анимации, на которую поменяется текущая анимация.

Дополнительные параметры:

elem = номер_элемента (целое)

Номер элемента анимации, с которого начнѐтся действие.

ChangeAnim2

ChangeAnim2

То же, что и ChangeAnim, исключая, что этот контроллер будет использован, если вы

разместили второго игрока в заказанном стэйте через удар и желаете изменить анимацию

второго игрока на указанную из air-файла первого игрока. Для примера, когда делаются

броски,

используйте это для изменения происходящей анимации броска второго игрока.

ChangeState

ChangeState

Изменяет номер стэйта игрока.

Необходимые параметры:

value = номер_стэйта (целое)

Номер стэйта, на который сменится текущий стэйт.

Дополнительные параметры:

ctrl = флаг_контроля (целое)

Это значение для выбора флага контроля игрока. 0 – отсутствие контроля, не ноль – его

наличие.

anim = номер_анимации (целое)

Номер анимации, на который происходит переключение. Если не учтено, анимация игрока

останется без изменений.

Образец: изменяется на стэйт стойки и даѐт контроль игроку:

Page 39: Сoding mugen school rus by midnight

39 / 104

type = ChangeState

value = 0

ctrl = 1

ClearClipboard

ClearClipboard

Стирается любой текст, текущий, в буфере отображения игрока.

CtrlSet

CtrlSet

Выбирается флаг контроля игрока.

Необходимые параметры:

value = флаг_контроля (целое)

Выбирается не нулевое значение для осуществления контроля, 0 – для его отключения.

DefenceMulSet

DefenceMulSet

Выбирается умножатель защиты игрока. Весь полученный игроком ущерб масштабирутеся

(обоюдно) этой суммой.

Необходимые параметры:

value = умножатель_защиты (плавающее число)

Назначает умножатель защиты. Для примера, если умножатель_защиты = 2, будет только

половина ущерба.

DestroySelf

DestroySelf

Если вызван игрок в качестве хелпера, DestroySelf заставляет этого игрока убраться с поля

игры. DestroySelf не действителен для игроков, которые не являются хелперами.

Для мугена 1.1 доступно 2 дополнительные опции этого контроллера

recursive = если 1 то все хелперы, вызванные данным хелпером, тоже будут уничтожены

если 0 то не будут

removeexplods = если 1, то все эксплоды которые были задействованы в хелпере, тоже

будут уничтожены вместе с ним.

Если одно временно обе опции задействованы - будут уничтожаться все вызванные данным

хелпером хелперы и их эксплоды тоже.

DisplayToClipboard

Page 40: Сoding mugen school rus by midnight

40 / 104

DisplayToClipboard

Этот контроллер используется только для отладки. Очищает буфер игрока и печатает

указанное

сообщение для этого. Отображение буфера игроков включено в отладочном режиме

(нажмите Ctrl + D).

Необходимые параметры:

text = «форматное_ограничение»

форматное_ограничение должно быть взято в кавычки. Это форматное ограничение printff,

так что если вы знаете о printff, можете пропустить это описание. Форматное ограничение

содержит любой текст, который вы желаете отобразить. Вы также можете использовать \n,

чтобы создать линию-обрыв, и \t для создания ярлыка-буквы (ширина ярлыка эквивалентна

4-м буквам). Чтоб отобразить значение арифметического выражения, вы должны поместить

%d (для целых) или %f (для плавающих) в формате ограничения, затем указать выражение

в списке параметров. Чтоб отобразить %буква, вы должны поместить %% в форматное

ограничение.

Дополнительные параметры:

params = выражение_1, выражение_2, выражение_3, выражение_4, выражение_5

В форматном выражении может быть назначено до пяти числовых аргументов. Они

должны быть в списке под пунктами параметров, по порядку. Тип каждого параметра

должен соответствовать форматному указателю. Вы не можете назначить больше или

меньше параметров, чем вызываемых в форматном ограничении.

Образец:

type = DisplayToClipboard

text = “The value of var(17) is %d? which is %f%% of 23.\n\t -- Kiwi.”

params = var(17):=1, var(17)/.230

отобразит следующее в буфере игрока:

The value of var(17) is 1, which is 4.347826% of 23.

-- Kiwi

EnvColor

EnvColor

Превращает весь экран в сплошной цвет, исключая слой переднего плана (его анимации) в

этом

же роде, как и вспышки ударов и эксплоды с параметром ontop. Слои переднего плана не

будут видимыми.

Дополнительные параметры:

Page 41: Сoding mugen school rus by midnight

41 / 104

value = цвет_красный, цвет_зелѐный, цвет_синий (целые)

Указывает красный, зелѐный и синий компоненты цвета для экрана. Каждый компонент

должен быть целым числом от 0 до 255. Больший компонент, больше этого цвета – станет

окружающим цветом. По умолчанию 255, 255, 255 (чисто белый).

time = эффективное_время (целое)

Указывает, как много тиков будет эффективным отображающийся цвет. По умолчанию 1

тик. Выберите -1, чтобы EnvColor был устойчив бесконечно.

under = флаг _«под» (целое)

Выберите 1, чтоб окружающий цвет был нарисован под бойцами и файрболлами. Другими

словами, бойцы и файрболлы будут видимыми поверх закрашенного участка. По

умолчанию 0.

EnvShake

EnvShake

Заставляет экран трястись.

Необходимые параметры:

time = время_тряски (целое)

Указывает число тиков тряски экрана.

Дополнительные параметры:

freq = частота_тряски (плавающее число)

частота_тряски это плавающее число между 0 (медленная тряска) и 180 (быстрая тряска).

По умолчанию 60.

ampl = амплитуда_тряски (целое)

Более высокая амплитуда – более отдалѐнно экран встряхивается вниз и вверх.

Отрицательная амплитуда означает, что экран сперва будет трястись вниз. По умолчанию

-4.

phase = фазовое_смещение (плавающее число)

Указывает фазу смещения для встряхивания. По умолчанию 0; если умножатель частоты 90

или выше, в этом случае по умолчанию фаза смещения 90.

Explod

Explod

Page 42: Сoding mugen school rus by midnight

42 / 104

Контроллер Explod является гибким инструментом для отображения анимаций в качестве

вспышек. Его функциональность включает в себя GameMakeAnim, который уже устарел.

Необходимые параметры:

anim = [F] номер_анимации (целое)

Указывается номер анимации для еѐ выполнения. Префикс F является дополнительным:

если учтѐн, анимация будет проигрываться из fightfx.air.

Дополнительные параметры:

ID = идентификатор (целое)

Идентификатор указывает идентификационный номер для этого эксплода. Полезен в

основном с триггером NumExplod и контроллером RemoveExplod.

space = screen или stage - поддерживаться только мугеном 1.1

Специализирует координаты в пространстве, где эксплож будет создан. Имеет 2 значения:

screen - координата появляеться в пространстве экрана. Верхний-левый угол это координата

0,0 и правый-нижний угол это ScreenWidth,ScreenHeight (используйте тригеры с этими

именами). Експлоды, создаваимые в пространстве экрана, не реагируют на зум и

перемещение камеры.

stage - координата появляеться в пространстве арены. 0,0 это центр арены на уровене

земли. Експлоды создаваимые в пространстве арены, реагируют на движение камеры и зум.

Являеться значентем по умолчанию

pos = позиция_х, позиция_у (целые)

Эти параметры указывают смещение, создаваемое для эксплода. Точное поведение зависит

от типа позиции postype. Если эти параметры не учтены, то по умолчанию 0,0.

postype = ограничение - параметр устарел в мугене 1.1

Ограничение указывает тип позиции – как интерпретировать параметры pos. Во всех

случаях положительное смещение Y означает перемещение вниз. Действительные значения

для postype следующие:

-p1

Интерпретирует положение относительно оси первого игрока. Положительное смещение Х

происходит впереди первого игрока. Это ограничение берѐтся по умолчанию.

-р2

Интерпретирует положение относительно оси второго игрока. Положительное смещение Х

Page 43: Сoding mugen school rus by midnight

43 / 104

происходит впереди второго игрока.

-front

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

впереди себя, и позиция_у соответствует верхушке экрана. Положительное смещение Х –

вдали от центра экрана, тогда как отрицательное смещение Х – впереди около центра.

-back

Интерпретирует позицию_х относительно края экрана, которая видится позади себя первым

игроком, и позиция_у соответствует верхушке экрана. Положительное смещение Х

происходит в центре экрана, тогда как отрицательное смещение Х - далеко от центра.

-left

Интерпретирует позицию_х и позицию_у относительно левого верхнего угла экрана.

Положительное смещение Х происходит с правой стороны экрана (направо).

-right

Интерпретирует позицию_х и позицию_у относительно правого верхнего угла экрана.

Положительное смещение Х происходит с левой стороны экрана (налево).

facing = облицовка (целое)

Выбор облицовки 1 будет иметь место для эксплода стоять лицом в том же направлении,

что и положительное смещение Х (определѐнное типом позиции), и -1, если он был

развѐрнут в противоположную сторону. По умолчанию 1.

vfacing = вертикальная_облицовка (целое)

Выбрать -1, чтобы эксплод был вертикально перевѐрнут, или 1, чтоб эксплод не

переворачивался по вертикали. По умолчанию 1, если не учтено.

bindtime = время_привязки (целое)

Указывает количество игровых тиков, чтобы привязывать эксплод к точке привязки,

указанной типом позиции. Для примера, если postype = p1, pos = 30, -40 и bindtime = 5, то

эксплод будет отображѐн на позиции 30, -40 относительно оси первого игрока на 5 тиков,

не имеет значения, как первый игрок движется в это время. После того, как время привязки

истечѐт, эксплод не будет дольше привязан к точке привязки и сохранит эту позицию

(кроме воздействия параметров vel или accel). Если bindtime = -1, затем эксплод будет

привязан навсегда.

bindID = идентификатор (целое) - поддерживаться только мугеном 1.1

ID номер игрока или хелпера для привязки. Позиция привязки эксплода, зависит от обьекта

к которому он был привязан. Специальные значения: -1 (привязаться к любому одиночному

игроку) -2 (не привязываться). bindtime параметр необходим если не -2. Эксплод со space =

Page 44: Сoding mugen school rus by midnight

44 / 104

screen, не может быть привязан

vel = скорость_х, скорость_у (плавающие числа)

Указывает первоначальные X- и Y-компоненты скорости эксплода. Они интерпретированы

соответственно направлению облицовки (facing) эксплода. По умолчанию 0,0.

accel = ускорение_х, ускорение_у (плавающие числа)

Указывает Х- и Y-компоненты ускорения для эксплода. По умолчанию 0,0.

random = случайная_позиция_х, случайная_позиция_у (плавающие числа)

Заставляет точку привязки эксплода быть перемещѐнной случайной суммой, когда создан.

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

случайная_позиция_у – по направлению оси Y. Для примера, если pos = 0, 0 и random = 40,

80,

тогда местонахождение Х эксплода будет случайным числом между -20 и 19, а его

местонахождение Y будет случайным числом между -40 и 39. Оба аргумента по умолчанию

равны 0, если не учтены.

removetime = время_убирания (целое)

Если время_убирания положительное, эксплод будет убран за указанное количество

игровых тиков. Если -1, эксплод будет отображаться бесконечно. Если -2, эксплод будет

убран, когда время анимации истечѐт.

supermove = значение (булево, 0 или 1)

(устаревший параметр, используйте вместо него supermovetime)

Выбрать 1, чтобы эксплод был устойчив до тех пор, пока не закончится суперпауза, не

учитывая removetime. По умолчанию 0.

supermovetime = время_движения (целое)

Определяет количество тиков для «разморозки» эксплода на протяжении суперпаузы. Часто

полезно, если вы хотите, чтобы эксплод был анимирован во время суперпаузы, как и

обычные супервспышки.

pausemovetime = время_движения (целое)

Определяет количество тиков для «разморозки» эксплода во время паузы. По умолчанию 0.

scale = масштабирование_х, масштабирование_у (плавающие числа)

масштабирование_х и масштабирование_у указывают факторы масштабирования, для

применения их к эксплоду в горизонтальном и вертикальном направлениях. Оба по

умолчанию 1 (без масштабирования), если не учтены.

Page 45: Сoding mugen school rus by midnight

45 / 104

angle = угол (плавающее число) поддерживаться только мугеном 1.1

задает угол рисования эксплода в градусах. По умолчанию 0

yangle = y_угол (плавающее число) поддерживаться только мугеном 1.1

задает угол рисования эксплода в градусах вокруг оси у. По умолчанию 0

xangle = x_угол (плавающее число) поддерживаться только мугеном 1.1

задает угол рисования эксплода в градусах вокруг оси х. По умолчанию 0

sprpriority = приоритетность (целое)

Указывает приоритетность рисования эксплода. Анимации с более высокой

приоритетностью будут нарисованы поверх анимаций с более низкой приоритетностью.

Для примера, если sprpriority = -3, то при этом эксплод будет показываться под

большинством бойцов и их эксплодами, которые обычно имеют приоритетность >= -2. По

умолчанию 0, если не учтено.

ontop = значение (булево, 0 или 1)

Выбрать 1, чтобы эксплод был прорисован поверх всех спрайтов и слоев арен. Этот

параметр имеет превосходство над sprpriority. По умолчанию 0.

shadow = тень_красная, тень_зелѐная, тень_синяя (целые)

Указывает красный, зелѐный и синий компоненты тени эксплода. Действительные значения

для каждого компонента 0-255. Чем выше значение компонента, тем меньше цвета будет

отображено на тени, чтобы использовать цвет тени уровня, выбрать тень_красная как -1. По

умолчанию 0, 0, 0 (нет тени).

ownpal = значение (булево, 0 или 1)

Выбрать 1, чтобы дать эксплоду собственную копию палитры. Это желательно, если вы

хотите сохранить временные изменения по отношению к палитре игрока, такие как

восстановление из падения или использование контроллера PalFX, от воздействия цвета

эксплода. По умолчанию 0, если не учтено.

remappal = номер_групы_палитры, номер_палитры_в групе. (int, int)

указывает источник замены палитры эксплода с индексироваными цветами спрайта на

другую палитру. Этот параметр используеться только если ownpal не 0 и не используеться

анимация из fight.def. Если номер групы палитры = -1, этот параметр будет игнорироваться.

По умолчанию -1,0

removeongethit = значение (булево, 0 или 1)

Выбрать1 – эксплод будет убран, если игрок получает удар. По умолчанию 0.

Page 46: Сoding mugen school rus by midnight

46 / 104

ignorehitpause = значение (булево, 0 или 1)

Если 1, эксплод будет анимирован независимо от игрока, которым он был создан. Если 0,

он не будет изменѐн, когда игрок находится в паузе при ударе. По умолчанию 1.

trans = тип_прозрачности (ограничение)

Переопределяет настройки прозрачности анимации эксплода. Смотрите контроллер Trans

для деталей. Параметр «alpha» должен быть указан, если тип_прозрачности addalpha. Если

не учтено, прозрачности не будет.

в мугене 1,1 эквивалентами параметрами которые могут заменить postype есть:

postype = p1

space = stage

pos = Pos X + CameraPos X, Pos Y

facing = facing

postype = p2

space = stage

pos = (enemynear, Pos X) + CameraPos X, (enemynear, Pos Y)

facing = enemynear, facing

postype = front

space = screen

pos = ifelse(facing = -1, 0, ScreenWidth), 0

facing = 1

postype = back

space = screen

pos = ifelse(facing = 1, 0, ScreenWidth), 0

facing = facing

postype = left

space = screen

pos = 0, 0

facing = 1

postype = right

space = screen

pos = ScreenWidth, 0

facing = 1

ExplodBindTime

ExplodBindTime

Изменяет позицию времени привязки эксплодов игрока.

Дополнительные параметры:

Page 47: Сoding mugen school rus by midnight

47 / 104

ID = идентификатор (целое)

Только эксплоды с идентификационным номером, равным указанному идентификатору,

будут выполнять их позиционную привязку. Выбрать ID = -1 для выполнения привязки ко

всем эксплодам. Это является поведением по умолчанию.

time = время_привязки (целое)

Указывает количество тиков, на протяжении которых эксплоды будут привязаны к их

точкам привязки (назначенные во время создания эксплодов). По умолчанию 1 тик. Время

-1 привязывает эксплоды бесконечно.

Альтернативный синтаксис:

value = время_привязки (целое)

Нужно использовать вместо параметра time = время_привязки.

ForceFeedBack

ForceFeedBack

Создаѐт принудительную обратную связь для поддерживаемых устройств. Сейчас

устройства типа PlayStation dual shock–контроллеров используют поддержку этого движка.

Параметры для ForceFeedBack-контроллера могут не указываться использованием

арифметических выражений.

В данном роде это исключение.

Дополнительные параметры:

waveform = тип_волны (ограничение)

Действительные формы волн – «sine», «square» и «off». Для контроллера Dual Shock

синусоидальная форма волны соответствует огромному грохочущему мотору и квадратная

– гудущему мотору. Синусоидально-квадратная, естественно, соответствует обеим моторам

одновременно. Используйте «off», чтобы отключить любую принудительную обратную

связь для текущего выполнения. По умолчанию «sine».

time = продолжительность (целая постоянная)

Указывает, как долго принудительная обратная связь будет оставаться активной, в тиках.

По умолчанию 60.

freq = старт (целая постоянная), d1, d2, d3 (плавающие константы)

Частота обратной принудительной связи между 0 и 255. Использована формула, чтобы

определить частоту принудительной обратной связи:

start + d1*t + d2*t **2 +d3*t**3 ,

где t представляет количество тиков, прошедших с инициализации принудительной

Page 48: Сoding mugen school rus by midnight

48 / 104

обратной связи. По умолчанию freq = 128, 0, 0, 0.

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

ampl = старт (целая постоянная), d1, d2, d3 (плавающие константы)

Амплитуда принудительной обратной связи варьируется между 0 и 255. Используется

следующая формула:

start + d1*t + d2*t **2 +d3*t**3 ,

где t представляет количество тиков, прошедших с инициализации принудительной

обратной связи. По умолчанию ampl = 128, 0, 0, 0.

self = свой_флаг (булево, 0 или 1)

Если 1, тогда джойстик/пад первого игрока будет вибрировать. Если 0 – будет вибрировать

у второго игрока. По умолчанию 1.

Смотрите образец в файле common1.cns.

FallEnvShake

FallEnvShake

Трясѐт экран, используя параметры fall.envshake, выбранные атакой (смотрите контроллер

HitDef). Этот контроллер эффективен только, если GetHitVar (fall.envshake.time) не ноль, и

выбирается нулевой GetHitVar после выполнения. Этот контроллер использован в

common1.cns для тряски экрана, когда игрок падает, по-другому, в нормальных условиях,

не используется.

Смотрите образец в файле common1.cns.

GameMakeAnim

GameMakeAnim

Создаѐт игровую анимацию в качестве вспышки удара или как эффект файрболла. Этот

контроллер был заменѐн эксплодом, что абсолютно обдуманно. Его поддержка может быть

убрана из будущих версий.

Дополнительные параметры:

value = номер_анимации (целое)

Указывает номер анимации (из fightfx.air) как таковую для проигрывания. По умолчанию 0.

under = флаг_“под” (целое)

Если 1, анимация рисуется под спрайтами бойца. По умолчанию 0 (рисуется на бойцах).

pos = позиция_х, позиция_у (плавающие числа)

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

0,0.

Page 49: Сoding mugen school rus by midnight

49 / 104

random = случайная_сумма (целое)

Позиция анимации будет перемещена в Х- и Y-направлениях случайными суммами.

Перемещение может быть таким же большим, как и половина случайной суммы.

Принимайте параметр случайная_сумма как указание совокупной возможной

«протяженности» в позициях случайно перемещаемых анимаций. По умолчанию 0.

Gravity

Gravity

Ускоряет игрока вниз, используя значение постоянной «yaccel» игрока.

Образец: принимает постоянное ускорение через стэйт:

trigger1 = 1

type = Gravity

Helper

Helper

Создаѐт другой пример игрока в качестве помощника (хелпера).

Дополнительные параметры:

helpertype = ограничение - в мугене 1.1 этот параметр устарел

(возражение: не используйте хелпер типа player)

Если helpertype = normal , то хелпер будет позволять отъезжать для края экрана. Кроме того,

камера не будет двигаться, пытаясь сохранить хелпер на экране. Если helpertype = player ,

тогда хелпер будет двигаться вместе с камерой по экрану, как нормальный игрок. По

умолчанию normal. Если вы планируете использовать хелпер для управления камерой, не

используйте хелпер типа player (это не рекомендовано). Используйте контроллер

ScreenBound с параметром movecamera , если необходимо.

name = «ограничение_имени»

Указывает имя для этого хелпера, которое должно быть взятым в двойные кавычки. Если не

учтено, имя по умолчанию «<имя бойца>’s helper».

ID = идентификатор (целое)

Выбирает идентификационный номер, посылаясь на этот хелпер. По умолчанию 0.

pos = позиция_х, позиция_у (целое)

Эти параметры указывают смещение, создаваемое для хелпера. Точное поведение зависит

от типа позиции postype. Если эти параметры не учтены, то по умолчанию 0,0.

postype = ограничение

Page 50: Сoding mugen school rus by midnight

50 / 104

Ограничение указывает тип позиции – как интерпретировать параметры pos. Во всех

случаях положительное смещение Y означает перемещение вниз. Действительные значения

для postype следующие:

-p1

Интерпретирует положение относительно оси первого игрока. Положительное смещение Х

происходит впереди первого игрока. Это ограничение берѐтся по умолчанию.

-р2

Интерпретирует положение относительно оси второго игрока. Положительное смещение Х

происходит впереди второго игрока.

-front

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

впереди себя, и позиция_у соответствует верхушке экрана. Положительное смещение Х –

вдали от центра экрана, тогда как отрицательное смещение Х – впереди около центра.

-back

Интерпретирует позицию_х относительно края экрана, которая видится позади себя первым

игроком, и позиция_у соответствует верхушке экрана. Положительное смещение Х

происходит в центре экрана, тогда как отрицательное смещение Х - далеко от центра.

-left

Интерпретирует позицию_х и позицию_у относительно левого верхнего угла экрана.

Положительное смещение Х происходит с правой стороны экрана (направо).

-right

Интерпретирует позицию_х и позицию_у относительно правого верхнего угла экрана.

Положительное смещение Х происходит с левой стороны экрана (налево).

facing = облицовка (целое)

Если postype = left или right, настройка facing = 1 повернѐт хелпера лицом вправо, и если -1

– то влево. Для всех других значений postype, исключая р2, если facing = 1 – хелпер будет

развѐрнут также, как и игрок. Если facing = -1, хелпер будет развѐрнут в

противоположную сторону. В случае postype = p2, облицовка будет иметь такой же эффект,

только применительно ко второму игроку. По умолчанию 1.

stateno = стартовый_стэйт (целое)

Определяет номер стэйта, из которого и будет работать хелпер. По умолчанию 0.

Page 51: Сoding mugen school rus by midnight

51 / 104

keyctrl = флаг_контроля (булево, 0 или 1)

Если 1, то хелпер способен читать команды, вводимые от игрока (с клавиатуры или

джойстика).

Также хелпер будет наследовать его коренной [State -1]. Если 0, то хелпер не будет иметь

доступа ко введѐнным командам, и не будет наследовать [State -1]. По умолчанию keyctrl =

0.

ownpal = флаг_палитры (булево, 0 или 1)

Если 0, хелпер будет наследовать палитру родителя. Если палитра родителя временно

изменена (например, посредством контроллера PalFX), изменения отразятся и на хелпере

тоже. Если 1, хелпер будет принимать собственную рабочую палитру, которая не зависит от

родительской. По умолчанию 0.

supermovetime = время_движения (целое)

Определяет количество тиков, по истечению которых хелпер «разморозится» на

протяжении паузы. По умолчанию 0.

remappal = номер_групы_палитры, номер_палитры_в групе. (int, int)

указывает групу и номер палитры которую хотим применить на хелпере.

size.xscale (плавающее число)

size.yscale (плавающее число)

size.ground.back (плавающее число)

size.ground.front (плавающее число)

size.air.back (целое)

size.air.front (целое)

size.height (целое)

size.proj.doscale (целое)

size.head.pos (целое, целое)

size.mid.pos (целое, целое)

size.shadowoffset (целое)

Эти параметры имеют такое же значение, как и соответствующие параметры в корневом

Page 52: Сoding mugen school rus by midnight

52 / 104

CNS-файле. Вы можете указать один или больше из этих параметров и менять их значения,

подходящие для этого хелпера. Иначе они будут взяты как значения по умолчанию,

наследованные от родителя.

HitAdd

HitAdd

Добавляет удары к текущему комбо.

Необходимые параметры:

value = добавить_счѐт (целое)

Указывает число ударов для добавления к текущему комбо.

Добавляет удары к текущему комбо.

Необходимые параметры:

value = добавить_счѐт (целое)

Указывает число ударов для добавления к текущему комбо.

HitBy

HitBy

Временно указывает типы ударов, что позволяют ударить игрока.

Необходимые параметры:

value = аттрибутное_ограничение

или

value2 = аттрибутное_ограничение

Только один из параметров может быть указан. Аттрибутное ограничение должно быть

стандартным ограничением для удара.

Дополнительные параметры:

time = время_эффективности (целое)

Указывает количество игровых тиков, на время которых аттрибуты HitBy будут

эффективными.

По умолчанию 1.

Детали:

Игрок имеет два слота аттрибутов удара, которые могут быть выбраны использованием

Page 53: Сoding mugen school rus by midnight

53 / 104

параметров value и value2 для этого контроллера. Эти слоты могут использоваться также

контроллером NotHitBy. Когда слот выбран, он получает таймер (эффективное время),

который ведѐт отсчѐт к нулю. Если таймер ещѐ не достиг нуля, слот считается активным.

Игрок может быть ударен только таким хитдэфом, аттрибуты которого появляются в

текущих активных слотах. Использование контроллера HitBy выбирает указанный слот для

содержания только этих аттрибутов удара, которые появляются в аттрибутных

ограничениях HitBy.

Образец: может быть атакован нормальными атаками стоя:

trigger1 = 1

type = HitBy

value = S, NA

HitDef

HitDef

Определяет одиночный удар атаки игрока. Если рамка столкновения (красная) Clsn1 идѐт в

контакт с рамкой столкновения (синяя) Clsn2 противника, то хитдэф будет определѐн (или

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

наибольших комплексов, из наиболее обычно используемых контроллеров.

Одиночный хитдэф действителен только для одиночного удара. Чтобы сделать

несколько движений ударов, вы должны применить побольше триггеров на протяжении

атаки.

Необходимые параметры:

attr = аттрибут_удара (ограничение)

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

Имеет формат:

attr = аргумент1, аргумент2

где:

-аргумент1 является любым из «S», «C» или «А». Похоже на statetype для стэйтдэфа, - это

значит, является ли атака таковой стоя, сидя или с воздуха.

-аргумент2 является двузначным ограничением. Первое значение из которых может быть

«N» для «нормальный», «S» для «специальный», или «Н» для «гипер» (или для «супер», как

обычно известно). Второе значение может быть «А» для «атаки» (нормальная атака через

удар), «Т» для «броска» или «Р» для «файрболла».

hitflag = флаги_удара (ограничение)

Определяет тип стэйта, в котором должен находиться второй игрок при ударе первого

игрока. Это ограничение, состоящее из комбинации следующих значений: «Н» для

«высокий», «L» для «низкий» или «А» для «в воздухе». «М» (средний) эквивалентен

высказыванию «HL». «F» для «падения», и, если учтено, будет позволять применять удар

первым игроком по отношению к падающему оппоненту. «D» для «лежащего», и, если

Page 54: Сoding mugen school rus by midnight

54 / 104

учтено, позволяет первому игроку атаковать лежащего противника.

Есть два дополнительных знака «+» и «-». Если добавлен «+», то удар подействует на

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

движений, которые не подействуют на оппонентов, которые не будут атакованы первым

движением в цепной атаке. Если добавлен «-», то удар подействует на игроков, котрые не

находятся в стэйте получения удара. Вы должны использовать «-» для бросков и других

движений, которые не будут доступны для участия в комбо. «+» и «-» являются взаимно

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

момент времени. Если они не учтены, по умолчанию «MAF».

guardflag = флаги_блока (ограничение)

Определяет, как второй игрок должен блокировать атаку. Это ограничение, содержащее

комбинацию из следующих значений: «Н» для «высокий», «L» для «низкий», «А» для

«высокий». «М» (средний) то же, что и «HL».

Дополнительные параметры:

affectteam = тип_команды (ограничение)

Указывает, игрок какой команды может быть атакован этим хитдэфом. Используйте В для

обеих команд (всех игроков), Е для команды противника (оппонента) или F для

товарищеской команды (соответственно, вашей). По умолчанию Е.

animtype = тип_анимации (ограничение)

Ссылается на тип анимации, которую получит от атаки второй игрок. Выбирать из «light»

(лѐгкая), «medium» (средняя), «hard» (тяжѐлая), «heavy» (используется в основном в

хитдэфах добиваний), «back» (отбрасывающая), «up» (ориентирована вверх) или «diagup»

(вверх по диагонали). «back» является типом анимации, когда удар сбивает с ног второго

игрока. «up» должна использоваться, когда боец сбит прямо в воздухе (например,

апперкотом) и «diagup», когда боец сбит назад в воздухе, в том числе, когда приземляется

на голову. По умолчанию «light».

air.animtype = тип_анимации (ограничение)

Похоже на animtype, только второй игрок в этом случае должен находиться в воздухе. Если

не учтено, по умолчанию «light».

fall.animtype = тип_анимации (ограничение)

Похоже на animtype, только применительно к падающему противнику. По умолчанию up,

если air.animtype = up, - иначе – back.

priority = приоритет_удара (целое), тип_удара (ограничение)

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

верх над таковыми с более низкой. Действительные значения для приоритет_удара от1 до 7.

По умолчанию 4. тип_удара, если указан, даѐт класс приоритетности для удара.

Действительные классы приоритетности – это Dodge (уворачивание), Hit (удар) и Miss

Page 55: Сoding mugen school rus by midnight

55 / 104

(промах). Класс приоритетности определяет закрепленное поведение, когда оба игрока

бьют друг друга одновременно с одинаковыми приоритетами. Поведение следующее:

Hit против Hit : оба игрока удачно атакуют друг друга

Hit против Miss : Hit бьѐт, Miss промахивается

Dodge потив Dodge : обоюдный промах

Dodge против Miss : обоюдный промах

Miss против Miss : обоюдный промах

Hit против Dodge : обоюдный промах

В случае связок с обоюдным промахом, соответствующие хитдэфы остаются активными.

damage = ущерб_удара, ущерб_блока (целые)

Это ущерб, который второй игрок получает от удара. Дополнительный параметр

ущерб_блока – это ущерб, который получает второй игрок при блокировании этого удара.

По умолчанию 0, 0.

pausetime = р1_пауза, р2_тряска (целые)

Это время, когда оба игрока будут находиться в паузе при нанесении удара. р1_пауза - это

время «замораживания» первого игрока, выраженное в игровых тиках. р2_тряска – это

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

умолчанию 0, 0, если не учтено.

guard.pausetime = р1_пауза, р2_тряска (целые)

Похоже на pausetime, но в случае, когда удар сблокирован. По умолчанию 0, 0.

sparkno = номер_действия (целое)

Это номер анимации вспышки в случае удачного удара. Чтобы проиграть вспышку из

AIR-файла игрока, добавьте к номеру спереди S. По умолчанию значение выбирается в

переменных игрока, если не учтено.

guard.sparkno = номер_действия (целое)

Это номер анимации вспышки в случае сблокированного противником удара. Опции такие

же, как и в sparkno.

sparkxy = положение_вспышки_х, положение_вспышки_у (целые)

Координаты отображения вспышки, равносильно как при удачном ударе, так и при

сблокированном. положение_вспышки_х это координата относительно переда второго

игрока. Отрицательное значение располагает вспышку ближе ко второму игроку. «Перед»

ссылается на на положение Х возле оси второго игрока, которая сместится к первому

соответствием значения длины в группе [Size] переменных второго игрока.

положение_вспышки_у относится к первому игроку. Отрицательное значение располагает

вспышку выше. Вы можете использовать инструмент вроде AirWiev, чтобы определять это

значение положением курсора возле «пятна атаки» и выражением значения положения Y.

По умолчанию 0, 0, если не учтено.

Page 56: Сoding mugen school rus by midnight

56 / 104

hitsound = группа_звука, номер_звука (целые)

Это звук для проигрывания при ударе (из common.snd). Учтѐнный fight.snd позволит вам

выбрать от 5,0 (лѐгкий звук удара) до 5,4 («болезненный» звук удара). Чтобы проиграть

звук из собственного SND-файла игрока, добавьте префикс S. Например: hitsound = S1,0 .

По умолчанию значение выбирается в переменных игрока, если не учтено.

guardsound = группа_звука, номер_звука (целые)

Это звук, проигрываемый при блокируемом ударе (из common.snd). Опции аналогичны

hitsound.

ground.type = тип_атаки (ограничение)

Это вид атаки, применительно к находящемуся на полу второму игроку. Выбирать «High»

(высокий) для атак по голове, «Low» (низкий) для атак на подобии удара в живот, «Trip»

для атак-подсечек, или «None» для любого бездействия на второго игрока. Атаки «High» и

«Low» будут неэффективными, если animtype = back. Если второй игрок атакован из-под

низа, «High» будет отображѐн как «Low» и наоборот. По умолчанию «High», если не

учтено.

air.type = тип_атаки (ограничение)

Это вид атаки, если противник находится в воздухе. Условия и умолчания аналогичны к

ground.type.

ground.slidetime = время_скольжения (целое)

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

удара (это время не учитывает время паузы для второго игрока (pausetime)). Применимо

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

учтено.

guard.slidetime = время_скольжения (целое)

То же самое, что и ground.slidetime, только если второй игрок блокирует удар. Условия и

умолчания такие же, как и у guard.hittime.

ground.hittime = время_удара (целое)

Время, на которое второй игрок остаѐтся в стэйте удара после получения оного. Увеличить

это значение для удержания второго игрока в стэйте удара на дольшее время, этим

возможно облегчить комбо. Применимо только для ударов, которые удерживают

противника на полу. По умолчанию 0, если не учтено.

guard.hittime = время_удара (целое)

То же, что и ground.hittime, только если второй игрок блокирует удар. Условия и умолчания

такие же, как у ground.hittime.

Page 57: Сoding mugen school rus by midnight

57 / 104

air.hittime = время_удара (целое)

Время, на которое второй игрок остаѐтся в стэйте удара после получения оного в воздухе,

до того, как будет способен блокировать опять. Этот параметр не эффективен, если fall = 1.

По умолчанию 20, если не учтено.

guard.ctrltime = время_контроля (целое)

Это время, по истечению которого второй игрок восстановит контроль в стэйте блока на

полу. Умолчания те же, что и в guard.slidetime.

guard.dist = расстояние_х (целое)

Это расстояние по оси Х от первого игрока, на котором второй игрок фиксирует

направление от первого игрока, переходя в стэйт блока. По умолчанию значение берѐтся из

переменных игрока, если не учтено.

yaccel = ускорение (плавающее число)

Указывает придаваемое второму игроку ускорение по оси Y при контактируемом ударе. По

умолчанию 0.

ground.velocity = скорость_х, скорость_у (плавающие числа)

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

второй игрок находился на полу. Если скорость_у не нулевая, второй игрок будет подбит в

воздух с пола. Оба значения по умолчанию 0, если не учтены. Вы можете указать

скорость_у равной нулю, если хотите оставить второго игрока на полу.

guard.velocity = скорость_х (плавающее число)

Придаваемая второму игроку скорость, если он блокирует удар на полу. По умолчанию этот

параметр использует значение параметра ground.velocity, если не учтено.

airguard.velocity = скорость_х, скорость_у (плавающие числа)

Придаваемая второму игроку скорость, если он блокирует удар в воздухе. По умолчанию

скорость_х*1.5, скорость_у/2, где скорость_х и скорость_у – параметры, взятые из

air.velocity.

air.velocity = скорость_х, скорость_у (плавающие числа)

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

второй игрок находился в воздухе. По умолчанию 0,0.

ground.cornerpush.veloff = скорость_х (плавающее число)

Определяет дополнительную скорость (скоростное смещение), придаваемую второму

Page 58: Сoding mugen school rus by midnight

58 / 104

игроку, если он находится на полу в углу. Настройка повышенного значения заставит

игрока отпрянуть подальше от угла. Если не учтено, по умолчанию зависит от параметра

attr. Если аргумент1 аттрибута attr указан как «А», то по умолчанию 0. Иначе по умолчанию

равен 1.3*guard.velocity.

air.cornerpush.veloff = скорость_х (плавающее число)

Определяет дополнительную скорость (скоростное смещение), придаваемую второму

игроку, если он делает для находящегося в воздухе оппонента удар в воздухе в углу.

Настройка повышенного значения заставит игрока отпрянуть подальше от угла. Умолчания

аналогичны ground.cornerpush.veloff.

down.cornerpush.veloff = скорость_х (плавающее число)

Определяет дополнительную скорость (скоростное смещение), придаваемую второму

игроку, если он делает падающему оппоненту удар в воздухе в углу. Умолчания

аналогичны ground.cornerpush.veloff.

guard.cornerpush.veloff = скорость_х (плавающее число)

Определяет дополнительную скорость (скоростное смещение), придаваемую второму

игроку, если его удар сблокирован в углу. Умолчания аналогичны ground.cornerpush.veloff.

airguard.cornerpush.veloff = скорость_х (плавающее число)

Определяет дополнительную скорость (скоростное смещение), придаваемую второму

игроку, если он делает удар в воздухе в углу для блокирующего оппонента. Умолчания

аналогичны ground.cornerpush.veloff.

airguard.ctrltime = время_контроля (целое)

Это время, по истечению которого второй игрок восстановит контроль в стэйте блока в

воздухе.

Умолчания те же, что и в guard.ctrltime.

air.juggle = очки_ловкости (целое)

Сумма дополнительных очков ловкости, требуемых ударом. Не путайте с параметром juggle

в стэйтдэфе. По умолчанию 0.

mindist = позиция_х, позиция_у (целые)

mахdist = позиция_х, позиция_у (целые)

Они позволяют вам контролировать минимальное и максимальное расстояние второго

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

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

snap = позиция_х, позиция_у (целые)

Page 59: Сoding mugen school rus by midnight

59 / 104

это перемещает П2 в специальную позицию относительно П1 если удар удачный. В норме

этот параметр не используеться. Если вы хотите прикрепить П2 к конкретной позиции для

броска, то лучше использовать контроллер "TargetBind" в стейте броска П1. По умолчанию

парамеры не учитываеться

p1sprpriority = приоритет_прорисовки (целое)

Это приоритет прорисовки спрайтов первого игрока, если делаются удары или они

блокируются вторым игроком. Вместе с параметром p2sprpriority можно контролировать

прорисовку первого игрока за вторым игроком или на нѐм. По умолчанию 1.

p2sprpriority = приоритет_прорисовки (целое)

Это приоритет прорисовки спрайтов второго игрока, если делаются удары или они

блокируются вторым игроком. По умолчанию 0.

p1facing = облицовка (целое)

Выбрать -1, чтобы заставлять первого игрока оборачивать при удачном ударе. Обычно

полезно для бросков. По умолчанию оборачивания не будет.

p1getp2facing = облицовка (целое)

Выбрать 1, чтобы первый игрок был развѐрнут лицом в ту же сторону, что и второй игрок

при контактирующем ударе, или -1 – для поворота в противоположную сторону. По

умолчанию 0. Если не ноль, этот параметр берѐт превосходство над p1facing.

p2facing = облицовка (целое)

То же, что и p1facing, только применительно ко второму игроку.

p1stateno = номер_стэйта (целое)

Это номер стэйта, который будет выбран первым игроком в случае удачного удара. В

основном используется для бросков.

p2stateno = номер_стэйта (целое)

Это номер стэйта, который будет действовать на втором игроке в случае удачного удара.

Второй игрок при этом получит стэйты и анимации от первого. В основном используется

для бросков.

p2getp1state = значение (целое)

Выбрать 0, чтобы предотвратить получение вторым игроком стэйтов и анимаций первого

игрока, в случае, если вы не хотите, чтоб это было поведением по умолчанию за счѐт

параметра p2stateno. По умолчанию 1, если используется параметр p2stateno. В противном

случае будет игнорироваться.

Page 60: Сoding mugen school rus by midnight

60 / 104

forcestand = значение (целое)

Выберите 1, чтобы заставить перейти второго игрока из сидящего положения в стойку при

удачном ударе. По умолчанию 0 ; если скорость_у параметра ground.velocity не ноль, тогда

по умолчанию 1.

fall = значение (целое)

Выберите 1, если хотите, чтоб второй игрок переходил в стэйт падения (когда второй игрок

падает на пол без восстановления контроля в воздухе). Используйте, если хотите «сбить»

второго игрока.

fall.xvelocity = скорость_х (плавающее число)

Это скорость по оси Х, которую получает второй игрок при «отпрыгивании» от земли в

стэйте падения. По умолчанию не действует, если не учтено.

fall.yvelocity = скорость_y (плавающее число)

Это скорость по оси Y, которую получает второй игрок при «отпрыгивании» от земли в

стэйте падения. По умолчанию 4.5, если не учтено.

fall.recover = значение (целое)

Выбрать 0, если хотите, чтоб второй игрок был способен восстановиться из стэйта падения.

По умолчанию 1, если не учтено.

fall.recovertime = время_восстановления (целое)

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

восстановиться из стэйта падения. Не включает в себя время тряски второго игрока от

удара. По умолчанию 4, если не учтено.

fall.damage = сумма_ущерба (целое)

Показывает сумму ущерба, отбираемого у второго игрока при падении на пол из стэйта

падения. По умолчению 0, если не учтено.

air.fall = значение (целое)

Выбрать 1, если вы хотите, чтоб второй игрок перешѐл в стэйт падения (когда он падает на

пол без восстановления контроля в воздухе), если удар – в воздухе. Условия аналогичны

fall.

down.velocity = скорость_х, скорость_у (плавающие числа)

Это назначенная для второго игрока скорость, когда он бьѐтся о земь, пока ложится. Если

скорость_у не ноль, второй игрок будет ударен в воздухе. Если 0, то второй игрок будет

скользить по полу назад. Умолчания аналогичны air.velocity, если не учтены.

Page 61: Сoding mugen school rus by midnight

61 / 104

down.hittime = время_удара (целое)

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

параметре игнорируется, если скорость_у не равняется нулю в параметре down.velocity.

down.bounce = значение (целое)

Выбрать 1, если хотите, чтоб второй игрок отпрыгивал от пола один раз (используя

значения fall.xvelocity и fall.yvelocity) после ударения об пол от удара. Этот параметр

игнорируется, если скорость_у параметра down.velocity равняется нулю. По умолчанию 0,

если не учтено (второй игрок ударяется об пол и остаѐтся на нѐм).

id = идентификатор (целое)

В основном используется для цепных движений. Вы можете использовать этот номер для

дальнейшего обнаружения, если последний удар игрока был сделан этим особым хитдэфом.

Этот номер называется targetID. Используется в таких контроллерах, как TargetBind или в

target(ID), в перенаправлении ключевого слова. Действительны все значения >= 1. Если не

учтено, по умолчанию 0 (без ID). Не путайте targetID c playerID.

chainID = идентификатор (целое)

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

движением первого игрока с этим идентификационным номером, то потом он может быть

атакован только хитдэфом с этим chainID. Вы можете использовать его в последующих

частях цепного движения: обратите внимание, эти цепные движения остаются возможными

даже без использования параметров id и chainID. Если не учтено, по умолчанию -1 (цепь от

каждого удара).

nochainID = не_цепь_1, не_цепь_2 (целые)

Указывает до двух идентификационных номеров ударов, которые по цепочке не могут

перейти в этот удар. Если -1 (по умолчанию), тогда сцепление не точно отключает любые

идентификационные номера удара. не_цепь_2 может не учитываться. Исключая -1,

указанные значения не должны совпадать со значением chainID. Этот параметр не имеет

эффекта, если второй игрок ударен третьей группой между предыдущим и текущим

хитдэфом первого игрока.

hitonce = флаг_бить_единажды (булево, 0 или 1)

Если выбрать 1, хитдэф будет воздействовать только на одного оппонента. Если удар

удачный, все другие цели будут утеряны. По умолчанию 0 в большей части времени.

Только исключение, если параметр attr является типом броска – по умолчанию 1.

kill = флаг_гибели (целое)

Выбрать 0, если удар в случае удачного попадания не убьѐт оппонента. По умолчанию 1.

Page 62: Сoding mugen school rus by midnight

62 / 104

guard.kill = флаг_гибели_при_блоке (целое)

Выбрать 0, если удар в случае блокирования не убьѐт оппонента. По умолчанию 1.

fall.kill = флаг_гибели_при_падении (целое)

Выбрать 0, если эта атака не будет способна убить оппонента, пока он падает на пол

(смотрите fall.damage). По умолчанию 1.

numhits = счѐт_ударов (целое)

Счѐт удара показывает, как много ударов этот хитдэф может добавить к счѐтчику комбо. По

умолчанию 1.

getpower = р1_сила_при_атаке, р1_сила_при_блоке (целые)

р1_сила_при_атаке указывает количество силы, получаемой первым игроком при удачной

атаке этим хитдэфом. р1_сила_при_блоке указывает количество силы, получаемой первым

игроком при блокировании оппонентом этого хитдэфа. Если не учтено, р1_сила_при_атаке

равняется ущербу от удачного удара (из параметра damage) , умноженному на значение

Default.Attack.LifeToPowerMul, указанное в data/mugen.cfg. Если р1_сила_при_блоке не

учтено, то по умолчанию значение будет: 2* р1_сила_при_атаке.

givepower = р2_сила_при_атаке, р2_сила_при_блоке (целые)

р2_сила_при_атаке указывает количество силы, получаемой вторым игроком при удачной

атаке этим хитдэфом. р2_сила_при_блоке указывает получаемую вторым игроком силу при

блокировании этого хитдэфа. Если не учтено, р2_сила_при_атаке по умолчанию равняется

ущербу в случае сблокированного удара (из параметра damage), умноженному на значение

Default.GetHit.LifeToPowerMul, указанное в data/mugen.cfg. Если р2_сила_при_блоке не

учтено, то по умолчанию значение будет: 2* р2_сила_при_атаке.

palfx.time = время_фиксации_палитры (целое)

palfx.mul = красный1, зелѐный1, синий1 (целые)

palfx.add = красный2, зелѐный2, синий2 (целые)

palfx.sinadd = красный3, зелѐный3, синий3, период (целые)

Если активированы, позволяют применить эффекты изменения палитры на втором игроке.

время_фиксации_палитры по умолчанию 0 (без эффекта). Остальные параметры такие же,

как и в контроллере PalFX.

envshake.time = время_тряски (целое)

envshake.freq = частота_тряски (целое)

Page 63: Сoding mugen school rus by midnight

63 / 104

envshake.ampl = амплитуда_тряски (целое)

envshake.phase = фаза_тряски (плавающее число)

Если активированы, экран трясѐтся при одиночном ударе. время_тряски – время в игровых

тиках для тряски экрана. Остальные параметры такие же, как и в контроллере EnvShake.

fall.envshake.time = время_тряски (целое)

fall.envshake.freq = частота_тряски (целое)

fall.envshake.ampl = амплитуда_тряски (целое)

fall.envshake.phase = фаза_тряски (плавающее число)

Аналогично параметрам EnvShake, только в случае падения второго игрока на пол.

HitFallDamage

HitFallDamage

Когда игрок атакован и находится в стэйте падения, принимается ущерб от падения для

игрока (указан в хитдэфе атаки).

HitFallSet

HitFallSet

Когда игрок атакован, выбирает переменные падения этого игрока.

Дополнительные параметры:

value = флаг_выбора_падения (целое)

Если -1, тогда этот контроллер не даѐт изменений, не зависимо от того, падает игрок или

нет. Если 0, означает, что игрок не будет падать, а при значении 1 будет падать. По

умолчанию -1.

xvel = скорость_х (плавающее число)

yvel = скорость_y (плавающее число)

Если указано, выбирает соответственно параметры игрока – fall.xvelocity и fall.yvelocity.

Для описания этих параметров смотрите контроллер HitDef.

HitFallVel

HitFallVel

Если игрок атакован и находится в стэйте падения, выбирает скорости падения игрока для

Page 64: Сoding mugen school rus by midnight

64 / 104

параметров fall.xvelocity и fall.yvelocity. Для описания этих параметров смотрите

контроллер HitDef.

HitVelSet

HitVelSet

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

присваивания к скоростям получения удара.

Дополнительные параметры:

x = флаг_х (целое)

у = флаг_у (целое)

Флаг, отличный от нуля, означает изменение этого компонента скорости на скорость

получения удара.

LifeAdd

LifeAdd

Добавляет указанное количество жизни игроку, масштабированное умножателем защиты

игрока, если необходимо.

Необходимые параметры:

value = добавить_сумму (целое)

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

Дополнительные параметры:

kill = флаг_гибели (целое)

Если 0, то отнимание жизни не переступит отметку в 1 очко на лайфбаре. По умолчанию 1.

absolute = флаг_абсолютности (целое)

Если 1, будет добавлена точная сумма (добавить_сумму) к лайфбару игрока (умножатель

защиты игнорируется). По умолчанию 0.

LifeSet

LifeSet

Выбирается указанное значение жизни игрока.

Необходимые параметры:

Page 65: Сoding mugen school rus by midnight

65 / 104

value = количество_жизни (целое)

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

контроллера.

MakeDust

MakeDust - этот контроллер устарел, используйте Explod

Создаѐт эффект пыли.

Дополнительные параметры:

pos = положение_х, положение_у (целые)

Указывает положение, на котором будет нарисована пыль относительно оси игрока. По

умолчанию 0,0.

pos2 = положение_х, попложение_у (целые)

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

второе облако пыли не рисуется.

spacing = значение (целое)

Определяет число фрэймов для ожидания между рисованием облаков пыли. Для примера,

если spacing = 3 (по умолчанию), то облако пыли будет рисоваться каждый третий фрэйм.

Интервал должен быть >= 1.

Примечание: насколько известно, для работы этого контроллера необходима анимация

№120 из файла fightfx.air с соответствующим набором спрайтов.

ModifyExplod

ModifyExplod

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

эксплода. Тем не менее, этот контроллер стоит под вопросом для использования в будущем.

Нет гарантии что коды этого контроллера будут работать в будущих версиях.

MoveHitReset

MoveHitReset

Сбрасывает флаг movehit к нулю. После выполнения этого контроллера триггеры

MoveContact, MoveGuarded и MoveHit становятся равными нулю.

NotHitBy

NotHitBy

Времени указывает типы ударов, которые не будут позволять ударить игрока.

Page 66: Сoding mugen school rus by midnight

66 / 104

Необходимые параметры:

value = аттрибутное_ограничение или value2 = аттрибутное_ограничение

Только один из вышеуказанных параметров может быть назначен.

аттрибутное_ограничение должно быть стандартным аттрибутным ограничением удара.

Дополнительные параметры:

time = эффективное_время (целое)

Указывает время, на протяжении которого заданные аттрибуты уклонения от ударов будут

эффективными. По умолчанию 1.

Детали:

Игрок имеет два слота аттрибутов ударов, которые могут выбрать использование

параметров value и value2 контроллера NotHitBy. Эти слоты также могут быть выбраны

контроллером HitBy. Когда слот выбирается, игрок получает таймер (эффективное время),

ведущий отсчѐт к нулю. Если таймер ещѐ не достиг нуля, слот считается активным. Игрок

может быть атакован хитдэфом, только если аттрибуты этого хитдэфа появятся во всех

текущих активных слотах. Использование этого контроллера выбирает указанный слот для

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

ограничении.

Образец: игрок не может быть ударен всеми видами атаки:

trigger1 = 1

type = NotHitBy

value = SCA

Игрок не может быть удачно атакован нормальными атаками и всеи файрболлами:

trigger1 = 1

type = NotHitBy

value = NA, AP

Null

Null

Заставляет стейт не действовать. Полезно для временного отключения стэйт-контроллеров

простым изменением ихнего типа на Null.

Примичание: любые тригеры асоциированные с теми что в контролере, будут все ещѐ будут

восприниматься.

Так можно использовать этот контроллер что б задавать нужные в стейте параметры,

например, присваивать значения переменным, писать формулы.

Offset

Offset

Page 67: Сoding mugen school rus by midnight

67 / 104

Изменяет смещение отображения игрока. Игрок рисуется перемещѐнным от его оси этой

суммой.

Дополнительные параметры:

х = значение_х (плавающее число)

у = значение_у (плавающее число)

Указывает смещения по осям X и Y соответственно. Вы можете указать один или оба из

этих дополнительных параметров.

PalFX

PalFX

Принимает временные эффекты палитры игрока. Это также воздействует на любые

эксплоды и хелперы игрока, только если они не имеют ownpal = 1.

Дополнительные параметры:

time = длительность (целое)

Указывает количество тиков, на протяжении которых будут действовать эффекты палитры.

Указать -1, чтобы эффекты палитры были бесконечными. Указать 0, чтобы остановить

любые еѐ эффекты.

add = добавить_красный, добавить_зелѐный, добавить_синий (целые)

mul = умножить_красный, умножить_зелѐный, умножить_синий (целые)

Каждый дополнительный компонент добавляется для присвоения к компоненту палитры

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

разделѐнным на 256. Для примера, если добавить_красный является красным компонентом

оригинальной палитры игрока, то новым красным компонентом будет:

(красная_палитра + добавить_красный)*(умножить_красный)/256

Значения умножателя должны быть >= 0. Умолчания этих параметров для палитры без

изменений:

add = 0, 0, 0

mul = 256, 256, 256

sinadd = амплитуда_красного, амплитуда_зелѐного, амплитуда_синего, период (целые)

Создаѐт дополнительный синусоидальный эффект для эффектов палитры.Указывается в

тиках период синусоидальной волны и параметры контроля амплитуды синусоидальной

волны для соответствующих компонентов. Для примера, если t представляет собой

количество тиков, прошедших с активации контроллера PalFX, и красная_палитра – это

Page 68: Сoding mugen school rus by midnight

68 / 104

красный компонент оригинальной палитры игрока, тогда красным компонентом палитры за

время t будет:

(красная_палитра + добавить_красный +

амплитуда_красного*sin(2*π*t/период))*(умножить_красный)/256

invertall = значение (булево, 0 или 1)

Если 1, то цвета в палитре будут обращены, создавая «эффект негатива». Цветовая

инверсия принимается перед эффектами add и mul. По умолчанию 0.

color = значение (целое)

Воздействует на цветовой уровень палитры. Если 0, палитра будет в серых тонах. Если 256,

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

эффект. Эффекты этого параметра вступают в действие раньше, чем invertall, add и mul.

Значения должны быть в диапазоне 0-256. По умолчанию 256.

ParentVarAdd

ParentVarAdd

Если игрок хелпер, добавляется значение к рабочей переменной родителя.Этим

контроллером может быть добавлена любая плавающая или целая переменная. Если игрок

не является хелпером, контроллер не подействует.

Необходимые параметры (версия для целых чисел):

v = номер_переменной (целое)

Определяется целым числом между 0 и 59.

value = целое_выражение (целое)

Это значение для добавления к целой переменной, показанной в параметре v.

Необходимые параметры (версия для плавающих чисел):

fv = номер_переменной (целое)

Определяется целым числом между 0 и 39.

value = плавающее_выражение (плавающее число)

Это значение для добавления к плавающей переменной, показанной в параметре v.

Альтернативный синтаксис:

var(номер_переменной) = целое_выражение (версия для целых чисел)

Page 69: Сoding mugen school rus by midnight

69 / 104

fvar(номер_переменной) = плавающее_выражение (версия для плавающих чисел)

Примечания: исходя из исторических соображений, запомните, что этот альтернативный

синтаксис для VarAdd, записанный выше, не сопосталяется ни с синтакисисом для

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

внутри выражения. Если вы разместили второго игрока в заказанном стэйте через удачную

атаку, не используйте назначение переменной внутри заказанных стэйтов. Иначе вы

перезапишете родительские переменные второго игрока, которые значительно важнее.

ParentVarSet

ParentVarSet

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

может быть выбрана любая плавающая или целая переменная. Если игрок не является

хелпером, контроллер не подействует.

Необходимые параметры (версия для целых чисел):

v = номер_переменной (целое)

Определяется целым числом между 0 и 59.

value = целое_выражение (целое)

Это значение для добавления к целой переменной, показанной в параметре v.

Необходимые параметры (версия для плавающих чисел):

fv = номер_переменной (целое)

Определяется целым числом между 0 и 39.

value = плавающее_выражение (плавающее число)

Это значение для добавления к плавающей переменной, показанной в параметре v.

Альтернативный синтаксис:

var(номер_переменной) = целое_выражение (версия для целых чисел)

fvar(номер_переменной) = плавающее_выражение (версия для плавающих чисел)

Примечания: исходя из исторических соображений, запомните, что этот альтернативный

синтаксис для назначения переменной, записанный выше, не сопосталяется ни с

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

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

заказанном стэйте через удачную атаку, не используйте назначение переменной внутри

заказанных стэйтов. Иначе вы перезапишете родительские переменные второго игрока,

которые значительно важнее.

Page 70: Сoding mugen school rus by midnight

70 / 104

Pause

Pause

Делает паузу в игре на определѐнный отрезок времени. Действия игрока и арены

«замораживаются» на протяжении этого времени.

Необходимые параметры:

time = t (целое)

Это количество игровых тиков, используемых для паузы.Действительные значения для t –

все положительные числа, начиная с 0.

Дополнительные параметры:

endcmdbuftime = bt (целое)

Это количество тиков, на протяжении которых при протекании отрезка времени

завершения паузы команды движений игрока будут внесены в буфер. Внесенные в буфер

команды будут обнаружены триггерами «command» незамедлительно после окончания

паузы. Буферизация принимает только игроков, которые не способны двигаться на

протяжении паузы (смотрите параметр movetime). Действительные значения для

endcmdbuftime могут быть от нуля до t, где t

является значением параметра time. По умолчанию 0.

movetime = mt (целое)

Это длительности старта паузы в тиках, когда игроку позволено двигаться. Обнаружение

столкновения завершается на протяжении этого времени, что позволяет ударить других

игроков. Действительные значения для mt от 0 до t, где t

является значением параметра time. По умолчанию 0.

pausebg = p (булево, 0 или 1)

Если 1, действия арены прекращаются на протяжении паузы. Если 0, арена продолжает

отображать свои эффекты во время паузы. По умолчанию 1.

Примечание: выполнение контроллера Pause на протяжении времени паузы другого такого

же контроллера будет отменять эффект предыдущего. Старт действия этого контроллера во

время суперпаузы будет задерживать эффекты паузы до тех пор, пока суперпауза не

закончится.

PlayerPush

PlayerPush

Отключает проверку нажатий игрока на 1 тик. Проверка нажатия остерегает игроков от

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

уворачивающегося типа игрок может пройти через другого во время наносимого удара.

Page 71: Сoding mugen school rus by midnight

71 / 104

Необходимые параметры:

value = флаг_нажатия (целое)

Если не 0, то проверка нажатия будет включена. Если 0 – тогда отключается.

PlaySnd

PlaySnd

Проигрывает звук.

Необходимые параметры:

value = номер_группы, номер_звука (целые)

Эти два параметра соответствуют идентификации пары данных назначенного звука из

SND-файла игрока. Для проигрывания звука из common.snd добавьте префикс F к номеру

группы.

Дополнительные параметры:

volume = уровень_громкости (целое) - описание для предидущих версий и версии 1.0

Уровень громкости 0 для нормальной громкости, положительное число – для повышения,

отрицательное – для смягчения.

volumescale = уровень_громкости (целое) - описание для версии 1.1

Определяет уровень громкости от 0 до 100. 100 = 100% громкость, 50 = половина громкости

звука и т.д

channel = номер_канала (целое)

Указывает, на каком из звуковых каналов игрока будет проигрываться этот звук. Только

один голос может проигрываться в особом канале на время. Для примера, если вы хотите

проигрывать звук на втором канале, то проигрывание любого другого звука на этом же

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

вместо него. 0 – это специальный канал, запасной, для голосов игрока. Голоса нулевого

канала останавливаются, когда игрок делает удар. Рекомендовано проигрывать голоса

вашего бойца на нулевом канале.Если не учтено, то по умолчанию -1 - это значит, что звук

будет проигрываться на свободном канале.

lowpriority = приоритет (целое)

Действует только тогда, когда номер_канала не равен -1. Если приоритет не 0, то звук,

играющий в текущий момент времени на этом канале из предыдущего PlaySnd, не может

быть прерван текущим звуком.

Page 72: Сoding mugen school rus by midnight

72 / 104

freqmul = f (плавающее число)

Частота текущего звука будет умножена на f. Для примера, freqmul = 1.1 даст в результате

звук с повышенным тоном. По умолчанию 1.0 (частота не меняется).

loop = флаг_зацикливания (целое)

Если значение не нулевое, то звук будет проигрываться раз за разом. По умолчанию 0.

pan = p (целое)

(взаимно исключающий с параметром abspan)

Это позиционное смещение звука, выраженное в пикселях. Если p>0, то звук смещается

впереди игрока, если p<0, то позади него. По умолчанию 0.

abspan = p (целое)

(взаимно исключающий с параметром pan)

Как и pan, за исключением, что звук доносится из центра экрана, не с положения игрока.

Образец: звук 2,0 играет из SND-файла бойца:

type = PlaySnd

value = 2,0

Образец: звук 5,2 играет из файла common.snd:

type = PlaySnd

value = F5,2

PosAdd

PosAdd

Смещает положение игрока указанными суммами. Координата Х, относительно оси игрока,

с положительными значениями двигается в направлении лица игрока. Координата Y,

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

вниз.

Дополнительные параметры:

x = значение_х (плавающее число)

у = значение_у (плавающее число)

Вы можете на время указать один или оба дополнительных параметра.

PosFreeze

PosFreeze

Page 73: Сoding mugen school rus by midnight

73 / 104

Временно заставляет «заморозить» положение игрока.

Дополнительные параметры:

value = флаг_«замораживания» (целое)

Если 1, позиция игрока будет заморожена, если 0, положение игрока не будет

«заморожено». По умолчанию 1.

PosSet

PosSet

Выбирает положение игрока на указанных координатах. Координата Х, относительно

центра экрана, с положительными значениями движется вправо. Координата Y,

относительно пола, с отрицательными значениями движется вверх.

Дополнительные параметры:

x = значение_х (плавающее число)

у = значение_у (плавающее число)

Вы можете на время указать один или оба дополнительных параметра.

PowerAdd

PowerAdd

Добавляет указанную сумму к силе игрока.

Необходимые параметры:

value = добавить_сумму (целое)

Количество добавляемой игроку силы.

PowerSet

PowerSet

Выбирает количество имеющейся у игрока силы.

value = количество_силы (целое)

Выбор количества силы у игрока.

Projectile

Projectile

Создаѐт файрболл для игрока. Этот контроллер имеет все параметры контроллера HitDef, а

Page 74: Сoding mugen school rus by midnight

74 / 104

также имеет множество дополнительных параметров.

Дополнительные параметры:

projID = идентификатор (целое)

Указывает идентификационный номер для ссылки на этот файрболл. Должен быть

положительным числом, если указан.

projanim = номер_анимации (целое)

Указывает номер анимации в качестве таковой для отображения файрболла. По умолчанию

0.

projhitanim = номер_анимации (целое)

Указывает номер анимации, когда файрболл ударяет оппонента. По умолчанию 1 (нет

изменений в анимации).

projremanim = номер_анимации (целое)

Указывает номер анимации, когда файрболл после попадания убирается с экрана. Если не

учтено, вместо этого параметра используется projhitanim.

projcancelanim = номер_анимации (целое)

Указывает номер анимации, когда файрболл отменѐн столкновением с другим файрболлом.

Если не учтено, вместо этого параметра используется projremanim.

projscale = масштаб_х, масштаб_у (плавающее числа)

Указывает фактор масштабирования файрболла. Финальный масштаб определяется

воздействием этих параметров и параметром proj.doscale в группе [Size] в CNS-файле

игрока. По умолчанию 1,1 (нормальный размер).

projremove = флаг_убирания (целое)

Выбрать не нулевое значение, чтоб файрболл был убран после того, как ударит, или 0 – для

отключения этого поведения. По умолчанию 1.

projremovetime = время_убирания (целое)

Указывает количество тиков, по истечению которых файрболл будет убран с экрана. По

умолчанию -1 (таймаут бесконечен).

velocity = скорость_х, скорость_у (плавающие числа)

Указывает скорости полѐта файрболла. По умолчанию 0,0.

Page 75: Сoding mugen school rus by midnight

75 / 104

remvelocity = скорость_х, скорость_у (плавающие числа)

Указывает скорости полѐта файрболла до момента убирания его с экрана. По умолчанию

0,0.

accel = ускорение_х, ускорение_у (плавающие числа)

Указывает принятое для файрболла ускорение в направлении осей Х и Y. По умолчанию

0,0.

velmul = умножатель_х, умножатель_у (плавающие числа)

Указывает умножатели скоростей фарболла в направлении осей Х и Y. Умножатели

действуют каждый тик времени на скорости файрболла. По умолчанию 1,1.

projhits = число_ударов (целое)

Указывает число ударов, которые успеет произвести файрболл до момента убирания. По

умолчанию 1.

projmisstime = время_промаха (целое)

Если файрболл имеет множественные удары, указывает наименьшее число прошедших

тиков между ударами. По умолчанию 0. Нулевое значение не приемлемо в случае

множественных ударов файрболла.

projpriority = приоритетность_файрболла (целое)

Указывает приоритетность данного файрболла. Если файрболл сталкивается с другим

файрболлом одинаковой приоритетности, они оба будут отменены. Если он сталкивается с

другим файрболлом с более низкой приоритетностью, то этот другой файрболл будет

отменѐн. По умолчанию 1.

projsprpriority = приоритетность (целое)

Указывает приоритетность данного файрболла. Спрайты с более высокой приоритетностью

будут нарисованы поверх спрайтов с более низкой. По умолчанию 3.

projedgebound = значение (целое)

Это расстояние в пикселях от края экрана до файрболла до момента его убирания. По

умолчанию 40.

projstagebound = значение (целое)

Указывает наибольшее расстояние полѐта файрболла от края уровня (не экрана), до того,

как он будет убран. По умолчанию 40.

Page 76: Сoding mugen school rus by midnight

76 / 104

projheightbound = lowbound, highbound (целые)

Указывает наименьшее и наибольшее Y-значение досягаемости файрболла. Если файрболл

покидает эти границы, он убирается. Помните: с тех пор, как Y-значение уменьшается с

увеличением высоты на экране, lowbound актуально указывает наибольшую высоту,

которую может достигнуть файрболл. Эти параметры по умолчанию -240, 1.

offset = смещение_х, смещение_у (целые)

Указывает координаты Х и Y для точки создания файрболла. По умолчанию 0,0. Точное

поведение этих параметров зависит от postype.

postype = ограничение

Ограничение указывает тип позиции – как интерпретировать параметры offset. Во всех

случаях положительное смещение Y означает перемещение вниз. Действительные значения

для postype следующие:

-p1

Интерпретирует положение относительно оси первого игрока. Положительное смещение Х

происходит впереди первого игрока. Это ограничение берѐтся по умолчанию.

-р2

Интерпретирует положение относительно оси второго игрока. Положительное смещение Х

происходит впереди второго игрока.

-front

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

впереди себя, и позиция_у соответствует верхушке экрана. Положительное смещение Х –

вдали от центра экрана, тогда как отрицательное смещение Х – впереди около центра.

-back

Интерпретирует позицию_х относительно края экрана, которая видится позади себя первым

игроком, и позиция_у соответствует верхушке экрана. Положительное смещение Х

происходит в центре экрана, тогда как отрицательное смещение Х - далеко от центра.

-left

Интерпретирует позицию_х и позицию_у относительно левого верхнего угла экрана.

Положительное смещение Х происходит с правой стороны экрана (направо).

-right

Интерпретирует позицию_х и позицию_у относительно правого верхнего угла экрана.

Положительное смещение Х происходит с левой стороны экрана (налево).

Page 77: Сoding mugen school rus by midnight

77 / 104

projshadow = тень_красная, тень_зелѐная, тень_синяя (целые)

Указывает красный, зелѐный и синий компоненты тени файрболла. Эти компоненты

должны быть целыми числами между 0 и 255 включительно. Если указать красный

компонент тени

как -1, то будет использован цвет тени уровня. Более высокое значение компонента –

меньше цвета будет отображено в тени. Идеально чѐрная тень это 255, 255, 255. По

умолчанию 0, 0, 0 (тень отсутствует).

supermovetime = время_движения (целое)

Определяет количество тиков, по истечению которых файрболл будет «разморожен» во

время паузы. По умолчанию 0.

afterimage.time = время_шлейфа (целое)

Если активировано, добавляет шлейф для файрболла. Эти параметры такие же, как и в

контроллере AfterImage, только с префиксом «afterimage.».

Примечание: все файрболлы, созданные хелперами, немедленно становятся присвоенными

корнем.

RemapPal

RemapPal

Меняет одну из палитр игрока на другую

source = група_источник_палитры, номер_палитры_в групе (целое)

source - палитра которую надо заменить

dest = група_источник_палитры, номер_палитры_в групе (целое)

dest - палитра на которую хотим заменить

Пример:

type = RemapPal

source = 1,1

dest = 1,3

RemoveExplod

RemoveExplod

Убирает все эксплоды игрока или только эксплоды с указанным ID-номером.

Дополнительные параметры:

Page 78: Сoding mugen school rus by midnight

78 / 104

ID = идентификатор (целое)

Это идентификационный номер убираемого эксплода. Если не указано, убирает все

эксплоды.

ReversalDef

ReversalDef

Назначает реверсирование. Если одна из Clsn1(красных)-рамок второго игрока

контактирует с одной из Clsn1(красной)-рамок первого игрока и ReversalDef активен, тогда

первый игрок перенаправит атаку второго игрока. Использовать с p1stateno (и

дополнительно с p2stateno) для создания реверсивных атак.

Этот контроллер имеет хитдэф-параметры pausetime, sparkno, hitsound, p1stateno и p2stateno,

плюс:

Необходимые параметры:

reversal.attr = аттрибутное_ограничение

Указывает список аттрибутов атак, которые могут быть перенаправлены данным

контроллером.

Это стандартное аттрибутное ограничение удара. Для примера: reversal.attr = SA, NA, SA

означает: стоя + с воздуха, нормальная атака, специальная атака.

Примечание: параметр sparkxy взят как смещение для sparkxy хитдэфа второго игрока.

ScreenBound

ScreenBound

Определяет, будет ли движение игрока принудительно показано на экране или нет. Также

определяет, будет ли камера двигаться вслед за игроком или нет. Результаты действия этого

контроллера будут действительными на 1 тик времени.

Дополнительные параметры:

value = флаг_привязки (целое)

Если 0, то игрок будет пособен сместиться с экрана.

movecamera = флаг_движения_х, флаг_движения_у (целые)

Определяет, будет ли камера панорамно следить за игроком в направлении осей Х и Y

соответственно. По умолчанию 0,0.

SelfState

SelfState

Как и ChangeState, только за исключением, что текущий стэйт изменится на указанный

Page 79: Сoding mugen school rus by midnight

79 / 104

среди собственных стэйтов игрока. Используйте, когда вы разместили игрока в заказанном

стэйте через атаку и желаете возвратить его к нормальному состоянию.

SprPriority

SprPriority

Изменяет приоритетность спрайтов игрока. Спрайты с более высокой приоритетностью

рисуются поверху спрайтов с более низкой.

Необходимые параметры:

value = уровень_приоритетности (целое)

Действительные уровни приоритетности в пределах от -5 до 5.

StateTypeSet

StateTypeSet

Изменяет текущий тип стэйта и тип движения. Полезно для стэйтов, переходящих из

«земли» в «воздух» и т.п.

Дополнительные параметры:

statetype = тип_стэйта (ограничение)

Может быть: А – для движений в воздухе, С – для сидячего положения, L – для лежащего.

По умолчанию тип стэйта остаѐтся без изменений.

movetype = тип_движения (ограничение)

Может быть: I – для бездействия, А – для атаки, Н – при получении удара. По умолчанию

тип движения остаѐтся без изменений.

physics = физика (ограничение)

Может быть: А - для движений в воздухе, С – сидя, S – стоя, N – без указанной физики

движения. По умолчанию физика движения не меняется.

SndPan

SndPan

Изменяет панорамирование текущего играющего звука. Этот контроллер может

беспрестанно работать для сглаженного движение звука сквозь звуковое поле или для

звука, преследующего игрока.

Необходимые параметры:

channel = номер_канала (целое)

Page 80: Сoding mugen school rus by midnight

80 / 104

Указывает номер канала звука для панорамирования.

pan = p или abspan = р (целые)

Эти оба параметра не могут быть указаны одновременно. р определяет звуковое смещение в

пикселях от игрока (в случае pan) или от центра экрана (в случае abspan). Смотрите PlaySnd

для описания параметров панорамирования.

StopSnd

StopSnd

Останавливает любой звук, который играет в указанном канале.

Необходимые параметры:

channel = номер_канала (целое)

Останавливает проигрывание любого звука на указанном номере канала. Если -1, тогда

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

злоупотребляйте этой особенностью.

SuperPause

SuperPause

«Замораживает» геймплей и затемняет экран. Пока какой-либо игрок «заморожен», для

него время останавливается также. Используйте для драматической паузы на протяжении

старта гипер-атак.

Дополнительные параметры:

Этот контроллер принимает все дополнительные параметры контроллера Pause. Вдобавок,

также есть следующие параметры:

time = время_паузы (целое)

Определяет количество тиков для продолжительности паузы. По умолчанию 30 тиков

(полсекунды для скорости по умолчанию).

anim = номер_анимации (целое)

Выбирает номер анимации (из файла fightfx.air) для проигрывания на протяжении

суперпаузы. По умолчанию 30 (анимация супервспышки). Если -1, анимация

проигрываться не будет. Если вы предварительно поставите префикс S впереди номера

анимации, она будет использована из AIR-файла игрока. Для примера: anim = S10.

sound = группа_звука, номер_звука (целые)

Проигрывает звук (из common.snd) на протяжении суперпаузы. По умолчанию -1, что

означает, что звук проигрываться не будет. Если вы предварительно поставите префикс S

Page 81: Сoding mugen school rus by midnight

81 / 104

впереди номера группы, тогда звук будет использован из собственного SND-файла игрока.

Для примера: sound = S10,0.

pos = позиция_х, позиция_у (плавающие числа)

Определяет смещение (от осей игрока), на котором будет проигрываться анимация

супервспышки. По умолчанию 0,0.

darken = значение (булево, 0 или 1)

Если 1, экран будет затемнѐн на протяжении суперпаузы. Выберите 0 для отключения этого

эффекта. По умолчанию 1.

p2defmul = умножатель_защиты (плавающее число)

Это сумма, на которую временно умножается защита любых целей, которые имеет игрок.

Использовать, чтобы делать сцепление в суператаку без ущерба. Выбор значения 1 не будет

делать никаких изменений в защите цели. 0 – это специальное значение, которое выбирает

защиту числом, указанным в Super.TargetDefenceMul в секции [Rules] в файле mugen.cfg.

По умолчанию 0. Действительными значениями являются все положительные числа,

включая ноль.

poweradd = значение (целое)

Добавляет указанную сумму к силе игрока. По умолчанию 0.

unhittable = значение (булево, 0 или1)

Если 1, игрок не сможет быть атакован на протяжении суперпаузы. Выбрать 0 для

отключения этого параметра. По умолчанию 1.

Примечание: если перед этим предварительно был выполнен контроллер Pause, и действие

по-прежнему приостановлено, выполнение SuperPause будет преобладать над эффектами

контроллера Pause. На протяжении SuperPause время, прошедшее с истечением эффектов

контроллера Pause, не будет отсчитываться.

TargetBind

TargetBind

Привязывает указанные цели игрока к указанному положению относительно оси игрока.

Дополнительные параметры:

time = время_привязки (целое)

Указывает количество тиков, на протяжении которых привязка будет эффективной. По

умолчанию 1.

ID = идентификатор (целое)

Page 82: Сoding mugen school rus by midnight

82 / 104

Указывает ID-номер желаемой цели для еѐ привязки. Только цели с этим

идентификационным номером будут привязаны. По умолчанию -1 (привязываются все

цели).

pos = позиция_х, позиция_у (плавающие числа)

Указывает смещение от оси игрока для места привязки цели. По умолчанию 0,0.

TargetDrop

TargetDrop

Сбрасывает все цели со списка целей, за исключением возможных целей, имеющих

указанный идентификационный номер. Полезно для применения эффектов только к

определѐнным целям.

Дополнительные параметры.

excludedID = идентификатор (целое)

Любые цели с идентификационным номером, не равным указанному идентификатору,

будут утеряны из списка целей. По умолчанию -1 (сбрасывает все цели).

keepone = значение (целое)

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

несколько целей, чьи идентификационные номера такие же, как и указанный excludedID,

одна будет выбрана случайно, а остальные будут утеряны. Это поведение полезно в

бросках, чтобы уберечься от броска нескольких оппонентов одновременно. Если 0, тогда

все цели с подходящим идентификационным номером будут сохранены. По умолчанию 1.

TargetFacing

TargetFacing

Обращает все цели лицом в указанном направлении относительно игрока.

Необходимые параметры:

value = значение_облицовки (целое)

Если значение положительное, все цели будут развѐрнуты лицом в том же направлении, что

и игрок. Если отрицательное, все цели будут развѐрнуты в противоположную к лицу игрока

сторону.

Дополнительные параметры:

ID = идентификатор (целое)

Указывает идентификационный номер желаемой цели для действия. Только цели с этим ID

Page 83: Сoding mugen school rus by midnight

83 / 104

будут задействованы. По умолчанию -1 (действует на все цели).

TargetLifeAdd

TargetLifeAdd

Добавляет указанную сумму к жизни всех целей, масштабированную умножателями

защиты целей, если необходимо.

Необходимые параметры:

value = добавить_сумму (целое)

Указанное количество добавляется к жизни каждой цели.

Дополнительные параметры:

ID = идентификатор (целое)

Указывает идентификационный номер желаемой цели для действия. Только цели с этим ID

будут задействованы. По умолчанию -1 (действует на все цели).

kill = флаг_гибели (целое)

Если 0, то отнимание жизни не переступит отметку в 1 очко на лайфбаре. По умолчанию 1.

absolute = флаг_абсолютности (целое)

Если 1, тогда параметр value не будет масштабироваться умножателями атаки и защиты. По

умолчанию 0.

TargetPowerAdd

TargetPowerAdd

Добавляет указанную сумму к силе всех целей.

Необходимые параметры:

value = добавить_сумму (целое)

Количество добавляемой силы для всех целей.

Дополнительные параметры:

ID = идентификатор (целое)

Указывает идентификационный номер желаемой цели для действия. Только цели с этим ID

будут задействованы. По умолчанию -1 (действует на все цели).

TargetState

Page 84: Сoding mugen school rus by midnight

84 / 104

TargetState

Заставляет все цели перейти в указанный номер стэйта.

Необходимые параметры:

value = номер_стэйта (целое)

Номер стэйта, на который сменится текущий стэйт всех целей.

Дополнительные параметры:

ID = идентификатор (целое)

Указывает идентификационный номер желаемой цели для действия. Только цели с этим ID

будут задействованы. По умолчанию -1 (действует на все цели).

TargetVelAdd

TargetVelAdd

Добавляет указанную сумму к скоростям всех целей. Скорость по оси Х положительная в

направлении от лица цели, тогда как положительная скорость по оси Y направлена вниз по

экрану.

Дополнительные параметры:

x = значение_х (плавающее число)

у = значение_у (плавающее число)

Вы можете назначить один или оба дополнительных параметра одновременно.

ID = идентификатор (целое)

Указывает идентификационный номер желаемой цели для действия. Только цели с этим ID

будут задействованы. По умолчанию -1 (действует на все цели).

Пример: применяет «гравитацию» ко всем целям:

[State Gravity]

type = TargetVelAdd

trigger1 = 1

y = 0.45

TargetVelSet

TargetVelSet

Выбирает скорости всех целей из указанных значений. Скорость по оси Х положительная в

направлении от лица цели, тогда как положительная скорость по оси Y направлена вниз по

Page 85: Сoding mugen school rus by midnight

85 / 104

экрану.

Дополнительные параметры:

x = значение_х (плавающее число)

у = значение_у (плавающее число)

Вы можете назначить один или оба дополнительных параметра одновременно.

ID = идентификатор (целое)

Указывает идентификационный номер желаемой цели для действия. Только цели с этим ID

будут задействованы. По умолчанию -1 (действует на все цели).

Trans

Trans

Переопределяет параметры прозрачности анимации игрока для текущего тика игрового

времени. Полезно для специальных эффектов.

Необходимые параметры:

trans = тип_прозрачности (ограничение)

Должен быть одним из следующих:

default – ничего не меняет

add – рисует с полной добавочной прозрачностью

add1 – рисует с добавочной прозрачностью при alpha = 256, 128

sub – рисует с инвертированной прозрачностью

addalpha – рисует с добавочной прозрачностью (альфа должна быть указана)

Дополнительные параметры:

alpha = альфа_насыщенности, альфа_прозрачности (целые)

Это значение придаваемой насыщенности и прозрачности для типа прозрачности addalpha.

Действительны значения от 0 до 256. По умолчанию 256, 0, если не учтено.

Пример: боец блекнет за 256 тиков:

[State Trans]

type = Trans

trigger1 = time < 256

trans = addalpha

alpha = time, 256-time

Turn

Page 86: Сoding mugen school rus by midnight

86 / 104

Turn

Мгновенно поворачивает игрока лицом в противоположную сторону. Анимация поворота

при этом не проигрывается.

VarAdd

VarAdd

Добавляет значение к рабочей переменной игрока.Этим контроллером может быть

добавлена любая плавающая или целая переменная.

Необходимые параметры (версия для целых чисел):

v = номер_переменной (целое)

Определяется целым числом между 0 и 59.

value = целое_выражение (целое)

Это значение для добавления к целой переменной, показанной в параметре v.

Необходимые параметры (версия для плавающих чисел):

fv = номер_переменной (целое)

Определяется целым числом между 0 и 39.

value = плавающее_выражение (плавающее число)

Это значение для добавления к плавающей переменной, показанной в параметре v.

Альтернативный синтаксис:

var(номер_переменной) = целое_выражение (версия для целых чисел)

fvar(номер_переменной) = плавающее_выражение (версия для плавающих чисел)

Примечания: исходя из исторических соображений, запомните, что этот альтернативный

синтаксис для VarAdd, записанный выше, не сопосталяется ни с синтакисисом для

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

внутри выражения. Если вы разместили второго игрока в заказанном стэйте через удачную

атаку, не используйте назначение переменной внутри заказанных стэйтов. Иначе вы

перезапишете родительские переменные второго игрока, которые значительно важнее.

VarRandom

VarRandom

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

Page 87: Сoding mugen school rus by midnight

87 / 104

не могут быть выбраны этим контроллером.

Необходимые параметры:

v = номер_переменной (целое)

Это показатель целой переменной для выбора. Определяется целым числом между 0 и 59.

Дополнительные параметры:

range = наименьшее_значение, наибольшее_значение (целые)

Указываются наименьшее и наибольшее значения, назначенные этим контроллером

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

целое число из указанного диапазона. По умолчанию диапазон от 0 до 1000. Если только

один аргумент указан, тогда в таком случае диапазон будет использоваться в следующем

виде:

range = 0, аргумент.

Примечания: если вы разместили второго игрока в заказанном стэйте через удачную атаку,

не используйте назначение переменной внутри заказанных стэйтов. Иначе вы перезапишете

родительсике переменные второго игрока, которые значительно важнее.

Пример: назначает случайное число между 0 и 500 для переменной var(5):

type = VarRandom

v = 5

range = 500

VarRangeSet

VarRangeSet

Выбирает смежный диапазон рабочих переменных игрока к одному и тому же значению.

Этим контроллером может быть добавлена любая плавающая или целая переменная, но

только не оба вида одновременно.

Необходимые параметры (версия для целых чисел):

value = целое_выражение (целое)

Оценивается единажды, чтобы дать значение, которое назначено ко всем целым

переменным в диапазоне.

Необходимые параметры (версия для плавающих чисел):

fvalue = целое_выражение (целое)

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

переменным в диапазоне.

Page 88: Сoding mugen school rus by midnight

88 / 104

Дополнительные параметры (в обеих версиях):

first = первый_показатель (целое)

Указывает низший предел диапазона переменных для выбора.

По умолчанию 0 (первая переменная).

last = последний_показатель (целое)

Указывает высший предел диапазона переменных для выбора. По умолчанию 59 для целых

переменных или 39 для плавающих (это последние доступные переменные в обеих случаях

соответственно).

Примечания: если вы разместили второго игрока в заказанном стэйте через удачную атаку,

не используйте назначение переменной внутри заказанных стэйтов. Иначе вы перезапишете

родительские переменные второго игрока, которые значительно важнее

VarSet

VarSet

Выбирает одну из рабочих переменных игрока. Этим контроллером может быть выбрана

любая плавающая или целая переменная.

Необходимые параметры (версия для целых чисел):

v = номер_переменной (целое)

Определяется целым числом между 0 и 59.

value = целое_выражение (целое)

Это значение для добавления к целой переменной, показанной в параметре v.

Необходимые параметры (версия для плавающих чисел):

fv = номер_переменной (целое)

Определяется целым числом между 0 и 39.

value = плавающее_выражение (плавающее число)

Это значение для добавления к плавающей переменной, показанной в параметре v.

Альтернативный синтаксис:

var(номер_переменной) = целое_выражение (версия для целых чисел)

fvar(номер_переменной) = плавающее_выражение (версия для плавающих чисел)

Page 89: Сoding mugen school rus by midnight

89 / 104

Примечания: исходя из исторических соображений, запомните, что этот альтернативный

синтаксис для назначения переменной, записанный выше, не сопосталяется ни с

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

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

заказанном стэйте через удачную атаку, не используйте назначение переменной внутри

заказанных стэйтов. Иначе вы перезапишете родительские переменные второго игрока,

которые значительно важнее

VelAdd

VelAdd

Добавляет указанную сумму к скоростям игрока. Скорость по оси Х положительная в

направлении от лица игрока, тогда как положительная скорость по оси Y направлена вниз

по

экрану.

Дополнительные параметры:

x = значение_х (плавающее число)

у = значение_у (плавающее число)

Вы можете назначить один или оба дополнительных параметра одновременно.

VelMul

VelSet

VelSet

Выбирает скорости игрока из указанных значений. Скорость по оси Х положительная в

направлении от лица цели, тогда как положительная скорость по оси Y направлена вниз по

экрану.

Дополнительные параметры:

x = значение_х (плавающее число)

у = значение_у (плавающее число)

Вы можете назначить один или оба дополнительных параметра одновременно.

VelMul

VelMul

Умножает скорость игрока указанными суммами. Скорость по оси Х положительная в

направлении от лица игрока, тогда как положительная скорость по оси Y направлена вниз

по

экрану.

Page 90: Сoding mugen school rus by midnight

90 / 104

Дополнительные параметры:

x = умножатель_х (плавающее число)

у = умножатель_у (плавающее число)

Вы можете назначить один или оба дополнительных параметра одновременно.

Образец: принимает «трение» для игрока:

type = VelMul

X = 0.8

VictoryQuote

VictoryQuote

Выбирает одну из Выграшных Цытат игрока, отображая на дисплее в выграшном окошке.

value = номер_цытаты (целое)

задает номер цытаты для использования. Возможны значения от 0 до 99

Если номер цытаты неверный, он будет выбран случайно.

По умолчанию -1

Примичание: Этот контроллер может быть вызван любым игроком в любое время матча.

Однако, только выгравшый игрок повлияет на цытату которая показана. Этот контроллер

влияет только на победный экран сразу же после текущего матча. Не будет иметь эффекта

если будет использован хелпером. Цытаты игрока засываються в групе [Quotes] в

константах игрока.

Width

Width

Меняет размер барьера ширины игрока на 1 тик времени. Полезно для контролирования

«напористого» поведения, когда игрок контактирует с другим.

Дополнительные параметры:

edge = ширина_края_спереди, ширина_края_сзади (целые)

Выбирает ширину края игрока впереди и позади. Ширина края определяет, как близко

игрок может достигнуть края экрана. По умолчанию 0,0.

player = ширина_игрока_спереди, ширина_игрока_сзади (целые)

Выбирает игроку ширину спереди и сзади. Ширина игрока определяет, как близко игрок

может достать к другим игрокам. По умолчанию 0,0.

Альтернативный синтаксис:

Page 91: Сoding mugen school rus by midnight

91 / 104

value = ширина_ спереди, ширина_ сзади (целые)

Это стенографический синтаксис для выбора обоих параметров – ширины края и ширины

игрока одновременно.Можно использовать, если параметры края и игрока не указаны.

Примечание: если активировано отображение рамки столкновения, барьер ширины края

отображѐн оранжевым цветом, а барьер ширины игрока – жѐлтым. Если они совпадают,

область совпадения отображается ярко-жѐлтым цветом.

Триггеры

Это алгебраичные и логичные индексы для функциональных типов триггеров.

Abs (Матем)

Abs ( )

Вычесляет абсолютное значение своего аргумента.

Acos (Матем)

Acos ( )

Вычисляет арккосинус (в радианах) указанного аргумента.

Пример:

value = acos(1)

Устаноить значение арккосинус 1, что равно 0.0

AILevel

AILevel Отвечает за уровень сложности Исскуственного Интелекта (ИИ) игрока. Если ИИ игрока включен, значение тригера в диапазоне от 1 (простой) до 8 (самый сложный) Если ИИ игрока отключен, возвращает значение 0 Пример: trigger1 = Random < AILevel * 10 Тригер с вероятностю активации 10% при AILevel 1, 20% при AILevel 2 и.т.д

Alive

Alive

Означает 1 если игрок способен драться, жив

Означает 0 когда игрок нокаутирован.

Page 92: Сoding mugen school rus by midnight

92 / 104

пример:

trigger1 = alive = 0

Активирует тригер когда игрок нокаутирован.

Anim

Anim Отвечает за текущий номер анимации что проигрываеться Пример: trigger1 = anim = 200 Триггер активируеться когда проигрываемая анимация игрока будет 200.

AnimElem

AnimElem(*,***) Использует номер и время фрейма текущей анимации. Полезен для синхронизации событий через фреймы анимации. (напоминание: первый фрейм анимации это 1, а не 0) Форматы: AnimElem = значение1 AnimElem = значение1, [оперон] значение2 Аргументы: [опероны ] =, !=, <, >, <=, >= значение1 (целое) - номер фрейма анимации для проверки значение2 (целое) - значение времени анимации для сравнения Тип присвоения значения: Логический, целый (либо да, либо нет) Если ошибки в условиях: Возвращает нижнее значение если указанный номер элемента недопустимый (например слишком большой или слишком мальенький) Детальное описание: Триггер в формате 1 верный (активируеться) когда анимация находиться в указанном значении (другими словами на указаном фрейме анимации) Триггер в формате 2 верен (активируеться) когда анимация находиться в указанном значении1, и на указаном игровом тик (значение 2) Примеры: trigger1 = AnimElem = 2 Активируется на первом игровом тике, когда анимация игрока будет на элементе 2. Это эквивалентно:

Page 93: Сoding mugen school rus by midnight

93 / 104

trigger1 = AnimElem = 2, = 0 trigger1 = AnimElem = 2, = 4 Активируеться на 4 игровом тике на 2 элементе анимации игрока. trigger1 = AnimElem = 2, >= 0 trigger1 = AnimElem = 3, < 0 Активен весь 2 эелемент анимации игрока до конца 3 элемента. Если 3 элемента не существует, второй строкой должно быть: trigger1 = AnimTime <= 0

AnimElemNo

AnimElemNo Использует номер элемента текущей анимации который будет отображаться в заданное время. Аргументом AnimElemNo являеться время, чтобы проверить игровые тики, по сравнению с настоящим. Формат: AnimElemNo(выражение) Аргументы: (выражение) - выражение, определяющее смещение времени Тип присовоения значения: целые значения. Если ошибки в условиях: Возвращает нижнее значение, если вы пытаетесь проверить время, до начала текущего действия.

Примечание: Если действие в настоящее время в пределах своей части цикла, то предполагается что будет зацикливание. То есть, независимо от того, как далеко в прошлое вы проверяете, AnimElemNo всегда возвращает номер элемента, который лежит в пределах действия цикла . Примеры: trigger1 = AnimElemNo(0) = 2 Активируеться когда элемент анимации (в данном случае это элемент 2) будет отображать нулевой тик в будущем . Это выражение эквивалентно: trigger1 = AnimElem = 2, >= 0 trigger1 = AnimElem = 3, < 0 trigger1 = AnimElemNo(2) = 4 Активируеться когда элемент анимации (в данном случае это элемент 2) будет отображать 2 тик в будущем. Это выражение эквивалентно: trigger1 = AnimElem = 4, >= -2 trigger1 = AnimElem = 5, < -2

AnimElemTime

Page 94: Сoding mugen school rus by midnight

94 / 104

AnimElemTime Использует время , прошедшее с начала указанного фрейма текущей анимации. Полезен для синхронизации событий через фреймы анимации. (напоминание: первый фрейм анимации это 1, а не 0) Формат: AnimElemTime(выражение) Аргументы: (выражение) - выражение, определяющее номер элемента для проверки Тип присовоения значения: целые значения. Если ошибки в условиях: Возвращает нижнее значение, если вы пытаетесь проверить номер элемента, не допустимий для текущего действия. Примеры: trigger1 = AnimElemTime(2) = 0 Активируеться на первом тике элемента 2, текущей анимации игрока. Это эквивалентно с: trigger1 = AnimElem = 2 trigger1 = AnimElemTime(2) = 4 Активируеться на 4 тике после запуска 2 элеманта анимации игрока.

trigger1 = AnimElemTime(2) >= 0 trigger1 = AnimElemTime(3) < 0 Активен весь 2 эелемент анимации игрока до конца 3 элемента. Если 3 элемента не существует, второй строкой должно быть: trigger1 = AnimTime <= 0

AnimExist

AnimExist Возвращает 1, если указанная анимация действия существует для игрока. Результат этого триггера не определяеться, если игрок был помещен в Кастом-Стейт через успешный удар. В этой ситуации используеться SelfAnimExist. Формат: AnimExist(выражение) Аргументы: (выражение) - выражение, определяющее номер анимации. Тип присвоения значения: Логический, целый (либо да, либо нет)

Page 95: Сoding mugen school rus by midnight

95 / 104

Если ошибки в условиях: Возвращает нижнее значение, если определение ошибочное. Примеры: trigger1 = !AnimExist(200) Активируеться если игрок пропустил действие с анимацией 200.

AnimTime

AnimTime Дает разница между временем повторения текущей анимации и проигрывателем анимации времени. Полезно знать, когда в конце анимация была достигнута. ( Время Анимации - это время, в игрровых тиках, что игрок провел в текущей анимации.) Имя может привести к путанице. Попытайтесь думать о нем, как о "времени от конца анимации". Во время анимации, AnimTime всегда будет возвращася к не-положительному числу. Формат: AnimTime Аргументы: нет Тип присвоения значения: целые Если ошибки в условиях: нет Пример: trigger1 = AnimTime = 0 Активируется когда когда время анимации совпадает в временем повтора анимации, другими словами - конец действия анимации.

Asin (Матем)

Asin ( )

Вычисляет арксинус (в радианах) указанного аргумента.

Пример:

value = asin(1)

Устаноить значение арксинус 1, что равно pi/2

Atan(Матем)

Page 96: Сoding mugen school rus by midnight

96 / 104

Atan() Вычисляет арктангенс (в радианах) указанного аргумента.

Пример:

value = atan(1)

Устаноить значение арктангенс 1, что равно pi/4

AuthorName

AuthorName Использует имя автора (которое зазначено в Def-файле). Формат: AuthorName [оперон] "имя" Аргументы: [опероны ] =, != (другие опероны не действенны) "имя" (строка) Тип присвоения значения: Логический, целый (либо да, либо нет) Если ошибки в условиях: нет Пример: trigger1 = Authorname = "Suika" Активируеться если имя автора Suika.

BackEdge (1.1)

BackEdge Использует Х-позицию края экрана позади игрока в абсолютных координатах рабочей области. Формат: BackEdge Аргументы: нет Тип присвоения значения: дробные

Page 97: Сoding mugen school rus by midnight

97 / 104

Если ошибки в условиях: нет Примечание: Этот триггер эквивалентен выражению "ifelse(facing = 1, LeftEdge, RightEdge)". Пример: trigger1 = Pos X + CameraPos X < BackEdge Активируеться если игрок слева от заднего края экрана.

BackEdgeBodyDist

BackEdgeBodyDist Использует дистанцию от задней стороны игрока (заданной в константах) к заднему краю экрана. Формат: BackEdgeBodyDist Аргументы: нет Тип присвоения значения: дробные Если ошибки в условиях: нет Пример: trigger1 = BackEdgeBodyDist < 30 Активируеться если задняя сторона игрока в пределах 30 пикселей от края экрана позади игрока.

BackEdgeDist

BackEdgeDist Использует дистанцию между Х-осью игрока и краем экрана позади него. Формат: BackEdgeDist Аргументы: нет Тип присвоения значения: дробные

Page 98: Сoding mugen school rus by midnight

98 / 104

Если ошибки в условиях: нет Пример: trigger1 = BackEdgeDist < 30 Активируеться если Х-ось игрока в пределах 30 пикселей от края экрана позади игрока.

BottomEdge (1.1)

BottomEdge Использует Y-позицию нижнего края экрана в абсолютных координатах рабочей области. Формат: BottomEdge Аргументы: нет Тип присвоения значения: дробные Если ошибки в условиях: нет Примечание: Этот триггер эквивалентен выражению "Pos Y - ScreenPos Y + GameHeight". Пример: trigger1 = Pos Y < BottomEdge Активируеться если игрок выше нижнего края экрана.

CameraPos (1.1)

CameraPos Использует значение положения камеры относительно арены. Формат: CameraPos [составляющие] Аргументы: [составляющие] X,Y Тип присвоения значения: дробные

Page 99: Сoding mugen school rus by midnight

99 / 104

Если ошибки в условиях: нет Детальное описание: Исходное положение камеры 0,0. Значение "CameraPos X" увеличивается, когда камера движется вправо и уменьшаеться когда влево. Значение "CameraPos Y" уменьшается камера перемещается вверх, увеличиваеться когда вниз. Единицы позиции указаны в coordspace игроке. Пример: trigger1 = CameraPos X >= 0 Активируеться когда камера слева от центра арены.

CameraZoom (1.1)

CameraZoom Использует значение коэффициента масштабирования камеры. Формат: CameraZoom Аргументы: нет Тип присвоения значения: дробные Если ошибки в условиях: нет Примеры: fvar(1) = CameraZoom * ScreenWidth Устанавливает переменной fvar(1) значение коефициента дистанции между правым и левым краем экрана Данная формулировка "CameraZoom * ScreenWidth" эквивалентна к триггеру GameWidth

CanRecover

CanRecover Если игрок в настоящее время в стейте падения, используетья значение 1 что б игрок был способен перейти в стейт востановления, и 0 что б он этого не мог сделать. Триггер бесполезный если игрок в настоящее время не находиться в стейте падения.

Ceil (Матем)

Ceil

Page 100: Сoding mugen school rus by midnight

100 / 104

Вычесляет "потолок" значения (другими словами это округление до высшего значения). Возвращает наименьшее целое число, которое больше или равно заданному аргументу. Примеры: 1. value = ceil(5.5) Значение равно 6. 2. value = ceil(-2) Значение равно -2.

Command

Command (*,***) Активируеться если игрок вводит команды. Формат: сommand [оперон] "имя_команды" Аргументы: [опероны] =, != (другие опероны не действуют) "имя_команды" (строка) - это имя команды Команды определены в CMD файле игрока, и чувствительны к регистру. Если CMD имеет несколько команд с тем же именем, то любая из этих команд будет работать. Названия команд должны быть заключены в двойные кавычки. Тип присвоения значения: Логический, целый (либо да, либо нет) Пример: trigger1 = Command = "fireball motion" Активируеться если игрок вводит команду под именем "fireball motion"

Cond (Матем) (1.1)

Cond (условие, правда, ложь) Этот триггер использует три аргумента. Первым аргументом является условии. Если условие истинно (т.е. ненулевое), условие вычисляется и активируеться Второй аргумент. Если условие ложно, условие вычисляется и активируеться Третий аргумент. Если условие неверно, то активируеться "Конд нулевой" без оценки Второго или Третьего аргументов. Во всех случаях неиспользованные аргументы не оцениваются. Таким образом, условие может быть задано через Cond, вместо IfElse, чтобы избежать побочных эффектов, которые были бы вызваны оценкой неиспользуемого параметра Формат: Cond (Условие,Правда,Ложь)

Page 101: Сoding mugen school rus by midnight

101 / 104

Аргументы: Условие - выражение для обработки Правда - выражение значения для использования, если Условие ненулевое Ложь - выражение значения для использования, если Условие нулевое. Пример: value = Cond(var(3),1,2) Установит значение 1, если var(3) не ноль, и установит значение 2 если var(3) ноль

Cos (Матем)

Сos ( )

Вычисляет косинус (в радианах) указанного аргумента.

Пример:

value = cos(0)

Устаноить значение арккосинус 1, что равно 1.0

Ctrl

Ctrl Использует флаг контроля над P1

Пример: trigger1 = Ctrl Активируеться когда игрок имеет контроль над персонажем.

DrawGame

DrawGame Означает 1 если игрок (в одиночном или командном режиме) закончил раунд в ничию, 0 если нет.

Пример: trigger1 = DrawGame Активируеться если игрок закончил раунд в ничию

E (Матем)

E Использует значении Е (2.718281828...)

Page 102: Сoding mugen school rus by midnight

102 / 104

Exp (Матем)

Exp

Вычисляет экспоненту от аргумента (Е возведенное в степень аргумента.) Это приводит к несколько более точные результаты, чем эквивалентное выражение Е**(аргумент).

Пример: value = exp(4-var(0)) Устанавливает значение Е в количестве 4-var(0)

Facing

Facing Означает 1 если игрок повернут лицом вправо, и -1 если игрок повернут лицом влево

Пример: Trigger = Facing = -1 Активиреться если игрок повернут лицов в левую сторону экрана

Floor (Матем)

Floor Вычесляет "дно" значения (другими словами это округление до низшего значения). Возвращает наименьшее целое число, которое больше или равно заданному аргументу. Примеры: 1. value = floor(5.5) Значение равно 5. 2. value = floor(-2) Значение равно -2.

FrontEdge (1.1)

FrontEdge Использует Х-позицию края экрана спереди игрока в абсолютных координатах рабочей области. Формат: FrontEdge Аргументы: нет Тип присвоения значения: дробные

Page 103: Сoding mugen school rus by midnight

103 / 104

Если ошибки в условиях: нет Примечание: Этот триггер эквивалентен выражению "ifelse(facing = 1,RightEdge, LeftEdge)". Пример: trigger1 = facing * (Pos X + CameraPos X) < facing * (FrontEdge) Активируеться если игрок позади переднего края экрана

FrontEdgeBodyDist

FrontEdgeBodyDist Использует дистанцию от передней стороны игрока (заданной в константах) к переднему краю экрана. Формат: FrontEdgeBodyDist Аргументы: нет Тип присвоения значения: дробные Если ошибки в условиях: нет Пример: trigger1 = FrontEdgeBodyDist < 30 Активируеться если передняя сторона игрока в пределах 30 пикселей от переднего края экрана.

FrontEdgeDist

FrontEdgeDist Использует дистанцию между Х-осью игрока и передним краем экрана. Формат: FrontEdgeDist Аргументы: нет Тип присвоения значения: дробные

Page 104: Сoding mugen school rus by midnight

104 / 104

Если ошибки в условиях: нет Пример: trigger1 = FrontEdgeDist < 30 Активируеться если Х-ось игрока в пределах 30 пикселей от переднего края экрана.