but he still hasn't told us what kind of light he's using.
I don't know how other I shall explain. Maybe code will help:
rem define variables
global lights as byte
global t as integer
global x as float
global y as float
global z as float
global ax as float
global ay as float
global i as word
global o as word
global rg as float
global r as byte
global g as byte
global b as byte
rem open file to read
open to read 1,leveldir$+"lights.lm"
rem read maximum lights
read byte 1,lights
for t=1 to lights
rem read light info
read float 1,x
read float 1,y
read float 1,z
read float 1,ax
read float 1,ay
read word 1,i
read word 1,o
read float 1,rg
read byte 1,r
read byte 1,g
read byte 1,b
rem make light
make light t
position light t,x,y,z
rotate light t,ax,ay,0
set spot light t,i,o
set light range t,rg
color light t,r,g,b
next t
close file 1
TheComet