Chester_Master |
Дата: Вторник, 28.01.2014, 22:11 | Сообщение # 1
|
Бывалый
Сообщений: 339
Статус: Offline
|
Всем добрый день. Работал с командой /makeleader, довольно таки не долго, сделал команду как на samp-rp.
Добавил кое-что от себя, некоторым понадобится.
В public OnPlayerCommandText(playerid, cmdtext[]) вставляем:
Код else if(strcmp(cmd, "/makeleader", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp) && PlayerInfo[playerid][pAdmin] >= 10) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /makeleader [id] [Число от (1 - 23)]"); if (dostup[playerid] != 1) return ShowPlayerDialog(playerid,2934,DIALOG_STYLE_INPUT,"Админ авторизация","Введите пароль\n\nПароль должен состоять из латинских букв и цифр\n\tразмером от 6 до 15 символов","Вход","Отмена"); new para1; new level; para1 = ReturnUser(tmp); tmp = strtok(cmdtext, idx); level = strval(tmp); if(level > 28 || level < 0) { SendClientMessage(playerid, COLOR_GREY, "Нельзя меньше 0 и больше 23"); return 1; } GetPlayerName(playerid, sendername, sizeof(sendername)); if (PlayerInfo[playerid][pAdmin] >= 10) { if(IsPlayerConnected(para1)) { if(para1 != INVALID_PLAYER_ID) { if(PlayerInfo[para1][pWarns] >= 1) return SendClientMessage(playerid, COLOR_GRAD1,"У игрока Warn"); GetPlayerName(para1, giveplayer, sizeof(giveplayer)); PlayerInfo[para1][pLeader] = level; PlayerInfo[para1][pMember] = level; PlayerInfo[para1][pJob] = 0; format(string, sizeof(string), "Администратор %s назначил контролировать данную фракцию", sendername); SendClientMessage(para1, 0x6495EDFF, string); format(string, sizeof(string), "<ADM-LC> Администратор %s назначил %s контролировать фракцию: %d.",sendername, giveplayer,level); ABroadCast(0x6495EDFF,string,1); format(string, sizeof(string), "Вы назначили %s контролировать фракцию %d.", giveplayer,level); SendClientMessage(playerid, 0x6ab1ffaa, string); OldSkin[playerid] = GetPlayerSkin(playerid); new iniFile = ini_openFile("logs/logi/leaders.ini"); if(level == 1) { PlayerInfo[para1][pRank] = 15; InviteSkin[para1] = 265; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "LSPD" );ini_setString(iniFile, "LSPD",giveplayer); }} else if(level == 2) { PlayerInfo[para1][pRank] = 10; InviteSkin[para1] = 166; if(PlayerInfo[para1][pAdmin] <=0) { if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "FBI" ); ini_setString(iniFile, "FBI",giveplayer);}}} //FBI/A else if(level == 3) { PlayerInfo[para1][pRank] = 16; InviteSkin[para1] = 287; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "ARMY SF" );ini_setString(iniFile, "ARMY SF",giveplayer);}} else if(level == 4) { PlayerInfo[para1][pRank] = 8; InviteSkin[para1] = 70; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "MEDICS" );ini_setString(iniFile, "MEDICS",giveplayer);}} //Fire/Ambulance else if(level == 5) { PlayerInfo[para1][pRank] = 10; InviteSkin[para1] = 223; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "LCN" );ini_setString(iniFile, "LCN",giveplayer);}} //La Cosa Nostra else if(level == 6) { PlayerInfo[para1][pRank] = 10; InviteSkin[para1] = 120; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "YAKUZA" );ini_setString(iniFile, "YAKUZA",giveplayer);}} //Yakuza else if(level == 7) { PlayerInfo[para1][pRank] = 9; InviteSkin[para1] = 147; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "MARYA" );ini_setString(iniFile, "MARYA",giveplayer);}}//Iy?ey else if(level == 8) { PlayerInfo[para1][pRank] = 5; InviteSkin[para1] = 171; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "KAZINO" );ini_setString(iniFile, "KAZINO",giveplayer);}}//e?oioa else if(level == 9) { PlayerInfo[para1][pRank] = 10; InviteSkin[para1] = 261; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "SFN" );ini_setString(iniFile, "SFN",giveplayer);}} //News Reporters else if(level == 10) { PlayerInfo[para1][pRank] = 15; InviteSkin[para1] = 265; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "SFPD" );ini_setString(iniFile, "SFPD",giveplayer);}} //Police Force else if(level == 11) { PlayerInfo[para1][pRank] = 8; InviteSkin[para1] = 240; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "LICENSERS" );ini_setString(iniFile, "LICENSERS",giveplayer);}} //Driving/Flying School else if(level == 19) { PlayerInfo[para1][pRank] = 16; InviteSkin[para1] = 287; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "ARMY LV" );ini_setString(iniFile, "ARMY LV",giveplayer);}} //?on else if(level == 12) { PlayerInfo[para1][pRank] = 10; InviteSkin[para1] = 104; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "BALLAS" );ini_setString(iniFile, "BALLAS",giveplayer);}} //<ballas else if(level == 13) { PlayerInfo[para1][pRank] = 11; InviteSkin[para1] = 110; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "VAGOS" );ini_setString(iniFile, "VAGOS",giveplayer);}} else if(level == 14) { PlayerInfo[para1][pRank] = 8; InviteSkin[para1] = 125; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "RM" );ini_setString(iniFile, "RM",giveplayer);}} //Russian Mafia else if(level == 15) { PlayerInfo[para1][pRank] = 10; InviteSkin[para1] = 270; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "GROVE" );ini_setString(iniFile, "GROVE",giveplayer);}} else if(level == 16) { PlayerInfo[para1][pRank] = 10; InviteSkin[para1] = 261; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "LSNEWS" );ini_setString(iniFile, "LSNEWS",giveplayer);}} //News Reporte else if(level == 17) { PlayerInfo[para1][pRank] = 10; InviteSkin[para1] = 115; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "AZTEC" );ini_setString(iniFile, "AZTEC",giveplayer);}} else if(level == 18) { PlayerInfo[para1][pRank] = 10; InviteSkin[para1] = 173; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "RIFA" );ini_setString(iniFile, "RIFA",giveplayer);}} else if(level == 20) { PlayerInfo[para1][pRank] = 10; InviteSkin[para1] = 261; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "LVNEWS" );ini_setString(iniFile, "LVNEWS",giveplayer);}} //News Reporters else if(level == 21) { PlayerInfo[para1][pRank] = 15; InviteSkin[para1] = 265; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "LVPD" );ini_setString(iniFile, "LVPD",giveplayer);}} //Police Force else if(level == 22) { PlayerInfo[para1][pRank] = 8; InviteSkin[para1] = 70; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "MEDICS" );ini_setString(iniFile, "LOS SANTOS MCHS",giveplayer);}} //Fire/Ambulance else if(level == 23) { PlayerInfo[para1][pRank] = 9; InviteSkin[para1] = 248; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "BAYKER" );ini_setString(iniFile, "BAYKER",giveplayer);}} //Baykers else if(level == 24) { PlayerInfo[para1][pRank] = 8; InviteSkin[para1] = 70; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "MEDICS" );ini_setString(iniFile, "LAS VENTURAS MCHS",giveplayer);}} //Ambulance else if(level == 25) { PlayerInfo[para1][pRank] = 10; InviteSkin[para1] = 295; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "MINISTERSTVO" );ini_setString(iniFile, "MINISTERSTVO",giveplayer);}} //Fire/Ambulance else if(level == 26) { PlayerInfo[para1][pRank] = 15; InviteSkin[para1] = 283; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "SWAT" );ini_setString(iniFile, "SWAT",giveplayer);}} //SWAT else if(level == 27) { PlayerInfo[para1][pRank] = 8; InviteSkin[para1] = 293; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "STREETRACER" );ini_setString(iniFile, "STREETRACER",giveplayer);}} //STREET RACER else if(level == 28) { PlayerInfo[para1][pRank] = 15; InviteSkin[para1] = 283; if(PlayerInfo[para1][pAdmin] <=0) { ini_removeKey (iniFile, "AIN" );ini_setString(iniFile, "AIN",giveplayer);}} //AIN ini_closeFile(iniFile); PlayerInfo[para1][pModel] = InviteSkin[para1]; SetPlayerArmourAC(para1,0); SetPlayerHealthAC(para1,100); PlayerInfo[para1][pHP] =100; SetPlayerSkin(para1, InviteSkin[para1]); DelGun(para1); SpawnPlayer(para1); OnPlayerUpdateRL(playerid);; } } } else { SendClientMessage(playerid, COLOR_GRAD1, "Вы не уполномочены использовать данную команду."); } return 1; }
P.S В команду добавьте свои фракции.
Команда моя, так что по любым вопросам обращайтесь, я помогу.
В моей команде добавлены 28 фракций, так что убирайте не нужные фракции, если что я помогу вам.
Чтобы снять лидера, про пишите /makeleader I'd 0.
Сообщение отредактировал Chester_Master - Среда, 08.10.2014, 23:08 |
|
|
|
Samuel228 |
Дата: Понедельник, 06.10.2014, 16:54 | Сообщение # 8
|
Новичок
Сообщений: 28
Статус: Offline
|
На самп рп много проверок стоит, вот не которые и возможно даже не все: проверка на админа, авторизацию админа, гос.фракцию, на одетую форму, на то состоит ли игрок уже во фракции, нельзя более 3 - х лидеров ставить (блок функций администратора на день). можете дополнить список, скоро займусь сделаю MySQL фулльную копию + оптимизированую.
Мой скайп: lecompte.tawer228 Мой VK: https://vk.com/mewok228 Мой WM: *тут WebMoney-R кошелек* Мой ЯД: *тут YandexMoney кошелек* Мой Киви: *тут Qiwi кошелек*
|
|
|
|
Chester_Master |
Дата: Среда, 08.10.2014, 23:07 | Сообщение # 9
|
Бывалый
Сообщений: 339
Статус: Offline
|
Я обновлял, делал на командном процессоре dc cmd, знаю, данная команда не является и 10 процентной копией, но для обычных серверов подойдет.
p.s я обновлял, но в связи с откатом несколько месяцев на зад на сайте, тема снова стала старой, а обновлять и оформлять тему заново составило очень много труда*. Так что прошу прощения.
|
|
|
|
Samuel228 |
Дата: Четверг, 09.10.2014, 18:19 | Сообщение # 10
|
Новичок
Сообщений: 28
Статус: Offline
|
Цитата Chester_Master ( ) Я обновлял, делал на командном процессоре dc cmd, знаю, данная команда не является и 10 процентной копией, но для обычных серверов подойдет.
p.s я обновлял, но в связи с откатом несколько месяцев на зад на сайте, тема снова стала старой, а обновлять и оформлять тему заново составило очень много труда*. Так что прошу прощения. 10 Процентов, точно есть само назначение - выдача скина и есть 10 процентов...
Мой скайп: lecompte.tawer228 Мой VK: https://vk.com/mewok228 Мой WM: *тут WebMoney-R кошелек* Мой ЯД: *тут YandexMoney кошелек* Мой Киви: *тут Qiwi кошелек*
|
|
|
|