Перейти к содержанию
Авторизация  
SCRIPTMAN

Заводка авто

Рекомендуемые сообщения

SCRIPTMAN

Привет!

 

Парни расскажите, как сделать. Например жмёшь CTRL. Тебе пишет: Имя_Фамилия попытался завести авто (неудачно) - авто не завелось, Имя_Фамилия попытался завести авто (удачно) - авто завелось. Через рандом. Как это, объясните пожалуйста.

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


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

,это ?


	{
		if(IsPlayerInVehicle(playerid, carid))
		{
			new sendername[MAX_PLAYER_NAME];
			new string[64];
			GetPlayerName(playerid, sendername, sizeof(sendername));
			new chance = random(10);
			if(chance >= 0 && chance <= 8)
			{
				Engine[carid] = 1;
				GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
				SetVehicleParamsEx(GetPlayerVehicleID(playerid) ,VEHICLE_PARAMS_ON,VEHICLE_PARAMS_OFF,alarm,doors,bonnet,boot,objective);
				SendClientMessage(playerid, COLOR_GREY, "Вы успешно запустили двигатель.");
				format(string, sizeof(string), "* %s вставил ключ в замок зажигания и пытается завести двигатель.", sendername);
				ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
				return 1;
			}
			else
			{
				SendClientMessage(playerid, COLOR_GREY, "Вам не удалось запустить двигатель.");
			}
		}
	} 

@FLASHup,

if(engine1[vehicleid] == 2)
		{
			if(vhealth >= 410)
			{
				if(rand > 10)
				{
					engine1[vehicleid] = 1;
					GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(GetPlayerVehicleID(playerid) ,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
					SetTimerEx("DamagedEngine", 1000, 1, "i", playerid);
					GetPlayerName(playerid, sendername, sizeof(sendername));
					format(string, sizeof(string), "Двигатель завелся (( %s ))", sendername);
					ProxDetector(10.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
				}
				else
				{
					engine1[vehicleid] = 0;
					GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(GetPlayerVehicleID(playerid) ,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
					SendClientMessage(playerid, COLOR_RED, "Двигатель не заводится, попробуйте ещё раз");
					GetPlayerName(playerid, sendername, sizeof(sendername));
					format(string, sizeof(string), "Двигатель не завелся (( %s ))", sendername);
					ProxDetector(10.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
				}
			}
			else if(vhealth <= 400)
			{
				engine1[vehicleid] = 0;
				GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
				SetVehicleParamsEx(GetPlayerVehicleID(playerid) ,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
				SendClientMessage(playerid, COLOR_RED, "Двигатель не заводится, попробуйте ещё раз");
				GetPlayerName(playerid, sendername, sizeof(sendername));
				format(string, sizeof(string), "Двигатель не завелся (( %s ))", sendername);
				ProxDetector(10.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
			}
		}
	}
	return 1; 

tbXeAok8PNU.jpg

Изменено пользователем FLASHup

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


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

@FLASHup,Похоже, но. Смотрите. Нажимает CTRL. В чат пишет: "Nick_Name заводит двигатель - (удачно)"  - значит завёлся двигатель. А если пишет: "Nick_Name заводит двигатель - (неудачно)"  - значит не завёлся двигатель.

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


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

,ща попробую так сделать,если норм то скину  

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


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

Почему бы не использовать команду такого типа?

if(strcmp(cmd, "/try", true) == 0) //тут пиши команду свою и делай активацию на клавишу
     { 
new randa = random(2)+1; 
             { 
                 if(randa == 1) format(string, sizeof(string), "*** %s пытается %s и у него получается", sendername, result); //тут на своё меняешь.
                 else format(string, sizeof(string), "*** %s пытается %s, но у него не получается", sendername, result); 
             } 
    return 1; //тут попробуешь поставить return, если ошибка в этой строке будет

просто пример.

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


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

На вырезали, на вырезали.. Даже не указали на необходимый паблик и ид клавишы.

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


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

, Кто хоть это не умеет делать?

Если бы он спросил - ответили бы.

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


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

 

 


7F8000
Да, но как сделать чтобы если удачно - завелась, неудачно - не завелась.

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


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

Ну функцию скажи по заводке двигателя у тебя в моде

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


Ссылка на сообщение
Поделиться на другие сайты
SCRIPTMAN
 		if(vid > ALLCARS && vid <= ALLCARS+TOTALCARS)//Если в личном авто сидим
   		{
     		if(Player[playerid][pAdmin] < 4)
       		{
	        	if(!strcmp(CarInfo[vid][cOwner], "None", true)) return SCM(playerid, COLOR_GRAD1, "Данный транспорт на продаже.");
		        else
				{
					if(!GetPlayerCar(playerid)) return SCM(playerid, COLOR_GRAD1, "У Вас нет ключей от чужого транспорта.");
					else if(GetPlayerCar(playerid))
					{
					    if(Player[playerid][pVIP] == 0)
					    {
					        if(GetPlayerVehicleID(playerid) != GetPVarInt(playerid, "PlayerCar1")) return SCM(playerid, COLOR_GRAD1, "У вас нет ключей от чужого транспорта!");
					    }
					    else
					    {
					        if(GetPlayerVehicleID(playerid) != GetPVarInt(playerid, "PlayerCar1")) return SCM(playerid, COLOR_GRAD1, "Вы не можете завести транспорт.");
//							GetPlayerVehicleID(playerid) != GetPVarInt(playerid, "PlayerCar2")) return SCM(playerid, COLOR_GRAD1, "У вас нет ключей от чужого транспорта!");
					    }
//							if(GetPlayerVehicleID(playerid) != GetPVarInt(playerid, "PlayerCar1") || GetPlayerVehicleID(playerid) != GetPVarInt(playerid, "PlayerCar2")) return SCM(playerid, COLOR_GRAD1, "У вас нет ключей от чужого транспорта!");
					}
				}
			}
   		}
  		if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER && EngineCar[vid] == 0)
		{
		    /*GetVehicleHealth(vid, CarHP);
		    if(CarHP <= 350)
			{
				EngineCar[vid] = 0,
				GetVehicleParamsEx(vid,engine,liights,alarm,doors,bonnet,boot,objective), SetVehicleParamsEx(vid,0,liights,0,doors,bonnet,boot,objective),
				SCM(playerid, COLOR_LIGHTRED, "Ваш транспорт заглох. Вызовите механика или сходите на СТО за инструментами для починки."),
				TextDrawHealthUpdate(playerid);
				return true;
			}*/
			if(BrokenCar[vid] != 0) return SCM(playerid, COLOR_LIGHTRED, "Машина сломана. Подойдите к капоту и напишите /autorepair, чтобы починить её.");
   			if(GetPVarInt(playerid, "DBLOADING") == 1) return SCM(playerid, COLOR_GRAD1, "В данный момент идет загрузка товара.");
			EngineCar[vid] = 1;
   			GetVehicleParamsEx(vid,engine,liights,alarm,doors,bonnet,boot,objective);
   			SetVehicleParamsEx(vid,1,liights,0,doors,bonnet,boot,objective);
  		}
		else if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER && EngineCar[vid] == 1)
  		{
   			EngineCar[vid] = 0;
   			GetVehicleParamsEx(vid,engine,liights,alarm,doors,bonnet,boot,objective);
   			SetVehicleParamsEx(vid,0,liights,0,doors,bonnet,boot,objective);
  		}
  		return true;
	}

Это для личного

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


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

@EgasVegas, Если даешь ответ по теме, то стоит давать качественный и развернутый ответ. А не вырезки быдлокода без пояснений.

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


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.
Авторизация  

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

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

×

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

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