2012-12-29 10:30:42 +00:00
|
|
|
extern void object::Slave( )
|
|
|
|
{
|
|
|
|
float order, param;
|
|
|
|
|
|
|
|
while ( true )
|
|
|
|
{
|
|
|
|
// wait for order ...
|
|
|
|
while ( !testinfo("order", 100) )
|
|
|
|
{
|
|
|
|
wait(1);
|
|
|
|
}
|
|
|
|
|
|
|
|
// read the order and the parameter
|
|
|
|
order = receive("order", 100);
|
|
|
|
param = receive("param", 100);
|
|
|
|
|
|
|
|
if ( order == 1 )
|
|
|
|
{
|
|
|
|
message("move("+param+")");
|
|
|
|
move(param);
|
|
|
|
}
|
|
|
|
else if ( order == 2 )
|
|
|
|
{
|
|
|
|
message("turn("+param+")");
|
|
|
|
turn(param);
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
message("Unknown order");
|
|
|
|
}
|
|
|
|
|
|
|
|
// signal "end of work"
|
|
|
|
deleteinfo("order", 100);
|
|
|
|
}
|
|
|
|
}
|