SlootLite
| Дата: Воскресенье, 27.02.2011, 02:45 | Сообщение # 1 |
 Рядовой
Группа: Проверенные
Зарегистрирован: 24.02.2011
Сообщений: 14
Репутация: 0
Статус: Offline
| Привет) Парюсь уже где то часа 3 над этой фигней. Беру значения через GetVehicleParamsEx и значения заводимости двигателя возвращается -1. Причем сегодня днем все работало отлично. Уже голову сломал себе. Кстате, даже ставил проверку, если равно -1 то чтоб завелась, но тупо игнорит меня эта проверка. Ппц кароч... Code if(newkeys == 512 && GetPlayerState(playerid) == 2) { new carid2 = GetPlayerVehicleID(playerid); new engine2,lights2,alarm2,doors2,bonnet2,boot2,objective2; new playernames[MAX_PLAYER_NAME]; GetVehicleParamsEx(carid2,engine2,lights2,alarm2,doors2,bonnet2,boot2,objective2); printf("%d",engine2); if(engine2 == 0) { далее код ненужен, так как он останавливается после принта
|
|
| |
OKStyle
| Дата: Воскресенье, 27.02.2011, 02:56 | Сообщение # 2 |
 Архивариус
Группа: Администраторы
Зарегистрирован: 19.02.2011
Сообщений: 125
Репутация: 8
Статус: Offline
| Ну правильно, тут либо не указано ручное включение параметров, либо нигде не задаётся значение оных. Покажу на примере мини-скрипта: контроль над транспортом с помощью диалога, вызываемого по клавише "2". В начало: Code new engine,lights,alarm,doors,bonnet,boot,objective; В OnGameModeInit: Code ManualVehicleEngineAndLights(); В OnPlayerStateChange: Code if(newstate == PLAYER_STATE_DRIVER) { GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); SetVehicleParamsEx(GetPlayerVehicleID(playerid),#,0,0,0,0,0,0); // #: 1 - если движок должен быть заведён, 0 - если нет } В OnPlayerKeyStateChange: Code if(newkeys & KEY_SUBMISSION) { GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); new engine_string[50], lights_string[50], alarm_string[50], doors_string[50], bonnet_string[50], boot_string[50]; if(engine == VEHICLE_PARAMS_ON) format(engine_string,sizeof(engine_string),"{FF0000}Заглушить"); if(engine == VEHICLE_PARAMS_OFF) format(engine_string,sizeof(engine_string),"{00FF00}Завести"); if(lights == VEHICLE_PARAMS_ON) format(lights_string,sizeof(lights_string),"{FF0000}Выключить"); if(lights == VEHICLE_PARAMS_OFF) format(lights_string,sizeof(lights_string),"{00FF00}Включить"); if(alarm == VEHICLE_PARAMS_ON) format(alarm_string,sizeof(alarm_string),"{FF0000}Выключить"); if(alarm == VEHICLE_PARAMS_OFF) format(alarm_string,sizeof(alarm_string),"{00FF00}Включить"); if(doors == VEHICLE_PARAMS_ON) format(doors_string,sizeof(doors_string),"{00FF00}Открыть"); if(doors == VEHICLE_PARAMS_OFF) format(doors_string,sizeof(doors_string),"{FF0000}Закрыть"); if(bonnet == VEHICLE_PARAMS_ON) format(bonnet_string,sizeof(bonnet_string),"{FF0000}Закрыть"); if(bonnet == VEHICLE_PARAMS_OFF) format(bonnet_string,sizeof(bonnet_string),"{00FF00}Открыть"); if(boot == VEHICLE_PARAMS_ON) format(boot_string,sizeof(boot_string),"{FF0000}Закрыть"); if(boot == VEHICLE_PARAMS_OFF) format(boot_string,sizeof(boot_string),"{00FF00}Открыть"); } new string[768]; format(string,sizeof(string),"Двигатель {FFFF00}| %s\nФары {FFFF00}| %s\nСигнализация {FFFF00}| %s\nДвери {FFFF00}| %s\nКапот {FFFF00}| %s\nБагажник {FFFF00}| %s",engine_string,lights_string,alarm_string,doors_string,bonnet_string,boot_string); ShowPlayerDialog(playerid,666,DIALOG_STYLE_LIST,"Меню действий с транспортом",string,"Выбрать","Выход"); В OnDialogResponse: Code if(dialogid == 666) { if(response) { switch(listitem) { case 0: { GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); if(engine == 1) SetVehicleParamsEx(GetPlayerVehicleID(playerid),0,lights,alarm,doors,bonnet,boot,objective); if(engine == 0) SetVehicleParamsEx(GetPlayerVehicleID(playerid),1,lights,alarm,doors,bonnet,boot,objective); } case 1: { GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); if(lights == 1) SetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,0,alarm,doors,bonnet,boot,objective); if(lights == 0) SetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,1,alarm,doors,bonnet,boot,objective); } case 2: { GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); if(alarm == 1) SetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,0,doors,bonnet,boot,objective); if(alarm == 0) SetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,1,doors,bonnet,boot,objective); } case 3: { GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); if(doors == 1) SetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,0,bonnet,boot,objective); if(doors == 0) SetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,1,bonnet,boot,objective); } case 4: { GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); if(bonnet == 1) SetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,0,boot,objective); if(bonnet == 0) SetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,1,boot,objective); } case 5: { GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); if(boot == 1) SetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,0,objective); if(boot == 0) SetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,1,objective); } } } }
|
|
| |
OKStyle
| Дата: Воскресенье, 27.02.2011, 03:17 | Сообщение # 8 |
 Архивариус
Группа: Администраторы
Зарегистрирован: 19.02.2011
Сообщений: 125
Репутация: 8
Статус: Offline
| Попробуй вот так: Code GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); SetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); if(engine == 0) { engine = 1; } SetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
|
|
| |