LuxurY forum (scripting SA-MP)

Объявление

с 29 марта 2007 года
LuxurY forum - крупнейший российский форум скриптинга в PAWNO
Новый форум
Задавайте свои вопросы

Архив скриптов


Наша кнопка:
LuxurY forum :: Scripting SA-MP
Код:

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » LuxurY forum (scripting SA-MP) » Обучающие статьи » Основы скриптинга


Основы скриптинга

Сообщений 1 страница 4 из 4

1

Типы переменных
Переменные - это места, куда вы можете хранить данные. В PAWN имена переменных чувствительны к регистру, поэтому переменная "lolhax" не то же самое, что и "LOLHAX" или "lOLhAx" к примеру; имена переменных должны также начинаться с буквы алфавита (A-Z)

Целочисленный тип

Этот тип переменной по умолчанию, он используется для хранения целых чисел. Вы не должны использовать числа с десятичной точкой, так как они не целые числа, даже в том случае, когда числа после десятичной точки - все нули (например, 5.00), все равно это технически не целое число.

Пример

Код:
new integer = 1337; // Объявляет новую целочисленную переменную с именем "integer" и устанавливает ее значение в "1337".
new integer; // Объявляет новую целочисленную переменную с именем "integer" с автоматическим значением "0".

Возможное использование

Код:
if(integer == 1337) { /* Сделать что-либо */ }

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

Пример

Код:
new Float:float; // Объявляет новую пустую вещественную перменную с именем "float".
new Float:float = 2.0; // Объявляет новую вещественную перменную с именем "float" и устанавливает ее значение в "2.0".

Возможное использование

Код:
SetPlayerPos(playerid, float, 2.0, 1400.0);

Строка
Строки - это места для хранения символов (букв и/или символов). Строки должны быть помещены в массив, так что каждая ячейка может содержать букву, вы должны указать экстра-ячейку для идентификатора строки - "0".

Примеры

Код:
new string[7] = "String"; // 7 - это число ячеек, необходимых для хранения каждой буквы в строке, в том числе и идентификатора.

new string[7];
string[0] = 'S';
string[1] = 't';
string[2] = 'r';
string[3] = 'i';
string[4] = 'n';
string[5] = 'g';


string[6] = 0;

Обычное использование

Код:
new string[255];

Возможное использование

Код:
SendClientMessage(playerid, 0xFFFFFFAA, string);

Логический тип
Используется для результатов "истина" (true) или "ложь" (false). True эквивалентен "1" и false эквивалентен "0", новые переменные этого типа автоматически принимают значение false.

Примеры

Код:
new bool:boolname;

Возможное использование

Код:
if(boolname == true) { /* Сделать что-либо */ }

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

Заметьте, что в массиве вы НЕ МОЖЕТЕ использовать последний столбец или линию

Одномерный массив
Одномерный массив - это один столбец, разбитый на указанное число ячеек.

Код:
new onedimensionalarray[CELLS];

Пример

Код:
new onedimensionarray[5] = {4, 6, 7, 9, 2}; // "5", написанная в [], указывает, сколько ячеек выделено для хранения данных.

Возможное использование

Код:
new randomnumber = random(sizeof(onedimensionalarray)); // Получает случайное число для ячейки.
printf("Random number is: %d", onedimensionalarray[random]); // Использует случайное число для выбора ячейки.

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

Код:
new twodimensionalarray[ROWS][COLLUMNS];

Пример

Код:
new Float:twodimensionarray[4][3] = {

{3.0, 4.5, 5.76}, // Столбец номер 0
{10.85, 76.34, 23.54}, // Столбец номер 1
{2.32, 10.23, 80.2}, // Столбец номер 2
{6.6666, 45.3, 32.64} // Столбец номер 3


};

Возможное использование

Код:
SetPlayerPos(playerid, twodimensionalarray[2][2], twodimensionalarray[3][1], twodimensionalarray[2][0]);

Трехмерный массив - строка двумерных массивов

Код:
new treedimensionalarray[ROWS][COLLUMNS][Z];

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

Код:
new twodimensionalarraystring[ROWS][COLLUMNS][255]; // для строки в 256 байт

Условные конструкции
Условные конструкции позволяют Вам посмотреть, удоволетворяют ли данные условиям, а затем в зависимости от результата выполнить код. Наиболее распространенный тип условных конструкций - if/else-конструкция, но помимо нее есть много других: case, цикл for и цикл while.

if/else
if/else-конструкции позволяют вам посмотреть, удоволетворяют ли данные условию при помощи опреаторов, и если это так, то выполнить код.

Операторы сравнения
Операторы сравнения более всег оиспользуются в выражениях if/else; они проверяют соотношение между двумя наборами данных перед выполнением кода.

http://r.foto.radikal.ru/0704/96/22aadf92dcc8.png

http://r.foto.radikal.ru/0704/70/5f7c76cd1fe5.png

Пример

Код:
if(lvalue > rvalue) { /* Выполнить код */ }

В этом примере если условие между lvalue и rvalue истинно, выполнится код. Условие представляет собой - если lvalue больше, чем rvalue...

0

2

админ ты это сам писал или с вики самп ком брал?

0

3

Flooder написал(а):

админ ты это сам писал или с вики самп ком брал?

с wiki с wiki =)

0

4

LuxurY написал(а):

Наиболее распространенный тип условных конструкций - if/else-конструкция, но помимо нее есть много других: case, цикл for и цикл while.

Не могли бы Вы рассказать про остальные условные конструкции.

0


Вы здесь » LuxurY forum (scripting SA-MP) » Обучающие статьи » Основы скриптинга