// ****************************************************************************
//
// Logic 251: Map B2
//
// ****************************************************************************

#include "defines.txt"

if (new_room) {
  load.pic(room_no);
  draw.pic(room_no);
  discard.pic(room_no);
  set.horizon(0);

  if (prev_room_no == 5) {
   load.view(8);
   set.view(ego,8); set.loop(ego,3);
   position(ego,73,65);
   ego_dir = 1;
   stop.motion(ego); player.control();
  }

  if (prev_room_no == 4) {
    load.view(8);
    set.view(ego,8); set.loop(ego,0);
    position(ego,93,82);
    ego_dir = 7;
    stop.motion(ego); player.control();
  }

  if (prev_room_no == 252) {
    v254 = 0; v255 = 223;
    reposition(ego,v254,v255);
  }

  reset(f16);
  draw(ego);
  show.pic();
  set.priority(ego,4);
}

set.text.attribute(0,15);
display(0,17,"B2");
set.text.attribute(15,0);

if ((said("drive","rol") || said("use","car") || said("move","car") || said("park","rol") || said("exit","rol"))) {
  if (trash_corpse) {
    if (posn(ego,72,45,79,75)) {
      new.room(5);
    }
    else {
      if (posn(ego,88,80,114,90)) {
        new.room(4);
      }
      else {
        print("No need to park here.");
      }
    }
  }
  else {
    print("You have a job to do right now.  Go to the dump!");
  }
}

if (f3) {
  load.view(1);
  set.view(ego,1);
  set.cel(ego,2);
  stop.cycling(ego);
  stop.motion(ego);
  death_type = 2;
}

if (said("look")) {
  print("You're driving in between the residential and business areas.");
}

if (ego_edge_code == horizon_edge) {  // ego touching horizon
  new.room(252);
}

if (ego_edge_code == left_edge) {     // ego touching left edge of screen
  new.room(242);
}

if (ego_edge_code == right_edge) {
  new.room(249);
}

return();