You've made the same mistake in this script that you did in the previous one you posted.
void LIGHTSOFF(string &in asParent, string &in asChild, int alState)
SetEntityActive("torch_floor_1");
SetEntityActive("torch_floor_2");
SetEntityActive("torch_floor_3");
SetEntityActive("torch_floor_4");
etc...
Here, there is no { and } surrounding the code in that function. I provided you the solution in your other thread, it's very important that you try to understand
why that fix worked
However there is another problem, SetEntityActive requires 2 parameters
SetEntityActive(string& asName, bool abActive);
The name of the entity, which you put in, but also true or false, to say whether the entity
should be activated or deactivated
void LIGHTSOFF(string &in asParent, string &in asChild, int alState)
{
SetEntityActive("torch_floor_1", false);
SetEntityActive("torch_floor_2", false);
SetEntityActive("torch_floor_3", false);
etc...
}
That will make the torches
deactivate, hence the 'false'. If you want them to be activated, then use true instead.
EDIT: woops looks like JAP already fixed that and provided a better solution, sorry about that. I'll leave the post as it explains some other extra stuff anyway