* Как зделать скины закрытими под пароль new bool:Locked[MAX_PLAYERS];
Ето ставитса на шапке скрипта, указывает игре переменную которая будет говорить закрыты ль скины
Потом нам нужны еще спавны;
public OnGameModeInit()
{
/* пепяка */ AddPlayerClass(221, 0, 0, 0, 130, 24, 300, 0, 0, 0, 0); //classid 0
/* пепяка */ AddPlayerClass(212, 0, 0, 0, 130, 24, 300, 0, 0, 0, 0); //classid 1
/* не пепяка */ AddPlayerClass(199, 0, 0, 0, 130, 24, 300, 0, 0, 0, 0); //classid 2
}
Те которые с /*пепяка*/ будут классы защищены паролем
Атлична, у нас есть классы. Теперь должны указать игре какие ето они, защищенные паролем скины. И тут мы отправляемся в калбэк OnPlayerRequestClass;
public OnPlayerRequestClass(playerid, classid)
{
return 1;
}
Как вы видите тут пусто, так дело не пойдёт xD
Мы должны добавить некоторой дряни чтобы оно работало нормально;
public OnPlayerRequestClass(playerid, classid)
{
if(classid == 0) //какбэ первый класс
{
Locked[playerid] = true; /какбэ ето он будет закрыт, ясна? :D
}
if(classid == 1)
{
Locked[playerid] = true; //етот тоже
}
if(classid == 2)
{
Locked[playerid] = false; //етот какбэ НЕ
}
return 1;
}
Чудова, мы указали заблокированые класы, но смысел? идём дальше. Чяпаем к калбэку OnPlayerSpawn;
public OnPlayerSpawn(playerid)
{
return 1;
}
И опять тут пусто, фигня, надо зделать по человечески
public OnPlayerSpawn(playerid)
{
if(bool:Locked[playerid] == true) //Ето Если текущий скин игрока заблокированный
{
ForceClassSelection(playerid); // За рога его к выбору скина
SendClientMessage(playerid, COLOR_OYAEBY, " Ты уебень, скин защищен паролем!!!1!!11!1!11! xD");
SendClientMessage(playerid, COLOR_OYAEBY, " Может ты просто глупый, так вот введи /unlock [пароль]");
return 1;
}
else
{
return 1;
}
}
Итак... тот говнюк который выбрал скин защищенный паролем в недоумении
И тут умный администратор ему говорит что надо ввести пароль. а где он ептимать? xD
вот сейчас и зделаем
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(cmdtext, "/unlock ПАРОЛИСЧЕ") == 0)// "ПАРОЛИСЧЕ" не одно и тоже как "ПаРоЛиСчЕ" или "паролисче" будьте внимательны :D
{
Locked[playerid] = false;
}
}
во, терь введя /unlock ПАРОЛИСЧЕ заблокированые ранее для нашего говнюка скины станут доступны
[offtop]
[/offtop]