// ****************************************************************************
//
// Logic 46: Inside the Gates to the Castle
//
// ****************************************************************************

#include "defines.txt"

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



// Check what room the player came from and position them on the
// screen accordingly here, e.g:
/* if (prev_room_no == 44) {
     position(ego,44,72);
     ego_dir = 5;
 }*/
  load.view(1);
  load.view(2);
  if (is_zombie) {
      load.view(103);
      load.view(129);
      }

  animate.obj(o1); //guard
  load.view(107);
  set.view(o1,107);
  ignore.objs(o1);
  position(o1,91,152);
  draw(o1);

  load.sound(22);
  sound(22, sound_flag);

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


get.posn(o1, temp_x, temp_y);

distance(o1, ego, temp_x2);

if (temp_x>90) {
    universe=7;
    set.dir(o1,universe);
    }

if (temp_x<20) {
    universe=3;
    set.dir(o1,universe);
    }

if (temp_x2<=10) {

     print("You've been captured by the Dream King's guards and sent outside.");
     new.room(44);
     }

if (said("look")) {
  print("You are inside the gate to the castle.");
}

if ((said("look","ladder") ||
     said("climb","ladder"))) {
          print("It looks sturdy enough.  Just push up or down when you're centered on the ladder to climb.");
          }

if ((said("look","statue") ||
     said("push","statue") ||
     said("get","statue"))) {
          print("There are some creepy statues here, and as much as you'd like them out of the way, they are firmly cemented to the floor.");
          }

if (said("look","guard")) {
    print("He may be little, but he's fierce!");
    }

if (said("jump")) {
    print("This is a non-jumping game.");
    }

if (said("attack","guard")) {
    print("You're no fighter.");
    }



if (ego_edge_code == right_edge) {   // ego touching right edge of screen
  new.room(47);
}

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

if (sound_flag) {
    sound(22, sound_flag);
    }

call(100);

return();