Перейти к содержанию

Поиск сообщества

Показаны результаты для тегов 'уроки crmp'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип контента


Форумы

  • Информационный раздел
    • Новости портала
    • Техническая поддержка
    • Приватный форум
  • CRMP 0.3е
    • Помощь по Скриптингу
    • Ошибки
    • Готовые сервера
    • Дополнительные скрипты
    • Мануалы/Уроки
    • Модификации
    • Поиск
    • Архив Вопросов/Проблем/Ошибок
    • Файловый архив
    • Другое
  • SAMP/CRMP 0.3.7
    • Помощь по Скриптингу
    • Ошибки
    • Готовые сервера
    • Плагины
    • Поиск
    • Документация
  • Другое
    • Флейм

Поиск результатов в...

Поиск результатов, которые содержат...


Дата создания

  • Начало

    Конец


Дата обновления

  • Начало

    Конец


Фильтр по количеству...

Найдено: 180 результатов

  1. Интересная функция. Тут будет всё понятно PHP код: public OnPlayerClickMap(playerid, Float: fX, Float: fY, Float: fZ) // Создаем новый паблик { // Открываем if(PlayerInfo[playerid][pAdmin] >= 4); // Уровень Админки указываем свой { SetPlayerPos(playerid, fX, fY, fZ); // Координаты XYZ SendClientMessage(playerid, 0xFFFFFFFF, "Вы телепортированы!"); return 1; } } // Закрываем
  2. Система кланов . Вырезал из мода. Базу для кланов сделаете сами. При входе нужно будет ввести пароль от клана. Добавим ко всем #define #define apasTaz "2580" // пароль от клана Ко всем new new clanTeamTaz[MAX_PLAYERS]; В public OnPlayerConnect(playerid) clanTeamTaz[playerid] = 0; if(ClanTaz(playerid) == 1){ShowPlayerDialog(playerid,999,DIALOG_STYLE_INPUT,"{F70808}Пароль от клана"," Введите пароль о клана","Войти","Отмена");} Создадим public public ClanTaz(playerid){ new sname[64];GetPlayerName(playerid, sname, sizeof(sname));if(strfind(sname, "[Taz_TeaM]", false) != -1) return 1;if(strfind(sname, "[Taz_TeaM]", false) != -1) return 1;if(strfind(sname, "[Taz_TeaM]", false) != -1) return 1;if(strfind(sname, "[Taz_TeaM]", false) != -1) return 1;if(strfind(sname, "[Taz_TeaM]", false) != -1) return 1;if(strfind(sname, "[Taz_TeaM]", false) != -1) return 1;else return 0;} Добавим forward ко всем форвардам или выше public forward ClanTaz(playerid); Добавим в public OnPlayerSpawn(playerid) new ClanName[128];ExtractClan(playerid, ClanName);if(strcmp(ClanName, "Taz_TeaM", true) == 0){SetPlayerPos(playerid,24555.8854,-1470.1174,50.7837); // тут координаты спавна кланаSetPlayerSkin(playerid,116);SetPlayerFacingAngle(playerid, 173.9849);SetPlayerInterior(playerid,0);SetPlayerColor(playerid,0xFF0000AA);} Добавим в public OnPlayerText(playerid, text[]) if(clanTeamTaz[playerid] == 1){new name[24], string[128];GetPlayerName(playerid, name, 24);format(string, sizeof(string), "(КланЧат) %s: %s", name, text[1]);printf("(???????)%s: %s", name, string);for(new i = 0; i < MAX_PLAYERS; i++){if(IsPlayerConnected(i)){if(clanTeamTaz[i] == 1){SendClientMessage(i, GetPlayerColor(playerid), string);}}}return 0;} Добавим в public OnDialogResponse: if(dialogid == 999)//mari{if(response){if (!strcmp(inputtext, apasTaz)){if (!strcmp(inputtext, " ")){ShowPlayerDialog(playerid, 2, DIALOG_STYLE_MSGBOX, "Ошибка","Вы ввели неправильный пароль!", "Ок","");// Kick(playerid);}else{ShowPlayerDialog(playerid, 2, DIALOG_STYLE_MSGBOX, "Подтверждение пароля","Вы успешно подтвердили пароль", "Ок", "");//Attach3DTextLabelToPlayer( new3Dtext, playerid, 0.0, 0.0, 2.0 );clanTeamMari[playerid] = 1;return 1;}}else{for(new i = 0; i < MAX_PLAYERS; i++){new string[256], pName[MAX_PLAYER_NAME];GetPlayerName(playerid,pName,sizeof(pName));if(IsPlayerConnected(i) && IsPlayerAdmin(i)){format(string, 256, " Внимание: игрок %s Ввёл не верный пароль к тегу клана", pName);SendClientMessage(i, 0xFF4040FF, string);}}ShowPlayerDialog(playerid, 2, DIALOG_STYLE_MSGBOX, "Ошибка","Вы ввели неправильный пароль!", "Ок","");// Kick(playerid);} Kick(playerid);} return 1;}
  3. Здравствуйте дороги пользователи GSGAMES.Сегодня,я вас научу делать возможности выполнения сервером какой-либо функции в определённое время. Для работы нам понадобится include time.inc, это стандартный includ. Первым шагом,мы создаём public Vremy, если у вас он есть, то вам его создавать не нужно. И так продолжаем. Ко всем forward вставляем: forward Vremy(); В свободное от пабликов/стоков место: public Vremy() { new hour, minute, second, year, month, day; gettime(hour, minute, second); getdate(year, month, day); if (year == 2013 && month == 10 && day == 31 && minute == 60) { // Проверка на год, месяц, день, минуту. (Меняем на свое)SendClientMessageToAll(-1,"(( Test ))"); } // Каждый час, 31 октября будет писать наш текст т.е "Test" return 1; } Теперь мы создадим таймер в public OnGameModeInit: SetTimer("Vremy",1000 * 60,1); Автор:Я(Kirill_Lacoste)
  4. Добавляем команду: if(strcmp(cmd, "/fixveh", true) == 0){if(IsPlayerConnected(playerid)){if(PlayerInfo[playerid][pAdmin] < 1) <---------- Лвл Администратора который может использовать данную команду.{SendClientMessage(playerid, COLOR_GRAD1, "У вас нет прав для использование это команды!");return 1;}if(IsPlayerInAnyVehicle(playerid)){tmp = strtok(cmdtext, idx);new carid = strval(tmp);if(!strlen(tmp)) carid = GetPlayerVehicleID(playerid);tmp = strtok(cmdtext, idx);new Float:heal = floatstr(tmp);if(!strlen(tmp)) heal = 1000.0;SetVehicleHealth(carid, heal);RepairVehicle(carid);SendClientMessage(playerid, COLOR_GREY, "Транспорт починен!");}}return 1;} Вот и всё. Спасибо за внимание. P.S Только для мода Gamer.
  5. Alex_Rude

    Ларьки с едой

    Всем привет.Думаю сразу начнём так как в голову не идёт что писать. ) ко всем new: new pickuplarka[6]; в public OnGameModeInit: pickuplarka[0] = CreatePickup(1239,1,167.39999389648,616.20001220703,12,0); pickuplarka[1] = CreatePickup(1239,1,134.19999694824,642.40002441406,11.89999961853,0); pickuplarka[2] = CreatePickup(1239,1,194,793.29998779297,12.10000038147,0); pickuplarka[3] = CreatePickup(1239,1,219.89999389648,835.79998779297,12.10000038147,0); pickuplarka[4] = CreatePickup(1239,1,256.5,1012.700012207,12.10000038147,0); pickuplarka[5] = CreatePickup(1239,1,-187.39999389648,599.09997558594,12.10000038147,0); CreateObject(4443,218.5000000,836.2999900,13.0000000,0.0000000,0.0000000,249.4990000); CreateObject(4443,193.5996100,792.1992200,13.0000000,0.0000000,0.0000000,341.4990000); CreateObject(4443,-187.3000000,600.2999900,13.0000000,0.0000000,0.0000000,174.0000000); CreateObject(4443,255.2998000,1013.0996100,12.9000000,0.0000000,0.0000000,262.2440000); в public OnDialogResponse: if(dialogid == 1) { if(response) { if(listitem == 0) { if(GetPlayerMoney(playerid) < 80) return SendClientMessage(playerid,0xFF9900AA,"У вас не хватает денег"); { SetPlayerHealth(playerid, 100.0); SendClientMessage(playerid,0xFF9900AA,"Вы съели Хот-Дог"); GivePlayerMoney(playerid,-80); ApplyAnimation(playerid,"FOOD","EAT_Chicken",4.1,0,1,1,0,1); } } if(listitem == 1) { if(GetPlayerMoney(playerid) < 60) return SendClientMessage(playerid,0xFF9900AA,"У вас не хватает денег"); { SetPlayerHealth(playerid, 100.0); SendClientMessage(playerid,0xFF9900AA,"Вы съели Чебурек"); GivePlayerMoney(playerid,-60); ApplyAnimation(playerid,"FOOD","EAT_Chicken",4.1,0,1,1,0,1); } } if(listitem == 2) { if(GetPlayerMoney(playerid) < 120) return SendClientMessage(playerid,0xFF9900AA,"У вас не хватает денег"); { SetPlayerHealth(playerid, 100.0); SendClientMessage(playerid,0xFF9900AA,"Вы съели Крабовый салат"); GivePlayerMoney(playerid,-120); ApplyAnimation(playerid,"FOOD","EAT_Chicken",4.1,0,1,1,0,1); } } if(listitem == 3) { if(GetPlayerMoney(playerid) < 20) return SendClientMessage(playerid,0xFF9900AA,"У вас не хватает денег"); { SetPlayerHealth(playerid, 100.0); SendClientMessage(playerid,0xFF9900AA,"Вы съели Слоёный пирожок"); GivePlayerMoney(playerid,-20); ApplyAnimation(playerid,"FOOD","EAT_Chicken",4.1,0,1,1,0,1); } } if(listitem == 4) { if(GetPlayerMoney(playerid) < 20) return SendClientMessage(playerid,0xFF9900AA,"У вас не хватает денег"); { SetPlayerHealth(playerid, 100.0); SendClientMessage(playerid,0xFF9900AA,"Вы съели Пирожок с повидлом"); GivePlayerMoney(playerid,-20); ApplyAnimation(playerid,"FOOD","EAT_Chicken",4.1,0,1,1,0,1); } } else { return 1; } } } В public OnPlayerPickUpPickup: if(pickupid == pickuplarka[0]) { ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"{FF8102}Покупка еды", "Хот-дог - 80 рублейnЧебурк - 60 рублейnКрабовый салат - 120 рублейnСлоёный пирожок - 20 рублейnПирожок с повидлом - 20 рублей", "Выбрать", "Отмена"); } if(pickupid == pickuplarka[1]) { ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"{FF8102}Покупка еды", "Хот-дог - 80 рублейnЧебурк - 60 рублейnКрабовый салат - 120 рублейnСлоёный пирожок - 20 рублейnПирожок с повидлом - 20 рублей", "Выбрать", "Отмена"); } if(pickupid == pickuplarka[2]) { ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"{FF8102}Покупка еды", "Хот-дог - 80 рублейnЧебурк - 60 рублейnКрабовый салат - 120 рублейnСлоёный пирожок - 20 рублейnПирожок с повидлом - 20 рублей", "Выбрать", "Отмена"); } if(pickupid == pickuplarka[3]) { ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"{FF8102}Покупка еды", "Хот-дог - 80 рублейnЧебурк - 60 рублейnКрабовый салат - 120 рублейnСлоёный пирожок - 20 рублейnПирожок с повидлом - 20 рублей", "Выбрать", "Отмена"); } if(pickupid == pickuplarka[4]) { ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"{FF8102}Покупка еды", "Хот-дог - 80 рублейnЧебурк - 60 рублейnКрабовый салат - 120 рублейnСлоёный пирожок - 20 рублейnПирожок с повидлом - 20 рублей", "Выбрать", "Отмена"); } if(pickupid == pickuplarka[5]) { ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"{FF8102}Покупка еды", "Хот-дог - 80 рублейnЧебурк - 60 рублейnКрабовый салат - 120 рублейnСлоёный пирожок - 20 рублейnПирожок с повидлом - 20 рублей", "Выбрать", "Отмена"); } Вот и всё. Спасибо за внимание )
  6. Решил добавить сюда. Команды добовляющие и ибирающие заграждения. Для гос.фракций. в newnew UsedCom[MAX_PLAYERS];далее в define#define MAX_ROADBLOCKS 35далее в forwardforward SafeSetPlayerPos(playerid, Float:x, Float:y, Float:z);forward RemoveRoadblock(playerid);forward CommandLog(string[]);далее в stockstock CreateRoadblock(Object,Float:x,Float:y,Float:z,Float:Angle){ for(new i = 0; i < sizeof(Roadblocks); i++) { if(Roadblocks[i][sCreated] == 0) { Roadblocks[i][sCreated] = 1; Roadblocks[i][sX] = x; Roadblocks[i][sY] = y; Roadblocks[i][sZ] = z-0.7; Roadblocks[i][sObject] = CreateObject(Object, x, y, z-0.9, 0, 0, Angle); return 1; } } return 0;}//==============================================================================stock DeleteAllRoadblocks(playerid){ for(new i = 0; i < sizeof(Roadblocks); i++) { if(IsPlayerInRangeOfPoint(playerid, 100, Roadblocks[i][sX], Roadblocks[i][sY], Roadblocks[i][sZ])) { if(Roadblocks[i][sCreated] == 1) { Roadblocks[i][sCreated] = 0; Roadblocks[i][sX] = 0.0; Roadblocks[i][sY] = 0.0; Roadblocks[i][sZ] = 0.0; DestroyObject(Roadblocks[i][sObject]); } } } return 0;}//==============================================================================stock DeleteClosestRoadblock(playerid){ for(new i = 0; i < sizeof(Roadblocks); i++) { if(IsPlayerInRangeOfPoint(playerid, 5.0, Roadblocks[i][sX], Roadblocks[i][sY], Roadblocks[i][sZ])) { if(Roadblocks[i][sCreated] == 1) { Roadblocks[i][sCreated] = 0; Roadblocks[i][sX] = 0.0; Roadblocks[i][sY] = 0.0; Roadblocks[i][sZ] = 0.0; DestroyObject(Roadblocks[i][sObject]); return 1; } } } return 0;}далее в конце в publicpublic SafeSetPlayerPos(playerid, Float:x, Float:y, Float:z){ SetPlayerPos(playerid, x,y,z); Streamer_UpdateEx(playerid,x,y,z); return 1;}forward KillInstLoc6();далее в enumenum rInfo{ sCreated, Float:sX, Float:sY, Float:sZ, sObject,};new Roadblocks[MAX_ROADBLOCKS][rInfo];далее в где логи вашего сервера добовляетеpublic CommandLog(string[]){ new entry[256]; format(entry, sizeof(entry), "%srn",string); new File:hFile; hFile = fopen("logs/removeroadblock.log", io_append); fwrite(hFile, entry); fclose(hFile);}ну теперь в командыif(strcmp(cmd, "/crb", true) == 0 || strcmp(cmd, "/createroadblock", true) == 0) { if(UsedCom[playerid]>0) return SendClientMessage(playerid, COLOR_WHITE, "Ввод команды разрешен раз в 1 секунду"); if(IsPlayerConnected(playerid) && IsACop(playerid) || IsPlayerAdmin(playerid)) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_WHITE, "Используйте: /crb [???????? ??????????-?????????? ????? ID]"); SendClientMessage(playerid, COLOR_LIGHTBLUE, "????????? ?????????:"); SendClientMessage(playerid, COLOR_GRAD1, "| 1: ????? ??????????-?????????? ???? | 2: ??????? ??????????-?????????? ???? |"); SendClientMessage(playerid, COLOR_GRAD1, "| 3: ??????? ??????????-?????????? ???? | 4: ????? | 5: ?????? ????? |"); SendClientMessage(playerid, COLOR_GRAD1, "| 6: ????? ????? | 7: ????? ???????? ????? |"); return 1; } new rb = strval(tmp); if (rb == 1) { PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); new Float:plocx,Float:plocy,Float:plocz,Float:ploca; GetPlayerPos(playerid, plocx, plocy, plocz); GetPlayerFacingAngle(playerid,ploca); CreateRoadblock(1459,plocx,plocy,plocz,ploca); format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(1).",sendername); SendRadioMessage(1,COLOR_BLUE,string); GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1); return 1; } else if (rb == 2) { PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); new Float:plocx,Float:plocy,Float:plocz,Float:ploca; GetPlayerPos(playerid, plocx, plocy, plocz); GetPlayerFacingAngle(playerid,ploca); CreateRoadblock(978,plocx,plocy,plocz+0.6,ploca); format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(2)",sendername); SendRadioMessage(1,COLOR_BLUE,string); GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1); return 1; } else if (rb == 3) { PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); new Float:plocx,Float:plocy,Float:plocz,Float:ploca; GetPlayerPos(playerid, plocx, plocy, plocz); GetPlayerFacingAngle(playerid,ploca); CreateRoadblock(981,plocx,plocy,plocz+0.9,ploca+180); format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(3)",sendername); SendRadioMessage(1,COLOR_BLUE,string); GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1); SafeSetPlayerPos(playerid, plocx, plocy+1.3, plocz); return 1; } else if (rb == 4) { PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); new Float:plocx,Float:plocy,Float:plocz,Float:ploca; GetPlayerPos(playerid, plocx, plocy, plocz); GetPlayerFacingAngle(playerid,ploca); CreateRoadblock(1238,plocx,plocy,plocz+0.2,ploca); format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(4)",sendername); SendRadioMessage(1,COLOR_BLUE,string); GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1); return 1; } else if (rb == 5) { PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); new Float:plocx,Float:plocy,Float:plocz,Float:ploca; GetPlayerPos(playerid, plocx, plocy, plocz); GetPlayerFacingAngle(playerid,ploca); CreateRoadblock(1425,plocx,plocy,plocz+0.6,ploca); format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(5)",sendername); SendRadioMessage(1,COLOR_BLUE,string); GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1); return 1; } else if (rb == 6) { PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); new Float:plocx,Float:plocy,Float:plocz,Float:ploca; GetPlayerPos(playerid, plocx, plocy, plocz); GetPlayerFacingAngle(playerid,ploca); CreateRoadblock(3265,plocx,plocy,plocz-0.5,ploca); format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(6)",sendername); SendRadioMessage(1,COLOR_BLUE,string); GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1); return 1; } else if (rb == 7) { PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); new Float:plocx,Float:plocy,Float:plocz,Float:ploca; GetPlayerPos(playerid, plocx, plocy, plocz); GetPlayerFacingAngle(playerid,ploca); CreateRoadblock(3091,plocx,plocy,plocz+0.5,ploca+180); format(string,sizeof(string),"[????]: ?????? %s ???????? ??????????-?????????? ?????(7)",sendername); SendRadioMessage(1,COLOR_BLUE,string); GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~b~?OCAB‡E?!",3000,1); return 1; } new y, m, d; new h,mi,s; getdate(y,m,d); gettime(h,mi,s); format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [??????????? ???????] -> /createroadblock %d",d,m,y,h,mi,s,sendername, rb); CommandLog(string); } UsedCom[playerid]=0; return 1; }//============================================================================== if (strcmp(cmd,"/rub",true) == 0 || strcmp(cmd, "/removeroadblock", true) == 0) { if(UsedCom[playerid]>0) return SendClientMessage(playerid, COLOR_WHITE, "???? ??????? ???????? ??? ? 1 ???????"); if(IsPlayerConnected(playerid) && IsACop(playerid) || PlayerInfo[playerid][pAdmin] >= 2) { DeleteClosestRoadblock(playerid); format(string,sizeof(string),"[????]: ?????? %s ????? ??????????-?????????? ????.",sendername); SendRadioMessage(1,COLOR_BLUE,string); GameTextForPlayer(playerid,"~w~?OPO„?OE ?A‚PA„?E?…E ~r~Y€PA?!",3000,1); new y, m, d; new h,mi,s; getdate(y,m,d); gettime(h,mi,s); format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [??????????? ???????] -> /removeroadblock",d,m,y,h,mi,s,sendername); CommandLog(string); } UsedCom[playerid]=0; return 1; }//============================================================================== if (strcmp(cmd,"/rrball",true) == 0 || strcmp(cmd, "/removeroadblockall", true) == 0) { if(UsedCom[playerid]>0) return SendClientMessage(playerid, COLOR_WHITE, "???? ??????? ???????? ??? ? 1 ???????"); if(IsPlayerConnected(playerid) && IsACop(playerid) || PlayerInfo[playerid][pAdmin] >= 2) { if(PlayerInfo[playerid][pRank] >= 5 || PlayerInfo[playerid][pAdmin] >= 2) // This being the default Chief rank in LA-RP change if neccesary. { DeleteAllRoadblocks(playerid); format(string,sizeof(string),"[????]: ?????? %s ????? ??? ??????????-?????????? ??????.",sendername); SendRadioMessage(1,COLOR_BLUE,string); GameTextForPlayer(playerid,"~b~?OPO„?OE ?A‚PA„?E?…E ~r~Y€PA?!",3000,1); new y, m, d; new h,mi,s; getdate(y,m,d); gettime(h,mi,s); format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [??????????? ???????] -> /removeroadblockall",d,m,y,h,mi,s,sendername); CommandLog(string); } } UsedCom[playerid]=0; return 1; } Делал не по порядку. строго не судите. может кому то пригодится.
  7. Вот решил что то сделать может кому то пригодится. в newnew UsedCom[MAX_PLAYERS];далее в командыif(strcmp(cmd, "/spawn", true) == 0) { if(UsedCom[playerid]>0) return SendClientMessage(playerid, COLOR_WHITE, "Ввод команды разрешен раз в 1 секунду ); if(IsPlayerConnected(playerid)) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "Используйте: /spawn [ID]"); return 1; } giveplayerid = ReturnUser(tmp); if (PlayerInfo[playerid][pAdmin] >= 3) { if(IsPlayerConnected(giveplayerid)) { if(giveplayerid != INVALID_PLAYER_ID) { GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer)); SpawnPlayer(giveplayerid); format(string, sizeof(string), "Вы заспавнили %s .",giveplayer); SendClientMessage(playerid,COLOR_LIGHTRED,string); SendClientMessage(giveplayerid, TEAM_GROVE_COLOR, "Вы были заспавнены администратором"); format(string, sizeof(string), "[Администратор]:%s заспавнил игрока %s ",sendername, giveplayer, giveplayerid); ABroadCast(COLOR_LIGHTRED,string, 5); MedicBill[giveplayerid] = 0; new y, m, d; new h,mi,s; getdate(y,m,d); gettime(h,mi,s); format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s заспавнил игрока %s",d,m,y,h,mi,s,sendername,giveplayer); } } else { format(string, sizeof(string), "%d этот игрок не в игре.", giveplayerid); SendClientMessage(playerid, COLOR_GRAD1, string); } } } UsedCom[playerid]=0; return 1; }
  8. SkRiTeX

    Разводной мост.

    Ко всем new: new Most1;new Most2; Ко всем CreateDynamicObject добавляем: Most1 = CreateObject(2168,2747.34448242,-1142.90002441,21.60000038,0.00000000,0.00000000,180.00000000); //object(partition) (2)Most2 = CreateObject(2168,2747.30004883,-1262.00000000,21.60000038,0.00000000,0.00000000,0.00000000); //object(partition) (4) Добавляем команды /пмост ( поднять мост) и /омост (опустить мост): Для Админов: if(strcmp(cmd,"/пмост",true)==0){if(PlayerInfo[playerid][pAdmin] >= 10) //<------ Лвл Администратора{MoveObject(Most1,2747.34448242,-1142.90002441,22.6000002, 0.1, 55.00000000,0.00000000,180.00000000);MoveObject(Most2,2747.30004883,-1262.00000000,22.6000002, 0.1, 55.00000000,0.00000000,0.00000000 );SendClientMessageToAll(COLOR_GREEN,"Внимание!!! Подъём разводного моста!!!");return 1;}else{ SendClientMessage(playerid, COLOR_LIGHTRED,"Вы не Администратор");}}if(strcmp(cmd,"/омост",true)==0){if(PlayerInfo[playerid][pAdmin] >= 10){MoveObject(Most1,2747.34448242, -1142.90002441, 21.60000038, 0.1, 0.00000000, 0.00000000, 180.00000000 );MoveObject(Most2,2747.30004883, -1262.00000000, 21.60000038, 0.1, 0.00000000,0.00000000,0.00000000 );SendClientMessageToAll(COLOR_GREEN,"Внимание!!! Разводной мост опускается!!!");return 1;}else{ SendClientMessage(playerid, COLOR_LIGHTRED,"Вы не Администратор!");}} Для Хелперов и Админов: if(strcmp(cmd,"/пмост",true)==0){if (PlayerInfo[playerid][pAdmin] >= 10 || PlayerInfo[playerid][pHelper] >= 6){MoveObject(Most1,2747.34448242,-1142.90002441,22.6000002, 0.1, 55.00000000,0.00000000,180.00000000);MoveObject(Most2,2747.30004883,-1262.00000000,22.6000002, 0.1, 55.00000000,0.00000000,0.00000000 );SendClientMessageToAll(COLOR_GREEN,"Внимание!!! Подъём разводного моста!!!");return 1;}else{ SendClientMessage(playerid, COLOR_LIGHTRED,"Вы не Администратор");}}if(strcmp(cmd,"/омост",true)==0){if(PlayerInfo[playerid][pAdmin] >= 10){MoveObject(Most1,2747.34448242, -1142.90002441, 21.60000038, 0.1, 0.00000000, 0.00000000, 180.00000000 );MoveObject(Most2,2747.30004883, -1262.00000000, 21.60000038, 0.1, 0.00000000,0.00000000,0.00000000 );SendClientMessageToAll(COLOR_GREEN,"Внимание!!! Разводной мост опускается!!!");return 1;}else{ SendClientMessage(playerid, COLOR_LIGHTRED,"Вы не Администратор!");}} Ну вот и всё. Большое спасибо за внимание.
  9. Всем привет! Это не система инвентаря , а только TextDraw с открытием и закрытием... Открыть на "H" PHP код: new Text:RakNetCopy[84];в public OnGameModeInitPHP код: RakNetCopy[0] = TextDrawCreate(230.000000, 120.000000, "_"); TextDrawBackgroundColor(RakNetCopy[0], 255); TextDrawFont(RakNetCopy[0], 1); TextDrawLetterSize(RakNetCopy[0], 0.500000, 34.199996); TextDrawColor(RakNetCopy[0], -1); TextDrawSetOutline(RakNetCopy[0], 0); TextDrawSetProportional(RakNetCopy[0], 1); TextDrawSetShadow(RakNetCopy[0], 1); TextDrawUseBox(RakNetCopy[0], 1); TextDrawBoxColor(RakNetCopy[0], 255); TextDrawTextSize(RakNetCopy[0], 30.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[0], 0); RakNetCopy[1] = TextDrawCreate(610.000000, 120.000000, "_"); TextDrawBackgroundColor(RakNetCopy[1], 255); TextDrawFont(RakNetCopy[1], 1); TextDrawLetterSize(RakNetCopy[1], 0.500000, 34.299995); TextDrawColor(RakNetCopy[1], -1); TextDrawSetOutline(RakNetCopy[1], 0); TextDrawSetProportional(RakNetCopy[1], 1); TextDrawSetShadow(RakNetCopy[1], 1); TextDrawUseBox(RakNetCopy[1], 1); TextDrawBoxColor(RakNetCopy[1], 255); TextDrawTextSize(RakNetCopy[1], 410.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[1], 0); RakNetCopy[2] = TextDrawCreate(220.000000, 329.000000, "_"); TextDrawBackgroundColor(RakNetCopy[2], 255); TextDrawFont(RakNetCopy[2], 1); TextDrawLetterSize(RakNetCopy[2], 0.500000, 8.500000); TextDrawColor(RakNetCopy[2], -1); TextDrawSetOutline(RakNetCopy[2], 0); TextDrawSetProportional(RakNetCopy[2], 1); TextDrawSetShadow(RakNetCopy[2], 1); TextDrawUseBox(RakNetCopy[2], 1); TextDrawBoxColor(RakNetCopy[2], 0x38917fff); TextDrawTextSize(RakNetCopy[2], 40.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[2], 0); RakNetCopy[3] = TextDrawCreate(170.000000, 411.000000, "_"); TextDrawBackgroundColor(RakNetCopy[3], 255); TextDrawFont(RakNetCopy[3], 1); TextDrawLetterSize(RakNetCopy[3], 0.500000, 1.500000); TextDrawColor(RakNetCopy[3], -1); TextDrawSetOutline(RakNetCopy[3], 0); TextDrawSetProportional(RakNetCopy[3], 1); TextDrawSetShadow(RakNetCopy[3], 1); TextDrawUseBox(RakNetCopy[3], 1); TextDrawBoxColor(RakNetCopy[3], 0x38917fff); TextDrawTextSize(RakNetCopy[3], 90.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[3], 0); RakNetCopy[4] = TextDrawCreate(480.000000, 410.000000, "_"); TextDrawBackgroundColor(RakNetCopy[4], 255); TextDrawFont(RakNetCopy[4], 1); TextDrawLetterSize(RakNetCopy[4], 0.500000, 1.500000); TextDrawColor(RakNetCopy[4], -1); TextDrawSetOutline(RakNetCopy[4], 0); TextDrawSetProportional(RakNetCopy[4], 1); TextDrawSetShadow(RakNetCopy[4], 1); TextDrawUseBox(RakNetCopy[4], 1); TextDrawBoxColor(RakNetCopy[4], 0x38917fff); TextDrawTextSize(RakNetCopy[4], 415.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[4], 0); RakNetCopy[5] = TextDrawCreate(540.000000, 410.000000, "_"); TextDrawBackgroundColor(RakNetCopy[5], 255); TextDrawFont(RakNetCopy[5], 1); TextDrawLetterSize(RakNetCopy[5], 0.500000, 1.500000); TextDrawColor(RakNetCopy[5], -1); TextDrawSetOutline(RakNetCopy[5], 0); TextDrawSetProportional(RakNetCopy[5], 1); TextDrawSetShadow(RakNetCopy[5], 1); TextDrawUseBox(RakNetCopy[5], 1); TextDrawBoxColor(RakNetCopy[5], 0x38917fff); TextDrawTextSize(RakNetCopy[5], 478.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[5], 0); RakNetCopy[6] = TextDrawCreate(583.000000, 410.000000, "_"); TextDrawBackgroundColor(RakNetCopy[6], 255); TextDrawFont(RakNetCopy[6], 1); TextDrawLetterSize(RakNetCopy[6], 0.500000, 1.500000); TextDrawColor(RakNetCopy[6], -1); TextDrawSetOutline(RakNetCopy[6], 0); TextDrawSetProportional(RakNetCopy[6], 1); TextDrawSetShadow(RakNetCopy[6], 1); TextDrawUseBox(RakNetCopy[6], 1); TextDrawBoxColor(RakNetCopy[6], 0x38917fff); TextDrawTextSize(RakNetCopy[6], 558.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[6], 0); RakNetCopy[7] = TextDrawCreate(605.000000, 410.000000, "_"); TextDrawBackgroundColor(RakNetCopy[7], 255); TextDrawFont(RakNetCopy[7], 1); TextDrawLetterSize(RakNetCopy[7], 0.500000, 1.500000); TextDrawColor(RakNetCopy[7], -1); TextDrawSetOutline(RakNetCopy[7], 0); TextDrawSetProportional(RakNetCopy[7], 1); TextDrawSetShadow(RakNetCopy[7], 1); TextDrawUseBox(RakNetCopy[7], 1); TextDrawBoxColor(RakNetCopy[7], 0x38917fff); TextDrawTextSize(RakNetCopy[7], 581.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[7], 0); RakNetCopy[8] = TextDrawCreate(542.000000, 126.000000, "_"); TextDrawBackgroundColor(RakNetCopy[8], 255); TextDrawFont(RakNetCopy[8], 1); TextDrawLetterSize(RakNetCopy[8], 0.500000, 1.500000); TextDrawColor(RakNetCopy[8], -1); TextDrawSetOutline(RakNetCopy[8], 0); TextDrawSetProportional(RakNetCopy[8], 1); TextDrawSetShadow(RakNetCopy[8], 1); TextDrawUseBox(RakNetCopy[8], 1); TextDrawBoxColor(RakNetCopy[8], 0x38917fff); TextDrawTextSize(RakNetCopy[8], 478.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[8], 0); RakNetCopy[9] = TextDrawCreate(605.000000, 126.000000, "_"); TextDrawBackgroundColor(RakNetCopy[9], 255); TextDrawFont(RakNetCopy[9], 1); TextDrawLetterSize(RakNetCopy[9], 0.500000, 1.500000); TextDrawColor(RakNetCopy[9], -1); TextDrawSetOutline(RakNetCopy[9], 0); TextDrawSetProportional(RakNetCopy[9], 1); TextDrawSetShadow(RakNetCopy[9], 1); TextDrawUseBox(RakNetCopy[9], 1); TextDrawBoxColor(RakNetCopy[9], 0x38917fff); TextDrawTextSize(RakNetCopy[9], 542.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[9], 0); RakNetCopy[10] = TextDrawCreate(478.000000, 126.000000, "_"); TextDrawBackgroundColor(RakNetCopy[10], 255); TextDrawFont(RakNetCopy[10], 1); TextDrawLetterSize(RakNetCopy[10], 0.500000, 1.500000); TextDrawColor(RakNetCopy[10], -1); TextDrawSetOutline(RakNetCopy[10], 0); TextDrawSetProportional(RakNetCopy[10], 1); TextDrawSetShadow(RakNetCopy[10], 1); TextDrawUseBox(RakNetCopy[10], 1); TextDrawBoxColor(RakNetCopy[10], 0x38917fff); TextDrawTextSize(RakNetCopy[10], 415.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[10], 0); RakNetCopy[11] = TextDrawCreate(478.000000, 147.000000, "_"); TextDrawBackgroundColor(RakNetCopy[11], 255); TextDrawFont(RakNetCopy[11], 1); TextDrawLetterSize(RakNetCopy[11], 0.500000, 1.500000); TextDrawColor(RakNetCopy[11], -1); TextDrawSetOutline(RakNetCopy[11], 0); TextDrawSetProportional(RakNetCopy[11], 1); TextDrawSetShadow(RakNetCopy[11], 1); TextDrawUseBox(RakNetCopy[11], 1); TextDrawBoxColor(RakNetCopy[11], 0x38917fff); TextDrawTextSize(RakNetCopy[11], 415.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[11], 0); RakNetCopy[12] = TextDrawCreate(542.000000, 147.000000, "_"); TextDrawBackgroundColor(RakNetCopy[12], 255); TextDrawFont(RakNetCopy[12], 1); TextDrawLetterSize(RakNetCopy[12], 0.500000, 1.500000); TextDrawColor(RakNetCopy[12], -1); TextDrawSetOutline(RakNetCopy[12], 0); TextDrawSetProportional(RakNetCopy[12], 1); TextDrawSetShadow(RakNetCopy[12], 1); TextDrawUseBox(RakNetCopy[12], 1); TextDrawBoxColor(RakNetCopy[12], 0x38917fff); TextDrawTextSize(RakNetCopy[12], 478.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[12], 0); RakNetCopy[13] = TextDrawCreate(605.000000, 147.000000, "_"); TextDrawBackgroundColor(RakNetCopy[13], 255); TextDrawFont(RakNetCopy[13], 1); TextDrawLetterSize(RakNetCopy[13], 0.500000, 1.500000); TextDrawColor(RakNetCopy[13], -1); TextDrawSetOutline(RakNetCopy[13], 0); TextDrawSetProportional(RakNetCopy[13], 1); TextDrawSetShadow(RakNetCopy[13], 1); TextDrawUseBox(RakNetCopy[13], 1); TextDrawBoxColor(RakNetCopy[13], 0x38917fff); TextDrawTextSize(RakNetCopy[13], 542.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[13], 0); RakNetCopy[14] = TextDrawCreate(605.000000, 171.000000, "_"); TextDrawBackgroundColor(RakNetCopy[14], 255); TextDrawFont(RakNetCopy[14], 1); TextDrawLetterSize(RakNetCopy[14], 0.500000, 24.900000); TextDrawColor(RakNetCopy[14], -1); TextDrawSetOutline(RakNetCopy[14], 0); TextDrawSetProportional(RakNetCopy[14], 1); TextDrawSetShadow(RakNetCopy[14], 1); TextDrawUseBox(RakNetCopy[14], 1); TextDrawBoxColor(RakNetCopy[14], 0x38917fff); TextDrawTextSize(RakNetCopy[14], 415.000000, 0.000000); TextDrawSetSelectable(RakNetCopy[14], 0); RakNetCopy[15] = TextDrawCreate(105.000000, 411.000000, "CRAFT"); TextDrawBackgroundColor(RakNetCopy[15], 255); TextDrawFont(RakNetCopy[15], 1); TextDrawLetterSize(RakNetCopy[15], 0.519999, 1.299999); TextDrawColor(RakNetCopy[15], -1); TextDrawSetOutline(RakNetCopy[15], 0); TextDrawSetProportional(RakNetCopy[15], 1); TextDrawTextSize(RakNetCopy[15], 150.000000, 18.000000); TextDrawSetShadow(RakNetCopy[15], 1); TextDrawSetSelectable(RakNetCopy[15], 1); RakNetCopy[16] = TextDrawCreate(427.000000, 410.000000, "DROP"); TextDrawBackgroundColor(RakNetCopy[16], 255); TextDrawFont(RakNetCopy[16], 1); TextDrawLetterSize(RakNetCopy[16], 0.519999, 1.299999); TextDrawColor(RakNetCopy[16], -1); TextDrawSetOutline(RakNetCopy[16], 0); TextDrawSetProportional(RakNetCopy[16], 1); TextDrawTextSize(RakNetCopy[16], 470.000000, 18.000000); TextDrawSetShadow(RakNetCopy[16], 1); TextDrawSetSelectable(RakNetCopy[16], 1); RakNetCopy[17] = TextDrawCreate(484.000000, 410.000000, "DELETE"); TextDrawBackgroundColor(RakNetCopy[17], 255); TextDrawFont(RakNetCopy[17], 1); TextDrawLetterSize(RakNetCopy[17], 0.479999, 1.299999); TextDrawColor(RakNetCopy[17], -1); TextDrawSetOutline(RakNetCopy[17], 0); TextDrawSetProportional(RakNetCopy[17], 1); TextDrawTextSize(RakNetCopy[17], 530.000000, 18.000000); TextDrawSetShadow(RakNetCopy[17], 1); TextDrawSetSelectable(RakNetCopy[17], 1); RakNetCopy[18] = TextDrawCreate(569.000000, 410.000000, "i"); TextDrawBackgroundColor(RakNetCopy[18], 255); TextDrawFont(RakNetCopy[18], 1); TextDrawLetterSize(RakNetCopy[18], 0.479999, 1.299999); TextDrawColor(RakNetCopy[18], -1); TextDrawSetOutline(RakNetCopy[18], 0); TextDrawSetProportional(RakNetCopy[18], 1); TextDrawTextSize(RakNetCopy[18], 580.000000, 11.000000); TextDrawSetShadow(RakNetCopy[18], 1); TextDrawSetSelectable(RakNetCopy[18], 1); RakNetCopy[19] = TextDrawCreate(588.000000, 410.000000, "X"); TextDrawBackgroundColor(RakNetCopy[19], 255); TextDrawFont(RakNetCopy[19], 1); TextDrawLetterSize(RakNetCopy[19], 0.479999, 1.299999); TextDrawColor(RakNetCopy[19], -1); TextDrawSetOutline(RakNetCopy[19], 0); TextDrawSetProportional(RakNetCopy[19], 1); TextDrawTextSize(RakNetCopy[19], 600.000000, 12.000000); TextDrawSetShadow(RakNetCopy[19], 1); TextDrawSetSelectable(RakNetCopy[19], 1); RakNetCopy[20] = TextDrawCreate(429.000000, 127.000000, "GIVE"); TextDrawBackgroundColor(RakNetCopy[20], 255); TextDrawFont(RakNetCopy[20], 1); TextDrawLetterSize(RakNetCopy[20], 0.479999, 1.299999); TextDrawColor(RakNetCopy[20], -1); TextDrawSetOutline(RakNetCopy[20], 0); TextDrawSetProportional(RakNetCopy[20], 1); TextDrawTextSize(RakNetCopy[20], 465.000000, 18.000000); TextDrawSetShadow(RakNetCopy[20], 1); TextDrawSetSelectable(RakNetCopy[20], 1); RakNetCopy[21] = TextDrawCreate(497.000000, 127.000000, "BUY"); TextDrawBackgroundColor(RakNetCopy[21], 255); TextDrawFont(RakNetCopy[21], 1); TextDrawLetterSize(RakNetCopy[21], 0.479999, 1.299999); TextDrawColor(RakNetCopy[21], -1); TextDrawSetOutline(RakNetCopy[21], 0); TextDrawSetProportional(RakNetCopy[21], 1); TextDrawTextSize(RakNetCopy[21], 530.000000, 18.000000); TextDrawSetShadow(RakNetCopy[21], 1); TextDrawSetSelectable(RakNetCopy[21], 1); RakNetCopy[22] = TextDrawCreate(557.000000, 127.000000, "SELL"); TextDrawBackgroundColor(RakNetCopy[22], 255); TextDrawFont(RakNetCopy[22], 1); TextDrawLetterSize(RakNetCopy[22], 0.479999, 1.299999); TextDrawColor(RakNetCopy[22], -1); TextDrawSetOutline(RakNetCopy[22], 0); TextDrawSetProportional(RakNetCopy[22], 1); TextDrawTextSize(RakNetCopy[22], 580.000000, 18.000000); TextDrawSetShadow(RakNetCopy[22], 1); TextDrawSetSelectable(RakNetCopy[22], 1); RakNetCopy[23] = TextDrawCreate(435.000000, 147.000000, "INV"); TextDrawBackgroundColor(RakNetCopy[23], 255); TextDrawFont(RakNetCopy[23], 1); TextDrawLetterSize(RakNetCopy[23], 0.479999, 1.299999); TextDrawColor(RakNetCopy[23], -1); TextDrawSetOutline(RakNetCopy[23], 0); TextDrawSetProportional(RakNetCopy[23], 1); TextDrawTextSize(RakNetCopy[23], 470.000000, 18.000000); TextDrawSetShadow(RakNetCopy[23], 1); TextDrawSetSelectable(RakNetCopy[23], 1); RakNetCopy[24] = TextDrawCreate(495.000000, 147.000000, "CAR"); TextDrawBackgroundColor(RakNetCopy[24], 255); TextDrawFont(RakNetCopy[24], 1); TextDrawLetterSize(RakNetCopy[24], 0.479999, 1.299999); TextDrawColor(RakNetCopy[24], -1); TextDrawSetOutline(RakNetCopy[24], 0); TextDrawSetProportional(RakNetCopy[24], 1); TextDrawTextSize(RakNetCopy[24], 530.000000, 18.000000); TextDrawSetShadow(RakNetCopy[24], 1); TextDrawSetSelectable(RakNetCopy[24], 1); RakNetCopy[25] = TextDrawCreate(549.000000, 147.000000, "HOUSE"); TextDrawBackgroundColor(RakNetCopy[25], 255); TextDrawFont(RakNetCopy[25], 1); TextDrawLetterSize(RakNetCopy[25], 0.479999, 1.299999); TextDrawColor(RakNetCopy[25], -1); TextDrawSetOutline(RakNetCopy[25], 0); TextDrawSetProportional(RakNetCopy[25], 1); TextDrawTextSize(RakNetCopy[25], 580.000000, 18.000000); TextDrawSetShadow(RakNetCopy[25], 1); TextDrawSetSelectable(RakNetCopy[25], 1); RakNetCopy[26] = TextDrawCreate(191.000000, 130.000000, "_"); TextDrawAlignment(RakNetCopy[26], 2); TextDrawBackgroundColor(RakNetCopy[26], 255); TextDrawFont(RakNetCopy[26], 5); TextDrawLetterSize(RakNetCopy[26], -0.099999, -0.400000); TextDrawColor(RakNetCopy[26], -1); TextDrawSetOutline(RakNetCopy[26], 0); TextDrawSetProportional(RakNetCopy[26], 0); TextDrawSetShadow(RakNetCopy[26], 1); TextDrawUseBox(RakNetCopy[26], 1); TextDrawBoxColor(RakNetCopy[26], -1); TextDrawTextSize(RakNetCopy[26], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[26], 19461); TextDrawSetPreviewRot(RakNetCopy[26], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[26], 1); RakNetCopy[27] = TextDrawCreate(191.000000, 174.000000, "_"); TextDrawAlignment(RakNetCopy[27], 2); TextDrawBackgroundColor(RakNetCopy[27], 255); TextDrawFont(RakNetCopy[27], 5); TextDrawLetterSize(RakNetCopy[27], -0.099999, -0.400000); TextDrawColor(RakNetCopy[27], -1); TextDrawSetOutline(RakNetCopy[27], 0); TextDrawSetProportional(RakNetCopy[27], 0); TextDrawSetShadow(RakNetCopy[27], 1); TextDrawUseBox(RakNetCopy[27], 1); TextDrawBoxColor(RakNetCopy[27], -1); TextDrawTextSize(RakNetCopy[27], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[27], 19461); TextDrawSetPreviewRot(RakNetCopy[27], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[27], 1); RakNetCopy[28] = TextDrawCreate(191.000000, 221.000000, "_"); TextDrawAlignment(RakNetCopy[28], 2); TextDrawBackgroundColor(RakNetCopy[28], 255); TextDrawFont(RakNetCopy[28], 5); TextDrawLetterSize(RakNetCopy[28], -0.099999, -0.400000); TextDrawColor(RakNetCopy[28], -1); TextDrawSetOutline(RakNetCopy[28], 0); TextDrawSetProportional(RakNetCopy[28], 0); TextDrawSetShadow(RakNetCopy[28], 1); TextDrawUseBox(RakNetCopy[28], 1); TextDrawBoxColor(RakNetCopy[28], -1); TextDrawTextSize(RakNetCopy[28], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[28], 19461); TextDrawSetPreviewRot(RakNetCopy[28], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[28], 1); RakNetCopy[29] = TextDrawCreate(41.000000, 220.000000, "_"); TextDrawAlignment(RakNetCopy[29], 2); TextDrawBackgroundColor(RakNetCopy[29], 255); TextDrawFont(RakNetCopy[29], 5); TextDrawLetterSize(RakNetCopy[29], -0.099999, -0.400000); TextDrawColor(RakNetCopy[29], -1); TextDrawSetOutline(RakNetCopy[29], 0); TextDrawSetProportional(RakNetCopy[29], 0); TextDrawSetShadow(RakNetCopy[29], 1); TextDrawUseBox(RakNetCopy[29], 1); TextDrawBoxColor(RakNetCopy[29], -1); TextDrawTextSize(RakNetCopy[29], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[29], 19461); TextDrawSetPreviewRot(RakNetCopy[29], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[29], 1); RakNetCopy[30] = TextDrawCreate(41.000000, 174.000000, "_"); TextDrawAlignment(RakNetCopy[30], 2); TextDrawBackgroundColor(RakNetCopy[30], 255); TextDrawFont(RakNetCopy[30], 5); TextDrawLetterSize(RakNetCopy[30], -0.099999, -0.400000); TextDrawColor(RakNetCopy[30], -1); TextDrawSetOutline(RakNetCopy[30], 0); TextDrawSetProportional(RakNetCopy[30], 0); TextDrawSetShadow(RakNetCopy[30], 1); TextDrawUseBox(RakNetCopy[30], 1); TextDrawBoxColor(RakNetCopy[30], -1); TextDrawTextSize(RakNetCopy[30], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[30], 19461); TextDrawSetPreviewRot(RakNetCopy[30], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[30], 1); RakNetCopy[31] = TextDrawCreate(41.000000, 130.000000, "_"); TextDrawAlignment(RakNetCopy[31], 2); TextDrawBackgroundColor(RakNetCopy[31], 255); TextDrawFont(RakNetCopy[31], 5); TextDrawLetterSize(RakNetCopy[31], -0.099999, -0.400000); TextDrawColor(RakNetCopy[31], -1); TextDrawSetOutline(RakNetCopy[31], 0); TextDrawSetProportional(RakNetCopy[31], 0); TextDrawSetShadow(RakNetCopy[31], 1); TextDrawUseBox(RakNetCopy[31], 1); TextDrawBoxColor(RakNetCopy[31], -1); TextDrawTextSize(RakNetCopy[31], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[31], 19461); TextDrawSetPreviewRot(RakNetCopy[31], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[31], 1); RakNetCopy[32] = TextDrawCreate(83.000000, 130.000000, "_"); TextDrawAlignment(RakNetCopy[32], 2); TextDrawBackgroundColor(RakNetCopy[32], 0x38917fff); TextDrawFont(RakNetCopy[32], 5); TextDrawLetterSize(RakNetCopy[32], -0.099999, -0.400000); TextDrawColor(RakNetCopy[32], -1); TextDrawSetOutline(RakNetCopy[32], 0); TextDrawSetProportional(RakNetCopy[32], 0); TextDrawSetShadow(RakNetCopy[32], 1); TextDrawUseBox(RakNetCopy[32], 1); TextDrawBoxColor(RakNetCopy[32], 255); TextDrawTextSize(RakNetCopy[32], 97.000000, 120.000000); TextDrawSetPreviewModel(RakNetCopy[32], 0); TextDrawSetPreviewRot(RakNetCopy[32], 0.000000, 0.000000, 0.000000, 1.000000); TextDrawSetSelectable(RakNetCopy[32], 1); RakNetCopy[33] = TextDrawCreate(83.000000, 260.000000, "_"); TextDrawAlignment(RakNetCopy[33], 2); TextDrawBackgroundColor(RakNetCopy[33], 255); TextDrawFont(RakNetCopy[33], 5); TextDrawLetterSize(RakNetCopy[33], -0.099999, -0.400000); TextDrawColor(RakNetCopy[33], -1); TextDrawSetOutline(RakNetCopy[33], 0); TextDrawSetProportional(RakNetCopy[33], 0); TextDrawSetShadow(RakNetCopy[33], 1); TextDrawUseBox(RakNetCopy[33], 1); TextDrawBoxColor(RakNetCopy[33], -1); TextDrawTextSize(RakNetCopy[33], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[33], 19461); TextDrawSetPreviewRot(RakNetCopy[33], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[33], 1); RakNetCopy[34] = TextDrawCreate(117.000000, 260.000000, "_"); TextDrawAlignment(RakNetCopy[34], 2); TextDrawBackgroundColor(RakNetCopy[34], 255); TextDrawFont(RakNetCopy[34], 5); TextDrawLetterSize(RakNetCopy[34], -0.099999, -0.400000); TextDrawColor(RakNetCopy[34], -1); TextDrawSetOutline(RakNetCopy[34], 0); TextDrawSetProportional(RakNetCopy[34], 0); TextDrawSetShadow(RakNetCopy[34], 1); TextDrawUseBox(RakNetCopy[34], 1); TextDrawBoxColor(RakNetCopy[34], -1); TextDrawTextSize(RakNetCopy[34], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[34], 19461); TextDrawSetPreviewRot(RakNetCopy[34], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[34], 1); RakNetCopy[35] = TextDrawCreate(151.000000, 260.000000, "_"); TextDrawAlignment(RakNetCopy[35], 2); TextDrawBackgroundColor(RakNetCopy[35], 255); TextDrawFont(RakNetCopy[35], 5); TextDrawLetterSize(RakNetCopy[35], -0.099999, -0.400000); TextDrawColor(RakNetCopy[35], -1); TextDrawSetOutline(RakNetCopy[35], 0); TextDrawSetProportional(RakNetCopy[35], 0); TextDrawSetShadow(RakNetCopy[35], 1); TextDrawUseBox(RakNetCopy[35], 1); TextDrawBoxColor(RakNetCopy[35], -1); TextDrawTextSize(RakNetCopy[35], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[35], 19461); TextDrawSetPreviewRot(RakNetCopy[35], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[35], 1); RakNetCopy[36] = TextDrawCreate(151.000000, 292.000000, "_"); TextDrawAlignment(RakNetCopy[36], 2); TextDrawBackgroundColor(RakNetCopy[36], 255); TextDrawFont(RakNetCopy[36], 5); TextDrawLetterSize(RakNetCopy[36], -0.099999, -0.400000); TextDrawColor(RakNetCopy[36], -1); TextDrawSetOutline(RakNetCopy[36], 0); TextDrawSetProportional(RakNetCopy[36], 0); TextDrawSetShadow(RakNetCopy[36], 1); TextDrawUseBox(RakNetCopy[36], 1); TextDrawBoxColor(RakNetCopy[36], -1); TextDrawTextSize(RakNetCopy[36], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[36], 19461); TextDrawSetPreviewRot(RakNetCopy[36], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[36], 1); RakNetCopy[37] = TextDrawCreate(117.000000, 292.000000, "_"); TextDrawAlignment(RakNetCopy[37], 2); TextDrawBackgroundColor(RakNetCopy[37], 255); TextDrawFont(RakNetCopy[37], 5); TextDrawLetterSize(RakNetCopy[37], -0.099999, -0.400000); TextDrawColor(RakNetCopy[37], -1); TextDrawSetOutline(RakNetCopy[37], 0); TextDrawSetProportional(RakNetCopy[37], 0); TextDrawSetShadow(RakNetCopy[37], 1); TextDrawUseBox(RakNetCopy[37], 1); TextDrawBoxColor(RakNetCopy[37], -1); TextDrawTextSize(RakNetCopy[37], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[37], 19461); TextDrawSetPreviewRot(RakNetCopy[37], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[37], 1); RakNetCopy[38] = TextDrawCreate(83.000000, 292.000000, "_"); TextDrawAlignment(RakNetCopy[38], 2); TextDrawBackgroundColor(RakNetCopy[38], 255); TextDrawFont(RakNetCopy[38], 5); TextDrawLetterSize(RakNetCopy[38], -0.099999, -0.400000); TextDrawColor(RakNetCopy[38], -1); TextDrawSetOutline(RakNetCopy[38], 0); TextDrawSetProportional(RakNetCopy[38], 0); TextDrawSetShadow(RakNetCopy[38], 1); TextDrawUseBox(RakNetCopy[38], 1); TextDrawBoxColor(RakNetCopy[38], -1); TextDrawTextSize(RakNetCopy[38], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[38], 19461); TextDrawSetPreviewRot(RakNetCopy[38], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[38], 1); RakNetCopy[39] = TextDrawCreate(50.000000, 352.000000, "_"); TextDrawAlignment(RakNetCopy[39], 2); TextDrawBackgroundColor(RakNetCopy[39], 255); TextDrawFont(RakNetCopy[39], 5); TextDrawLetterSize(RakNetCopy[39], -0.099999, -0.400000); TextDrawColor(RakNetCopy[39], -1); TextDrawSetOutline(RakNetCopy[39], 0); TextDrawSetProportional(RakNetCopy[39], 0); TextDrawSetShadow(RakNetCopy[39], 1); TextDrawUseBox(RakNetCopy[39], 1); TextDrawBoxColor(RakNetCopy[39], -1); TextDrawTextSize(RakNetCopy[39], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[39], 19461); TextDrawSetPreviewRot(RakNetCopy[39], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[39], 1); RakNetCopy[40] = TextDrawCreate(180.000000, 352.000000, "_"); TextDrawAlignment(RakNetCopy[40], 2); TextDrawBackgroundColor(RakNetCopy[40], 255); TextDrawFont(RakNetCopy[40], 5); TextDrawLetterSize(RakNetCopy[40], -0.099999, -0.400000); TextDrawColor(RakNetCopy[40], -1); TextDrawSetOutline(RakNetCopy[40], 0); TextDrawSetProportional(RakNetCopy[40], 0); TextDrawSetShadow(RakNetCopy[40], 1); TextDrawUseBox(RakNetCopy[40], 1); TextDrawBoxColor(RakNetCopy[40], -1); TextDrawTextSize(RakNetCopy[40], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[40], 19461); TextDrawSetPreviewRot(RakNetCopy[40], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[40], 1); RakNetCopy[41] = TextDrawCreate(90.000000, 334.000000, "_"); TextDrawAlignment(RakNetCopy[41], 2); TextDrawBackgroundColor(RakNetCopy[41], 255); TextDrawFont(RakNetCopy[41], 5); TextDrawLetterSize(RakNetCopy[41], -0.099999, -0.400000); TextDrawColor(RakNetCopy[41], -1); TextDrawSetOutline(RakNetCopy[41], 0); TextDrawSetProportional(RakNetCopy[41], 0); TextDrawSetShadow(RakNetCopy[41], 1); TextDrawUseBox(RakNetCopy[41], 1); TextDrawBoxColor(RakNetCopy[41], -1); TextDrawTextSize(RakNetCopy[41], 80.000000, 66.000000); TextDrawSetPreviewModel(RakNetCopy[41], 19461); TextDrawSetPreviewRot(RakNetCopy[41], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[41], 1); new Float:DrawFloat_X = 418.0000,Float:DrawFloat_Y = 172.0000; new c = 0,drawid = 42; for(new i; i < 42; i++) { if(c == 6) c = 0,DrawFloat_Y += 32.0,DrawFloat_X = 418.0000; else if(c > 0 && c < 6) DrawFloat_X += 31.0; RakNetCopy[drawid] = TextDrawCreate(DrawFloat_X, DrawFloat_Y, "_"); TextDrawAlignment(RakNetCopy[drawid], 2); TextDrawBackgroundColor(RakNetCopy[drawid], 255); TextDrawFont(RakNetCopy[drawid], 5); TextDrawLetterSize(RakNetCopy[drawid], -0.099999, -0.400000); TextDrawColor(RakNetCopy[drawid], -1); TextDrawSetOutline(RakNetCopy[drawid], 0); TextDrawSetProportional(RakNetCopy[drawid], 0); TextDrawSetShadow(RakNetCopy[drawid], 1); TextDrawUseBox(RakNetCopy[drawid], 1); TextDrawBoxColor(RakNetCopy[drawid], -1); TextDrawTextSize(RakNetCopy[drawid], 29.000000, 30.000000); TextDrawSetPreviewModel(RakNetCopy[drawid], 19461); TextDrawSetPreviewRot(RakNetCopy[drawid], -16.000000, 0.000000, -55.000000, 0.100000); TextDrawSetSelectable(RakNetCopy[drawid], 1); c++,drawid++; }в public OnPlayerKeyStateChangePHP код: if(newkeys == KEY_CTRL_BACK && gPlayerLogged[playerid]) { if(!GetPVarInt(playerid,"InvH")) { TextDrawSetPreviewModel(RakNetCopy[32], GetPlayerSkin(playerid)); for(new i; i < sizeof(RakNetCopy); i++) TextDrawShowForPlayer(playerid,RakNetCopy[i]); SelectTextDraw(playerid,0xf2ddc6ff); SetPVarInt(playerid,"InvH",1); } else { CancelSelectTextDraw(playerid); for(new i; i < sizeof(RakNetCopy); i++) TextDrawHideForPlayer(playerid,RakNetCopy[i]); DeletePVar(playerid,"InvH"); } }В конце мода создаем publicPHP код: public OnPlayerClickTextDraw(playerid, Text:clickedid) { if(clickedid == RakNetCopy[19]) { CancelSelectTextDraw(playerid); for(new i; i < sizeof(RakNetCopy); i++) TextDrawHideForPlayer(playerid,RakNetCopy[i]); DeletePVar(playerid,"InvH"); } return 1; } Автор: не известен.
  10. SkRiTeX

    TextDraw (от SkRiTeX)

    Вот решил выложить TextDraw в правом нижнем углу экрана, может кому понадобится. Скриншот: ---------------------------------------------------------------------------------------------------- Этак приступим к вживлению данного TextDraw Ко всем new: new Text:Textdraw44;В public OnPlayerCommandText(playerid, cmdtext[]):TextDrawShowForPlayer(playerid, Textdraw44);В public OnGameModeInit():TextDrawShowForAll(Textdraw44);Textdraw44 = TextDrawCreate(632.000000, 412.000000, "irkytsk-rp.ucoz.ru"); <------- irkytsk-rp.ucoz.ru меняете на своё название.TextDrawAlignment(Textdraw44, 3);TextDrawBackgroundColor(Textdraw44, 255);TextDrawFont(Textdraw44, 0);TextDrawLetterSize(Textdraw44, 0.619999, 2.499999);TextDrawColor(Textdraw44, 629657343);TextDrawSetOutline(Textdraw44, 1);TextDrawSetProportional(Textdraw44, 1);Ну вот и всё. Если что то не будет работать пишите в эту тему, я исправлю. Спасибо за внимание.
  11. if(strcmp(cmd, "/nomerrus", true) == 0) { new str[128]; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_ISPOLZUY, "Используйте: /nomer [ид игрока]"); new tmpp=ReturnUser(tmp); if(IsPlayerConnected(tmpp)) { if(!IsPlayerInAnyVehicle(tmpp)) return SendClientMessage(playerid, COLOR_ISPOLZUY, "Игрок Не в Автомобиле"); new carid = GetPlayerVehicleID(tmpp); if(GetRealID(carid) == -1) return SendClientMessage(playerid, COLOR_GRAD2, "Игрок Должен быть в Своём Автомобиле"); if(strcmp(Name(tmpp),CarInfo[GetRealID(carid)][cOwner],true) != 0) return SendClientMessage(playerid, COLOR_ISPOLZUY, "Автомобиль не принадлежит игроку"); if(gTeam[playerid] == 1 || IsACop(playerid)) { if(!CarLabel[carid]) { } else Delete3DTextLabel(CarLabel[carid]); format(CarInfo[GetRealID(carid)][cNumber],64,"{FFFFFF}%s{FFFFFF}%d%d%d{FFFFFF}%s%s |{FFFFFF}R{1500FF}U{FF0000}S",randomchar(), random(9), random(9), random(9), randomchar(), randomchar(), random(9), random(9));// CarLabel[carid] = Create3DTextLabel(CarInfo[GetRealID(carid)][cNumber],0xFFFF00FF,0.0,0.0,0.0,40.0,0,1); Attach3DTextLabelToVehicle(CarLabel[carid] , carid , 0.0, 0.0, 1.1); format(str,sizeof(str),"Вам Выдали Номер %s Полицейский %s",CarInfo[GetRealID(carid)][cNumber],Name(playerid)); SendClientMessage(tmpp,-1,str); format(str,sizeof(str),"Полицейский %s Выдал Номера %s",Name(playerid),CarInfo[GetRealID(carid)][cNumber]); SendAdminMessage(0xFF0000AA,str); SaveCar(GetRealID(carid)); return true; } else return SendClientMessage(playerid, COLOR_GRAD1, "У вас нет прав на это!"); } else return SendClientMessage(playerid, COLOR_GRAD1, "Этого Игрока нет в сети"); } На ваш сервер добавит русские номера, номера выдают Полицейские
  12. Привет всем.Вот я решил порыться в своём старом моде .и наткнулся на команды : /alock and /asellcar . Так вот хочу выложить
  13. Всем привет вообщем. Я решил написать еще один способ защитить сервер паролем (в этом случае не используется /rcon password и т.д. ). Вот сам код: 1. Это в OnPlayerConnect ShowPlayerDialog(playerid,777,DIALOG_STYLE_INPUT,"Введите пароль сервера","Введите пароль для доступа к серверу","ОК","Отмена"); 2. Это в OnDialogResponse if(dialogid == 777){if(response){if(!strlen(inputtext)){SendClientMessage(playerid,-1,"Вы не ввели пароль сервера и будете кикнуты!");Kick(playerid);return 1;}else{new serverpass[15];serverpass = "1111";if(strcmp(inputtext, serverpass) == 0) {SendClientMessage(playerid, -1, "Вы ввели верный пароль сервера!"); }else {SendClientMessage(playerid, -1, "Вы забанены за попытку взлома сервера (подбор пароля)");BanEx(playerid, "Подбор пароля сервера"); }}}else {SendClientMessage(playerid, -1, "Вы нажали кнопку Отмена и будете кикнуты!");Kick(playerid); }} Что изменить под себя: 1. Самое главное: пароль. Он меняется в строке serverpass = "1111"; 2. При необходимости: ID диалога. В данном случае 777 3. При попытке подбора пароля в моем случае банит. Действие можно изменить, изменив (или удалив) строку BanEx(playerid, "Подбор пароля сервера"); 4. Ну и цветовую гамму и текст, это на Ваш выбор :) Такой способ можно использовать для троллинга (к примеру). Пример: Игрок видит сервер с супер модом, который открыт. Заходит, и тут вылазиет окно ввода пароля. Он наберет что нибудь, и если пароль неправильный, его банит. В любом случае - дело ваше! Автор: Max_Mister
  14. Начнем без вступления. Вставляем все в мод: 1. Массивы для хранения информации: new bool:aduty[MAX_PLAYERS];//Проверка, true-админ на дежурстве, false-нетnew playercolor[MAX_PLAYERS];//Массив с цветом игрока до выхода на дежурство 2. Команда. Вставлять в public OnPlayerCommandText if (strcmp("/aduty", cmdtext, true) == 0) {if(aduty[playerid] == true) {aduty[playerid] = false;SendClientMessage(playerid, 0xFFFF00AA, "Вы ушли с дежурства!"); SetPlayerColor(playerid, playercolor[playerid]);} else {if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xFFFF00AA, "Вы не администратор!");//Проверку ставить свою, тут проверка на RCON!!!ShowPlayerDialog(playerid, 9988, DIALOG_STYLE_INPUT, "Введите пароль","Введите пароль для выхода на дежурство","ОК","Отмена");}return true;} 3. Диалог для ввода пароля if(dialogid == 9988){if(response) //Если была нажата 1 кнопка{if(!strlen(inputtext)) //Если в поле не был введен текст при отправке{SendClientMessage(playerid,0xFFFF00AA,"Пароль не был написан!");return 1;}else{new adminpass[64] = "1111";if(strcmp(inputtext, adminpass, false) == 0) {new name[MAX_PLAYER_NAME];GetPlayerName(playerid, name, sizeof(name));new message[55];format(message, sizeof(message), "Администратор %s вышел на дежурство!", name);SendClientMessageToAll(0xFF6347AA, message);playercolor[playerid] = GetPlayerColor(playerid);SetPlayerColor(playerid, 0xFF6347AA);GivePlayerWeapon(playerid, 30, 1000);//ak47aduty[playerid] = true;}else {SendClientMessage(playerid, 0xFFFF00AA, "Пароль не верный!");Kick(playerid);}}}} Ну, вроде все :) Теперь о том, что нужно поменять! Так как я тестил это дело на симпле, менять под свой мод нужно следующее: 1. Проверка на администратора: в данном случае проверка на RCON администратора. Вы ставьте свою 2. Можете поменять выдачу оружия, или вообще ее удалить. 3. Самое главное: пароль. Меняется тут: new adminpass[64] = "1111";. 1111 меняйте на свой! 4. Ну и, если хотите, другие цвета и цветовые модификаторы Чтобы проверить администратора на дежурстве, достаточно приписать проверку: if(aduty[playerid] == false) return SendClientMessage(playerid, -1, "Вы не на дежурстве!"); Автор: Max_Mister
  15. Команда: else if(strcmp(cmd, "/uninvite", true) == 0) { new para1; new Leader; new Member; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "{DDA0DD} >> Введите{FFFFFF}: /uninvite [id] [причина]"); para1 = ReturnUser(tmp); Leader = PlayerInfo[playerid][pLeader]; Member = PlayerInfo[para1][pMember]; if(PlayerInfo[playerid][pLeader] >= 1) { if(IsPlayerConnected(para1)) { if(Leader == Member) { if(para1 != INVALID_PLAYER_ID) { new length = strlen(cmdtext); while ((idx < length) && (cmdtext[idx] <= ' ')) { idx++; } new offset = idx; new result[64]; while ((idx < length) && ((idx - offset) < (sizeof(result) - 1))) { result[idx - offset] = cmdtext[idx]; idx++; } result[idx - offset] = EOS; if(!strlen(result)) return SendClientMessage(playerid, COLOR_WHITE, "{DDA0DD} >> Введите{FFFFFF}: /uninvite [id] [причина]"); if(para1 == playerid)return SendClientMessage(playerid, COLOR_GREY, "{DB7093} [ошибка]: {D3D3D3} Это ваш ID"); if(PlayerInfo[para1][pLeader] >= 1)return SendClientMessage(playerid, COLOR_GREY, "{DB7093} [ошибка]: {D3D3D3} Это ID лидера"); GetPlayerName(para1, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); format(string, sizeof(string), "Вы выгнали %s Причина: {63B8FF}%s", giveplayer, (result)); SendClientMessage(playerid, 0x6495EDFF, string); format(string, sizeof(string), "%s Выгнал вас. Причина: {63B8FF}%s", sendername, (result)); SendClientMessage(para1, 0x6495EDFF, string); SendClientMessage(para1, COLOR_WHITE, "Теперь ты снова безработный..."); PlayerInfo[para1][pMember] = 0; PlayerInfo[para1][pLeader] = 0; PlayerInfo[para1][pRank] = 0; SetPlayerInterior(para1, 0); PlayerInfo[para1][pInt] = 0; SetPlayerArmorAC(para1,0); Delgun(para1); ResetPlayerWeapons(para1); SpawnPlayer(para1); OnPlayerUpdateRL(para1); } return true; } return true; } return true; } return true; } Для новичков которые не умеют делать пойдет.
  16. SNEEX

    Донат Система

    Хочу представить вашему вниманию систему доната,многие ищут. Приступим! добавляем команду: else if(strcmp(cmd, "/givedonate", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /givedonate [ид] [сумма]"); new playa; new money; playa = ReturnUser(tmp); tmp = strtok(cmdtext, idx); money = strval(tmp); if (PlayerInfo[playerid][pAdmin] >= 7) { if(IsPlayerConnected(playa)) { if(playa != INVALID_PLAYER_ID) { GetPlayerName(playa, sendername, sizeof(sendername)); format(string, sizeof(string), " %d доната игроку %s", money,sendername); SendClientMessage(playerid, COLOR_BLUE, string); PlayerInfo[playa][pDonatemoney] += money; format(string, sizeof(string), "Администратор выдал вам: %d доната", money); SendClientMessage(playa, COLOR_YELLOW, string); } } } else { SendClientMessage(playerid, COLOR_RED, "Вы не уполномочены использовать эту команду!"); } return 1; } else if(strcmp(cmd, "/donate", true) == 0) { new donate[70]; format(donate,70, "{ffffff}У вас {ff0000}%d{ffffff} Donate",PlayerInfo[playerid][pDonatemoney]); ShowPlayerDialog(playerid, 2984, DIALOG_STYLE_LIST, donate, "1.Уволиться[50]n2.Снять мут[50]n3.Снять варн[150]n{ff0000}Получить админку/Пополнить донатn{ff0000}Можно в скайпе {ffffff}dontexxx", "Ok", "Cancel"); } В public OnDialogResponse: case 2984: { if(response == 1) { switch(listitem) { case 0: { if(PlayerInfo[playerid][pDonatemoney]>=50) { if(PlayerInfo[playerid][pMember] > 0 || PlayerInfo[playerid][pLeader] > 0) { PlayerInfo[playerid][pMember] = 0; PlayerInfo[playerid][pRank] = 0; PlayerInfo[playerid][pLeader] = 0; PlayerInfo[playerid][pJob] = 0; SetPlayerArmourAC(playerid,0); SpawnPlayer(playerid); PlayerInfo[playerid][pDonatemoney]-=50; SendClientMessage(playerid,COLOR_BLUE,"Вы успешно уволились из организации"); } else {SendClientMessage(playerid,COLOR_BLUE,"Вы нигде не состоите");} } else {SendClientMessage(playerid,COLOR_BLUE,"У вас нет столько доната!");} } case 1: { if(PlayerInfo[playerid][pDonatemoney]>=50) { if(PlayerInfo[playerid][pMuted] > 0) { PlayerInfo[playerid][pMuted] = 0; PlayerInfo[playerid][pMuteTime] = 0; SendClientMessage(playerid,COLOR_BLUE,"Вы сняли с себя мут"); PlayerInfo[playerid][pDonatemoney]-=50; } else {SendClientMessage(playerid,COLOR_BLUE,"У вас нет бана чата!");} } else {SendClientMessage(playerid,COLOR_BLUE,"У вас нет столько доната!");} } case 2: { if(PlayerInfo[playerid][pDonatemoney]>=150) { if(PlayerInfo[playerid][pWarns] > 0) { PlayerInfo[playerid][pWarns] --; PlayerInfo[playerid][punWarnstime] = 0; PlayerInfo[playerid][punWarns] = 0; SendClientMessage(playerid,COLOR_BLUE,"Вы сняли с себя варн"); PlayerInfo[playerid][pDonatemoney]-=50; } else {SendClientMessage(playerid,COLOR_BLUE,"У вас нет варнов!");} } else {SendClientMessage(playerid,COLOR_BLUE,"У вас нет столько доната!");} } } } } else if(strcmp(cmd, "/moneytodonate", true) == 0) { SendClientMessage(playerid,COLOR_BLUE,"Команда /moneytodonate обменивает 1кк => 100Donate"); if(PlayerInfo[playerid][pCash] >= 1000000) { PlayerInfo[playerid][pCash] -= 1000000; PlayerInfo[playerid][pDonatemoney] += 100; SendClientMessage(playerid,COLOR_BLUE,"Вы обменяли 1кк на 100 очков доната"); } else { SendClientMessage(playerid,COLOR_BLUE,"У вас нету 1кк для обмена на 100 доната"); } } else if(strcmp(cmd, "/donate", true) == 0) { SendClientMessage(playerid,COLOR_BLUE,"Команда /moneytodonate обменивает 1кк => 100Donate"); new donate[70]; format(donate,70, "{ffffff}У вас {ff0000}%d{ffffff} Donate",PlayerInfo[playerid][pDonatemoney]); ShowPlayerDialog(playerid, 2984, DIALOG_STYLE_LIST, donate, "1.Уволиться[50]n2.", "Ok", "Cancel"); } Вот собственно и все.Будут ошибки кидайте помогу исправить.Кому помог + Автор: неизвестный. Автор переделки: Я.
  17. Многие новички,делающие сервер в первый раз сталкиваются с проблемой создания бонуса.Вот пример такого готового решения: 1)Ко всем new добавить: new bonus; 2)Создаём pick up.Для этого в коллбэк public OnGameModeInit добавляем это: bonus = CreatePickup(ID пикапа,тип пикапа,X,Y,Z, ID виртуального мира пикапа);// Координаты X,Y,Z сменить на свои. 3)Следующим шагом будет добавление самой функции бонуса: if(pickupid == название пикапа) // В нашем случае "bonus" { if(PlayerInfo[playerid][pLevel] >= 3) // Это проверка на то что-бы игрок не получил бонус два раза. { SendClientMessage(playerid, COLOR_PURPLE, "Этот бонус только для новичков 1 лвл."); return 1; } SendClientMessage(playerid,0xFFFF00AA,"Вы получили свой бонус!"); SendClientMessage(playerid, COLOR_WHITE, "3.000.000$."); SendClientMessage(playerid, COLOR_WHITE, "3 LVL."); SendClientMessage(playerid, COLOR_WHITE, "Все лицензии."); PlayerInfo[playerid][pLevel] = 3; // Где 3 это уровень, если хотите уровень больше или меньше меняйте 3 на ваш уровень. GivePlayerMoney(playerid, 3000000); // 3000000 - это количество денег, которое выдаст вам. PlayerInfo[playerid][pCarLic] = 1; // Лицензия на вождение. PlayerInfo[playerid][pFlyLic] = 1; // Лицензия на воздушный транспорт. PlayerInfo[playerid][pMotoLic] = 1; // Лицензия на мотовождения. PlayerInfo[playerid][pBoatLic] = 1; // Лицензия на водное вождение. PlayerInfo[playerid][pFishLic] = 1; // Лицензия на рыбалку. PlayerInfo[playerid][pGunLic] = 1; // Лицензия на оружие. } 4)И последним нашим действием будет создания 3D текста для бонуса: для этого в public OnGameModeInit добавим следующее: Create3DTextLabel("Название 3D Текста",0x008080FF ,X ,Y, Z); // Где X,Y,Z там ваша координата. Ну вот и всё.Как видите ничего сложного .Данная функция прекрасно работает на сrmp.Авто:ERL Если подобная тема существует,извиняюсь,но на данном портале не видел похожего
  18. Всем привет, с вами Skorpionss (Руслан). В этом небольшом уроке я покажу как изменить скин при входе/регистрации на сервере. Примером нам послужит мод: Gamer. И так, приступим. 1. Ищем паблик:public SetPlayerSpawn(playerid) 2. Там у нас будет много всячины..., открываем поиск и вводим в него: [1. Вариант]: "спавн южный" [2. Вариант]: "if(PlayerInfo[playerid][pOrigin] " Далее ... 3. У вас появится код со спавном и т.д " Что мы делаем дальше? " После функции: " SetPlayerFacingAngle(playerid, 185.4226); " Вставляем функцию: " SetPlayerSkin(playerid, 24); " Поясняю : " 24 в фунции, это ID скина, меняете на свой " С вами был Руслан, если что не понятно? Пишите.
  19. John_Smith

    Ставим ворота.

    И так начнем: Ко всем new's: new opengate; В public OnGameModeInit(): opengate = CreateObject(980,935.29998779297,-836.20001220703,96.5,0,0,0);А это в public OnPlayerCommandText: if(strcmp("/open", cmd, true) == 0) { new open[MAX_PLAYERS]; if(open[playerid] == 0) // Проверяем закрыты ли ворота { MoveObject(opengate,935.29998779297,-836.20001220703,96.5,10); // Открываем ворота open[playerid] = 1; // Устанавливаем значение открытых ворот } if(open[playerid] == 1) // Проверяем открыты ли ворота { MoveObject(opengate,935.29998779297,-831.90002441406,96.5,10); // Закрываем ворота open[playerid] = 0; // Устанавливаем значение закрытых ворот } return 1; } Внимание! Координаты ставим свои! Автор: A.Volovnik
  20. Данная система позволяет прямо из игры, старшим администраторам управлять администрацией сервера, при этом администраторы, их уровни и пароли хранятся в отдельной базе данных. В профиле игрока ничего храниться не будет, все в базе администраторов. PHP код: #define TABLE_ADMIN "admin"- задэфайним для удобства PHP код: new query[2048], string[512]Сама команда авторизации:PHP код: CMD:alogin(playerid, params[]) { if(PlayerLogged[playerid] == 0) return 1; format(query, sizeof(query), "SELECT * FROM "TABLE_ADMIN" WHERE name = '%s'", PlayerInfo[playerid][pSendername]); mysql_query(query); mysql_store_result(); if(!mysql_fetch_row_format(query)) return true; if(!strcmp(GetAdmin(PlayerInfo[playerid][pSendername], "password"), "qwerty", true)) { SetPVarInt(playerid, "Alogin", 1); ShowPlayerDialog(playerid, 1227, 1, "Регистрация", "Зарегистрируйте ваш пароль:", "Принять", "Отмена"); SendClientMessage(playerid, COLOR_GREY, "Зарегистрируйте администраторский пароль. Он должен быть больше 5 и меньше 16 символов!"); } else ShowPlayerDialog(playerid, 1227, 1, "Авторизация", "Введите администраторский ключ:", "Принять", "Отмена"), SetPVarInt(playerid, "Alogin", 2); return true; }Диалог авторизации: PHP код: case 1227: { if(!response) return 1; if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 1227, 1, "Регистрация", "Зарегистрируйте ваш пароль:", "Принять", "Отмена"); new pass2, level = strval(GetAdmin(PlayerInfo[playerid][pSendername], "level")); if(GetPVarInt(playerid, "Alogin") == 1) { if(sscanf(inputtext, "s[16]", pass2)) ShowPlayerDialog(playerid, 1227, 1, "Регистрация", "Зарегистрируйте ваш пароль:", "Принять", "Отмена"); if(!strcmp(inputtext, "qwerty", true)) return ShowPlayerDialog(playerid, 1227, 1, "Регистрация", "Зарегистрируйте ваш пароль:", "Принять", "Отмена"); if(strlen(inputtext) < 6 || strlen(inputtext) > 16) return ShowPlayerDialog(playerid, 1227, 1, "Регистрация", "Зарегистрируйте ваш пароль:", "Принять", "Отмена"); format(query, sizeof(query), "UPDATE "TABLE_ADMIN" SET password = '%s' WHERE name = '%s' LIMIT 1", pass2, PlayerInfo[playerid][pSendername]); mysql_query(query); SendClientMessage(playerid, COLOR_GREEN, "Поздравляем! Вы получили доступ модератора"); PlayerInfo[playerid][pAdmin] = level; AdminLogged[playerid] = true; format(string, 90, "[AP] Администратор {ffffff}%s[%d]{9ACD32} авторизовался", PlayerInfo[playerid][pSendername], playerid); return true; } else if(GetPVarInt(playerid, "Alogin") == 2) { if(strcmp(inputtext, GetAdmin(PlayerInfo[playerid][pSendername], "password"), true)) return SendClientMessage(playerid, COLOR_LIGHTRED, "Неверный пароль модератора!"), Kick(playerid); SendMes(playerid, COLOR_LIGHTGREEN, "Вы вошли как модератор %d уровня", level); PlayerInfo[playerid][pAdmin] = level; AdminLogged[playerid] = true; format(string, 90, "[AP] Администратор {ffffff}%s[%d]{9ACD32} авторизовался", PlayerInfo[playerid][pSendername], playerid); SendAdminMessage(COLOR_LIGHTGREEN, string); } }Команда для добавления/удаления/повышения модераторов PHP код: CMD:moderator(playerid, params[]) { if(PlayerLogged[playerid] == 0) return 1; if(PlayerInfo[playerid][pAdmin] < 8 || AdminLogged[playerid] == false) return 1; new data[32], name[32]; if(sscanf(params, "s[32]i", name, params[1])) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /moderator [name] [lvl]"); if(params[1] < 0) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /moderator [name] [lvl]"); format(query, sizeof(query), "SELECT * FROM "TABLE_ADMIN" WHERE name = '%s'", name); mysql_query(query); mysql_store_result(); if(mysql_fetch_row_format(query)) { if(params[1] == 0) { format(query, sizeof(query), "DELETE FROM "TABLE_ADMIN" WHERE `name`='%s'", name); mysql_query(query); mysql_free_result(); SendMes(playerid, COLOR_LIGHTRED, "%s успешно удален из списка модераторов", name); } else { format(query, sizeof(query), "UPDATE "TABLE_ADMIN" SET level = '%d' WHERE name = '%s' LIMIT 1", params[1],name); mysql_query(query); SendMes(playerid, COLOR_GREEN, "Уровень администрирования у %s изменен на %d", name, params[1]); } } else { getdate(years, months, days); format(data, 32, "%02d.%02d.%04d", days, months, years); format(query, 512, "INSERT INTO "TABLE_ADMIN" (Name, level, LastCon) VALUES ('%s', %d, '%s')", name, params[1], data); mysql_query(query); SendMes(playerid, COLOR_GREEN, "%s успешно добавлен в список модераторов. Уровень полномочий %d", name, params[1]); } return true; }В конец модаPHP код: stock GetAdmin(username[], obtaining[]) { new Query[128]; format(Query, 128, "SELECT %s FROM "TABLE_ADMIN" WHERE name = '%s' LIMIT 1", obtaining, username); mysql_query(Query); mysql_store_result(); if(mysql_fetch_row(Query) == 1) { mysql_free_result(); return Query; } return Query; }Теперь берем, и все что связано с сохранением и создание в базе поля pAdmin удаляем. И создаем таблицу в базе данных. PHP код: CREATE TABLE IF NOT EXISTS `admin` ( `Name` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `level` int(2) NOT NULL, `password` varchar(32) NOT NULL DEFAULT 'qwerty', `LastCon` varchar(32) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;После каждого своего повышения, администратор находящийся в онлайне должен ввести команду /alogin заново, тогда уровень администрирования изменится. Если администратор оффлайн, то ничего этого проделывать не нужно. Если хотите снять администратора который в онлайне, просто вводите /moderator Jasper_Fox 0 и кикаете/баните/варните или просите выйти. PHP код: AdminLogged[playerid] = true;Переменная которая показывает, авторизован игрок как администратор или нет. У каждого она своя. PHP код: SendAdminMessageОтправка сообщения в администраторский чат. У каждого данная функция своя. Автор: Djcrem
  21. John_Smith

    Система доната.

    Решил выложить систему доната, так, как никто не выкладывал, думаю пригодиться. Автор: Alan_Waket Дата: 19.05.2013г Ко всем new PHP код: new DonateMoney1;В enum pInfoPHP код: pDonateRank, pDonateMoney1,В public OnPlayerRegister(playerid, password[])PHP код: ini_setInteger(File,"DonateMoney1",PlayerInfo[playerid][pDonateMoney1]); ini_setInteger(File,"DonateRank",PlayerInfo[playerid][pDonateRank]);В public OnPlayerLogin(playerid,password[])PHP код: ini_getInteger(File,"DonateMoney1",PlayerInfo[playerid][pDonateMoney1]); ini_getInteger(File,"DonateRank",PlayerInfo[playerid][pDonateRank]);В public OnPlayerConnect(playerid)PHP код: PlayerInfo[playerid][pDonateMoney1] = 0; PlayerInfo[playerid][pDonateRank] = 0;В public OnPlayerCommandText(playerid, cmdtext[])PHP код: else if(strcmp(cmd, "/givedonate", true) == 0) { if(PlayerInfo[playerid][pAdmin] > 9) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "::: Введите: /givedon [ид] [рублей]"); new playa; playa = ReturnUser(tmp); tmp = strtok(cmdtext, idx); DonateMoney1 = strval(tmp); if (PlayerInfo[playerid][pAdmin] >= 9) { if(IsPlayerConnected(playa)) { if(playa != INVALID_PLAYER_ID) { format(string, sizeof(string), "- %d донат переведён на счёт игроку", DonateMoney1); SendClientMessage(playerid, COLOR_WHITE, string); PlayerInfo[playa][pDonateMoney1] += DonateMoney1; SendClientMessage(playa, COLOR_NEWS, "Пополнение доната аккаунта"); format(string, sizeof(string), "- Пополнение счёта на сумму: {d53e07}%d {33ccff}рублей", DonateMoney1); SendClientMessage(playa, COLOR_WHITE, string); format(string, sizeof(string), "- Ваш донатный счёт: {d53e07}%d {33ccff}рублей", PlayerInfo[playa][pDonateMoney1]); SendClientMessage(playa, COLOR_WHITE, string); } } } } return true; }PHP код: else if(strcmp(cmd, "/donate", true) == 0) { new lvlexp[80]; new listitems[] = "[1] Покупка скинаn[2] Снятие наказанийn[3] Прочие покупкиn[4] Покупка VIP статусаn[5] Игровые привилегии"; format(lvlexp,70,"Донат | Баланс: %d рублей",PlayerInfo[playerid][pDonateMoney1]); ShowPlayerDialog(playerid, 10055, DIALOG_STYLE_LIST, lvlexp, listitems, "Выбрать", "Отмена"); }В public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])PHP код: case 10055: { if(response) { switch(listitem) { case 0: { new string3[512]; format(string3,sizeof(string3),"n{ffffff}Введите ID скина на который вы хотите сменить свой скин и нажмите {34c924}'Ок'nnn{ffffff}Стоимость любого скина составляет {34c924}50 {ffffff}DonateMoney"); ShowPlayerDialog(playerid,5563,DIALOG_STYLE_INPUT,"{ffffff}Введите ID скина",string3,"Ок","Выйти"); } case 1:ShowPlayerDialog(playerid, 10056, DIALOG_STYLE_LIST, "Cнятие наказаний", "[1] Снять бан чата (20р)n[2] Снятие варнов (50р)n[3] Выйти из тюрьмы (30р)", "Выбрать", "Назад"); case 2:ShowPlayerDialog(playerid, 10057, DIALOG_STYLE_LIST, "Прочее", "[1] Прибавить 1к наркозависимости (30р)n[2] Убавить 1к наркозависимости (30р)n[3] Купить 1кг наркотиков(15)n[4] Купить 1000 материалов (20р)n[5] Получить набор оружия(бесконечные патроны) (40р)n[6] Купить комплект лицензий (20р)n[7] Покупка скиллов (50р)n[8]Снятие розыска (20)n[9]Обнулить счет преступлений (100р)n[10] Купить 50 законопослушности (20р)", "Выбрать", "Назад"); case 3:ShowPlayerDialog(playerid, 10058, DIALOG_STYLE_LIST, "Покупка VIP", "[1] Bronze VIP (50р)n[2] Silver VIP(100р)n[3] Gold VIP(150р)", "Выбрать", "Назад"); case 4:ShowPlayerDialog(playerid, 10059, DIALOG_STYLE_LIST, "Игровые привелегии", "[1] 500.000$ (20р)n[2] 1.000.000$ (40р)n[3] 3.000.000$ (120р)n[4] 5.000.000$ (160р)n[5] 10.000.000$ (320р))", "Выбрать", "Назад"); } } } case 10056: { if(response) { switch(listitem) { case 0: { if(PlayerInfo[playerid][pDonateMoney1] < 20) return SendClientMessage(playerid, COLOR_GREY, "Не достатoчно денег"); PlayerInfo[playerid][pMuted] = 0; PlayerInfo[playerid][pMuteTime] = 0; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы разблокировали себе чат"); PlayerInfo[playerid][pDonateMoney1] -= 20; } case 1: { if(PlayerInfo[playerid][pDonateMoney1] < 50) return SendClientMessage(playerid, COLOR_GREY, "Не достатoчно денег"); PlayerInfo[playerid][pWarns] = 0; PlayerInfo[playerid][punWarnstime] = 0; PlayerInfo[playerid][punWarns] = 0; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Варны с данного аккаунта успешно сняты"); PlayerInfo[playerid][pDonateMoney1] -= 50; } case 2: { if(PlayerInfo[playerid][pDonateMoney1] < 30) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pJailTime] = 0; PlayerInfo[playerid][pCheat] = 0; PlayerInfo[playerid][pJailed] = 0; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы вышли из тюрьмы"); PlayerInfo[playerid][pDonateMoney1] -= 30; SpawnPlayer(playerid); } } } else { return true; } } case 10057: { if(response) { switch(listitem) { case 0: { if(PlayerInfo[playerid][pDonateMoney1] < 30) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pNarcoZavisimost] += 1000; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы прибавили 1к наркозависимости"); PlayerInfo[playerid][pDonateMoney1] -= 30; } case 1: { if(PlayerInfo[playerid][pDonateMoney1] < 30) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pNarcoZavisimost] -= 1000; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы уменьшили наркозависмость на 1к"); PlayerInfo[playerid][pDonateMoney1] -= 30; } case 2: { if(PlayerInfo[playerid][pDonateMoney1] < 15) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pDrugs] += 1000; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 1кг наркотиков"); PlayerInfo[playerid][pDonateMoney1] -= 15; } case 3: { if(PlayerInfo[playerid][pDonateMoney1] < 20) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pMats] += 1000; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 1к материалов"); PlayerInfo[playerid][pDonateMoney1] -= 20; } case 4: { if(PlayerInfo[playerid][pDonateMoney1] < 40) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); GivePlayerWeapon(playerid,24,9999); GivePlayerWeapon(playerid,25,9999); GivePlayerWeapon(playerid,29,9999); GivePlayerWeapon(playerid,31,9999); GivePlayerWeapon(playerid,43,9999); GivePlayerWeapon(playerid,46,9999); GivePlayerWeapon(playerid,41,9999); SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы приобрели комплект оружия, пропадает после смерти"); PlayerInfo[playerid][pDonateMoney1] -= 40; } case 5: { if(PlayerInfo[playerid][pDonateMoney1] < 20) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pVodPrava] = 1; PlayerInfo[playerid][pFishLic] = 1; PlayerInfo[playerid][pBoatLic] = 1; PlayerInfo[playerid][pFlyLic] = 1; PlayerInfo[playerid][pGunLic] = 1; PlayerInfo[playerid][pBizLic] = 1; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили комплект лицензий"); // PlayerInfo[playerid][pDonateMoney1] -= 20; } case 6: { if(PlayerInfo[playerid][pDonateMoney1] < 50) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pDesertEagle] = 100; PlayerInfo[playerid][pSDPistol] = 100; PlayerInfo[playerid][pMP5] = 100; PlayerInfo[playerid][pAK47] = 100; PlayerInfo[playerid][pM4] = 100; PlayerInfo[playerid][pShotGun] = 100; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы улучшили навыки владения оружия до максимума"); // PlayerInfo[playerid][pDonateMoney1] -= 50; } case 7: { if(PlayerInfo[playerid][pDonateMoney1] < 20) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pZvezdi]= 0; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы удалили себя из списка розыскиваемый"); // PlayerInfo[playerid][pDonateMoney1] -= 20; } case 8: { if(PlayerInfo[playerid][pDonateMoney1] < 100) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pKills] = 0; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы обнулили счетчик преступлений"); // PlayerInfo[playerid][pDonateMoney1] -= 100; } case 9: { if(PlayerInfo[playerid][pDonateMoney1] < 20) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pZakonp] += 50; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы стали законопослушным гражданином"); // PlayerInfo[playerid][pDonateMoney1] -= 20; } } } else { return true; } } case 10058: { if(response) { switch(listitem) { case 0: { if(PlayerInfo[playerid][pDonateMoney1] < 50) return SendClientMessage(playerid, COLOR_GREY, "Не достатoчно денег"); PlayerInfo[playerid][pDonateRank] = 1; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили Bronze VIP статус"); PlayerInfo[playerid][pDonateMoney1] -= 50; } case 1: { if(PlayerInfo[playerid][pDonateMoney1] < 100) return SendClientMessage(playerid, COLOR_GREY, "Не достатoчно денег"); PlayerInfo[playerid][pDonateRank] = 2; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили Silver VIP статус"); PlayerInfo[playerid][pDonateMoney1] -= 50; } case 2: { if(PlayerInfo[playerid][pDonateMoney1] < 150) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pDonateRank] = 3; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили Gold VIP статус"); PlayerInfo[playerid][pDonateMoney1] -= 150; } } } else { return true; } } case 10059: { if(response) { switch(listitem) { case 0: { if(PlayerInfo[playerid][pDonateMoney1] < 20) return SendClientMessage(playerid, COLOR_GREY, "Не достатoчно денег"); PlayerInfo[playerid][pCash] += 500000; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 500к"); PlayerInfo[playerid][pDonateMoney1] -= 20; } case 1: { if(PlayerInfo[playerid][pDonateMoney1] < 40) return SendClientMessage(playerid, COLOR_GREY, "Не достатoчно денег"); PlayerInfo[playerid][pCash] += 1000000; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 1кк"); PlayerInfo[playerid][pDonateMoney1] -= 40; } case 2: { if(PlayerInfo[playerid][pDonateMoney1] < 120) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pCash] += 3000000; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 3кк"); PlayerInfo[playerid][pDonateMoney1] -= 120; } case 3: { if(PlayerInfo[playerid][pDonateMoney1] < 160) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pCash] += 5000000; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 5кк"); PlayerInfo[playerid][pDonateMoney1] -= 160; } case 4: { if(PlayerInfo[playerid][pDonateMoney1] < 320) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); PlayerInfo[playerid][pCash] += 10000000; SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 10кк"); PlayerInfo[playerid][pDonateMoney1] -= 320; } } } else { return true; } }Собственно все.
  22. Доброго времени суток, сейчас я расскажу вам о "Автоматическом рестарте". Я думаю многие видели на серверах в определенное время происходит рестарт сервера, при этом администрации не приходится вводить команду. Сервер делает это автоматически. Как это сделать? В Public OnPlayerUpdate: PHP код: new h, m, s; gettime(h, m, s); // Узнаем время if(h == 1 && m == 25 s == 0) // Если 1 час 25 минут (Можно заменить время на свое) { format(string, 128, "Уважаемые игроки, через 5 минут произойдет АвтоРестарт."); // Тест, отправляемый в чат SendClientMessageToAll(COLOR_WHITE, string);// Выводим сообщение в общий чат } if(h == 1 && m == 30 s == 0) // Если 1 час 30 минут и 0 секунд (Можно заменить время на свое) { SaveAccounts(); // Замените эту строчку на функции сохранения у вас в моде (С помощью вашей команды рестарта можно их найти (там они будут написаны)) format(string, 128, "Происходит автоматический рестарт сервера, подождите 10-15 секунд..."); // Тест, отправляемый в чат SendClientMessageToAll(COLOR_WHITE, string);// Выводим сообщение в общий чат SendRconCommand("gmx"); // Делаем рестарт }Автор: Я.Внимание! Секунды не убирать иначе каждую секунду будет рестарт.
  23. Начнём Ко всем forward'ам PHP код: forward LoadDip(); forward SaveDip(); Ко всем new PHP код: new TotalGzR;//rifa new TotalGzA;//actek new TotalGzB;//ballas new TotalGzG;//grove new TotalGzV;//vagos enum dInfo { dRGrove, dRAztec, dRVagos, dRBallas, // dBGrove, dBAztec, dBVagos, dBRifa, // dAGrove, dAVagos, dABallas, dARifa, // dGRifa, dGAztec, dGVagos, dGBallas, // dVGrove, dVAztec, dVBallas, dVRifa, };new Dip[1][dInfo]; PHP код: public LoadDip() { new iniFile = ini_openFile("logs/LoadDip.cfg"); ini_getInteger(iniFile,"Dip[0][dRGrove]",Dip[0][dRGrove]); ini_getInteger(iniFile,"Dip[0][dRAztec]",Dip[0][dRAztec]); ini_getInteger(iniFile,"Dip[0][dRVagos]",Dip[0][dRVagos]); ini_getInteger(iniFile,"Dip[0][dRBallas]",Dip[0][dRBallas]); // ini_getInteger(iniFile,"Dip[0][dBGrove]",Dip[0][dBGrove]); ini_getInteger(iniFile,"Dip[0][dBAztec]",Dip[0][dBAztec]); ini_getInteger(iniFile,"Dip[0][dBVagos]",Dip[0][dBVagos]); ini_getInteger(iniFile,"Dip[0][dBRifa]",Dip[0][dBRifa]); // ini_getInteger(iniFile,"Dip[0][dAGrove]",Dip[0][dAGrove]); ini_getInteger(iniFile,"Dip[0][dAVagos]",Dip[0][dAVagos]); ini_getInteger(iniFile,"Dip[0][dABallas]",Dip[0][dABallas]); ini_getInteger(iniFile,"Dip[0][dARifa]",Dip[0][dARifa]); // ini_getInteger(iniFile,"Dip[0][dGRifa]",Dip[0][dGRifa]); ini_getInteger(iniFile,"Dip[0][dGAztec]",Dip[0][dGAztec]); ini_getInteger(iniFile,"Dip[0][dGVagos]",Dip[0][dGVagos]); ini_getInteger(iniFile,"Dip[0][dGBallas]",Dip[0][dGBallas]); // ini_getInteger(iniFile,"Dip[0][dVGrove]",Dip[0][dVGrove]); ini_getInteger(iniFile,"Dip[0][dVAztec]",Dip[0][dVAztec]); ini_getInteger(iniFile,"Dip[0][dVBallas]",Dip[0][dVBallas]); ini_getInteger(iniFile,"Dip[0][dVRifa]",Dip[0][dVRifa]); ini_closeFile(iniFile); return 1; }PHP код: public SaveDip() { new iniFile = ini_openFile("logs/LoadDip.cfg"); ini_setInteger(iniFile, "Dip[0][dRGrove]",Dip[0][dRGrove]); ini_setInteger(iniFile, "Dip[0][dRAztec]",Dip[0][dRAztec]); ini_setInteger(iniFile, "Dip[0][dRVagos]",Dip[0][dRVagos]); ini_setInteger(iniFile, "Dip[0][dRBallas]",Dip[0][dRBallas]); // ini_setInteger(iniFile, "Dip[0][dBGrove]",Dip[0][dBGrove]); ini_setInteger(iniFile, "Dip[0][dBAztec]",Dip[0][dBAztec]); ini_setInteger(iniFile, "Dip[0][dBVagos]",Dip[0][dBVagos]); ini_setInteger(iniFile, "Dip[0][dBRifa]",Dip[0][dBRifa]); // ini_setInteger(iniFile, "Dip[0][dAGrove]",Dip[0][dAGrove]); ini_setInteger(iniFile, "Dip[0][dAVagos]",Dip[0][dAVagos]); ini_setInteger(iniFile, "Dip[0][dABallas]",Dip[0][dABallas]); ini_setInteger(iniFile, "Dip[0][dARifa]",Dip[0][dARifa]); // ini_setInteger(iniFile, "Dip[0][dGRifa]",Dip[0][dGRifa]); ini_setInteger(iniFile, "Dip[0][dGAztec]",Dip[0][dGAztec]); ini_setInteger(iniFile, "Dip[0][dGVagos]",Dip[0][dGVagos]); ini_setInteger(iniFile, "Dip[0][dGBallas]",Dip[0][dGBallas]); // ini_setInteger(iniFile, "Dip[0][dVGrove]",Dip[0][dVGrove]); ini_setInteger(iniFile, "Dip[0][dVAztec]",Dip[0][dVAztec]); ini_setInteger(iniFile, "Dip[0][dVBallas]",Dip[0][dVBallas]); ini_setInteger(iniFile, "Dip[0][dVRifa]",Dip[0][dVRifa]); ini_closeFile(iniFile); return 1; }В public OnGameModeInit() добавимPHP код: LoadDip(); В public PayDay() добавим PHP код: if(GZInfo[i][gFrakVlad] == 18) TotalGzR++; if(GZInfo[i][gFrakVlad] == 17) TotalGzA++; if(GZInfo[i][gFrakVlad] == 15) TotalGzG++; if(GZInfo[i][gFrakVlad] == 13) TotalGzV++; if(GZInfo[i][gFrakVlad] == 12) TotalGzB++; FracBank[0][fGrove] += TotalGzG*300; FracBank[0][fBallas] += TotalGzB*300; FracBank[0][fVagos] += TotalGzV*300; FracBank[0][fAztek] += TotalGzA*300; FracBank[0][fRifa] += TotalGzR*300; ClearTotalGz(); SaveBankFrac(); В конец мода PHP код: stock ClearTotalGz() { TotalGzR = 0;//rifa TotalGzA = 0;//actek TotalGzB = 0;//ballas TotalGzG = 0;//grove TotalGzV = 0;//vagos printr("ClearTotalGz"); } Добавим команду /ginfo PHP код: if(strcmp(cmd,"/ginfo", true)== 0) { if(IsPlayerConnected(playerid)) { if(IsAGang(playerid)) { ClearTotalGz(); for(new i =0;i<sizeof(GZInfo);i++) { if(GZInfo[i][gFrakVlad] == 18) TotalGzR++; if(GZInfo[i][gFrakVlad] == 17) TotalGzA++; if(GZInfo[i][gFrakVlad] == 15) TotalGzG++; if(GZInfo[i][gFrakVlad] == 13) TotalGzV++; if(GZInfo[i][gFrakVlad] == 12) TotalGzB++; } ////////////////////////Vagos///////////////////////////// new BallasDipV[32];//Ballas if(Dip[0][dVBallas] == 0) { BallasDipV = "{ffffff}Нейтрал"; } else if(Dip[0][dVBallas] == 1) { BallasDipV = "{00BF36}Союз"; } else if(Dip[0][dVBallas] == 2) { BallasDipV = "{C43E3E}Война"; } new GroveDipV[32];//Grove if(Dip[0][dVGrove] == 0) { GroveDipV = "{ffffff}Нейтрал"; } else if(Dip[0][dVGrove] == 1) { GroveDipV = "{00BF36}Союз"; } else if(Dip[0][dVGrove] == 2) { GroveDipV = "{C43E3E}Война"; } new AztecDipV[32];//Aztec if(Dip[0][dVAztec] == 0) { AztecDipV = "{ffffff}Нейтрал"; } else if(Dip[0][dVAztec] == 1) { AztecDipV = "{00BF36}Союз"; } else if(Dip[0][dVAztec] == 2) { AztecDipV = "{C43E3E}Война"; } new RifaDipV[32];//Rifa if(Dip[0][dVRifa] == 0) { RifaDipV = "{ffffff}Нейтрал"; } else if(Dip[0][dVRifa] == 1) { RifaDipV = "{00BF36}Союз"; } else if(Dip[0][dVRifa] == 2) { RifaDipV = "{C43E3E}Война"; } ////////////////////////Ballas////////////////////////////// new VagosDipB[32];//Vagos if(Dip[0][dBVagos] == 0) { VagosDipB = "{ffffff}Нейтрал"; } else if(Dip[0][dBVagos] == 1) { VagosDipB = "{00BF36}Союз"; } else if(Dip[0][dBVagos] == 2) { VagosDipB = "{C43E3E}Война"; } new GroveDipB[32];//Grove if(Dip[0][dBGrove] == 0) { GroveDipB = "{ffffff}Нейтрал"; } else if(Dip[0][dBGrove] == 1) { GroveDipB = "{00BF36}Союз"; } else if(Dip[0][dBGrove] == 2) { GroveDipB = "{C43E3E}Война"; } new AztecDipB[32];//Aztec if(Dip[0][dBAztec] == 0) { AztecDipB = "{ffffff}Нейтрал"; } else if(Dip[0][dBAztec] == 1) { AztecDipB = "{00BF36}Союз"; } else if(Dip[0][dBAztec] == 2) { AztecDipB = "{C43E3E}Война"; } new RifaDipB[32];//Rifa if(Dip[0][dBRifa] == 0) { RifaDipB = "{ffffff}Нейтрал"; } else if(Dip[0][dBRifa] == 1) { RifaDipB = "{00BF36}Союз"; } else if(Dip[0][dBRifa] == 2) { RifaDipB = "{C43E3E}Война"; } /////////////////////////Grove//////////////////////////// new VagosDipG[32];//Vagos if(Dip[0][dGVagos] == 0) { VagosDipG = "{ffffff}Нейтрал"; } else if(Dip[0][dGVagos] == 1) { VagosDipG = "{00BF36}Союз"; } else if(Dip[0][dGVagos] == 2) { VagosDipG = "{C43E3E}Война"; } new AztecDipG[32];//Aztec if(Dip[0][dGAztec] == 0) { AztecDipG = "{ffffff}Нейтрал"; } else if(Dip[0][dGAztec] == 1) { AztecDipG = "{00BF36}Союз"; } else if(Dip[0][dGAztec] == 2) { AztecDipG = "{C43E3E}Война"; } new BallasDipG[32];//Ballas if(Dip[0][dGBallas] == 0) { BallasDipG = "{ffffff}Нейтрал"; } else if(Dip[0][dGBallas] == 1) { BallasDipG = "{00BF36}Союз"; } else if(Dip[0][dGBallas] == 2) { BallasDipG = "{C43E3E}Война"; } new RifaDipG[32];//Rifa if(Dip[0][dGRifa] == 0) { RifaDipG = "{ffffff}Нейтрал"; } else if(Dip[0][dGRifa] == 1) { RifaDipG = "{00BF36}Союз"; } else if(Dip[0][dGRifa] == 2) { RifaDipG = "{C43E3E}Война"; } //////////////////////////Aztec////////////////////////// new BallasDipA[32];//Ballas if(Dip[0][dABallas] == 0) { BallasDipA = "{ffffff}Нейтрал"; } else if(Dip[0][dABallas] == 1) { BallasDipA = "{00BF36}Союз"; } else if(Dip[0][dABallas] == 2) { BallasDipA = "{C43E3E}Война"; } new VagosDipA[32];//Vagos if(Dip[0][dAVagos] == 0) { VagosDipA = "{ffffff}Нейтрал"; } else if(Dip[0][dAVagos] == 1) { VagosDipA = "{00BF36}Союз"; } else if(Dip[0][dAVagos] == 2) { VagosDipA = "{C43E3E}Война"; } new GroveDipA[32];//Grove if(Dip[0][dAGrove] == 0) { GroveDipA = "{ffffff}Нейтрал"; } else if(Dip[0][dAGrove] == 1) { GroveDipA = "{00BF36}Союз"; } else if(Dip[0][dAGrove] == 2) { GroveDipA = "{C43E3E}Война"; } new RifaDipA[32];//Rifa if(Dip[0][dARifa] == 0) { RifaDipA = "{ffffff}Нейтрал"; } else if(Dip[0][dARifa] == 1) { RifaDipA = "{00BF36}Союз"; } else if(Dip[0][dARifa] == 2) { RifaDipA = "{C43E3E}Война"; } /////////////////////////Rifa////////////////////////////// new BallasDipR[32];//Ballas if(Dip[0][dRBallas] == 0) { BallasDipR = "{ffffff}Нейтрал"; } else if(Dip[0][dRBallas] == 1) { BallasDipR = "{00BF36}Союз"; } else if(Dip[0][dRBallas] == 2) { BallasDipR = "{C43E3E}Война"; } new VagosDipR[32];//Vagos if(Dip[0][dRVagos] == 0) { VagosDipR = "{ffffff}Нейтрал"; } else if(Dip[0][dRVagos] == 1) { VagosDipR = "{00BF36}Союз"; } else if(Dip[0][dRVagos] == 2) { VagosDipR = "{C43E3E}Война"; } new GroveDipR[32];//Grove if(Dip[0][dRGrove] == 0) { GroveDipR = "{ffffff}Нейтрал"; } else if(Dip[0][dRGrove] == 1) { GroveDipR = "{00BF36}Союз"; } else if(Dip[0][dRGrove] == 2) { GroveDipR = "{C43E3E}Война"; } new AztecDipR[32];//Aztec if(Dip[0][dRAztec] == 0) { AztecDipR = "{ffffff}Нейтрал"; } else if(Dip[0][dRAztec] == 1) { AztecDipR = "{00BF36}Союз"; } else if(Dip[0][dRAztec] == 2) { AztecDipR = "{C43E3E}Война"; } /////////////////////////////////////////////////////// switch(PlayerInfo[playerid][pMember]) { case 13: { format(string, sizeof(string),"{ffffff}Количество контролируемых кварталов: {DBD604}%dn{ffffff}Ежедневный доход(в payday): {DBD604}$%dn{ffffff}Баланс банка банды: {DBD604}%dnn{0B9B17}Grove %sn{3582AE}Rifa %sn{A600C0}Ballas %sn{05DADA}Aztec %s",TotalGzV,TotalGzV*300,FracBank[0][fVagos],GroveDipV,RifaDipV,BallasDipV,AztecDipV); ShowPlayerDialog(playerid,1043,DIALOG_STYLE_MSGBOX,"The Vagos Gang",string, "X", ""); } case 12: { format(string, sizeof(string),"{ffffff}Количество контролируемых кварталов: {B313E7}%dn{ffffff}Ежедневный доход(в payday): {B313E7}$%dn{ffffff}Баланс банка банды: {B313E7}%dnn{0B9B17}Grove %sn{3582AE}Rifa %sn{05DADA}Aztec %sn{CCEB04}Vagos %s",TotalGzB,TotalGzB*300,FracBank[0][fBallas],GroveDipB,RifaDipB,AztecDipB,VagosDipB); ShowPlayerDialog(playerid,1042,DIALOG_STYLE_MSGBOX,"The Ballas Gang",string, "X", ""); } case 15: { format(string, sizeof(string),"{ffffff}Количество контролируемых кварталов: {009F00}%dn{ffffff}Ежедневный доход(в payday): {009F00}$%dn{ffffff}Баланс банка банды: {009F00}%dnn{05DADA}Aztec %sn{3582AE}Rifa %sn{A600C0}Ballas %sn{CCEB04}Vagos %s",TotalGzG,TotalGzG*300,FracBank[0][fGrove],AztecDipG,RifaDipG,BallasDipG,VagosDipG); ShowPlayerDialog(playerid,1045,DIALOG_STYLE_MSGBOX,"The Grove Street Gang",string, "X", ""); } case 17: { format(string, sizeof(string),"{ffffff}Количество контролируемых кварталов: {30d5c8}%dn{ffffff}Ежедневный доход(в payday): {30d5c8}$%dn{ffffff}Баланс банка банды: {30d5c8}%dnn{0B9B17}Grove %sn{3582AE}Rifa %sn{A600C0}Ballas %sn{CCEB04}Vagos %s",TotalGzA,TotalGzA*300,FracBank[0][fAztek],GroveDipA,RifaDipA,BallasDipA,VagosDipA); ShowPlayerDialog(playerid,1047,DIALOG_STYLE_MSGBOX,"The Aztecas Gang",string, "X", ""); } case 18: { format(string, sizeof(string),"{ffffff}Количество контролируемых кварталов: {2A9170}%dn{ffffff}Ежедневный доход(в payday): {2A9170}$%dn{ffffff}Баланс банка банды: {2A9170}%dnn{0B9B17}Grove %sn{05DADA}Aztec %sn{A600C0}Ballas %sn{CCEB04}Vagos %s",TotalGzR,TotalGzR*300,FracBank[0][fRifa],GroveDipR,AztecDipR,BallasDipR,VagosDipR); ShowPlayerDialog(playerid,1048,DIALOG_STYLE_MSGBOX,"The Rifa Gang Gang",string, "X", ""); } } ClearTotalGz(); } return true; } } И команду /diplomation PHP код: else if (strcmp("/diplomation", cmdtext, true) == 0){ new f = PlayerInfo[playerid][pLeader]; if(f == 12 || f == 13 || f == 15 || f == 17 || f == 18){ ShowPlayerDialog(playerid, 11100, DIALOG_STYLE_LIST, "Дипломатия","[1]-Войнаn[2]-Нейтралn[3]-Союз", "Далее", "Выход");} return true;} Далее в папке scriptfileslogs создаём документ LoadDip.cfg и вставляем в него PHP код: Dip[0][dGrove] = 0 Dip[0][dRifa] = 0 Dip[0][dBallas] = 0 Dip[0][dVagos] = 0 Dip[0][dRGrove] = 0 Dip[0][dRAztec] = 0 Dip[0][dRVagos] = 0 Dip[0][dRBallas] = 0 Dip[0][dBGrove] = 0 Dip[0][dBAztec] = 0 Dip[0][dBVagos] = 0 Dip[0][dBRifa] = 0 Dip[0][dAGrove] = 0 Dip[0][dAVagos] = 0 Dip[0][dABallas] = 0 Dip[0][dARifa] = 0 Dip[0][dGRifa] = 0 Dip[0][dGAztec] = 0 Dip[0][dGVagos] = 0 Dip[0][dGBallas] = 0 Dip[0][dVGrove] = 0 Dip[0][dVAztec] = 0 Dip[0][dVBallas] = 0 Dip[0][dVRifa] = 0Ну вот и всё! Автор: Nike_
×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.