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

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

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

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

Запутался в системе

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

Lionely

Умник
Доброго времени суток. Прошу помощи в написании, запутался в системе)

Я пытался сделать такую вот интересную систему.

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

Далее получаем ответ:

Как оказывается в базе данных есть такой номер фракции с таким же номером ранга.
НО
Их имеется трое образно говоря
Test1 | Ранг: 1 | Фракция: 1 | automat_assig: 1
Test2 | Ранг: 1 | Фракция: 1 | automat_assig: 1
Test3 | Ранг: 1 | Фракция: 1 | automat_assig: 0

Теперь нам нужно загрузить automat_assig
Она и есть наша главная цель.
- Загрузили.

Мы видим, что у нас 3 названия это (Test1,Test2,Test3) и у них имеется automat_assig: 1
Только у Test3 automat_assig: 0
Делаем следующий вывод, нам нужно рандомно назначит игрока на должности где: automat_assig: 1
Т.е назначит на Test1 или Test2 при этом всём сделать это нужно рандомно.

Перейдем к следующему этапу:

Если же Test1,Test3,имеют automat_assig: 0
А Test2 имеет automat_assig: 1
То назначаем игрока на должность Test2
Если же Test1,Test2,Test3 имеют: automat_assig: 0
Не назначаем игрока некуда.
PHP:
	new frac_id = 1;
	new frac_rank = 1;
	new mysql_Str[90];
	format(mysql_Str,sizeof(mysql_Str), "SELECT * FROM `baza_danih` WHERE `id_frack`='%d' AND `rank_frack`='%d'", frac_id,frac_rank);
	mysql_function_query(MysqlConnect,mysql_Str, true, "CallBack","ddd",playerid,frac_id,frac_rank);

Параметр: number_ids отвечает за то на какую должность ставить.
PHP:
forward CallBack(playerid,rank_ids,frac_ids);
public CallBack(playerid,rank_ids,frac_ids)
{
	new rows, fields;
	cache_get_data(rows, fields,MysqlConnect);
	cache_get_row_count(rows); 
	new rand = random(2);
	new bool:auto_s[6];
	new number_ids[6];
	for(new i = 0; i < rows; i++)
	{
		auto_s[frac_ids] = bool:cache_get_field_content_int(i, !"automat_assig", MysqlConnect);
		number_ids[frac_ids] = cache_get_field_content_int(i, !"number_id", MysqlConnect);
	}
	if(auto_s[frac_ids] == true)
	{
		switch(rand)
		{
		case 0: printf("Назначаем на 0 должность");			
		case 1: printf("Назначаем на 1 должность");
		}
	}
	return 1;
}
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу