act approach()
 {
   int x; 
   start patrol(-1) timeout 300 noblock;
  checking: 
   if (timedout(patrol) || sfIsStalled()) fail;
   x = sfObjInFront();
   if (x > 2000) goto checking;
   suspend patrol;
   Move(x - 200);
   succeed;
 } 

Example 2: An activity that monitors another.

Back to Article