extern void object::CollectTitanium3() { // 1) Variable definition. object item; // info. about objects while (true) // repeat forever { // 2) Go to the titanium ore and grab it. item = radar(TitaniumOre);// look for titanium ore goto(item.position); // go to the position grab(); // grab the titanium // 3) Go to the converter and drop it. item = radar(Converter); // look for converter goto(item.position); // go to the position drop(); // drop the titanium move(-2.5); // step back 2.5 m // 4) Wait until titanium converted and grabs do { wait(1); // wait for cube item = radar(Titanium, 0, 45, 0, 5); } while ( item == null ); goto(item.position); grab(); // take it // 5) Go to free space and drop it goto(space(position)); // go to free space drop(); // drop titanium // If power cell half empty, recharges. if ( energyCell.energyLevel < 0.5 ) { // if so: item = radar(PowerStation); if ( item != null ) // station found ? { goto(item.position); // go there while ( energyCell.energyLevel < 1 ) { // until recharged: wait(1); // wait } } } } }