Shock Trooper
Member # 4180
written Monday, April 19 2004 17:58
Profile
#0
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:// 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;
-------------------- -spyderbytes
Posts: 200 |
Registered: Wednesday, March 31 2004 08:00