Здравствуйте, доброе утро. Я не спал всю ночь, пытаясь найти правильный метод применения статуса фар при загрузке модели автомобиля из базы данных. Я пробовал несколько методов:
vehicle.setLightMultiplier(multiplier); (Это сработало бы для меня, если бы применялось к каждому маяку по отдельности)
0x92B35082E0B42F66
void SET_VEHICLE_BRAKE_LIGHTS(Vehicle vehicle, BOOL toggle)
0x34E710FF01247C5A
void SET_VEHICLE_LIGHTS(Vehicle vehicle, int state)
0x92B35082E0B42F66
void SET_VEHICLE_BRAKE_LIGHTS
Vehicle.getIsLeftHeadlightDamaged
Vehicle.getIsRightHeadlightDamaged
Ни один из них не сработал для меня, и я не нашел много информации по этой теме. Они для получения статуса фар, но есть ли один, чтобы обнулить повреждения? Предположим, я хочу разбить фары, нажав F9.
заранее спасибо
vehicle.setLightMultiplier(multiplier); (Это сработало бы для меня, если бы применялось к каждому маяку по отдельности)
0x92B35082E0B42F66
void SET_VEHICLE_BRAKE_LIGHTS(Vehicle vehicle, BOOL toggle)
0x34E710FF01247C5A
void SET_VEHICLE_LIGHTS(Vehicle vehicle, int state)
0x92B35082E0B42F66
void SET_VEHICLE_BRAKE_LIGHTS
Vehicle.getIsLeftHeadlightDamaged
Vehicle.getIsRightHeadlightDamaged
Ни один из них не сработал для меня, и я не нашел много информации по этой теме. Они для получения статуса фар, но есть ли один, чтобы обнулить повреждения? Предположим, я хочу разбить фары, нажав F9.
JavaScript:
//debug key
mp.keys.bind(0x78, false, () => { // F9
const vehicle = mp.players.local.vehicle;
if (vehicle) {
vehicle.setLightMultiplier(0.0); //В настоящее время я тестирую этот вариант, который устраняет блики от фар.
mp.gui.chat.push("fine");
} else {
mp.gui.chat.push("bad");
}
});
mp.events.add('entityStreamIn', (entity) => {
if (!entity || entity.type !== 'vehicle') return;
setTimeout(() => {
if (!mp.vehicles.exists(entity)) return;
applyVisualDamageWithRetry(entity, 0);
// Aplicar suciedad
const dirtLevel = entity.getVariable('dirtLevel');
if (dirtLevel !== undefined && dirtLevel > 0) {
try {
mp.game.invoke('0x79D3B596FE44EE8B', entity.handle, parseFloat(dirtLevel));
} catch (e) {
mp.gui.chat.push(`Error al aplicar suciedad en stream: ${e}`);
}
}
const visualDamage = entity.getVariable('visualDamage');
if (visualDamage && typeof visualDamage === 'string' && visualDamage !== 'undefined') {
try {
const damageObj = JSON.parse(visualDamage);
if (damageObj.lights) {
setTimeout(() => {
if (!mp.vehicles.exists(entity)) return;
for (const [lightId, damaged] of Object.entries(damageObj.lights)) {
const shouldBeDamaged = damaged === 1 || damaged === true;
if (shouldBeDamaged) {
const lightIndex = parseInt(lightId);
mp.game.invoke('0x92B35082E0B42F66', entity.handle, lightIndex, true);
}
}
}, 1500);
}
} catch (e) {
mp.gui.chat.push(`Error al procesar faros en stream: ${e}`);
}
}
}, 1200);
});
заранее спасибо