Slike ili Video: //
Opis i dodatne informacije: //
Download link: //
Scan link: //
Credits: realnaith
/*
* Street Lights Control Include
* Author:
* Version: 1.0
*/
#define MAX_STREET_LIGHTS 100
const Float:STREET_LIGHT_MAX_DIST = 50.0;
enum StreetLightState
{
LIGHT_OFF,
LIGHT_ON,
LIGHT_DIMMED,
};
new Float:StreetLightPositions;
new StreetLightState:StreetLightStates;
stock OnStreetLightsInit()
{
for (new i = 0; i < MAX_STREET_LIGHTS; i++)
{
StreetLightPositions = 0.0;
StreetLightPositions = 0.0;
StreetLightPositions = 0.0;
StreetLightStates = LIGHT_OFF;
}
}
stock SetStreetLightState(Float:x, Float:y, Float:z, streetlightstate)
{
new lightID = FindNearestStreetLight(x, y, z);
if (lightID != INVALID_LIGHT)
{
StreetLightStates = streetlightstate;
switch (streetlightstate)
{
case LIGHT_OFF:
break;
case LIGHT_ON:
break;
case LIGHT_DIMMED:
break;
}
}
}
stock FindNearestStreetLight(Float:x, Float:y, Float:z)
{
new nearestLight = INVALID_LIGHT;
new nearestDist = STREET_LIGHT_MAX_DIST;
for (new i = 0; i < MAX_STREET_LIGHTS; i++)
{
if (StreetLightStates != LIGHT_OFF)
{
Float:dist = GetDistance3D(x, y, z, StreetLightPositions, StreetLightPositions, StreetLightPositions);
if (dist < nearestDist)
{
nearestDist = dist;
nearestLight = i;
}
}
}
return nearestLight;
}
