RASTAMAN

Автошкола в центре Южного

В теме 4 сообщения

Введение на ваш сервер категорий прав А B C D 
Введение на ваш сервер категорий прав Мото, Авто, Лодка, Самолет
Все координаты уже есть. 
Интерьер и Маппинг присутсвуют

Спойлер



//добавить ко всем define
#define callback%0(%1)   forward%0(%1); public%0(%1)

// ко всем enum
enum
{
        CHECKPOINT_1,CHECKPOINT_2,CHECKPOINT_3,CHECKPOINT_4,CHECKPOINT_5,CHECKPOINT_6,CHECKPOINT_7,CHECKPOINT_8,CHECKPOINT_9,
        CHECKPOINT_10,CHECKPOINT_11,CHECKPOINT_12,CHECKPOINT_13,CHECKPOINT_14,CHECKPOINT_15,CHECKPOINT_16,CHECKPOINT_17,
        CHECKPOINT_18,CHECKPOINT_19,CHECKPOINT_20,
}
//Ко всем new
//==============[Автошкола by Crystalix Studio]=============
new TakingLesson[MAX_PLAYERS];
new LessonCar[MAX_PLAYERS];
new LessonStat[MAX_PLAYERS];
new pLessonCar[MAX_PLAYERS];
new JobCarTime[MAX_PLAYERS];
new CPL[MAX_PLAYERS];
new instcar;

//Добавить в public OnPlayerCommandText(playerid, cmdtext[])
//Тестирование ПДД==============================================================
if(strcmp(cmdtext, "/teststart",true)==0)//команда для начала сдачи на права
{
        if(IsPlayerConnected(playerid))
        {
                if(PlayerToPoint(3.0, playerid,2144.6,-2196.5,23.2)) //Координаты где можно сдать на права
                        {
                                if(PlayerInfo[playerid][pCarLicB] < 1)
                                {
                                        if(pTestPDD[playerid] == 0)
                                        {
                                                if(PlayerInfo[playerid][pMoney] >= 5000)// 5000 - это цена за экзамен на права
                                                {
                                                        GameTextForPlayer(playerid, "~r~…®C¦PYK¦A„",5000,3);// не трогать
                                                        TogglePlayerControllable(playerid,0);
                                                        IO1(playerid);
                                                        SetTimerEx("IO2", 5000, 0, "d", playerid);
                                                        SetTimerEx("IO3", 5000, 0, "d", playerid);
                                                        SetTimerEx("IO4", 5000, 0, "d", playerid);
                                                        SetTimerEx("IO5", 5000, 0, "d", playerid);
                                                        SetTimerEx("IO6", 5000, 0, "d", playerid);
                                                }
                                                else
                                                {
                                                        SendClientMessage(playerid, COLOR_GREY, "[Инструктор]: Вам не хватает денег, чтобы пройти тест!");
                                                        return 1;
                                                }
                                        }
                                        else
                                        {
                                                SendClientMessage(playerid, COLOR_GREY, "[Инструктор]: Вы уже находитесь на испытании!");
                                                return 1;
                                        }
                                }
                                else
                                {
                                        SendClientMessage(playerid, COLOR_GREY, "[Инструктор]: У вас уже есть водительские права!");
                                        return 1;
                                }

                }
        }
        return 1;
}
if(strcmp(cmd,"/licenses",true)==0)
{
        if(IsPlayerConnected(playerid))
        {
                new str[128];
                new text1[27];
                new text2[27];
                new text3[27];
                new text4[27];
                new text5[27];
                new text6[27];
                new text7[27];
                new text8[27];
                if(PlayerInfo[playerid][pCarLicA]) { text1 = "Имеется"; } else { text1 = "Не имеется"; }
                if(PlayerInfo[playerid][pCarLicB]) { text2 = "Имеется"; } else { text2 = "Не имеется"; }
                if(PlayerInfo[playerid][pCarLicC]) { text3 = "Имеется"; } else { text3 = "Не имеется"; }
                if(PlayerInfo[playerid][pCarLicD]) { text4 = "Имеется"; } else { text4 = "Не имеется"; }
                format(str,sizeof(str),"Лицензия на категорию А:          %s.\n",text1);
    SendClientMessage(playerid, COLOR_GREY, str);
                format(str,sizeof(str),"Лицензия на категорию B:          %s.\n",text2);
    SendClientMessage(playerid, COLOR_GREY, str);
                format(str,sizeof(str),"Лицензия на категорию C:          %s.\n",text3);
    SendClientMessage(playerid, COLOR_GREY, str);
                format(str,sizeof(str),"Лицензия на категорию D:          %s.\n",text4);
    SendClientMessage(playerid, COLOR_GREY, str);
        }
        return true;
}
//================================[Выдать все лицензии через админку]=========================
if(strcmp(cmd, "/agivelicense", true) == 0||strcmp(cmd, "/admgl", true) == 0){//команда для Админов 3-го уровня и выше
        if(IsPlayerConnected(playerid)){
                if (PlayerInfo[playerid][pAdmin] >= 3){
                        new x_nr[256];
                        x_nr = strtok(cmdtext, idx);
                        if(!strlen(x_nr)) {SendClientMessage(playerid, COLOR_WHITE, "Используйте: /agivelicense [name] [id_игрока/ЧастьИмени]");
                                SendClientMessage(playerid, COLOR_WHITE, "Лицензии: KatA,KatB,KatC,KatD, Pilots, Sailing, Fishing, Weapon, all(все лицы).");return true;}
                        if(strcmp(x_nr,"KatA",true) == 0){
                                tmp = strtok(cmdtext, idx);
                                if(!strlen(tmp))return SendClientMessage(playerid, COLOR_WHITE, "ИСПОЛЬЗОВАНИЕ: /agivelicense KatA [id_игрока/ЧастьИмени]");
                                giveplayerid = ReturnUser(tmp);
                                if(IsPlayerConnected(giveplayerid)){
                                        if(giveplayerid != INVALID_PLAYER_ID){
                                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                                GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                                format(string, sizeof(string), "* Вы дали ВУ Категории A %s.",giveplayer);
                                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                                format(string, sizeof(string), "* Админ %s дал вам ВУ Категории A. ",sendername);
                                                SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                                                PlayerInfo[giveplayerid][pCarLicA] = 1;return true;}}
                                else{SendClientMessage(playerid, COLOR_GREY,OFFLINE);return true;}}
                        else if(strcmp(x_nr,"KatB",true) == 0){
                                tmp = strtok(cmdtext, idx);
                                if(!strlen(tmp))return SendClientMessage(playerid, COLOR_WHITE, "ИСПОЛЬЗОВАНИЕ: /agivelicense KatB [id_игрока/ЧастьИмени]");
                                giveplayerid = ReturnUser(tmp);
                                if(IsPlayerConnected(giveplayerid)){
                                        if(giveplayerid != INVALID_PLAYER_ID){
                                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                                GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                                format(string, sizeof(string), "* Вы дали ВУ Категории B %s.",giveplayer);
                                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                                format(string, sizeof(string), "* Админ %s дал вам ВУ Категории B. ",sendername);
                                                SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                                                PlayerInfo[giveplayerid][pCarLicB] = 1;return true;}}
                                else{SendClientMessage(playerid, COLOR_GREY,OFFLINE);return true;}}
                        else if(strcmp(x_nr,"KatC",true) == 0){
                                tmp = strtok(cmdtext, idx);
                                if(!strlen(tmp))return SendClientMessage(playerid, COLOR_WHITE, "ИСПОЛЬЗОВАНИЕ: /agivelicense KatC [id_игрока/ЧастьИмени]");
                                giveplayerid = ReturnUser(tmp);
                                if(IsPlayerConnected(giveplayerid)){
                                        if(giveplayerid != INVALID_PLAYER_ID){
                                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                                GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                                format(string, sizeof(string), "* Вы дали ВУ Категории C %s.",giveplayer);
                                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                                format(string, sizeof(string), "* Админ %s дал вам ВУ Категории C. ",sendername);
                                                SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                                                PlayerInfo[giveplayerid][pCarLicC] = 1;return true;}}
                                else{SendClientMessage(playerid, COLOR_GREY,OFFLINE);return true;}}
                        else if(strcmp(x_nr,"KatD",true) == 0){
                                tmp = strtok(cmdtext, idx);
                                if(!strlen(tmp))return SendClientMessage(playerid, COLOR_WHITE, "ИСПОЛЬЗОВАНИЕ: /agivelicense KatD [id_игрока/ЧастьИмени]");
                                giveplayerid = ReturnUser(tmp);
                                if(IsPlayerConnected(giveplayerid)){
                                        if(giveplayerid != INVALID_PLAYER_ID){
                                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                                GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                                format(string, sizeof(string), "* Вы дали ВУ Категории D %s.",giveplayer);
                                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                                format(string, sizeof(string), "* Админ %s дал вам ВУ Категории D. ",sendername);
                                                SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                                                PlayerInfo[giveplayerid][pCarLicD] = 1;return true;}}
                                else{SendClientMessage(playerid, COLOR_GREY,OFFLINE);return true;}}
                        else if(strcmp(x_nr,"Pilots",true) == 0){
                                tmp = strtok(cmdtext, idx);
                                if(!strlen(tmp))return SendClientMessage(playerid, COLOR_WHITE, "ИСПОЛЬЗОВАНИЕ: /agivelicense Pilots [id_игрока/ЧастьИмени]");
                                giveplayerid = ReturnUser(tmp);
                                if(IsPlayerConnected(giveplayerid)){
                                        if(giveplayerid != INVALID_PLAYER_ID){
                                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                                GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                                format(string, sizeof(string), "* Вы дали лицензию на полеты %s.",giveplayer);
                                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                                format(string, sizeof(string), "* Админ %s дал вам лицензию на полеты.",sendername);
                                                SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                                                PlayerInfo[giveplayerid][pFlyLic] = 1;return true;}}
                                else{SendClientMessage(playerid, COLOR_GREY,OFFLINE);return true;}}
                        else if(strcmp(x_nr,"sailing",true) == 0){
                                tmp = strtok(cmdtext, idx);
                                if(!strlen(tmp))return SendClientMessage(playerid, COLOR_WHITE, "ИСПОЛЬЗОВАНИЕ: /agivelicense sailing [id_игрока/ЧастьИмени]");
                                giveplayerid = ReturnUser(tmp);
                                if(IsPlayerConnected(giveplayerid)){
                                        if(giveplayerid != INVALID_PLAYER_ID){
                                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                                GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                                format(string, sizeof(string), "* Вы дали лицензию на водный транспорт %s.",giveplayer);
                                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                                format(string, sizeof(string), "* Админ %s дал вам лицензию на водный транспорт. ",sendername);
                                                SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                                                PlayerInfo[giveplayerid][pBoatLic] = 1;return true;}}
                                else{SendClientMessage(playerid, COLOR_GREY,OFFLINE);return true;}}
                        else if(strcmp(x_nr,"all",true) == 0){
                                tmp = strtok(cmdtext, idx);
                                if(!strlen(tmp))return SendClientMessage(playerid, COLOR_WHITE, "ИСПОЛЬЗОВАНИЕ: /agivelicense all [id_игрока/ЧастьИмени]");
                                giveplayerid = ReturnUser(tmp);
                                if(IsPlayerConnected(giveplayerid))
                                {
                                        if(giveplayerid != INVALID_PLAYER_ID)
                                        {
                                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                                GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                                format(string, sizeof(string), "* Вы дали комплект лицензий(Рыбалка, вождение, лодки, оружие, летание) игроку %s.",giveplayer);
                                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                                format(string, sizeof(string), "* Админ %s дал вам комплект лицензий(Рыбалка, вождение, лодки, оружие, летание). ",sendername);
                                                SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                                                PlayerInfo[giveplayerid][pBoatLic] = 1;
                                                PlayerInfo[giveplayerid][pCarLicA] = 1;
                                                PlayerInfo[giveplayerid][pCarLicB] = 1;
                                                PlayerInfo[giveplayerid][pCarLicC] = 1;
                                                PlayerInfo[giveplayerid][pCarLicD] = 1;
                                                PlayerInfo[giveplayerid][pFlyLic] = 1;return true;}}
                                else{SendClientMessage(playerid, COLOR_GREY,OFFLINE);return true;}}}
                else{SendClientMessage(playerid, COLOR_GREY, "Вы не админ! ");return true;}}return true;}
//==============================================================================
//Вставаить в public OnPlayerText(playerid, text[])
//==============================================================================
new sendername[MAX_PLAYER_NAME];
        new tmp[256];
        new string[256];
//        new giveplayerid;
        //Тестирование ПДД==============================================================
        if(DKT[playerid] > 0)
        {
                if(DKT[playerid] == 1)
                {
                        new idx;
                        tmp = strtok(text, idx);
                        if((strcmp("2", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("2")))//Тут правильный ответ будет 2
                        {
                                SendClientMessage(playerid, COLOR_YELLOW2, " Верно");
                                SetTimerEx("DKT3", 5000, 0, "d", playerid);
                                return 0;
                        }
                        else
                        {
                                SetPlayerPos(playerid, 2144.6,-2196.5,23.2);
                                TogglePlayerControllable(playerid,1);
                                SendClientMessage(playerid, COLOR_RED, " Неверно");
                                DKT[playerid] = 0;
                        }
                        return 0;
                }
                else if(DKT[playerid] == 2)
                {
                        new idx;
                        tmp = strtok(text, idx);
                        if((strcmp("1", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("1")))//Тут правильный ответ будет 1
                        {
                                SendClientMessage(playerid, COLOR_YELLOW2, " Верно");
                                SetTimerEx("DKT4", 5000, 0, "d", playerid);
                                return 0;
                        }
                        else
                        {
                                SetPlayerPos(playerid, 2144.6,-2196.5,23.2);
                                SendClientMessage(playerid, COLOR_RED, " Неверно");
                                TogglePlayerControllable(playerid,1);
                                DKT[playerid] = 0;
                        }
                        return 0;
                }
                else if(DKT[playerid] == 3)
                {
                        new idx;
                        tmp = strtok(text, idx);
                        if((strcmp("3", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("3")))//Тут правильный ответ будет 3
                        {
                                SendClientMessage(playerid, COLOR_YELLOW2, " Верно");
                                SetTimerEx("DKT5", 5000, 0, "d", playerid);
                                return 0;
                        }
                        else
                        {
                                SetPlayerPos(playerid, 2144.6,-2196.5,23.2);
                                SendClientMessage(playerid, COLOR_RED, " Неверно");
                                TogglePlayerControllable(playerid,1);
                                DKT[playerid] = 0;
                        }
                        return 0;
                }
                else if(DKT[playerid] == 4)
                {
                        new idx;
                        tmp = strtok(text, idx);
                        if((strcmp("2/3", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("2/3")))//Тут правильный ответ будет 2 и 3
                        {
                                SendClientMessage(playerid, COLOR_YELLOW2, " Верно");
                                SetTimerEx("DKT6", 5000, 0, "d", playerid);
                                return 0;
                        }
                        else
                        {
                                SetPlayerPos(playerid, 2144.6,-2196.5,23.2);
                                SendClientMessage(playerid, COLOR_RED, " Неверно");
                                TogglePlayerControllable(playerid,1);
                                DKT[playerid] = 0;
                        }
                        return 0;
                }
                else if(DKT[playerid] == 5)
                {
                        new idx;
                        tmp = strtok(text, idx);
                        if((strcmp("1/4", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("1/4")))//Тут правильный ответ будет 1 и 4
                        {
                                SendClientMessage(playerid, COLOR_YELLOW2, " Верно");
                                SetPlayerPos(playerid, 2144.6,-2196.5,23.2);
                                DKT[playerid] = 0;
                    SendClientMessage(playerid, COLOR_RED, "Скажи спасибо разработчику за подсказки :3");
                                SendClientMessage(playerid, COLOR_RED, "___________________________________");
                                SendClientMessage(playerid, COLOR_YELLOW, " Поздравляем! Вы успешно сдали тест на права");
                                SendClientMessage(playerid, COLOR_YELLOW, " Перейдём к практической части экзамена.");
                                pTestPDD[playerid] = 0;
                                TogglePlayerControllable(playerid,1);
                                PlayerInfo[playerid][pMoney] -= 5000;
                                TakingLesson[playerid] = 0;
                                if(TakingLesson[playerid] == 1)
                                {
                                        SendClientMessage(playerid, COLOR_GREY, "Урок уже начался!");
                                        return 1;
                                }
                                SendClientMessage(playerid, COLOR_GREEN, "Автосдача начата, выйдите на улицу и сядьте в автомобиль");
                                SendClientMessage(playerid, COLOR_YELLOW, "Инструктор:Нажмите Y чтобы открыть ворота!");
                                LessonStat[playerid] = 0;
                                LessonCar[playerid] = 1;
                                TakingLesson[playerid] = 1;
                        }
                        else
                        {
                                SetPlayerPos(playerid, 2144.6,-2196.5,23.2);
                                TogglePlayerControllable(playerid,1);
                                SendClientMessage(playerid, COLOR_RED, " Неправильно");
                                DKT[playerid] = 0;
                        }
                        return 0;
                }
                return 0;
        }
        GetPlayerName(playerid,sendername,sizeof(sendername));
        format(string, sizeof(string), "%s говорит: %s", sendername,text);
        ProxDetector(20.0, playerid, string, COLOR_FADE1,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4);
        return 0;
//========================================================================================================
//Вставаить в OnPlayerEnterRaceCheckpoint(playerid)
new string[256];
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
        if(LessonCar[playerid] == 1)
        {
                switch(pLessonCar[playerid])
                {
                case CHECKPOINT_1:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_2;
                                SetPlayerRaceCheckpoint(playerid, 0,2232.0808,-2136.6714,21.4338,2314.4534,-2157.0847,21.4354, 5.0);
                        }
                case CHECKPOINT_2:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_3;
                                SetPlayerRaceCheckpoint(playerid, 0,2314.4534,-2157.0847,21.4354,2443.8726,-2158.4189,21.4341, 5.0);
                        }
                case CHECKPOINT_3:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_4;
                                SetPlayerRaceCheckpoint(playerid, 0,2443.8726,-2158.4189,21.4341,2468.6079,-1993.7078,21.4354, 5.0);
                        }
                case CHECKPOINT_4:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_5;
                                SetPlayerRaceCheckpoint(playerid, 0,2468.6079,-1993.7078,21.4354,2370.3406,-1872.0608,21.4353, 5.0);
                        }
                case CHECKPOINT_5:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_6;
                                SetPlayerRaceCheckpoint(playerid, 0,2370.3406,-1872.0608,21.4353,2304.1343,-1867.5062,21.4318, 5.0);
                        }
                case CHECKPOINT_6:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_7;
                                SetPlayerRaceCheckpoint(playerid, 0,2304.1343,-1867.5062,21.4318,2292.2390,-1806.7009,21.4335, 5.0);
                        }
                case CHECKPOINT_7:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_8;
                                SetPlayerRaceCheckpoint(playerid, 0,2292.2390,-1806.7009,21.4335,2360.7078,-1761.2458,23.7128, 5.0);
                        }
                case CHECKPOINT_8:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_9;
                                SetPlayerRaceCheckpoint(playerid, 0,2360.7078,-1761.2458,23.7128,2743.0493,-2157.4224,20.6347, 5.0);
                        }
                case CHECKPOINT_9:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_10;
                                SetPlayerRaceCheckpoint(playerid, 0,2743.0493,-2157.4224,20.6347,2680.7212,-2682.1331,24.8850, 5.0);
                        }
                case CHECKPOINT_10:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_11;
                                SetPlayerRaceCheckpoint(playerid, 0,2680.7212,-2682.1331,24.8850,2504.3936,-2682.4084,25.0838, 5.0);
                        }
                case CHECKPOINT_11:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_12;
                                SetPlayerRaceCheckpoint(playerid, 0,2504.3936,-2682.4084,25.0838,2308.8057,-2682.3015,24.8772, 5.0);
                        }
                case CHECKPOINT_12:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_13;
                                SetPlayerRaceCheckpoint(playerid, 0,2308.8057,-2682.3015,24.8772,1700.5945,-2682.2849,21.5855, 5.0);
                        }
                case CHECKPOINT_13:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_14;
                                SetPlayerRaceCheckpoint(playerid, 0,1700.5945,-2682.2849,21.5855,1597.9015,-2655.5798,23.3586, 5.0);
                        }
                case CHECKPOINT_14:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_15;
                                SetPlayerRaceCheckpoint(playerid, 0,1597.9015,-2655.5798,23.3586,1491.5271,-2465.2705,16.7380, 5.0);
                        }
                case CHECKPOINT_15:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_16;
                                SetPlayerRaceCheckpoint(playerid, 0,1491.5271,-2465.2705,16.7380,1750.0513,-2075.8474,23.3548, 5.0);
                        }
                case CHECKPOINT_16:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_17;
                                SetPlayerRaceCheckpoint(playerid, 0,1750.0513,-2075.8474,23.3548,1883.5763,-2020.7983,30.7537, 5.0);
                        }
                case CHECKPOINT_17:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_18;
                                SetPlayerRaceCheckpoint(playerid, 0,1883.5763,-2020.7983,30.7537,2018.3058,-2125.8318,21.3817, 5.0);
                        }
                case CHECKPOINT_18:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_19;
                                SetPlayerRaceCheckpoint(playerid, 0,2018.3058,-2125.8318,21.3817,2123.1370,-2155.6719,21.3825, 5.0);
                        }
                case CHECKPOINT_19:
                        {

                                GameTextForPlayer(playerid, string, 5000, 4);
                                LessonStat[playerid]++;
                                pLessonCar[playerid] = CHECKPOINT_20;
                                SetPlayerRaceCheckpoint(playerid, 0,2123.1370,-2155.6719,21.3825,2127.3125,-2209.3445,21.3865, 5.0);
                        }
                case CHECKPOINT_20:
                        {
                                new Float:health;
                                GetVehicleHealth(GetPlayerVehicleID(playerid),health);
                                if (health >= 850)
                                {
                                        JobCarTime[playerid] = 0;
                                        LessonCar[playerid] = 0;
                                        LessonStat[playerid] = 0;
                                        TakingLesson[playerid] = 0;
                                        PlayerInfo[playerid][pCarLicA] = 1;
                                        PlayerInfo[playerid][pCarLicB] = 1;
                                        PlayerInfo[playerid][pCarLicC] = 1;
                                        PlayerInfo[playerid][pCarLicD] = 1;
                                        DisablePlayerRaceCheckpoint(playerid);
                                        SendClientMessage(playerid, COLOR_GREEN, "Вы успешно сдали на права! Пожалуйста припаркуйте автомобиль!");
                                }
                                else
                                {
                                        SendClientMessage(playerid, COLOR_GRAD1, "Вы не достаточно хорошо водите, чтобы получить права");
                                        JobCarTime[playerid] = 0;
                                        LessonCar[playerid] = 0;
                                        LessonStat[playerid] = 0;
                                        TakingLesson[playerid] = 0;
                                }
                        }
                }
        }
}
//==============================================================================
//Вставить в public OnGameModeInit()
//========================================[АШ]==========================================
new nomer0, Text3D:nomeru0;
nomer0 = instcar[0] = AddStaticVehicleEx(502, 2138.8169, -2209.2642, 21.7243, 0.3185,3,1,150); //координаты для машин АШ
nomeru0 = Create3DTextLabel( "Учебная", 0xFF0000, 0.0,0.0,0.0,15.0,0,1);
Attach3DTextLabelToVehicle( nomeru0, nomer0, 0.0, 0.0, 2.0 );
//
new nomer1, Text3D:nomeru1;
nomer1 = instcar[1] = AddStaticVehicleEx(502, 2134.6306, -2209.2603, 21.7243, 0.1969,3,1,150); //координаты для машин АШ
nomeru1 = Create3DTextLabel( "Учебная", 0xFF0000, 0.0,0.0,0.0,15.0,0,1);
Attach3DTextLabelToVehicle( nomeru1, nomer1, 0.0, 0.0, 2.0 );
//
new nomer2, Text3D:nomeru2;
nomer2 = instcar[2] = AddStaticVehicleEx(494, 2130.4304, -2209.2188, 21.7243, 0.1969,3,1,150); //координаты для машин АШ
nomeru2 = Create3DTextLabel( "Учебная", 0xFF0000, 0.0,0.0,0.0,15.0,0,1);
Attach3DTextLabelToVehicle( nomeru2, nomer2, 0.0, 0.0, 2.0 );
//
new nomer3, Text3D:nomeru3;
nomer3 = instcar[3] = AddStaticVehicleEx(494, 2126.1509, -2209.1458, 21.7243, 0.1969,3,1,150); //координаты для машин АШ
nomeru3 = Create3DTextLabel( "Учебная", 0xFF0000, 0.0,0.0,0.0,15.0,0,1);
Attach3DTextLabelToVehicle( nomeru3, nomer3, 0.0, 0.0, 2.0 );
//=============================================================================================

//ВНИМАНИЕ ВНИМАНИЕ
//Это вставить в конец мода
CALLBACK: IsABoat(carid) // Лодки,а,коробли
{
        new model = GetVehicleModel(carid);
        if(model == 430 || model == 446 || model == 452 || model == 453 || model == 454 || model == 472 || model == 473 || model == 484 || model == 493 || model == 539){return true;}return false;
}
//==============================================================================
CALLBACK: IsAPlane(carid)// Самолёты,вертолёты
{
        new model = GetVehicleModel(carid);
        if(model == 417 || model == 425 || model == 447 || model == 460 || model == 469 || model == 476 || model == 487 || model == 488 || model == 497 || model == 511 || model == 512 || model == 513 || model == 519 || model == 520 || model == 548 || model == 553 || model == 563 || model == 577 || model == 592 || model == 593){return true;}return false;
}
IsACarA(carid)//Лицензии категории A
{
        new m = GetVehicleModel(carid);
        if(m==448||m==461||m==463||m==468||m==521||m==523||m==581||m==586||m==522)
        {
                return true;
        }
        return false;
}

IsACarB(carid)//Лицензии категории B
{
        new m = GetVehicleModel(carid);
        if(m==400||m==401||m==402||m==404||m==405||m==409||m==410||m==411||m==412||m==415||m==419
                        ||m==420||m==421||m==422||m==424||m==426||m==429||m==434||m==436||m==438||m==439||m==441
                        ||m==442||m==444||m==445||m==451||m==457||m==458||m==466||m==467||m==470||m==474||m==475
                        ||m==477||m==479||m==480||m==485||m==489||m==490||m==491||m==492||m==494||m==495||m==496
                        ||m==500||m==502||m==503||m==504||m==505||m==506||m==507||m==516||m==517||m==518||m==526
                        ||m==527||m==528||m==529||m==530||m==533||m==534||m==535||m==536||m==540||m==541||m==542
                        ||m==543||m==545||m==546||m==547||m==549||m==550||m==551||m==554||m==555||m==556||m==557
                        ||m==558||m==559||m==560||m==561||m==562||m==565||m==566||m==567||m==568||m==571||m==575
                        ||m==576||m==579||m==580||m==585||m==587||m==596||m==597||m==598||m==599||m==600||m==602
                        ||m==603||m==604||m==605)
        {
                return true;
        }
        return false;
}

IsACarC(carid)//Лицензии категории C
{
        new m = GetVehicleModel(carid);
        if(m==403||m==406||m==407||m==408||m==416||m==427||m==428||m==433||m==435||m==443||m==455||m==456||m==478||m==486||m==514||m==515||m==524||m==532||m==531||m==544
                        ||m==569||m==573||m==578||m==583||m==584||m==590||m==591||m==606||m==607||m==608||m==610||m==432||m==611)
        {
                return true;
        }
        return false;
}
IsACarD(carid)//Лицензии категории D
{
        new m = GetVehicleModel(carid);
        if(m==418||m==431||m==437||m==449||m==459||m==482||m==483||m==414||m==413||m==498||m==437||m==438)
        {
                return true;
        }
        return false;
}

IsACarDriving(carid)
{
        new model = GetVehicleModel(carid);
        if(model == 509 || model == 481 || model == 510|| model == 592 || model == 577 || model == 511
                        || model == 512 || model == 593 || model == 520 || model == 553|| model == 476 || model == 519
                        || model == 460 || model == 513 || model == 548 || model == 425 || model == 417|| model == 487
                        || model == 488 || model == 497 || model == 563 || model == 447 || model == 469|| model == 430
                        || model == 446 || model == 452 || model == 453 || model == 454 || model == 472|| model == 473
                        || model == 484 || model == 493 || model == 539 || model == 595)
        {
                return true;
        }
        return false;
}

//Тестирование ПДД==============================================================
CALLBACK: IO1(playerid)
{
        SendClientMessage(playerid, COLOR_YELLOW, "[Введение]");
        SendClientMessage(playerid, COLOR_YELLOW, "---------------------------------------------------------------------------------------------------");
        SendClientMessage(playerid, COLOR_GREEN, "Приветствуем вас в нашей Автошколе г.Южный! Добро пожаловать!");
        SendClientMessage(playerid, COLOR_GREEN, "В данной автошколе вы можете обучится вождению на все виды транспорта.");
        SendClientMessage(playerid, COLOR_GREEN, "У нас есть 2 способа сдачи на водительские права: Теория+Практика и Экстерн.");
        SendClientMessage(playerid, COLOR_GREEN, "Вы предпочли: Экстерн. Пожалуйста прочтите и ознакомьтесь с инструктажем!");
        SendClientMessage(playerid, COLOR_YELLOW, "---------------------------------------------------------------------------------------------------");
}
CALLBACK: IO2(playerid)
{
        SendClientMessage(playerid, COLOR_YELLOW, "[Управление скоростью]");
        SendClientMessage(playerid, COLOR_YELLOW, "---------------------------------------------------------------------------------------------------");
        SendClientMessage(playerid, COLOR_GREEN, "Управление скоростью очень важно, так превышение скорости может привести к потере");
        SendClientMessage(playerid, COLOR_GREEN, "управляемости и возможной потере жизни. Это увеличивает");
        SendClientMessage(playerid, COLOR_GREEN, "возможность попадания в аварию. Очень важно набрать скорость, которая подходит");
        SendClientMessage(playerid, COLOR_GREEN, "к текущим условиям (или вы на шоссе или едете по гравию). Не слишком быстро и не слишком медленно.");
        SendClientMessage(playerid, COLOR_YELLOW2, " ");
}
CALLBACK: IO3(playerid)
{
        SendClientMessage(playerid, COLOR_GREEN, "Также важно не разговаривать по телефону с подружкой и не набирать СМСку, когда");
        SendClientMessage(playerid, COLOR_GREEN, "ведёте авто.Это также увеличивает возможность попадания в аварию");
        SendClientMessage(playerid, COLOR_GREEN, "пожалуйста, останавливайтесь, когда хотите поговорить по телефону или набрать СМС.");
        SendClientMessage(playerid, COLOR_YELLOW, "---------------------------------------------------------------------------------------------------");
}
CALLBACK: IO4(playerid)
{
        SendClientMessage(playerid, COLOR_YELLOW, "[Дорожные знаки]");
        SendClientMessage(playerid, COLOR_YELLOW, "---------------------------------------------------------------------------------------------------");
        SendClientMessage(playerid, COLOR_GREEN, "Белая линия после барьеров означает, что здесь запрещена");
        SendClientMessage(playerid, COLOR_GREEN, "стоянка всегда, здесь всегда должно быть свободное место. Это также");
        SendClientMessage(playerid, COLOR_GREEN, "означает запрет остановки, кроме случаев критического состояния здоровья. Вам разрешено");
        SendClientMessage(playerid, COLOR_GREEN, "остановиться здесь только в том случае, если этого от вас требует полицейский.");
        SendClientMessage(playerid, COLOR_YELLOW, "---------------------------------------------------------------------------------------------------");
}
CALLBACK: IO5(playerid)
{
        SendClientMessage(playerid, COLOR_YELLOW, "[Дорожные правила]");
        SendClientMessage(playerid, COLOR_YELLOW, "---------------------------------------------------------------------------------------------------");
        SendClientMessage(playerid, COLOR_GREEN, "На четырёхполосной дороге (по 2 полосы на каждый путь) вам");
        SendClientMessage(playerid, COLOR_GREEN, "разрешено находиться на левой полосе только при обгоне другого");
        SendClientMessage(playerid, COLOR_GREEN, "транспортного средства либо при повороте влево в пределах 100 метров");
        SendClientMessage(playerid, COLOR_GREEN, "Вас ждёт уголовная ответственность за нахождение на этой полосе в других случаях.");
        SendClientMessage(playerid, COLOR_YELLOW2, " ");
}
CALLBACK: IO6(playerid)
{
        SendClientMessage(playerid, COLOR_YELLOW, "Окончание информационного курса.");
        SendClientMessage(playerid, COLOR_YELLOW, "Мы надеемся, что вы обратили на это внимание, так как теперь вам предстоит ответить на несколько вопросов!");
        SendClientMessage(playerid, COLOR_YELLOW, "---------------------------------------------------------------------------------------------------");
        SetTimerEx("DKT1", 5000, 0, "d", playerid);
}
CALLBACK: DKT1(playerid)
{
        SendClientMessage(playerid, COLOR_YELLOW, "Добро пожаловать в тест для водителей.");
        SendClientMessage(playerid, COLOR_NEWS, "---------------------------------------------------------------------------------------------------");
        SendClientMessage(playerid, COLOR_NEWS, "В тесте, вам будет задано несколько вопросов, чтобы проверить ваши знания");
        SendClientMessage(playerid, COLOR_NEWS, "по темам, которые были рассмотрены в теоретическом курсе безопасного вождения.");
        SendClientMessage(playerid, COLOR_NEWS, "Если вы ответите неправильно, вы провалите тест, но мы не будем штрафовать вас.");
        SendClientMessage(playerid, COLOR_NEWS, "---------------------------------------------------------------------------------------------------");
        SendClientMessage(playerid, COLOR_NEWS, "Чтобы ответить на вопрос, просто напишите номер правильного ответа.");
        SendClientMessage(playerid, COLOR_NEWS, "Если вопрос содержит два ответа, вы будете уведомлены об этом");
        SendClientMessage(playerid, COLOR_NEWS, "Чтобы написать 2 ответа, если ответы были 1 и 2, напишите: 1/2");
        SetTimerEx("DKT2", 20000, 0, "d", playerid);
}
CALLBACK: DKT2(playerid)
{
        DKT[playerid] = 1;
        SendClientMessage(playerid, COLOR_RED, "|____________________[Вопрос 1]____________________|");
        SendClientMessage(playerid, COLOR_YELLOW, "Если на улице с двухсторонним движением Вы услышите сирену спец. автомобиля, Вы должны:");
        SendClientMessage(playerid, COLOR_YELLOW, "1: Ускорить движение и освободить дорогу.");
        SendClientMessage(playerid, COLOR_YELLOW, "2: Прижаться на сколько можно вправо и остановиться.");
        SendClientMessage(playerid, COLOR_YELLOW, "3: Дать сигнал для обгона Вашей машины.");
        SendClientMessage(playerid, COLOR_YELLOW, "4: Продолжить движение с прежней скоростью.");
        SendClientMessage(playerid, COLOR_RED, "|___________________________________________________|");
        SendClientMessage(playerid, COLOR_YELLOW, " [Подсказка]Ответ:2");
        SendClientMessage(playerid, COLOR_RED, " ");
        SendClientMessage(playerid, COLOR_RED, " ");
}
CALLBACK: DKT3(playerid)
{
        DKT[playerid] = 2;
        SendClientMessage(playerid, COLOR_RED, "|____________________[Вопрос 2]____________________|");
        SendClientMessage(playerid, COLOR_YELLOW, "На дороге с двухсторонним движением перед правым поворотом Вы должны занять позицию:");
        SendClientMessage(playerid, COLOR_YELLOW, "1: С правой стороны дороги.");
        SendClientMessage(playerid, COLOR_YELLOW, "2: С левой стороны дороги.");
        SendClientMessage(playerid, COLOR_YELLOW, "3: С правой стороны от разделительной полосы.");
        SendClientMessage(playerid, COLOR_YELLOW, "4: Не имеет значения, где остановиться. Водитель подал сигнал поворота.");
        SendClientMessage(playerid, COLOR_RED, "|___________________________________________________|");
        SendClientMessage(playerid, COLOR_YELLOW, " [Подсказка]Ответ:1");
        SendClientMessage(playerid, COLOR_RED, " ");
}
CALLBACK: DKT4(playerid)
{
        DKT[playerid] = 3;
        SendClientMessage(playerid, COLOR_RED, "|____________________[Вопрос 3]____________________|");
        SendClientMessage(playerid, COLOR_YELLOW, "Почему опасно использование телефона во время движения?");
        SendClientMessage(playerid, COLOR_YELLOW, "1: Набор СМС во время вождения может причинить воспаление пальцев на руках.");
        SendClientMessage(playerid, COLOR_YELLOW, "2: Разговор по телефону во время движения может причинить сбой связи.");
        SendClientMessage(playerid, COLOR_YELLOW, "3: Разговор по телефону во время движения может обернуться аварией.");
        SendClientMessage(playerid, COLOR_YELLOW, "4: Это совсем не опасно.");
        SendClientMessage(playerid, COLOR_RED, "|___________________________________________________|");
        SendClientMessage(playerid, COLOR_YELLOW, " [Подсказка]Ответ:3");
        SendClientMessage(playerid, COLOR_RED, " ");
}
CALLBACK: DKT5(playerid)
{
        DKT[playerid] = 4;
        SendClientMessage(playerid, COLOR_RED, "|____________________[Вопрос 4]____________________|");
        SendClientMessage(playerid, COLOR_AMDRED, "[Примечание]: Здесь 2 ответа!");
        SendClientMessage(playerid, COLOR_YELLOW, "Что означает белая линия рядом с барьером?");
        SendClientMessage(playerid, COLOR_YELLOW, "1: Запрещён поворот направо.");
        SendClientMessage(playerid, COLOR_YELLOW, "2: Запрещена парковка в любое время.");
        SendClientMessage(playerid, COLOR_YELLOW, "3: Запрещена остановка, кроме случаев критическоо состояния здоровья.");
        SendClientMessage(playerid, COLOR_YELLOW, "4: Это ничего не значит.");
        SendClientMessage(playerid, COLOR_RED, "|___________________________________________________|");
        SendClientMessage(playerid, COLOR_YELLOW, " [Подсказка]Ответ:2/3");
        SendClientMessage(playerid, COLOR_RED, " ");
}
CALLBACK: DKT6(playerid)
{
        DKT[playerid] = 5;
        SendClientMessage(playerid, COLOR_RED, "|____________________[Вопрос 5]____________________|");
        SendClientMessage(playerid, COLOR_AMDRED, "[Примечание]: Здесь 2 ответа!");
        SendClientMessage(playerid, COLOR_YELLOW, "Когда вам разрешено находиться на левой полосе, если дорога имеет 4 полосы (по 2 на каждый путь)?");
        SendClientMessage(playerid, COLOR_YELLOW, "1: Ожидается поворот налево в пределах 100 метров.");
        SendClientMessage(playerid, COLOR_YELLOW, "2: Госпиталь в пределах 150 метров.");
        SendClientMessage(playerid, COLOR_YELLOW, "3: Всегда.");
        SendClientMessage(playerid, COLOR_YELLOW, "4: При обгоне другого транспортного средства.");
        SendClientMessage(playerid, COLOR_RED, "|___________________________________________________|");
        SendClientMessage(playerid, COLOR_YELLOW, " [Подсказка]Ответ:1/4");
        SendClientMessage(playerid, COLOR_RED, "");
}

CALLBACK: OnPlayerExitVehicle(playerid, vehicleid)
{
        SaveCar(vehicleid);
        StopAudioStreamForPlayer(playerid);
        //
        test1[playerid] = 0;
        seatbelt[playerid] = 0;
        dvig[playerid] = 0;
        DisableAll(playerid);
        if(TakingLesson[playerid] == 1)
        {
                SendClientMessage(playerid, COLOR_RED, "Автосдача прекращена, вы покинули автомобиль");
                DisablePlayerRaceCheckpoint(playerid); CPL[playerid] = 0;
                TakingLesson[playerid] = 0;
                SetVehicleToRespawn(GetPlayerVehicleID(playerid));
                return 1;
        }
        return true;
}
stock DisableAll(playerid){SetCameraBehindPlayer( playerid );DestroyObject( Player[playerid][camobj] );return true;}


 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ГПС будет установлен?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@AZUFRE нет

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • SystemDev
      От SystemDev
      Universal RP 1.0
      Скачать файл Доброго времени суток, уважаемые пользователи Pawno-Rus!
      В первую очередь, хочу поздравить всех вас с наступающим новым годом и пожелать вам хорошего окончания этого года, и исполнения всех ваших желаний.
      Ну а теперь перейдём к самой теме, в которой я хочу представить вам свою доработку игрового мода Rockford RP.
      Мод был полностью протестирован моей командой и пофикшен максимум найденных нами багов. Мод был хорошо доработан и я могу с уверенностью заявить что он отлично подойдёт для основы или же под открытие с ним целого проекта!
      Что-ж, не будем много говорить и давайте перейдём к списку проделанной нами работы:
      1. Была полностью переписана система регистрации и авторизации. Более подробно вы можете взглянуть на неё на прикреплённых к теме изображениях.
      2. У домов и квартир теперь есть названия классов: Эконом, Комфорт, Комфорт+, Бизнес, Элитный
      3. Теперь  у каждого бизнеса есть иконка на карте (Их не было у продуктовых магазинов и 24/7)
      4. Были пофикшены актёры в бизнесах и актёры были добавлены в те бизнесы, в которых их не было (Не отображались)
      5. Был подключен и хорошо настроен античит Nex-AC, так-же у администрации теперь есть лист читеров в виде текстдрава в левом нижнем углу
      6. Был удалён весь лишний маппинг с улиц и пляжей, а так-же весь оставшийся маппинг был перенесён в модули
      7. Все текстравы были перенесены в модуль
      8. Проработаны начальные квесты
      9. Теперь у домов есть 3д текст на въезде в гараж и на выходе из гаража
      10. Меню дома теперь можно открыть нажав в доме "F"
      11. Теперь перед покупкой дома, можно взглянуть на него изнутри и уже после этого купить его нажав кнопку "F" в доме
      12. Теперь если нет медиков в игре, то мед.карту можно получить в регистратуре любой из больниц
      13. Пофикшен навигатор (Не всегда совпадали пункты)
      14. Добавлена 5 банда - The Rifa Gang
      15. Гетто теперь стало более обширным (130 квадратов)
      16. Новая система сытости и жажды (При уровне сытости и жажды ниже 20, появляются 2 иконки возле худа с деньгами игрока, их можно увидеть на одном из скриншотов)
      17. Система рулетки (Выдаётся за каждые 3 отыгранных часа. Использовать можно в /mm > Рулетка)
      18. Теперь у стрел мафий тоже есть своя табличка + киллы считаются
      19. Отредактированы и оптимизированы начальные работы (+ ЗП теперь выдаётся в случае смерти, спавна или вылета)
      20. Работа развозчика пиццы была улучшена и добавлена в /gps и в квесты
      21. Рабочий транспорт на работе газонокосильщика теперь бесплатный
      22. Теперь у всех дверей, ворот и шлагбаумов есть 3д текст с информацией как их открыть
      23. Ставка в автоматах казино ЛС теперь снимается сразу
      24. Добавлено казино ЛВ и игра в кости (5 игроков и крупье)
      25. Спавн в гетто был вырезан
      26. Теперь мафии не могут начать стрелу за бизнес, если у бизнеса нет владельца
      27. Крыша бизнеса теперь отображается
      28. Пофикшен "Online/Offline" в /leaders (Не правильно отображала)
      29. Бандам за капт теперь не даётся по 500 вирт
      30. Во время капта или стрелы участники теперь спавнятся на базе организации (Раньше спавнились в больнице с 10 ХП)
      31. Лечение в больнице теперь бесплатное (+ Лечение теперь начинается при нажатии ALT)
      32. Кокаин теперь тяжелый наркотик, а марихуанна лёгкий (Было наоборот)
      33. Убраны звуки в диалогах
      34. Метка поиска дома теперь удаляется
      35. При включении/выключении акций администрацией теперь всех уведомляет и автоматически меняется название сервера (Пример: Universal RP | Акция!)
      36. Переписана /ahelp
      37. Администрация теперь может останавливать стрелу мафий за бизнес (/stopbizwar)
      38. Добавлен запрет на оружие миниган, прибор ночного видения и т.п
      39. Пофикшены все сделки по продаже/обмене имущества (Деньги выдавались наоборот или вовсе не выдавались)
      40. Новая система операций с наличными
      41. Теперь все сделки и предложения происходят по Y/N
      42. Администрация теперь прямо из игры может удалить дом или бизнес: /delbiz /delhouse
      43. Теперь нельзя использовать /invite во время капта и стрелы
      44. Пофикшен текст при /unload (не отображалось кол-во привезённых матов)
      45. Новый 3д текст складов банд и мафий
      46. Для использования часов (/time) теперь нужно купить их в магазине аксессуаров и надеть на персонажа
      47. Для использования макси (/mask) теперь нужно купить её в магазине аксессуаров и надеть на персонажа (Так-же срок действия маски теперь 10 минут)
      и еще 30+ пунктов которые сюда не влезут так что тг @qnusn ( там покажу подробно описание мода)
      Если возникли какие-либо вопросы, пишите в Telegram - @qnusn
      Добавил SystemDev Добавлено 22.11.2024 Категория Моды Автор JobDev  
    • SystemDev
      От SystemDev
      Доброго времени суток, уважаемые пользователи Pawno-Rus!
      В первую очередь, хочу поздравить всех вас с наступающим новым годом и пожелать вам хорошего окончания этого года, и исполнения всех ваших желаний.
      Ну а теперь перейдём к самой теме, в которой я хочу представить вам свою доработку игрового мода Rockford RP.
      Мод был полностью протестирован моей командой и пофикшен максимум найденных нами багов. Мод был хорошо доработан и я могу с уверенностью заявить что он отлично подойдёт для основы или же под открытие с ним целого проекта!
      Что-ж, не будем много говорить и давайте перейдём к списку проделанной нами работы:
      1. Была полностью переписана система регистрации и авторизации. Более подробно вы можете взглянуть на неё на прикреплённых к теме изображениях.
      2. У домов и квартир теперь есть названия классов: Эконом, Комфорт, Комфорт+, Бизнес, Элитный
      3. Теперь  у каждого бизнеса есть иконка на карте (Их не было у продуктовых магазинов и 24/7)
      4. Были пофикшены актёры в бизнесах и актёры были добавлены в те бизнесы, в которых их не было (Не отображались)
      5. Был подключен и хорошо настроен античит Nex-AC, так-же у администрации теперь есть лист читеров в виде текстдрава в левом нижнем углу
      6. Был удалён весь лишний маппинг с улиц и пляжей, а так-же весь оставшийся маппинг был перенесён в модули
      7. Все текстравы были перенесены в модуль
      8. Проработаны начальные квесты
      9. Теперь у домов есть 3д текст на въезде в гараж и на выходе из гаража
      10. Меню дома теперь можно открыть нажав в доме "F"
      11. Теперь перед покупкой дома, можно взглянуть на него изнутри и уже после этого купить его нажав кнопку "F" в доме
      12. Теперь если нет медиков в игре, то мед.карту можно получить в регистратуре любой из больниц
      13. Пофикшен навигатор (Не всегда совпадали пункты)
      14. Добавлена 5 банда - The Rifa Gang
      15. Гетто теперь стало более обширным (130 квадратов)
      16. Новая система сытости и жажды (При уровне сытости и жажды ниже 20, появляются 2 иконки возле худа с деньгами игрока, их можно увидеть на одном из скриншотов)
      17. Система рулетки (Выдаётся за каждые 3 отыгранных часа. Использовать можно в /mm > Рулетка)
      18. Теперь у стрел мафий тоже есть своя табличка + киллы считаются
      19. Отредактированы и оптимизированы начальные работы (+ ЗП теперь выдаётся в случае смерти, спавна или вылета)
      20. Работа развозчика пиццы была улучшена и добавлена в /gps и в квесты
      21. Рабочий транспорт на работе газонокосильщика теперь бесплатный
      22. Теперь у всех дверей, ворот и шлагбаумов есть 3д текст с информацией как их открыть
      23. Ставка в автоматах казино ЛС теперь снимается сразу
      24. Добавлено казино ЛВ и игра в кости (5 игроков и крупье)
      25. Спавн в гетто был вырезан
      26. Теперь мафии не могут начать стрелу за бизнес, если у бизнеса нет владельца
      27. Крыша бизнеса теперь отображается
      28. Пофикшен "Online/Offline" в /leaders (Не правильно отображала)
      29. Бандам за капт теперь не даётся по 500 вирт
      30. Во время капта или стрелы участники теперь спавнятся на базе организации (Раньше спавнились в больнице с 10 ХП)
      31. Лечение в больнице теперь бесплатное (+ Лечение теперь начинается при нажатии ALT)
      32. Кокаин теперь тяжелый наркотик, а марихуанна лёгкий (Было наоборот)
      33. Убраны звуки в диалогах
      34. Метка поиска дома теперь удаляется
      35. При включении/выключении акций администрацией теперь всех уведомляет и автоматически меняется название сервера (Пример: Universal RP | Акция!)
      36. Переписана /ahelp
      37. Администрация теперь может останавливать стрелу мафий за бизнес (/stopbizwar)
      38. Добавлен запрет на оружие миниган, прибор ночного видения и т.п
      39. Пофикшены все сделки по продаже/обмене имущества (Деньги выдавались наоборот или вовсе не выдавались)
      40. Новая система операций с наличными
      41. Теперь все сделки и предложения происходят по Y/N
      42. Администрация теперь прямо из игры может удалить дом или бизнес: /delbiz /delhouse
      43. Теперь нельзя использовать /invite во время капта и стрелы
      44. Пофикшен текст при /unload (не отображалось кол-во привезённых матов)
      45. Новый 3д текст складов банд и мафий
      46. Для использования часов (/time) теперь нужно купить их в магазине аксессуаров и надеть на персонажа
      47. Для использования макси (/mask) теперь нужно купить её в магазине аксессуаров и надеть на персонажа (Так-же срок действия маски теперь 10 минут)
      и еще 30+ пунктов которые сюда не влезут так что тг @qnusn ( там покажу подробно описание мода)
      Если возникли какие-либо вопросы, пишите в Telegram - @qnusn
    • gooding
      От gooding


      Скачать файл PAR RP | Доработанный мод Cruela RP | Без багов
      Всем здравствуйте, уважаемые читатели. Я много времени потратил на доработку данного игрового мода, чтобы его выставить на форум.
      Лог доработок можно посмотреть внизу, а скриншоты игрового мода внизу и верху.
      Основа данного мода: Cruela RP
       
       

      Добавил gooding Добавлено 20.11.2024 Категория Моды Автор GOODING (Я)  
    • gooding
      От gooding
      Всем здравствуйте, уважаемые читатели. Я много времени потратил на доработку данного игрового мода, чтобы его выставить на форум.
      Лог доработок можно посмотреть внизу, а скриншоты игрового мода внизу и верху.
      Основа данного мода: Cruela RP
       
       

    • Max Luilchack
      От Max Luilchack
      Нужен человек который сможет сделать примерную карту Украины для сервера crmp mobile. Если есть желающие пишите в дс: lamarlml