Форум

  • Страница 1 из 1
  • 1
Модератор форума: valych  
Форум | www.SAMP-TEAM.com » San Andreas MultiPlayer » Скрипты » Vehicle Spawner
Vehicle Spawner
Скрипт спавнера авто как на TMS - The Matrix Stuntings.
Активируется коммандой /v.
Перевод:TheDarthPoezd.

Code
#include <a_samp>

//#define IGNORE_WARP_INTO_VEHICLE
//#define IGNORE_VIRTUAL_WORLDS
//#define IGNORE_SPAWN_MESSAGES
//#define IGNORE_VEHICLE_ACTIVATION
//#define IGNORE_VEHICLE_DELETION

#define DEFAULT_RESPAWN_TIME        600 /* ten minutes */

#if !defined IGNORE_VEHICLE_DELETION
  new
      bool:gDialogCreated[ MAX_VEHICLES ] = { false, ... };
#endif

CreatePlayerVehicle( playerid, modelid )
{
  new
      vehicle,
   Float:x,
   Float:y,
   Float:z,
   Float:angle;

  if ( GetPlayerState( playerid ) == PLAYER_STATE_DRIVER )
  {
      vehicle = GetPlayerVehicleID( playerid );
      GetVehiclePos( vehicle, x, y, z );
      GetVehicleZAngle( vehicle, angle );
      DestroyVehicle( vehicle );
  }
  else
  {
   GetPlayerPos( playerid, x, y, z );
   GetPlayerFacingAngle( playerid, angle );
  }
  vehicle = CreateVehicle( modelid, x, y, ( z + 1 ), angle, -1, -1, DEFAULT_RESPAWN_TIME );
  LinkVehicleToInterior( vehicle, GetPlayerInterior( playerid ) );
  #if !defined IGNORE_VIRTUAL_WORLDS
   SetVehicleVirtualWorld( vehicle, GetPlayerVirtualWorld( playerid ) );
  #endif
  #if !defined IGNORE_WARP_INTO_VEHICLE
   PutPlayerInVehicle( playerid, vehicle, 0 );
  #endif
  #if !defined IGNORE_VEHICLE_DELETION
   gDialogCreated[ vehicle ] = true;
  #endif
  return 1;
}

ShowPlayerDefaultDialog( playerid )
{
  ShowPlayerDialog( playerid, 3434, DIALOG_STYLE_LIST, "Автомобили", "Планеры\nВертолёты\nБайки\nКонвертируемые\nИндустриальные\nЛоврайдеры\nВнедорожные\nОбщественная помощь\nСалуны\nСпорткары\nСтрит Фэмили\nЛодки\nТрэйлера и Ж/Д\nЖ/Д и прочее\nRC авто", "Выбор", "Отмена" );
  return 1;
}

public OnFilterScriptInit()
{
  printf( "   * VDialog загружен. Перевод от Trani Lurese (aka DarthPoezd) *  " );
  return 1;
}

public OnFilterScriptExit()
{
  printf( "   * VDialog разгружен *  " );
  return 1;
}

public OnPlayerSpawn( playerid )
{
  #if !defined IGNORE_SPAWN_MESSAGES
   SendClientMessage( playerid, 0xFFFFFFFF, "[vDialog]: Используй '/v' для активации автодиалога" );
  #endif

  return 1;
}

public OnPlayerCommandText( playerid, cmdtext[] )
{
  if ( strcmp( cmdtext, "/v", true, 8 ) == 0 )
  {
      if ( GetPlayerState( playerid ) == PLAYER_STATE_DRIVER )
      {
    #if !defined IGNORE_VEHICLE_ACTIVATION
        ShowPlayerDefaultDialog( playerid );
        return 1;
    #endif
   }

   if ( GetPlayerState( playerid ) != PLAYER_STATE_PASSENGER ) ShowPlayerDefaultDialog( playerid );
      return 1;
  }
  return 0;
}

public OnVehicleSpawn( vehicleid )
{
  #if !defined IGNORE_VEHICLE_DELETION
      if ( gDialogCreated[ vehicleid ] )
      {
          DestroyVehicle( vehicleid );
          gDialogCreated[ vehicleid ] = false;
      }
  #endif
  return 1;
}

public OnDialogResponse( playerid, dialogid, response, listitem, inputtext[] )
{
  if ( response )
  {
   switch ( dialogid )
   {
    case 3434 :
    {
        switch ( listitem )
     {
      case 0 : ShowPlayerDialog( playerid, 3435, DIALOG_STYLE_LIST, "Планеры", "Aндромеда\nAT-400\nБигл\nКропдастер\nДодо\nГидра\nНевада\nРастлер\nШамал\nСкимер\nСтунт\nНазад", "Выбор", "Отмена" );
      case 1 : ShowPlayerDialog( playerid, 3436, DIALOG_STYLE_LIST, "Вертолёты", "Каргобоб\nХантер\nЛевиатан\nМаврик\nНовостной маврик\nПолиц маврик\nРэйнданс\nВодный спэрроу\nСпэрроу\nНазад", "Выбор", "Отмена" );
      case 2 : ShowPlayerDialog( playerid, 3437, DIALOG_STYLE_LIST, "Байки", "BF-400\nВелик\nБMX\nФаггио\nФЦР-900\nФриви\nГорный велик\nНРЖ-500\nПСЖ-600\nПицца\nКвадроцикл\nСанчез\nВэйфарер\nНазад", "Выбор", "Отмена" );
      case 3 : ShowPlayerDialog( playerid, 3438, DIALOG_STYLE_LIST, "Конвертируемые", "Комет\nФэльтзир\nСталин он\nВиндзор\nНазад", "Выбор", "Отмена" );
      case 4 : ShowPlayerDialog( playerid, 3439, DIALOG_STYLE_LIST, "Индустриальные", "Бэнсон\nБобкад\nБуритто\nБоксвилль\nБоксбург\nЦементовоз\nДФТ-30\nФлатбэд\nЛайнраннер\nМул\nНовостной авто\nПакер\nТанкер с топливом\nПони\nРодтрэйн\nРампо\nСадлер\nСадлерщит\nТопфан\nТрактор\nМусоровоз\nУтилиты\nВэлтон\nЙААААНКИ\nЮзмит\nНазад", "Выбор", "Отмена" );
      case 5 : ShowPlayerDialog( playerid, 3440, DIALOG_STYLE_LIST, "Ловрайдеры", "Лезвие\nБродвей\nРэмингтон\nСаванна\nСлэмван\nТахома\nТорнадо\nВуду\nНазад", "Выбор", "Отмена" );
      case 6 : ShowPlayerDialog( playerid, 3441, DIALOG_STYLE_LIST, "Внедорожные", "Бандито\nБФ Инжектер\nДюн\nХантли\nЛэндсталкер\nМеса\nMoнстр\nMoнстр A\nMoнстр B\nПатриот\nРанчер A\nРанчер B\nСэндкинг\nНазад", "Выбор", "Отмена" );
      case 7 : ShowPlayerDialog( playerid, 3442, DIALOG_STYLE_LIST, "Общественная помощь", "Скорая\nАрмовозка\nАвтобус\nКэб такси\nТренер автобус\nХПВ-1000\nЭнфорсек\nРанчер ФБР\nФБР Трэк\nПожарная\nПожарная LA\nЛос Сантос Полиция\nЛас Вентурас Полиция\nСан Фиерро Полиция\nРэнджер\nРино\nОМОН\nТакси\nНазад", "Выбор", "Отмена" );
      case 8 : ShowPlayerDialog( playerid, 3443, DIALOG_STYLE_LIST, "Салуны", "Адмирал\nБлудринг\nБравура\nБуканир\nКадрона\nКловер\nЭлегант\nЭледжи\nИмператор\nЭсперанто\nФортуна\nГлендэйлщит\nГлендэйл\nГринвуд\nГерме с\nИнтрудер\nМаджестик\nМанана\nМерит\nНебула\nОкеаник\nПикадор\nПремиер\nПревайон\nПримо\nСентнел\nСтаффорд\nСултан\nСанрайз\nТампа\nВинцен т\nВирго\nВиллард\nВошингтон\nНазад", "Выбор", "Отмена" );
      case 9 : ShowPlayerDialog( playerid, 3444, DIALOG_STYLE_LIST, "Спорткары", "Альфа\nБанши\nБКомпакт\nБухало\nПуля\nЧиатах\nКлуб\nЕврос\nФлеш\nХотринг 1\nХотринг 2\nХотринг 3\nИнвермус\nДжестир\nФеникс\nСаблЯ\nСГТ\nТуризмо\nУранус\nЗР-350\nНазад", "Выбор", "Отмена" );
      case 10 : ShowPlayerDialog( playerid, 3445, DIALOG_STYLE_LIST, "Стритфэмили", "Мунбим\nПеренел\nРегина\nСолайер\nСтратум\nНазад", "Выбор", "Отмена" );
      case 11 : ShowPlayerDialog( playerid, 3446, DIALOG_STYLE_LIST, "Лодки", "Костгуард\nДигхи\nДжетмакс\nЗапускатор\nМарквиз\nПредатор\nРифер\nСпидер\nСквалло\nТропик 2этажный\nНазад", "Выбор", "Отмена" );
      case 12 : ShowPlayerDialog( playerid, 3447, DIALOG_STYLE_LIST, "Трэйлера и Ж/Д", "Артикль 1\nАртикль 2\nАртикль 3\nБагаж 1\nБагаж 2\nФермокосилка\nПлатформа поезда открытая\nПлатформа поезда закрытая (не рекомендую спавнить)\nТопливо\nПассажирский вагон\nЛестница\nУтилити\nНазад", "Выбор", "Отмена" );
      case 13 : ShowPlayerDialog( playerid, 3448, DIALOG_STYLE_LIST, "Ж/Д продолжение и прочее", "Багажевозка\nЛокомотив пассажирского (не спавниться)\nКадди\nКампер\nКампер A\nКомбайн\nБульдозер ''Дозер''\nДумпер\nФоркЛифт\nЛокомотив грузогого (не спавниться)\nХоткнайф\nХастлер\nХотДог\nКартинг\nМувер (чистильщик газона)\nВуппи\nРомеро\nСекьюрикар\nЛимузин\nСвипер\nТрамвай\nТоутрак\nТуг\nВортикс\nНазад", "Выбор", "Отмена" );
      case 14 : ShowPlayerDialog( playerid, 3449, DIALOG_STYLE_LIST, "RC авто", "RC Бандит\nRC Барон\nRC Райдер (вертолёт)\nRC Гоблин\nRC Тигр (танк)\nRC Горшок\nНазад", "Выбор", "Отмена" );
     }
    }
    case 3435 :
    {
     if ( listitem > 10 ) return ShowPlayerDefaultDialog( playerid );
     
        new
           model_array[] = { 592, 577, 511, 512, 593, 520, 553, 476, 519, 460, 513 };
                
     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3436 :
    {
     if ( listitem > 8 ) return ShowPlayerDefaultDialog( playerid );

           new
               model_array[] = { 548, 425, 417, 487, 488, 497, 563, 447, 469 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3437 :
    {
     if ( listitem > 12 ) return ShowPlayerDefaultDialog( playerid );

     new
         model_array[] = { 581, 509, 481, 462, 521, 463, 510, 522, 461, 448, 471, 468, 586 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3438 :
    {
     if ( listitem > 3 ) return ShowPlayerDefaultDialog( playerid );
     
        new
      model_array[] = { 480, 533, 439, 555 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3439 :
    {
     if ( listitem > 24 ) return ShowPlayerDefaultDialog( playerid );

     new
            model_array[] = { 499, 422, 482, 498, 609, 524, 578, 455, 403, 414, 582, 443, 514, 413, 515, 440, 543, 605, 459, 531, 408, 552, 478, 456, 554 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3440 :
    {
     if ( listitem > 7 ) return ShowPlayerDefaultDialog( playerid );

           new
               model_array[] = { 536, 575, 534, 567, 535, 566, 576, 412 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3441 :
    {
     if ( listitem > 12 ) return ShowPlayerDefaultDialog( playerid );
      
        new
            model_array[] = { 568, 424, 573, 579, 400, 500, 444, 556, 557, 470, 489, 505, 495 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3442 :
    {
     if ( listitem > 17 ) return ShowPlayerDefaultDialog( playerid );

     new
            model_array[] = { 416, 433, 431, 438, 437, 523, 427, 490, 528, 407, 544, 596, 598, 597, 599, 432, 601, 420 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3443 :
    {
     if ( listitem > 33 ) return ShowPlayerDefaultDialog( playerid );
     
        new
               model_array[] = { 445, 504, 401, 518, 527, 542, 507, 562, 585, 419, 526, 604, 466, 492, 474, 546, 517, 410, 551, 516, 467, 600, 426, 436, 547, 405, 580, 560, 550, 549, 540, 491, 529, 421 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3444 :
    {
     if ( listitem > 19 ) return ShowPlayerDefaultDialog( playerid );
      
        new
               model_array[] = { 602, 429, 496, 402, 541, 415, 589, 587, 565, 494, 502, 503, 411, 559, 603, 475, 506, 451, 558, 477 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3445 :
    {
     if ( listitem > 4 ) return ShowPlayerDefaultDialog( playerid );

     new
            model_array[] = { 418, 404, 479, 458, 561 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3446 :
    {
     if ( listitem > 9 ) return ShowPlayerDefaultDialog( playerid );
      
           new
               model_array[] = { 472, 473, 493, 595, 484, 430, 453, 452, 446, 454 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3447 :
    {
     if ( listitem > 11 ) return ShowPlayerDefaultDialog( playerid );

           new
               model_array[] = { 435, 450, 591, 606, 607, 610, 569, 590, 584, 570, 608, 611 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3448 :
    {
     if ( listitem > 23 ) return ShowPlayerDefaultDialog( playerid );
      
           new
               model_array[] = { 485, 537, 457, 483, 508, 532, 486, 406, 530, 538, 434, 545, 588, 571, 572, 423, 442, 428, 409, 574, 449, 525, 583, 539 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
    case 3449 :
    {
     if ( listitem > 5 ) return ShowPlayerDefaultDialog( playerid );
     
           new
               model_array[] = { 441, 464, 465, 501, 564, 594 };

     return CreatePlayerVehicle( playerid, model_array[ listitem ] );
    }
   }
  }
  return 0;
}
15.07.2012 в 19:23
+++!
17.05.2013 в 21:57
Спасибо помог.
02.07.2015 в 13:08
Что с этим делать?
01.06.2016 в 17:39
Форум | www.SAMP-TEAM.com » San Andreas MultiPlayer » Скрипты » Vehicle Spawner
  • Страница 1 из 1
  • 1
Поиск: