Wait, Rocky/Shadow, if the light state is on, why are you setting it "on" again? Shouldn't it be
if(veh.LightState == LIGHTSTATE_ON) veh.LightState = LIGHTSTATE_OFF;
else veh.LightState = LIGHTSTATE_ON;
EDIT: Another correction:
Rocky, if something is true, you don't have to use "== true" in the if check. Just use:
if(AlarmState[veh])
{
// alarm is enabled
}
Just a thought on saving time when scripting. Also, if something is false, just use the "not" comparison operator (which is an exclamation point) in front of the variable you are checking.
if(!AlarmState[veh])
{
// alarm is disabled
}