Ув. пользователи как написать функцию:
что бы в дальнейшом использовать эту функцию, для проверки подлключён ли игрок либо нетPHP код:
new PlayerLogged[MAX_PLAYERS char];
Ув. пользователи как написать функцию:
что бы в дальнейшом использовать эту функцию, для проверки подлключён ли игрок либо нетPHP код:
new PlayerLogged[MAX_PLAYERS char];
Что Вам мешает использовать стандартную функцию IsPlayerConnected? А если использовать массив то в OnPlayerConnect:
а в OnPlayerDisconnect:PHP код:
PlayerConnected{playerid} = 1; // у Вас PlayerLogged (Logged же проверка на логин)
PHP код:
PlayerConnected{playerid} = 0;
denis01 (27.05.2014)
IsPlayerConnected быстрее чем массив, а если с массивом, то память используется.
denis01 (27.05.2014)
Зависит от нужды. Если вам нужно проверять именно ПОДКЛЮЧЕНИЕ к серверу - лучше воспользоваться функцией. Если же вам нужно проверять авторизацию игрока, лучше сделать так:
В функцию, отвечающую за загрузку аккаунта при авторизацииPHP код:
new authorized_account[MAX_PLAYERS char];
В OnPlayerDisconectPHP код:
authorized_account{playerid} = 1;
И для удобства можно создать функцию, типаPHP код:
authorized_account{playerid} = 0;
PHP код:
stock IsPlayerLogged(playerid) return authorized_account{playerid};
//Это если с английским плохо. Я бы использовал код "authorized_account{playerid}" напрямую
Связаться со мной в VK можно через личные сообщения этой группы
Заказы не принимаю
Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
Великих идей полно, на них нет спроса.
Воплощение идеи в законченную игру требует долгой работы,
таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
Предложить идею просто, воплотить – вот в чём проблема
Steve Pavlina
$continue$ (08.07.2015) denis01 (27.05.2014)
Я использую для проверки авторизован ли игрок, если нет то он не может водить команды
Зачем char? Можно ведь использовать переменную типа bool
PHP код:
new bool:login[MAX_PLAYERS];
login[playerid] = true;// Игрок авторизован
login[playerid] = false;// Игрок не авторизован
if(login[playerid])// Игрок авторизован
if(!login[playerid])// Игрок не авторизован
denis01 (27.05.2014)
Можешь по подробней.
И далее использовать в командахPHP код:
login[playerid] = true;// это в OnPlayerConnect
login[playerid] = false;// это вOnPlayerDisconnect
PHP код:
if(login[playerid])// Игрок авторизован
if(!login[playerid])// Игрок не авторизован
Это ставь когда игрок успешно авторизовался.
Это ставь когда игрок вышел с сервера.PHP код:
login[playerid] = true;
А, если используешь public OnPlayerCommandText, то просто в начало паблика вставьPHP код:
login[playerid] = false;
PHP код:
if(!login[playerid])) return SendClientMessage(playerid,-1,"Авторизуйтесь на сервере!");
Может наоборот? Типа bool в pawn нет (то есть он есть, но он берёт столько же памяти сколько и обычная переменная с типом integer). А char сокращает размер массива в (cellbits / charbits) раз (на данный момент 4). И установить значение ячейкам этого массива можно только от 0 до 255.
Последний раз редактировалось L0ndl3m; 27.05.2014 в 20:10.
Эту тему просматривают: 2 (пользователей: 0 , гостей: 2)