38 lines
677 B
JavaScript
38 lines
677 B
JavaScript
|
function ac(options) {
|
||
|
this.options=options;
|
||
|
this.sensor=null;
|
||
|
this.act = {
|
||
|
start: function () {
|
||
|
log('Starting .. '+this.options.msg)
|
||
|
},
|
||
|
percept: function () {
|
||
|
rd.try(0,['SENSOR',_],function (t) {
|
||
|
if (t) this.sensor=t[1];
|
||
|
})
|
||
|
},
|
||
|
action : function () {
|
||
|
log(this.sensor);
|
||
|
},
|
||
|
stop: function () {
|
||
|
log('Terminating ..')
|
||
|
kill()
|
||
|
}
|
||
|
}
|
||
|
|
||
|
this.trans = {
|
||
|
start:"percept",
|
||
|
percept: function () {
|
||
|
if (this.sensor!=null) return "action";
|
||
|
else return "stop";
|
||
|
},
|
||
|
action:"stop"
|
||
|
}
|
||
|
this.next="start";
|
||
|
}
|
||
|
|
||
|
out(['SENSOR',1000])
|
||
|
var ag1 = create(ac,{msg:'with pace'},2);
|
||
|
|
||
|
start();
|
||
|
|