- Статус
 - Оффлайн
 
- Регистрация
 - 14 Сен 2017
 
- Сообщения
 - 181
 
- Реакции
 - 56
 
		Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
	
Я думаю, что нам нужны светлые места на карте, чтобы было легче с нашим ночным режимом, поэтому я решил сделать такую шнягу. Этот код добавляет ярлыки в места, где находятся оригинальные огни на карте,  Вам просто нужно получить host_state, это не должно быть сложно. 
Также возможно сделать свет того же цвета, что и на карте, но я не стал с этим беспокоиться. Также я уже добавил небольшую оптимизацию, чтобы огни угасали,если они далеко.
Сам код:
	
	
	
	
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
Скриншоты:
	
	
		
			
		
		
	
	
		
	 
		
	
		
	
				
			Также возможно сделать свет того же цвета, что и на карте, но я не стал с этим беспокоиться. Также я уже добавил небольшую оптимизацию, чтобы огни угасали,если они далеко.
Сам код:
			
				Код:
			
		
		
		if (g_Options.world_lights)
{
    int lightCount = *(int*)(*host_state + 168);
 
    for (int i = 0; i < lightCount; ++i)
    {
 
        Vector pos = *(Vector*)((i * 100) + *(int*)(*host_state + 172));
 
        Color color = Color(255, 0, 0, 255);
 
        if (g_LocalPlayer->IsAlive())
        {
            Vector lPos = g_LocalPlayer->GetEyePos();
 
            float dist = pos.DistTo(lPos);
 
            if (dist > 1000)
                continue;
 
            color[0] *= 1 - fminf(1, fmaxf(0, dist - 700) / 300);
            color[1] *= 1 - fminf(1, fmaxf(0, dist - 700) / 300);
            color[2] *= 1 - fminf(1, fmaxf(0, dist - 700) / 300);
        }
 
        dlight_t* dLight = g_Effects->CL_AllocDlight(i);
        dLight->key = i;
        dLight->color.r = (unsigned char)color.r();
        dLight->color.g = (unsigned char)color.g();
        dLight->color.b = (unsigned char)color.b();
        dLight->color.exponent = true;
        dLight->flags = 0;
        dLight->m_Direction = pos;
        dLight->origin = pos;
        dLight->radius = 500;
        dLight->die = g_GlobalVars->curtime + 0.1f;
        dLight->decay = 20.0f;
    }
}
	Скриншоты:
	
	
				