Добро пожаловать Гость, Вы в разделе: Вход

Энциклопедия по редактору Arma, Arma 2, Arma 3 и Operation Flashpoint

VKRSSRSS
На главную

Навигация


Искать в энциклопедии:
»


Важная информация




Сайт управляется

Учебник по написанию скриптов
Изображение



Учебник по созданию роликов


Изображение



Наши партнеры



ArmA 3, ArmA 2 news Russian community, SARMAT community

От SQS к SQF

RSS
Изменено 03/26/2013 20:32 Mikezar Категоризировано Синтаксис, Скрипты

Что такого особенного в SQF?!

  • Каждая команда должна заканчиваться точкой с запятой.
  • В SQF отсутствует команда goto
  • SQF команды могут занимать несколько строк, если они заключены в скобки.
  • SQF может вернуть переменную там , где SQS не может.

Замена

Комментарии

SQS:

 ; Тут пишется комментарий 
SQF:


 // Это однострочный комментарий 
 /* Это комментарий 
 занимающий несколько строк 
 */ 
 comment "Такой комментарий работает в обоих типах файлов";

Условие

SQS:

УСЛОВИЕ

SQF:
waitUntil {УСЛОВИЕ};

Задержка

SQS:

~ Задержка

SQF:

sleep Задержка;

Условные команды

SQS:

?УСЛОВИЕ: КОМАНДА

SQF:

if (УСЛОВИЕ) then {КОМАНДА};

Мульти-условные команды

SQS:

 ?УСЛОВИЕ: goto "SKIP" 
 КОМАНДА_2 
 goto "END" 
 #SKIP 
 КОМАНДА_1 
 #END

SQF:

if (УСЛОВИЕ) then {КОМАНДА_1} else {КОМАНДА_2};

ЦИКЛ

SQS:

 #loop 
 КОМАНДА 
 ~DELAY 
 ?УСЛОВИЕ: goto "LOOP" 

SQF:

 while {УСЛОВИЕ} do { 
 КОМАНДА; 
 sleep DELAY; 
 };

Последовательный цикл

SQS:

 _n = 0 
 #LOOP 
 КОМАНДА 
 _n = _n + 1; 
 ?_n < КОЛИЧЕСТВО: goto "LOOP" 

SQF:

 for [{_n = 0},{_n <= COUNT},{_n = _n+1}] do { 
 КОМАНДА; 
 };

Цикл с проверкой в конце блока

SQS:

 waitUntil {
 КОМАНДА; 
 УСЛОВИЕ 
 }; 

SQF:

 while { 
 КОМАНДА; 
 УСЛОВИЕ 
 } do { 
 КОМАНДА; 
 sleep DELAY;
 };

Структурированные условные команды

SQS:

 ?VARIABLE == VALUE_1: goto "SKIP_1" 
 ?VARIABLE == VALUE_2: goto "SKIP_2" 
 Команда по умолчанию 
 goto "END" 
 #SKIP_1 
 КОМАНДА_1 goto "END" 
 #SKIP_2 
 КОМАНДА_2 
 #END 

SQF:

 switch (VARIABLE) do { 
 case VALUE_1: {КОМАНДА_1}; 
 case VALUE_2: {КОМАНДА_2}; 
 default {ПО УМОЛЧАНИЮ_КОМАНДА}; 
 }; 

ВЫХОД

SQS:

 ?УСЛОВИЕ: goto "Exit" 
 КОМАНДА_1 
 #Exit 
 КОМАНДА_2 
 exit 

SQF:

 if (УСЛОВИЕ) exitWith 
 { 
 КОМАНДА_2; 
 }; 
 КОМАНДА_1;
Две колонки
О нас
SunHorizon Wiki версия 1.0.2.17.
© 2013-2014 SUNHORIZON.INFO.Все права сохранены.
В проекте использованы изображения FamFamFam
Связь с нами
Изображение
Правила сайта
Изображение

Авторские права
Изображение