Научите пользоваться SetVehicleParamsEx
#1

Всем привет.Я в скриптинге новичек и в добром инете нашел код по управлению машиной для SAMP 0.3C, там открытие капота,включение двигателя и т.д,и дело в том что там все работает на прописях а выстрачивать каждый раз в падлу и я решил написать диологовое окно по этому поводу.Окно я написал все сделал как написано в инструкциях и все бесполезно,окно появляется но выбранное действие в нем не работает.Помогите плиз кто чем может,скажите в чем я мог ошебится...
Reply
#2

Мб сначала покажешь, что ты там наколдовал?

П.С.: учи русский язык, неуч.
Reply
#3

Вызов окна.
Код:
CMD:veh(playerid, listitem[])
{
ShowPlayerDialog(playerid,6,DIALOG_STYLE_LIST,"Выбирите действие с авто","Завести\nФары\nДвери\nКапот\nБагажник\nСигнализация\nУказатель","Выбрать","Отмена");
return 1;
}
Само окно
Код:
if(dialogid == 6)
    {
    if(response)
{
		new engine,lights,alarm,doors,bonnet,boot,objective;
    	new veh = GetPlayerVehicleID(playerid);
        if(listitem==0)
        {
                if(IsPlayerInAnyVehicle(playerid))
                {
                        if(veh != INVALID_VEHICLE_ID)
                        {
                                if(EngineStatus[playerid] == 0)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
                                        EngineStatus[playerid] = 1;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Вы завели двигатель {2F991A}ТС!");
                                }
                                else if(EngineStatus[playerid] == 1)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
                                        EngineStatus[playerid] = 0;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Вы заглушили двигатель {E31919}ТС!");
                                }
                        }
                }
                else {
                SendClientMessage(playerid, 0x00FF00FF, "{E31919}Вы не в машине!");
                }
        }
        if(listitem==1)
        {
                if(IsPlayerInAnyVehicle(playerid))
                {
                        if(veh != INVALID_VEHICLE_ID)
                        {
                                if(LightsStatus[playerid] == 0)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,engine,VEHICLE_PARAMS_ON,alarm,doors,bonnet,boot,objective);
                                        LightsStatus[playerid] = 1;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Фары транспортного средства {2F991A}вкл!");
                                }
                                else if(LightsStatus[playerid] == 1)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,engine,VEHICLE_PARAMS_OFF,alarm,doors,bonnet,boot,objective);
                                        LightsStatus[playerid] = 0;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Фары транспортного средства  {E31919}выкл!");
                                }
                        }
                }
                else {
                SendClientMessage(playerid, 0x00FF00FF, "{E31919}Вы не в машине!");
                }
        }
        if(listitem==6)
        {
                if(IsPlayerInAnyVehicle(playerid))
                {
                        if(veh != INVALID_VEHICLE_ID)
                        {
                                if(AlarmStatus[playerid] == 0)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,engine,lights,VEHICLE_PARAMS_ON,doors,bonnet,boot,objective);
                                        AlarmStatus[playerid] = 1;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Вы зажали кнопку сигнала!");
                                }
                                else if(AlarmStatus[playerid] == 1)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,engine,lights,VEHICLE_PARAMS_OFF,doors,bonnet,boot,objective);
                                        AlarmStatus[playerid] = 0;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Вы убрали руку с кнопки сигнала!");
                                }
                        }
                }
                else {
                SendClientMessage(playerid, 0x00FF00FF, "{E31919}Вы не в машине");
                }
        }
        if(listitem==3)
        {
                if(IsPlayerInAnyVehicle(playerid))
                {
                        if(veh != INVALID_VEHICLE_ID)
                        {
                                if(DoorsStatus[playerid] == 0)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,engine,lights,alarm,VEHICLE_PARAMS_ON,bonnet,boot,objective);
                                        DoorsStatus[playerid] = 1;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Двери ТС {2F991A}открыты!");
                                }
                                else if(DoorsStatus[playerid] == 1)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,engine,lights,alarm,VEHICLE_PARAMS_OFF,bonnet,boot,objective);
                                        DoorsStatus[playerid] = 0;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Двери ТС {E31919}закрыты!");
                                }
                        }
                }
                else {
                SendClientMessage(playerid, 0x00FF00FF, "{E31919}Вы не в машине!");
                }
        }
        if(listitem==5)
        {
                if(IsPlayerInAnyVehicle(playerid))
                {
                        if(veh != INVALID_VEHICLE_ID)
                        {
                                if(BonnetStatus[playerid] == 0)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,engine,lights,alarm,doors,VEHICLE_PARAMS_ON,boot,objective);
                                        BonnetStatus[playerid] = 1;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Капот автомобиля {2F991A}открыт!");
                                }
                                else if(BonnetStatus[playerid] == 1)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,engine,lights,alarm,doors,VEHICLE_PARAMS_OFF,boot,objective);
                                        BonnetStatus[playerid] = 0;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Капот автомобиля {E31919}закрыт!");
                                }
                        }
                }
                else {
                SendClientMessage(playerid, 0x00FF00FF, "{E31919}Вы не в машине!");
                }
        }
        if(listitem==4)
        {
                if(IsPlayerInAnyVehicle(playerid))
                {
                        if(veh != INVALID_VEHICLE_ID)
                        {
                                if(BootStatus[playerid] == 0)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,VEHICLE_PARAMS_ON,objective);
                                        BootStatus[playerid] = 1;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Багажник автомобиля {2F991A}открыт!");
                                }
                                else if(BootStatus[playerid] == 1)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,VEHICLE_PARAMS_OFF,objective);
                                        BootStatus[playerid] = 0;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Багажник автомобиля {E31919}закрыт!");
                                }
                        }
                }
                else {
                SendClientMessage(playerid, 0x00FF00FF, "{E31919}Вы не в машине!");
                }
        }
        if(listitem==7)
        {
                if(IsPlayerInAnyVehicle(playerid))
                {
                        if(veh != INVALID_VEHICLE_ID)
                        {
                                if(ObjectiveStatus[playerid] == 0)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,VEHICLE_PARAMS_ON);
                                        ObjectiveStatus[playerid] = 1;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Ваш автомобиль {2F991A}активный!");
                                }
                                else if(ObjectiveStatus[playerid] == 1)
                                {
                                        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                                        SetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,VEHICLE_PARAMS_OFF);
                                        ObjectiveStatus[playerid] = 0;
                                        SendClientMessage(playerid, 0xFFFFFFAA, "Ваш автомобиль  {E31919}не автивный!");
                                }
                        }
                }
                else {
                SendClientMessage(playerid, 0x00FF00FF, "{E31919}Вы не в машине!");
                }
        }
        else SendClientMessage(playerid, 0xFFFFFFAA, "SYNTAX: /veh [значение]"),
        SendClientMessage(playerid, 0xFFFFFFAA, "Значения: Engine, Lights, Alarm, Doors, Bonnet, Boot, Objective");
		}
		}
}
Reply
#4

Код через жопу написан, нужно все проще делать. Если застанешь меня в асе (134-709) мб объясню как лучше сделать - и ошибок не будет никаких.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)