Пример #1
0
        private async Task ToggleSpotlight()
        {
            var vehicle = API.GetVehiclePedIsIn(API.GetPlayerPed(-1), false);

            if (IsSpotlightUsageAllowed(vehicle))
            {
                if (IsSpotlightEnabled(vehicle))
                {
                    API.DecorSetBool(vehicle, DECOR_NAME_STATUS, false);
                    API.DecorSetFloat(vehicle, DECOR_NAME_BRIGHTNESS, 0f);
                    for (int i = 0; i < 250; i++)
                    {
                        if (IsSpotlightEnabled(vehicle))
                        {
                            break;
                        }
                        DrawSpotlightLabel(false);
                        await Delay(0);
                    }
                }
                else
                {
                    API.DecorSetBool(vehicle, DECOR_NAME_STATUS, true);
                    await TranslateDecorSmoothly(vehicle, DECOR_NAME_BRIGHTNESS, 0f, Config.GetValueFloat(Config.BRIGHTNESS_LEVEL, 30f), 30);
                }
            }

            await Task.FromResult(0);
        }
Пример #2
0
 private static async Task TranslateDecorSmoothly(int handle, string decorName, float from, float to, int timeMs)
 {
     for (int i = 0; i < 10; i++)
     {
         API.DecorSetFloat(handle, decorName, from + (to - from) * i / 10);
         await Delay(timeMs);
     }
 }
Пример #3
0
 private void SetSpotlightDefaultsIfNull(int handle)
 {
     if (!API.DecorExistOn(handle, DECOR_NAME_XY))
     {
         API.DecorSetFloat(handle, DECOR_NAME_XY, 0f);
     }
     if (!API.DecorExistOn(handle, DECOR_NAME_Z))
     {
         API.DecorSetFloat(handle, DECOR_NAME_Z, 0.05f);
     }
     if (!API.DecorExistOn(handle, DECOR_NAME_BRIGHTNESS))
     {
         API.DecorSetFloat(handle, DECOR_NAME_BRIGHTNESS, 0f);
     }
 }
Пример #4
0
        private async Task ToggleSpotlight()
        {
            var vehicle = API.GetVehiclePedIsIn(API.GetPlayerPed(-1), false);

            if (API.GetVehicleClass(vehicle) == 18 || !Config.GetValueBool(Config.EMERGENCY_ONLY, true))
            {
                if (IsSpotlightEnabled(vehicle))
                {
                    API.DecorSetBool(vehicle, DECOR_NAME_STATUS, false);
                    API.DecorSetFloat(vehicle, DECOR_NAME_BRIGHTNESS, 0f);
                }
                else
                {
                    API.DecorSetBool(vehicle, DECOR_NAME_STATUS, true);
                    await TranslateDecorSmoothly(vehicle, DECOR_NAME_BRIGHTNESS, 0f, Config.GetValueFloat(Config.BRIGHTNESS_LEVEL, 30f), 30);
                }
            }
            await Task.FromResult(0);
        }