Закрыть Привет! Если вы читаете это - Вы еще не зарегистрированы. Это займет не больше минуты. Нажмите здесь, чтобы пройти регистрацию в несколько простых шагов, чтобы пользоваться всеми возможностями нашего форума. Обратите внимание, запрещены непристойные, матерные, бессмысленные (цифры, случайный набор букв) ники. Удачи!

Тема: Помогите с авто

Показано с 1 по 3 из 3

  1. #1
    Заблокирован

    Аватар для Mike

    Статус: Оффлайн
    Регистрация:18.11.2010
    Сообщений:93
    Репутация:10 [+/-] 

    Помогите с авто

    Привет , у меня возникла такая проблема с автомобилями , я поставил команды /startengine и /stopengine , и теперь когда я покупаю авто , мне все равно нужно его заводить старым сособом (/engine) а потом уже /startengine , как можно сделать так чтоб , купил авто и командой /startenine завел поехал , арендовал авто , тоже командой /startengine завел поехал , подскажите плиз.
    Вот мои коды на всякий случай:
    public StartingTheVehicle:

    Код:
    public StartingTheVehicle(playerid)
    {
        if(IsPlayerConnected(playerid))
        {
            if(IsPlayerInAnyVehicle(playerid))
            {
                new RandomStart;
        		new string[256];
        		new sendername[MAX_PLAYER_NAME];
                RandomStart = random(4);
                switch(RandomStart)
                {
                    case 0,1,2:
                    {
                        engineOn[GetPlayerVehicleID(playerid)] = true;
                        TogglePlayerControllable(playerid, true);
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        format(string, sizeof(string), "* Двигатель заведен. ", sendername);
                        ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                        gEngine[playerid] = 0;
                    }
                    case 3:
                    {
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        format(string, sizeof(string), "* Двигатель не заводится. ", sendername);
    					ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    					gEngine[playerid] = 0;
                    }
                }
            }
    		else
    		{
    		    gEngine[playerid] = 0;
    		}
        }
        return 1;
    }
    public OnPlayerKeyStateChange:

    Код:
    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
        new string[256];
    	new sendername[MAX_PLAYER_NAME];
    	new pveh = GetVehicleModel(GetPlayerVehicleID(playerid));
    	new newcar = GetPlayerVehicleID(playerid);
        if(newkeys == KEY_JUMP)
        {
            if(IsPlayerInAnyVehicle(playerid))
            {
    			if(IsPlayerConnected(playerid))
    			{
    				if(!engineOn[GetPlayerVehicleID(playerid)])
    				{
    					if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)
    					{
    						return 1;
    					}
    					if(IsAnOwnableCar(newcar))
    					{
    					    if(PlayerInfo[playerid][pPcarkey] == newcar) { }
    						else if(PlayerInfo[playerid][pPcarkey2] == newcar) { }
    						else if(PlayerInfo[playerid][pPcarkey3] == newcar) { }
    						else { return 1; }
    					}
    					if(pveh == 510 || pveh == 462 || pveh == 481 || pveh == 509)
    					{
    						return 1;
    					}
    					if(newcar == 59 || newcar == 60)
    					{
    						return 1;
    					}
    					if(newcar >= 135 && newcar <= 154)
    					{
    					    if(HireCar[playerid] != newcar)
    					    {
    							return 1;
    						}
    					}
    					if(IsAHarvest(newcar))
    					{
    					    return 1;
    					}
    					if(IsADrugHarvest(newcar))
    					{
    					    return 1;
    					}
    					if(IsAPlane(newcar))
    					{
    						return 1;
    					}
    					if(IsASweeper(newcar))
    					{
    						return 1;
    					}
    					if(gEngine[playerid] == 1) { return 1; }
    
    					PutPlayerInVehicle(playerid, newcar, 0);
    					GetPlayerName(playerid, sendername, sizeof(sendername));
    					format(string, sizeof(string), "* Вставил ключ в замок зажигания, и заводит двигатель...", sendername);
    					ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    					SetTimerEx("StartingTheVehicle",3500,0,"i",playerid);
    					GameTextForPlayer(playerid, "~w~Starting vehicle engine...",3500,3);
    					gEngine[playerid] = 1;
    					return 1;
    				}
    			}
    		}
        }
  2. #2
    Заблокирован

    Аватар для Mike

    Статус: Оффлайн
    Регистрация:18.11.2010
    Сообщений:93
    Репутация:10 [+/-] 
    v buy:
    Код:
    else if(strcmp(x_nr,"buy",true) == 0)
    	        {
    	            if(IsAnOwnableCar(idcar))
    	            {
    	                if(PlayerInfo[playerid][pLevel] < 3)
    			    	{
                        	SendClientMessage(playerid, COLOR_GREY, "Вам нужен 3 LVL, чтобы купить транспорт!");
                        	return 1;
    			    	}
    			    	if(PlayerInfo[playerid][pPasport] == 0)
    				        {
    				            SendClientMessage(playerid, COLOR_GREY, " Сначала нужно получить пасспорт!");
    				            return 1;
    				        }
    			    	if(PlayerInfo[playerid][pPcarkey] == 999) { }
    			    	else if(PlayerInfo[playerid][pPcarkey2] == 999) { }
    			    	else if(PlayerInfo[playerid][pPcarkey3] == 999) { }
    			    	else { SendClientMessage(playerid, COLOR_GREY, "   Вы имеете уже 3 машины"); return 1; }
    					if(CarInfo[idcar][cOwned]==1)
    					{
    				    	SendClientMessage(playerid, COLOR_GREY, "Someone already owns this car");
    				    	return 1;
    					}
    					if(UAS_GetValPlayerMoney(playerid) >= CarInfo[idcar][cValue])
    					{
    					    if(PlayerInfo[playerid][pPcarkey] == 999) { PlayerInfo[playerid][pPcarkey] = idcar; }
    					    else if(PlayerInfo[playerid][pPcarkey2] == 999) { PlayerInfo[playerid][pPcarkey2] = idcar; }
    					    else if(PlayerInfo[playerid][pPcarkey3] == 999) { PlayerInfo[playerid][pPcarkey3] = idcar; }
    					    else { return 1; }
    						CarInfo[idcar][cOwned] = 1;
    						GetPlayerName(playerid, sendername, sizeof(sendername));
    						strmid(CarInfo[idcar][cOwner], sendername, 0, strlen(sendername), 999);
    						SafePlayerMoney(playerid,-CarInfo[idcar][cValue]);
    						PlayerPlayMusic(playerid);
    						GameTextForPlayer(playerid, "~w~ЊO€ѓPA‹‡•EM~n~C ЊOKYЊKO†! …CЊO‡’€Y†¦E /v park!", 5000, 3);
    						gEngine[playerid] = 0;
    						engineOn[GetPlayerVehicleID(playerid)] = false;
    						DateProp(playerid);
    						OnPropUpdate();
    						OnPlayerUpdate(playerid);
    						return 1;
    					}
    					else
    					{
    					    SendClientMessage(playerid, COLOR_GREY, "  Вам не хватает денег ! ");
    					    return 1;
    					}
    	            }
    	        }
    	        else
    	        {
    	            SendClientMessage(playerid, COLOR_WHITE, "Пишите /v [название]");
    	            SendClientMessage(playerid, COLOR_WHITE, "Возможные названия: park, lock(1-3), sell, sellto, color");
    	            return 1;
    	        }
    	    }
    	    return 1;
    	}
    /engine:

    Код:
    if(!strcmp(cmd, "/engine", true))
    	{
    	    if(IsPlayerConnected(playerid))
    	    {
    			if(IsPlayerInAnyVehicle(playerid))
    			{
    	    		if(!engineOn[GetPlayerVehicleID(playerid)])
    	    		{
    	        		if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)
    					{
    						return 1;
    					}
    					if(IsAnOwnableCar(idcar))
    					{
    						if(PlayerInfo[playerid][pPcarkey] == idcar) { }
    						else if(PlayerInfo[playerid][pPcarkey2] == idcar) { }
    						else if(PlayerInfo[playerid][pPcarkey3] == idcar) { }
    						else { return 1; }
    					}
    					if(pveh == 510 || pveh == 462 || pveh == 481 || pveh == 509)
    					{
    						return 1;
    					}
    					if(idcar == 59 || idcar == 60)
    					{
    						return 1;
    					}
    					if(idcar >= 135 && idcar <= 154 || idcar >= 279 && idcar <= 283)
    					{
    					    if(HireCar[playerid] != idcar)
    					    {
    							return 1;
    						}
    					}
    					if(IsAPlane(idcar))
    					{
    					    return 1;
    					}
    					if(IsAHarvest(idcar))
    					{
    					    return 1;
    					}
    					if(IsADrugHarvest(idcar))
    					{
    					    return 1;
    					}
    					if(IsASweeper(idcar))
    					{
    					    return 1;
    					}
    					if(gEngine[playerid] == 1) { return 1; }
    
    					new playerveh = GetPlayerVehicleID(playerid);
    					PutPlayerInVehicle(playerid, playerveh, 0);
    					format(string, sizeof(string), "* Пытается запустить двигатель автомобиля...", sendername);
    					ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    					SetTimerEx("StartingTheVehicle",3500,0,"i",playerid);
    					GameTextForPlayer(playerid, "~w~Starting vehicle engine...",3500,3);
    					gEngine[playerid] = 1;
    					return 1;
    				}
    				if(engineOn[GetPlayerVehicleID(playerid)])
    	    		{
    	        		if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)
    					{
    						return 1;
    					}
    					if(IsAnOwnableCar(idcar))
    					{
    					    if(PlayerInfo[playerid][pPcarkey] == idcar) { }
    						else if(PlayerInfo[playerid][pPcarkey2] == idcar) { }
    						else if(PlayerInfo[playerid][pPcarkey3] == idcar) { }
    						else { return 1; }
    					}
    					if(pveh == 510 || pveh == 462 || pveh == 481 || pveh == 509)
    					{
    						return 1;
    					}
    					if(idcar == 59 || idcar == 60)
    					{
    						return 1;
    					}
    					if(idcar >= 135 && idcar <= 154 || idcar >= 279 && idcar <= 283)
    					{
    					    if(HireCar[playerid] != idcar)
    					    {
    							return 1;
    						}
    					}
    					if(IsAHarvest(idcar))
    					{
    					    return 1;
    					}
    					if(IsADrugHarvest(idcar))
    					{
    					    return 1;
    					}
    					if(IsAPlane(idcar))
    					{
    					    return 1;
    					}
    					if(IsASweeper(idcar))
    					{
    					    return 1;
    					}
    					engineOn[GetPlayerVehicleID(playerid)] = false;
    					//RemovePlayerFromVehicle(playerid);
    					TogglePlayerControllable(playerid, 0);
    					format(string, sizeof(string), "* Повернул ключ и заглушил двигатель.", sendername);
    					ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    					gEngine[playerid] = 0;
    					return 1;
    				}
    			}
    	    }
    	    return 1;
    	}
    startengine and stopengine:
    Код:
    if(strcmp(cmd, "/startengine",true) == 0)
         {
                  new vid = GetPlayerVehicleID(playerid);
                  if(vid != INVALID_VEHICLE_ID)
            {
                      GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
                      SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
                  }
                  return 1;
         }
         if(strcmp(cmd, "/stopengine",true) == 0)
         {
                  new vid = GetPlayerVehicleID(playerid);
                  if(vid != INVALID_VEHICLE_ID)
            {
                      GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
                      SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
                  }
         }
  3. #3
    Заблокирован

    Аватар для Mike

    Статус: Оффлайн
    Регистрация:18.11.2010
    Сообщений:93
    Репутация:10 [+/-] 
    public Startup(playerid, vehicleid):
    Код:
    public Startup(playerid, vehicleid)
    {
        new pveh = GetVehicleModel(GetPlayerVehicleID(playerid));
        new newcar = GetPlayerVehicleID(playerid);
    	if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER || engineOn[vehicleid])
    	{
    		//I do nothing!
    	}
    	else if(IsPlayerInAnyVehicle(playerid) && !engineOn[vehicleid] && !vehicleEntered[playerid][vehicleid] && GetPlayerState(playerid) == PLAYER_STATE_DRIVER && pveh != 510 && pveh != 462 && newcar != 59 && newcar != 60 && !IsAPlane(newcar) && !IsAHarvest(newcar) && !IsADrugHarvest(newcar) && !IsASweeper(newcar))
    	{
    		SendClientMessage(playerid, COLOR_LIGHT_BLUE, "(( Нажмите SHIFT Или Пробел, чтобы завести транспорт, или /engine ))");
    		TogglePlayerControllable(playerid, false);
    		vehicleEntered[playerid][vehicleid] = true;
    	}
    	else if(IsPlayerInAnyVehicle(playerid) && !engineOn[vehicleid] && vehicleEntered[playerid][vehicleid] && GetPlayerState(playerid) == PLAYER_STATE_DRIVER && pveh != 510 && pveh != 462 && newcar != 59 && newcar != 60 && !IsAPlane(newcar) && !IsAHarvest(newcar) && !IsADrugHarvest(newcar) && !IsASweeper(newcar))
    	{
    		SendClientMessage(playerid, COLOR_LIGHT_BLUE, "(( Нажмите SHIFT Или Пробел, чтобы завести транспорт, или /engine! ))");
    		TogglePlayerControllable(playerid, false);
    	}
    }
    
    public engine2(playerid)
    {
    	if(!IsPlayerInAnyVehicle(playerid))
    	{
    	    TogglePlayerControllable(playerid, 1);
    	}
    }

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения