Jump to content

error in lockbox.txt script


Recommended Posts

The lockbox.txt script from the Sample Scripts folder of the 1.0.1 Editor (haven't checked the 1.0) is missing a semicolon at the end of line 59. (i_am_locked = 0)

 

For convenience, here's the entire script, corrected. Just replace the existing script with this:

 

Code:
// lockbox.txt - This is the script you can place on a chest, desk, etc.// to lock it. Then only a character with adequate Tool Use skill or// the correct key could open it.// Memory Cells - //   0 - Lock level. If left at 0, box is unlocked. Otherwise, the tool//     use needed to get it open. If this is set to a really high number (say, 200),//     it can't be unlocked by normal means.//   1 - Key needed. If left at 0, no special item helps unlock the box. Otherwise,//     if that party has this special item, the box automatically unlocks.//   2,3 - Coordinates for a stuff done flag. If these are 0 and 0, ignored. Otherwise,//     the stuff done flag is set to 1 when the door is unlocked. If the flag is non-zero,//     than when the party enters this zone, the door will become unlocked.beginterrainscript; variables;  short cur_terrain;  short i_am_locked = 0;    short choice;body;beginstate INIT_STATE;  if (get_memory_cell(0) > 0) {    i_am_locked = 1;    set_mechanism_difficulty(get_memory_cell(0));        if ((get_memory_cell(2) > 0) || (get_memory_cell(3) > 0)) {      if (get_sdf(get_memory_cell(2),get_memory_cell(3)) > 0)        i_am_locked = 0;      }    }      break;beginstate START_STATE;break;beginstate SEARCH_STATE;  if ((get_memory_cell(2) > 0) || (get_memory_cell(3) > 0)) {    if (get_sdf(get_memory_cell(2),get_memory_cell(3)) > 0)      i_am_locked = 0;    }  if (i_am_locked) {    block_entry(1);        if ((get_memory_cell(2) > 0) || (get_memory_cell(3) > 0)) {      if (get_sdf(get_memory_cell(2),get_memory_cell(3)) > 0)        i_am_locked = 0;      }        if (i_am_locked) {      print_str_color("Unlock Box: The container is locked.",2);      if (get_memory_cell(1) > 0) {        if (has_special_item(get_memory_cell(1)) > 0) {          print_str_color("  One of your keys fits. You unlock the box.",2);          i_am_locked = 0;          }          else print_str_color("  You don't have the key that fits it.",2);        }      }        if (i_am_locked) {      if (run_pick_lock(get_mechanism_difficulty()) == FALSE) {        print_str_color("  Nobody has high enough Tool Use skill to get it open.",2);        end();        }      i_am_locked = 0;      print_str_color("  You manage to pick the lock.",2);      if ((get_memory_cell(2) > 0) || (get_memory_cell(3) > 0))         award_party_xp(BASE_TRAP_XP,1 + 2 * get_mechanism_difficulty());      }          if (i_am_locked == 0) {      if ((get_memory_cell(2) > 0) || (get_memory_cell(3) > 0))        set_flag(get_memory_cell(2),get_memory_cell(3),1);      block_entry(0);      play_sound(-58);      }    }break;beginstate UNLOCK_SPELL_STATE;  if (i_am_locked)    print_str_color("Unlock Doors: The spell doesn't affect locked containers.",2);break;beginstate DISPEL_BARRIER_STATE;  if (i_am_locked) {    print_str_color("Dispel Barrier: The spell fails to affect a locked containers.",2);    }break;
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...