Всего тем: 1434
Сообщений: 7448
Новые сообщения Участники Правила форума Поиск RSS
Страница 1 из 11
Форум » Pawno » Pawn WIKI » Работа Автобусника как на SAMP-RP (Автор Сергей98 и Gunner.)
Работа Автобусника как на SAMP-RP
VALVEДата: Среда, 15.06.2011, 09:19 | Сообщение # 1
Сообщений: 3
Репутация: 0
Награды: 0
Клан:
n/a
Fun Team:
n/a
Группа: Пользователь
Статус:
ко всем #define добавить:
Code
#define DIALOG_MARSHRUT 554  
#define DIALOG_COST 555  


ко всем new добавить:

Code
new pAutoBusLS[MAX_PLAYERS];  
enum  
{  
CHECKPOINT_1,  
CHECKPOINT_2,  
CHECKPOINT_3,  
CHECKPOINT_4,  
CHECKPOINT_5,  
CHECKPOINT_6,  
CHECKPOINT_7,  
CHECKPOINT_8,  
CHECKPOINT_9,  
CHECKPOINT_10,  
CHECKPOINT_11,  
CHECKPOINT_13,  
CHECKPOINT_14,  
CHECKPOINT_15,  
CHECKPOINT_16,  
CHECKPOINT_17,  
CHECKPOINT_18,  
CHECKPOINT_19,  
CHECKPOINT_20,  
CHECKPOINT_21,  
CHECKPOINT_22,  
CHECKPOINT_23,  
CHECKPOINT_24,  
CHECKPOINT_25,  
CHECKPOINT_26,  
CHECKPOINT_27,  
CHECKPOINT_28,  
CHECKPOINT_29,  
CHECKPOINT_30,  
CHECKPOINT_31,  
CHECKPOINT_32,  
CHECKPOINT_33,  
CHECKPOINT_34,  
CHECKPOINT_35,  
CHECKPOINT_36,  
CHECKPOINT_37,  
CHECKPOINT_38,  
CHECKPOINT_40,  
CHECKPOINT_41,  
CHECKPOINT_42,  
CHECKPOINT_43,  
CHECKPOINT_44,  
CHECKPOINT_45,  
CHECKPOINT_46,  
CHECKPOINT_47,  
CHECKPOINT_48,  
CHECKPOINT_49,  
CHECKPOINT_50,  
CHECKPOINT_51,  
CHECKPOINT_52,  
CHECKPOINT_53,  
CHECKPOINT_54,  
CHECKPOINT_55,  
CHECKPOINT_56,  
CHECKPOINT_57,  
CHECKPOINT_58,  
CHECKPOINT_59,  
CHECKPOINT_60,  
CHECKPOINT_61,  
CHECKPOINT_62,  
CHECKPOINT_63,  
CHECKPOINT_64,  
CHECKPOINT_65,  
CHECKPOINT_66,  
CHECKPOINT_67,  
CHECKPOINT_68,  
CHECKPOINT_69,  
CHECKPOINT_71,  
CHECKPOINT_72,  
CHECKPOINT_73,  
CHECKPOINT_74,  
CHECKPOINT_75,  
CHECKPOINT_76,  
CHECKPOINT_77,  
CHECKPOINT_78,  
CHECKPOINT_79,  
CHECKPOINT_80,  
CHECKPOINT_81,  
CHECKPOINT_82,  
CHECKPOINT_83,  
CHECKPOINT_84,  
CHECKPOINT_85,  
CHECKPOINT_86,  
CHECKPOINT_87,  
CHECKPOINT_88,  
CHECKPOINT_89,  
CHECKPOINT_90,  
CHECKPOINT_91,  
CHECKPOINT_92,  
CHECKPOINT_93,  
CHECKPOINT_94,  
CHECKPOINT_95,  
CHECKPOINT_96,  
CHECKPOINT_97,  
CHECKPOINT_98,  
CHECKPOINT_99,  
CHECKPOINT_100,  
CHECKPOINT_101,  
CHECKPOINT_103,  
CHECKPOINT_104,  
CHECKPOINT_105,  
CHECKPOINT_106,  
CHECKPOINT_107,  
CHECKPOINT_108,  
CHECKPOINT_109,  
CHECKPOINT_110,  
CHECKPOINT_111,  
CHECKPOINT_112,  
CHECKPOINT_113,  
CHECKPOINT_114,  
CHECKPOINT_115,  
CHECKPOINT_116,  
CHECKPOINT_117,  
CHECKPOINT_118,  
CHECKPOINT_119,  
CHECKPOINT_120,  
CHECKPOINT_121,  
CHECKPOINT_122,  
CHECKPOINT_123,  
CHECKPOINT_124,  
CHECKPOINT_125,  
CHECKPOINT_126,  
CHECKPOINT_127,  
CHECKPOINT_128,  
CHECKPOINT_129,  
CHECKPOINT_130,  
CHECKPOINT_131,  
CHECKPOINT_132,  
CHECKPOINT_70,  
}


в public OnGameModeInit добавить:

Code
    autobusls[0] = AddStaticVehicleEx(437,1276.9680,-1828.4288,13.5178,89.4782,7,7,300); //  
     AddStaticVehicleEx(437,1276.9125,-1823.3253,13.5172,90.8403,7,7,300); //  
     AddStaticVehicleEx(437,1277.0464,-1833.7417,13.5185,90.2481,7,7,300); //  
     AddStaticVehicleEx(437,1276.7830,-1818.2720,13.5187,91.3649,7,7,300); //  
     AddStaticVehicleEx(437,1276.6733,-1812.9031,13.5186,92.7921,7,7,300); //  
     AddStaticVehicleEx(437,1276.5641,-1807.5717,13.5216,92.9453,7,7,300); //  
     AddStaticVehicleEx(437,1276.0687,-1802.1963,13.5232,92.8558,7,7,300); //  
     autobusls[1] = AddStaticVehicleEx(437,1275.9431,-1796.9358,13.5270,93.1046,7,7,300); //


в public OnPlayerConnect добавить:

Code
AutoBusJob[playerid] = 0;  
     AutoBusCheck[playerid] = 0;  
     AutoBusMoney[playerid] = 0;  
     BusStop[playerid] = 0;  
     JobCarTime[playerid] = 0;  
     BusStopTime[playerid] = 0;


в public OnPlayerDisconnect добавить:
Code
Delete3DTextLabel(Bus3dCreate[playerid]);


в publicOnDialogResponse добавить:

Code
if(dialogid == DIALOG_COST)  
     {  
         if(response)  
         {  
             switch(listitem)  
             {  
                 case 0:  
                 {  
                     if(IsPlayerInRangeOfPoint(playerid,40.0,1257.5182,-1818.7000,13.5378))  
                      {  
                         ShowPlayerDialog(playerid, DIALOG_COST, DIALOG_STYLE_INPUT, "Проезд", "Введите цену за проезд:","Принять", "Отмена");  
                          AutoBusJob[playerid] = 1;  
                     }  
                     else  
                     {  
                         SendClientMessage(playerid, COLOR_GREY, "Вы должны находится у автостоянки LS!");  
                     }  
                 }  
              }  
         }  
         else  
         {  
         }  
     }  
     if(dialogid == DIALOG_MARSHRUT)  
     {  
         if(response)  
         {  
             if(!strlen(inputtext))  
             {  
                 ShowPlayerDialog(playerid, DIALOG_COST, DIALOG_STYLE_INPUT, "Проезд", "Введите цену за проезд:","Принять", "Отмена");  
                 return 1;  
             }  
             new moneys;  
             moneys = strval(inputtext);  
             if(moneys < 1 || moneys > 1000)  
             {  
                 ShowPlayerDialog(playerid, DIALOG_COST, DIALOG_STYLE_INPUT, "Проезд", "Проезд должен быть не меньше 1вирта,\nи не больше 1000 вирт \n\nВведите цену за проезд:", "Принять", "Отмена");  
                 return 1;  
             }  
             //  
             AutoBusMoney[playerid] = moneys;  
             AutoBusCheck[playerid] = 0;  
             //  
             GetPlayerName(playerid,sendername,sizeof(sendername));  
                if(AutoBusJob[playerid] == 1)  
                {  
                    format(string, sizeof(string), "Водитель автобуса %s начал маршрут Внутригородской LS. Проезд: $%d", sendername, AutoBusMoney[playerid]);  
                    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);  
                 format(string, sizeof(string), "<< Внутригородской LS >>\nЦена за проезд: $%d",AutoBusMoney[playerid]);  
                 Bus3dCreate[playerid] = Create3DTextLabel( string, COLOR_GREEN, 9999.0, 9999.0, 9999.0, 50.0, 0, 1 );  
                 Attach3DTextLabelToVehicle( Bus3dCreate[playerid], GetPlayerVehicleID(playerid), 0.0, 0.0, 2.25 );  
                 pAutoBusLS[playerid] = CHECKPOINT_1;  
                 SetPlayerRaceCheckpoint(playerid,0,1238.5247,-1832.1951,13.5304,1214.3824,-1842.2007,13.5149,5.0);  
                 format(string, sizeof(string), "cost: $%d",AutoBusCheck[playerid] * (32 + random(2)));  
                 GameTextForPlayer(playerid, string, 5000, 4);  
                    return 1;  
               }  
             return 1;  
         }  
         else  
         {  
         }  
     }


ко всем командам добавить:

Code
if(strcmp(cmd,"/route",true)==0)  
     {  
         if(IsPlayerConnected(playerid))  
         {  
             if(PlayerInfo[playerid][pJob] == 16)  
             {  
                 if(AutoBusJob[playerid] == 1)  
                 {  
                     GivePlayerMoney(playerid, +AutoBusCheck[playerid] * (32 + random(2)));  
                     format(string, sizeof(string), "Вами заработано: %d вирт.", AutoBusCheck[playerid] * (32 + random(2)));  
                     SendClientMessage(playerid, TEAM_BLUE_COLOR, string);  
                     Delete3DTextLabel(Bus3dCreate[playerid]);  
                     AutoBusJob[playerid] = 0;  
                     AutoBusCheck[playerid] = 0;  
                     AutoBusMoney[playerid] = 0;  
                     BusStop[playerid] = 1;  
                     BusStopTime[playerid] = 1;  
                     return 1;  
                 }  
                 new carid = GetPlayerVehicleID(playerid);  
                 if(carid >= autobusls[0] && carid <= autobusls[1]])  
                 {  
                       ShowPlayerDialog(playerid, DIALOG_MARSHRUT, DIALOG_STYLE_LIST, "Выбирете маршрут", "Внутригородской LS","Принять", "Отмена");  
                 }  
                 else  
                 {  
                     SendClientMessage(playerid, COLOR_GREY, "Вы должны находится в служебном транспорте!");  
                 }  
             }  
             else  
             {  
                 SendClientMessage(playerid,COLOR_GREY,"Вам недоступна данная функция!");  
                 return 1;  
             }  
         }  
         return 1;  
      }
 
stepДата: Среда, 15.06.2011, 18:06 | Сообщение # 2
Сообщений: 69
Репутация: 1
Награды: 0
Клан:
[OR]
Fun Team:
-
Группа: Пользователь
Статус:
Ооо давно искал спс_)) cool

 
Форум » Pawno » Pawn WIKI » Работа Автобусника как на SAMP-RP (Автор Сергей98 и Gunner.)
Страница 1 из 11
Поиск:
Всего пользователей: 7646
За сегодня: 0
За вчера: 0
За неделю: 1
За этот месяц: 3

Копирование материалов без указания на наш сайт запрещено!
Дизайн полностью принадлежит сайту MP-Info.ru
Автор дизайна: Silverback
© MP-Info.ru 2011-2017