integer follow = 0; // this number will tell us whether to follow or not default { state_entry() { llSetStatus(STATUS_PHYSICS, TRUE); // needed for llMMoveToTarget follow = 0; // to start, don't follow llListen(0,"",llGetOwner(),""); // start listening to owner llSensorRepeat("",llGetOwner(),AGENT,200,2*PI,.5); // NEW: start sensing your owner } sensor(integer total_number) { if (follow == 1) { llMoveToTarget(llDetectedPos(0)+<-1,0,-0.5>, .3); // go a little over and down from owner llLookAt(llDetectedPos(0), .1 , 1); // orients toward owner } } listen(integer channel, string name, key id, string message) { if (message == "come") { llSay(0,"I am coming, master"); follow = 1; //turn following on! } if (message == "stay") { llSay(0,"I will stay, master"); follow = 0; //turn following off } } }