%%@* traffic light %%@ object trafficlights :-object OBJECT : [bcilib]. var id = 'tl'. var url = '@vr-trafficlights.wrl'. var choice = 0. main:- loadURL(url), delay(3000), lights_1(2000). %%@ lights_1 lights_1(Delay):- repeat, lights_g(Delay), lights_a(Delay), lights_r(Delay), nl, fail. %%@ green & amber & red lights_g(Delay) :- sleep(Delay), format('~ttraffic lights, case 1~n'), setSFColor(id, 'RLight', 1.0, 1.0, 1.0), setSFColor(id, 'GLight', 0.0, 1.0, 0.0). lights_a(Delay) :- sleep(Delay), format('~ttraffic lights, case 2~n'), setSFColor(id, 'ALight', 1.0, 0.9, 0.0), setSFColor(id, 'GLight', 1.0, 1.0, 1.0). lights_r(Delay) :- sleep(Delay), format('~ttraffic lights, case 3~n'), setSFColor(id, 'RLight', 1.0, 0.0, 0.0), setSFColor(id, 'ALight', 1.0, 1.0, 1.0). :-end_object OBJECT. %%