// ****************************************************************************
//
// Logic 2: First room
//
// ****************************************************************************

#include "defines.txt"

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

//  if(!isset(f233)){
// set(f233);
// load.sound(255);
//  sound(255,f255);
// }

  // The next 6 lines need only be in the first room of the game
  if ((prev_room_no == 1 ||    // just come from intro screen
      prev_room_no == 0)) {    // or just started game
    position(ego,70,102);
    //status.line.on();
    //accept.input();
  }

// Check what room the player came from and position them on the
// screen accordingly here, e.g:
// if (prev_room_no == 5) {
//   position(ego,12,140);
// }
  status.line.off();
  prevent.input();
  program.control();
  v10=1;

  reset(f14);
  prevent.input();


  Load.view(247);
  Load.view(145);
  load.sound(25);
  load.sound(26);
  v56=0;
  v57=0;
  v58=0;
  v59=0;

  Animate.obj(o8);
  Set.view(o8,247);
  set.cel(o8,2);
  set.loop(o8,0);
  position(o8,78,117);
  set.priority(o7,13);
  stop.cycling(o8);
  ignore.objs(o8);
  draw(o8);

  Animate.obj(o1);
  Set.view(o1,247);
  position(o1,17,121);
  set.cel(o1,0);
  set.loop(o1,0);
  //set.priority(o1,12);
  stop.cycling(o1);
  ignore.objs(o1);
  draw(o1);

  Animate.obj(o2);
  Set.view(o2,247);
  position(o2,37,121);
  set.cel(o2,0);
  set.loop(o2,0);
  //set.priority(o2,12);
  stop.cycling(o2);
  ignore.objs(o2);
  draw(o2);

  Animate.obj(o3);
  Set.view(o3,247);
  position(o3,57,121);
  set.cel(o3,0);
  set.loop(o3,0);
  //set.priority(o3,12);
  stop.cycling(o3);
  ignore.objs(o3);
  draw(o3);

  Animate.obj(o4);
  Set.view(o4,247);
  position(o4,79,121);
  set.cel(o4,1);
  set.loop(o4,0);
  //set.priority(o4,12);
  stop.cycling(o4);
  ignore.objs(o4);
  draw(o4);

  Animate.obj(o5);
  Set.view(o5,247);
  position(o5,99,121);
  set.cel(o5,1);
  set.loop(o5,0);
  //set.priority(o5,12);
  stop.cycling(o5);
  ignore.objs(o5);
  draw(o5);

  Animate.obj(o6);
  Set.view(o6,247);
  position(o6,119,121);
  set.cel(o6,1);
  set.loop(o6,0);
  //set.priority(o6,12);
  stop.cycling(o6);
  ignore.objs(o6);
  draw(o6);



  Load.view(49);///minstral
  Animate.obj(o7);
  Set.view(o7,49);
  position(o7,1,124);
  set.cel(o7,0);
  set.loop(o7,0);
  //set.priority(o7,14);
  //stop.cycling(o7);
  ignore.objs(o7);
  draw(o7);

  Animate.obj(o9);//stool
  Set.view(o9,247);
  position(o9,75,123);
  set.cel(o9,4);
  //set.priority(o9,14);
  stop.cycling(o9);
  ignore.objs(o9);
  draw(o9);

  Animate.obj(o10);//tree
  Set.view(o10,247);
  position(o10,50,113);
  set.cel(o10,5);
  //set.priority(o10,14);
  stop.cycling(o10);
  ignore.objs(o10);
  draw(o10);

  Animate.obj(o11);//tree
  Set.view(o11,247);
  position(o11,75,108);
  set.cel(o11,5);
  //set.priority(o11,14);
  stop.cycling(o11);
  ignore.objs(o11);
  draw(o11);

  Animate.obj(o12);//tree
  Set.view(o12,247);
  position(o12,97,115);
  set.cel(o12,5);
  //set.priority(o12,14);
  stop.cycling(o12);
  ignore.objs(o12);
  draw(o12);

  Animate.obj(o13);//hill
  Set.view(o13,247);
  position(o13,65,110);
  set.cel(o13,9);
  //set.priority(o13,14);
  stop.cycling(o13);
  ignore.objs(o13);
  draw(o13);

  Animate.obj(o14);//worker
  Set.view(o14,247);
  position(o14,108,114);
  set.cel(o14,11);
  //set.priority(o14,14);
  stop.cycling(o14);
  ignore.objs(o14);
  //draw(o14);

  Animate.obj(o15);//worker
  Set.view(o15,247);
  position(o15,86,107);
  set.cel(o15,11);
  //set.priority(o15,14);
  stop.cycling(o15);
  ignore.objs(o15);
  //draw(o15);

  Animate.obj(o16);//worker
  Set.view(o16,247);
  position(o16,54,112);
  set.cel(o16,10);
  //set.priority(o16,14);
  stop.cycling(o16);
  ignore.objs(o16);
  //draw(o16);

  //draw(ego);
  show.pic();
}

if(!isset(f252) && !isset(f90)){
  //display(1,1," Press <F10> to Skip the Introduction");
}
else{
  //display(1,1,"                                     ");
}

if(!isset(f253)){
  set(f253);
  move.obj(o7,75,124,1,f252);
}

if(isset(f252)){
  set(f90);
  set.cel(o7,0);
  set.loop(o7,6);
  reset(f252);
  set(f249);
  end.of.loop(o7,f251);
}

if(!isset(f250) && isset(f249)){
  current.cel(o7,v231);
  if(v231==3){
    set.cel(o9,3);
    set(f250);
    reset(f249);
  }
}

if(isset(f251)){

  //set(f255);
  load.sound(255);
  sound(255,f255);
  v55=0;
  set(f38);//////
  reset(f251);
  set.cel(o7,0);
  set.loop(o7,4);
  start.cycling(o7);
}

if(isset(f255)){
  stop.cycling(o7);
  set.loop(o7,4);   ///loop 7
  display(21,5,"                                ");
  move.obj(o1,0,121,2,f100);
  move.obj(o2,0,121,2,f100);
  move.obj(o3,16,121,2,f254);
  move.obj(o4,121,121,2,f100);
  move.obj(o5,155,121,2,f100);
  move.obj(o6,155,121,2,f100);
  erase(o8);
}
if(isset(f105)){
//  reset(f105); /////////////////////////////
//  sound(26,f105);
}
if(isset(f254)){
  start.cycling(o7);
  sound(25,f105);
  reset(f255);
  reset(f254);
  erase(o1);
  erase(o2);
  //erase(o3);
  //erase(o4);
  erase(o5);
  erase(o6);
  set(f104);
}

if(isset(f245)){//MOVE HOBBITON
  reset(f245);
  draw(o16);
  draw(o15);

  move.obj(o10,40,113,1,f101);
  move.obj(o16,40,112,1,f100);

  move.obj(o15,155,107,1,f100);
  move.obj(o11,155,108,1,f100);
}

if(isset(f101)){//MOVE HOBBITON
  reset(f101);
  move.obj(o10,34,113,1,f102);
  move.obj(o16,34,112,1,f100);

  draw(o14);
  move.obj(o12,155,115,1,f100);
  move.obj(o14,155,114,1,f100);
}

if(isset(f102)){//MOVE HOBBITON
  reset(f102);
  move.obj(o10,13,113,1,f100);
  move.obj(o16,0,112,1,f100);
  move.obj(o13,0,110,1,f110);
}

if(isset(f110)){//////first scene clearED, make bedroom
  reset(f110);
  set.cel(o1,0);
  release.loop(o1);
  set.view(o1,145);///////////BILBO VIEW
  reposition.to(o1,5,117);
  draw(o1);
  move.obj(o1,65,116,1,f112);
  start.cycling(o1);

  release.loop(o2);
  set.cel(o2,0);
  set.view(o2,0);///////////Frodo VIEW
  reposition.to(o2,155,117);
  draw(o2);
  move.obj(o2,88,113,1,f113);
  start.cycling(o2);

  reposition.to(o16,127,108);
  move.obj(o16,69,104,1,f100);
  reposition.to(o14,18,108);
  move.obj(o14,53,104,1,f100);

  //print("frodo room");
  set.cel(o10,6);//drawer
  move.obj(o10,53,110,1,f111);
  set.cel(o11,8);//bed
  move.obj(o11,69,108,1,f121);
  set.cel(o12,12);//bookcase
}

if(isset(f112)){
  reset(f112);
  stop.cycling(o1);
}

if(isset(f111)){//////first scene clearED, make bedroom
  reset(f111);
  reposition.to(o15,11,108);
  move.obj(o15,49,108,1,f100);
  set.cel(o13,7);//fold
  move.obj(o13,39,116,1,f100);
  set.cel(o12,12);//bookcase
  move.obj(o12,101,115,1,f100);
}

if(isset(f121)){
  reset(f121);
  move.obj(o2,88,109,1,f120);
  start.cycling(o2);
}

if(isset(f120)){
  reset(f120);
  stop.cycling(o2);
  set.loop(o2,2);
}

///////////////////////////////////////////////////////
if (isset(f38)) {
  v55++;
  if (v55 == 2) {
     display(21,6," Frobo of the Nine Fingers");
  }

  if (v55 == 72) {
     display(21,6,"                                ");
     display(21,6,"   and the Bean of Gloom,");
  }

  if (v55 == 142) {
     display(21,5,"Why does he have Nine Fingers?");
  }

  if (v55 == 222) {
     display(21,5,"                                ");
     display(21,6," Where is the Bean of Gloom?");
  }

  if (v55 == 224) {
     reset(f38);
  }
  }
///////////////////////////////////////////////////////
if (isset(f104)) {
  v56++;
  if (v56 == 1) {
     display(21,7," Our tale begins near the");
     display(22,7,"  village of Hodditon,");
  }
  if (v56 == 60) {
     display(21,5," A small hamlet on the banks of");
     display(22,5,"  the mighty Hodditon River.");
  }
  if (v56 == 120) {
     display(21,4," A quiet place, where little of ");
     display(22,5,"   importance ever occurs.  ");
  }
  if (v56 == 180) {
     set(f245);
     display(21,4,"  However, Just north of town,   ");
     display(22,2,"in a small, unsupposing hoddit hole,");
  }
  if (v56 == 240) {
    display(21,5," known to locals as \"Old Bag\",");
    display(22,2,"there are stirrings of importance...");
  }
  if (v56 == 254) {
    reset(f104);
    set(f103);
  }
  }
/////////////////////////
if (isset(f103)) {
  v57++;
  if (v57 == 50) {
     display(21,4,"Old Uncle Bildo, that ghastly miser,");
     display(22,2,"   is talking to his nephew Frobo.  ");
  }

  if (v57 == 110) {
     display(21,2,"     Let's listen in and perhaps      ");
     display(22,3,"we'll find out what's happening...");
  }
  if (v57 == 170) {
    stop.cycling(o7);
    display(21,2,"                                  ");
    display(22,2,"                                    ");
  }
  if (v57 == 180) {
    reset(f103);
    set(f150);
  }
  }
///////////////////////////////////////////////////////////
if(isset(f150)){
  print.at("\"Uncle Bildo!  Its so great to see you!\"",5,17,17);
  move.obj(o1,84,114,1,f70);
  start.cycling(o1);
  reset(f150);
}
if(isset(f70)){
  reset(f70);
  stop.cycling(o1);
  set.cel(o1,0);
  release.loop(o1);
  set(f71);
}
if(isset(f71)){
  reset(f71);
  set.loop(o1,4);
  end.of.loop(o1,f72);
}
if(isset(f72)){
  reset(f72);
  reverse.loop(o1,f73);
  set.cel(o2,0);
  reposition.to(o2,88,110);
  stop.motion(o2);
  set.view(o2,145);
  set.loop(o2,5);
  end.of.loop(o2,f74);
}
if(isset(f74)){
  reset(f74);
  print.at("\"You Little Twerp!  I've let you freeload here for far too long.\"",5,5,17);
  print.at("\"Now's time for you to earn your keep.\"",5,5,17);
  print.at("\"I'm having a birthday and I need you to get some things done.\"",5,5,17);
  print.at("\"You need to get a birthday cake, a happy birthday banner, print invitations, and get fireworks.\"",5,5,17);
  set.loop(o1,3);
  move.obj(o1,84,114,1,f73);
  start.cycling(o1);
  set(f151);

  set.cel(o6,0);
  reposition.to(o6,88,116);
  stop.motion(o6);
  set.view(o6,145);
  set.loop(o6,6);
  draw(o6);
  end.of.loop(o6,f152);
}
if(isset(f151)){
  set.loop(o1,3);
  move.obj(o1,84,111,1,f73);
  reset(f151);
}
if(isset(f152)){
  print.at("\"I know you won't be able to remember everthing, so here's a to-do list.\"",5,5,17);
  print.at("\"Don't fail me, or I'll make you pay!\"",5,5,17);
  stop.cycling(o1);
  reset(f152);
  set(f153);
}
if(isset(f153)){
  reset(f153);
  start.cycling(o1);
  release.loop(o1);
  set.loop(o1,1);
  move.obj(o1,0,118,1,f154);
}
if(isset(f154)){
if (isset(f154)) {
  v58++;
  if (v58 == 2) {
     sound(26,f105);
     start.cycling(o7);
     display(21,10," And so it begins...");
  }

  if (v58 == 72) {
     display(21,6,"                                ");
     display(21,8,"With something as simple");
     display(22,6,"   as a birthday party...  ");
  }

  if (v58 == 142) {
     display(21,8,"But as we'll soon see...");
     display(22,5,"                                ");
  }

  if (v58 == 222) {
     display(21,5,"                                ");
     display(21,5,"The adventure has just begun...");
  }




  if (v58 == 255) {
     v59++;
     reset(f154);
  //   print("here");
  //set(f14);
  //clear.lines(22,24,0);
  //stop.motion(o0);
  //reset(f33);
  //print("GO!");
  //set(f16);
  //restart.game();
  //new.room(6);
  }
  }
}

if(v59!=0){
  v59++;
  if(v59==1){
    print("hi");
  }
  if(v59==55){
    set(f14);
    clear.lines(22,24,0);
    stop.motion(o0);
    reset(f33);
    print("GO!");
    set(f16);
    restart.game();
    //new.room(6);
  }
}

if (controller(c40)) {
  set(f16);
  restart.game();
  reset(f50);
  reset(f51);
  reset(f52);
  reset(f53);
  reset(f54);
  reset(f55);
  reset(f56);
  reset(f57);
  reset(f58);
  reset(f59);
  reset(f60);
  reset(f61);
  reset(f62);
  reset(f63);
  reset(f64);
  reset(f65);
  reset(f66);
  reset(f67);
  reset(f68);
  reset(f69);
  reset(f70);
  reset(f71);
  reset(f72);
  reset(f73);
  reset(f74);
  reset(f75);
  reset(f76);
  reset(f77);
  reset(f78);
  reset(f79);
  reset(f80);
  reset(f81);
  reset(f82);
  reset(f83);
  reset(f84);
  reset(f85);
  reset(f86);
  reset(f87);
  reset(f88);
  reset(f89);
  reset(f90);
  reset(f91);
  reset(f92);
  reset(f93);
  reset(f94);
  reset(f95);
  reset(f96);
  reset(f97);
  reset(f98);
  reset(f99);
  reset(f100);
  reset(f101);
  reset(f102);
  reset(f103);
  reset(f104);
  reset(f105);
  reset(f106);
  reset(f107);
  reset(f108);
  reset(f109);
  reset(f110);
  reset(f111);
  reset(f112);
  reset(f113);
  reset(f114);
  reset(f115);
  reset(f116);
  reset(f117);
  reset(f118);
  reset(f119);
  reset(f120);
  reset(f121);
  reset(f122);
  reset(f123);
  reset(f124);
  reset(f125);
  reset(f126);
  reset(f127);
  reset(f128);
  reset(f129);
  reset(f130);
  reset(f131);
  reset(f132);
  reset(f133);
  reset(f134);
  reset(f135);
  reset(f136);
  reset(f137);
  reset(f138);
  reset(f139);
  reset(f140);
  reset(f141);
  reset(f142);
  reset(f143);
  reset(f144);
  reset(f145);
  reset(f146);
  reset(f147);
  reset(f148);
  reset(f149);
  reset(f150);
  reset(f151);
  reset(f152);
  reset(f153);
  reset(f154);
  reset(f155);
  reset(f156);
  reset(f157);
  reset(f158);
  reset(f159);
  reset(f160);
  reset(f161);
  reset(f162);
  reset(f163);
  reset(f164);
  reset(f165);
  reset(f166);
  reset(f167);
  reset(f168);
  reset(f169);
  reset(f170);
  reset(f171);
  reset(f172);
  reset(f173);
  reset(f174);
  reset(f175);
  reset(f176);
  reset(f177);
  reset(f178);
  reset(f179);
  reset(f180);
  reset(f181);
  reset(f182);
  reset(f183);
  reset(f184);
  reset(f185);
  reset(f186);
  reset(f187);
  reset(f188);
  reset(f189);
  reset(f190);
  reset(f191);
  reset(f192);
  reset(f193);
  reset(f194);
  reset(f195);
  reset(f196);
  reset(f197);
  reset(f198);
  reset(f199);
  reset(f200);
  reset(f201);
  reset(f202);
  reset(f203);
  reset(f204);
  reset(f205);
  reset(f206);
  reset(f207);
  reset(f208);
  reset(f209);
  reset(f210);
  reset(f211);
  reset(f212);
  reset(f213);
  reset(f214);
  reset(f215);
  reset(f216);
  reset(f217);
  reset(f218);
  reset(f219);
  reset(f220);
  reset(f221);
  reset(f222);
  reset(f223);
  reset(f224);
  reset(f225);
  reset(f226);
  reset(f227);
  reset(f228);
  reset(f229);
  reset(f230);
  reset(f231);
  reset(f232);
  reset(f233);
  reset(f234);
  reset(f235);
  reset(f236);
  reset(f237);
  reset(f238);
  reset(f239);
  reset(f240);
  reset(f241);
  reset(f242);
  reset(f243);
  reset(f244);
  reset(f245);
  reset(f246);
  reset(f247);
  reset(f248);
  reset(f249);
  reset(f250);
  reset(f251);
  reset(f252);
  reset(f253);
  reset(f254);
  reset(f255);
  stop.sound();
  set(f14);
  clear.lines(0,24,0);
  stop.motion(o0);
  reset(f33);
  print("GO!");
  v10 = 1;
  reset(f68);
  new.room(6);
}
return();