Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

PAWN для чайников

Статус
В этой теме нельзя размещать новые ответы.

Igor_Jackson_2012

Умник
Это снова я.И так в первом моем уроке мы узнали как создать наш первый скрипт, узнали как вызвать функцию, и при каком условии.Также мы узнали что такое инклюд и что он в себе содержит.Узнали как создавать проверки и так далее.Пускай первый урок был короткий... на то он и вступительный.Сегодня мы разберемся со всем чуть глубже.
Темы этого урока:​
1.Разбираем массивы.
2.Что такое PVar.
3.Использование public.
4.Таймеры.
5.Макросы.

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

PHP:
new test1[10] = { 0,1,2,3,4,5,6,7,8,9 };//Массив с индекса 0 до индекса 9, так как размер 10.
new test2[] = { 0,1,2,3,4,5,6,7,8,9 };//Тоже самое что первый.
new test3[3];//Массив для прикрепления чего либо (дальше объясню)
Первый массив мы можем использовать для например хранение идов авто,и скинов.Например:
PHP:
new test1[10] = { 411,422,455,555,552,521,431,432,444,431 };// Здесь мы перечислили иды авто.
Второй массив мы можем использовать так же как и первый.
Третий массив мы можем использовать для к примеру закрепления авто за индексом.К примеру вам нужно чтобы сообщение вывелось только когда вы сели в определенное авто.Пишем код:


PHP:
new test[2];

public OnGameModeInit()
{
     CreateVeh();
}

stock CreateVeh()
{
     test[0] = CreateVehicle(411,x,y,z,0,2,2);// Присвоим индексу 0 первое авто.
     test[1] = CreateVehicle(411,x,y,z,0,2,2);// Присвоим индексу 0 второе авто.
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
	new newcar = GetPlayerVehicleID(playerid);
	if(newstate == PLAYER_STATE_DRIVER)
	{
		if(newcar == test[0] || test[1])
		{
                      SendClientMessage(playerid,-1,"Вы сели именно в это авто");
                }
        }
        return 1;
}
Думаю с этим немного разобрались.Забыл сказать массив может в себе хранить как числовой тип,так и текстовый.Чтобы вывести текстовый используем %s , что бы вывести числовой %d
Лучше покажу пример:

PHP:
public OnFilterScriptInit(){
new str[32];
format(str,32,"привет");
printf("%s",str);

format(str,32,"555");
printf("%d",str);
}
2. Использование PVar - PVar очень удобная вещь для проверок в моде.В отличии от переменной вам не нужно объявлять её в верху мода, не нужно обнулить при подключении игрока,и выхода.Также её можно вызвать из любого куска мода.
Пример кода с использованием переменной:

PHP:
new test;

public OnPlayerConnect(playerid)
{
	test = 0;
	up();
}

stock up()
{
	if(test == 1) return 1;
	test = 1;
	return 1;
}
Пример с PVar:
PHP:
public OnPlayerConnect(playerid)
{
	SetPVarInt(playerid,"use",0);
	up();
}

stock up()
{
	GetPVarInt(playerid,"use") == 1) return 1;
	SetPVarInt(playerid,"use",1);
	return 1;
}
Урок буду дополнять!
 
Последнее редактирование модератором:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу