The passive lighting is apparently set inside the source code rather than by script.
I'd argue that needs to be changed to reading from say, a couple of lines in the dungeon's script file rather than set manually otherwise we need to update the source every time someone makes a map.
Relevant sections are in level.cpp:
Night time lighting is on line 276
if((Index == 0 && GetDungeon()->GetIndex() == NEW_ATTNAM)
|| (Index == 0 && GetDungeon()->GetIndex() == ATTNAM))
NightAmbientLuminance = MakeRGB24(95, 95, 95);
Daytime is checked with checkSunLight() line 2337 onward:
void level::CheckSunLight()
{
if(Index == 0 && GetDungeon()->GetIndex() == NEW_ATTNAM)
{
double Cos = cos(FPI * (game::GetTick() % 48000) / 24000.);
if(Cos > 0.01)
{
int E = int(100 + Cos * 30);
SunLightEmitation = MakeRGB24(E, E, E);
AmbientLuminance = MakeRGB24(E - 6, E - 6, E - 6);
}
else
{
SunLightEmitation = 0;
AmbientLuminance = NightAmbientLuminance;
}
}
else if(Index == 0 && GetDungeon()->GetIndex() == ATTNAM)
{
double Cos = cos(FPI * (game::GetTick() % 48000) / 24000.);
if(Cos > 0.41)
{
int E = int(100 + (Cos - 0.40) * 40);
SunLightEmitation = MakeRGB24(E, E, E);
AmbientLuminance = MakeRGB24(E - 8, E - 8, E - 8);
}
else
{
SunLightEmitation = 0;
AmbientLuminance = NightAmbientLuminance;
}
}
else
return;
SunLightDirection = game::GetSunLightDirectionVector();
ChangeSunLight();
}
I'm well aware that changing this to read the appropriate sunlight colours from each individual dungeon script file is going to be a huge pain in the ass but it will need to be done sooner or later.