Вы вошли как: Гость      
[ Новые сообщения · Участники · Правила форума · Поиск]
Страница 1 из 11
Форум » Общие вопросы по MUGEN » Работа со спрайтами и Кодинг » Условные знаки и обозначения
Условные знаки и обозначения
ScorpionДата: Суббота, 05.05.2012, 14:19 | Сообщение # 1
Профессионал
Группа: Главный Администратор - Сайта
Сообщений: 126
Статус: Не в сети
В этом уроке я расскажу вам для чего нужны в мугене такие символы как + - * / () и другое, и расскажу вам, что они значат.

Символ +
Прибавляет сумму, очень полезен для тех, кто не понимает в математике и просто напросто трудно считать, например если вы хотите, чтобы в вашем стейте time был равен 50, а в последующих стейтах этот time прибавлялся на 50 больше, то можно написать таким образом в следущий стейт: time = 50+50. Также символ служит к другим фунциям, таким как + random или + var и др. Если вы например хотите сделать рандомную анимацию или ещё что-то рандомное, то вам нужно будет написать, к примеру: time = 50+random%5 - будет выбирать рандомно (наугад) любой тик от 50 до 54.

Символ -
Вычитание, пользуемся также как и +, только данная функия отнимает значения, а не прибавляет.

Символ *
Тоже самое что и +, только умножает, таким образом если вы хотите, чтобы в каждый последующий стейт был, например time на 50 больше, то можно написать так, 50*2, в след стейт: 50*3, в след стейт: 50*4 и т.д. Также служит прибавлением фунций, например: если вы хотите, чтобы на time = 0 позиция текущего стейт была 5,5, а на time = 1 - была 6,6, то самым удобным способом можно написать так: pos = (5*(time = 0))|(6*(time = 1)),(5*(time = 0))|(6*(time = 1))

Символ /
Деление, не буду обьяснять и так понятно.

Скобки ()
В скобках надёжнее, поэтому они иногда нужны для больших значений.

Переменные & и &&
Переменные обозначают "И", тоесть если мы пишем к примеру: time = 0 && p2stateno = 100, то нужно чтобы эти параметры работали одновременно, очень полезно для trigger'ов, так как вместо такого:
Code
trigger1 = time = 0    
trigger1 = p2stateno = 100


Можно написать такое:
Code
trigger1 = time = 0 && p2stateno = 100

А чтобы было надёжнее написать так:
Code
trigger1 = (time = 0) && (p2stateno = 100)


Чем отличается & от &&:
& - Для по-битовой равносильности (для значений в двоичной системе [0 или 1]);
&& - Для обычной равносильности.

Переменные | и ||
Всё тоже самое, что и &, &&, только означает "ИЛИ", например вместо:

Code
trigger1 = time = 0    
trigger2 = time = 15

Можно написать так:
Code
trigger1 = time = 0 || time = 15

Если в выражении присутствуют [], то обязательно выражение нужно взять в скобки.

Символы []
В эти квадратные скобки должны браться числа "ОТ и ДО", первое число в скобках будет значить "ОТ", а второе - "ДО", например если запишем такое выражение:
Code
trigger1 = time = [0,50]


То данное выражение будет работать только на time от 0 до 50.

Символы <>
< - меньше
> - больше
К примеру:
trigger1 = time < 30
Данный триггер будет работать только тогда, когда time будет меньше 30, или ещё можно запистаь так:

Code
trigger1 = time =< 30

В этом случае будет работать только, если time будет меньше или равен 30.

Символ !
! - означает "НЕ ДОЛЖНО", например если мы запишем так:
Code
trigger1 = time != 30

то данный триггер не будет работать на time 30.

Символ **
Экспоненциальный оператор. Если Х и Y оба целые и >= 0, затем Х**Y означает, что Х возводится в степень, равную Y.

Символ ^^
Логический XOR оператор. X^^Y равно 1 (целое), если точно один из X или Y не равен нулю, в иных случаях равно нулю.

Символ ~
Двоичный оператор НЕ (NOT). ~X инвертирует биты (компонент так называемой логической "двойки", 0 или 1) двоичного представления. Будет ошибочно принимать это к плавающим числам для результата операции.

Символ ^
Побитовый XOR оператор. n-ный бит выражения X^Y выбирается, если выбирается только один из X или Y.

Символ :=
Оператор присваивания. Не перенаправленное имя переменной (var(n) или fvar(n) для подходящих значений n) должно появляться с левой стороны. Если левая сторона содержит целую переменную, тогда правая сторона округляется до целого числа перед присваиванием. Если левая сторона содежит плавающую переменную, тогда правая сторона конвертируется в плавающее выражение, если необходимо перед присваиванием (назначением переменной). В обоих случаях значение выражения является значением, присвоенным для переменной.

Символ **
Экспоненциальный оператор. Если Х и Y оба целые и >= 0, затем Х**Y означает, что Х возводится в степень, равную Y.

Символ ^^
Логический XOR оператор. X^^Y равно 1 (целое), если точно один из X или Y не равен нулю, в иных случаях равно нулю.

Символ ~
Двоичный оператор НЕ (NOT). ~X инвертирует биты (компонент так называемой логической "двойки", 0 или 1) двоичного представления. Будет ошибочно принимать это к плавающим числам для результата операции.

Символ ^
Побитовый XOR оператор. n-ный бит выражения X^Y выбирается, если выбирается только один из X или Y.

Символ :=
Оператор присваивания. Не перенаправленное имя переменной (var(n) или fvar(n) для подходящих значений n) должно появляться с левой стороны. Если левая сторона содержит целую переменную, тогда правая сторона округляется до целого числа перед присваиванием. Если левая сторона содежит плавающую переменную, тогда правая сторона конвертируется в плавающее выражение, если необходимо перед присваиванием (назначением переменной). В обоих случаях значение выражения является значением, присвоенным для переменной.

авторы урока:Ruslan_xDD и chameleoncyborg
ссылка на оригинал: http://mkheroes.ru/forum/70-433-1



 
Форум » Общие вопросы по MUGEN » Работа со спрайтами и Кодинг » Условные знаки и обозначения
Страница 1 из 11
Поиск:

Сайт создан в системе uCoz