boolean bcascTelescope() {
if (get_property("bcasc_telescope") != "true") return true;
if (checkStage("lair0")) return true;
record lair {
string loc;
string a;
string thing;
string section;
boolean autoadventure;
};
lair [string] telescope;
lair level;
string telescopetext;
telescope["catch a glimpse of a flaming katana"] = new lair("Ninja Snowmen", "a ", "frigid ninja stars", "trapper", true);
telescope["catch a glimpse of a translucent wing"] = new lair("Sleazy Back Alley", "a ", "spider web", "", true);
telescope["see a fancy-looking tophat"] = new lair("Guano Junction", "a ", "sonar-in-a-biscuit", "bats1", true);
telescope["see a flash of albumen"] = new lair("Black Forest", "", "black pepper", "macguffinprelim", false);
telescope["see a giant white ear"] = new lair("Hidden City", "a ", "pygmy blowgun", "macguffinhiddencity", false);
telescope["see a huge face made of Meat"] = new lair("Orc Chasm", "a ", "meat vortex", "chasm", true);
telescope["see a large cowboy hat"] = new lair("Giant's Castle", "a ", "chaos butterfly", "castle", true);
telescope["see a periscope"] = new lair("Fantasy Airship", "a ", "photoprotoneutron torpedo", "airship", true);
telescope["see a slimy eyestalk"] = new lair("Haunted Bathroom", "", "fancy bath salts", "manorbedroom", true);
telescope["see a strange shadow"] = new lair("Haunted Library", "an ", "inkwell", "manorbilliards", true);
telescope["see moonlight reflecting off of what appears to be ice"] = new lair("The Market", "an", "hair spray", "buyfromthemarket", false);
telescope["see part of a tall wooden frame"] = new lair("Harem", "a ", "disease", "knobking", true);
telescope["see some amber waves of grain"] = new lair("Desert (Ultrahydrated)", "a ", "bronzed locus", "macguffinpyramid", true);
telescope["see some long coattails"] = new lair("Outskirts of the Knob", "a ", "Knob Goblin firecracker", "", true);
telescope["see some pipes with steam shooting out of them"] = new lair("Middle Chamber", "", "powdered organs", "macguffinfinal", false);
telescope["see some sort of bronze figure holding a spatula"] = new lair("Haunted Kitchen", "", "leftovers of indeterminate origin", "pantry", true);
telescope["see the neck of a huge bass guitar"] = new lair("South of the Border", "a ", "mariachi G-string", "dinghy", true);
telescope["see what appears to be the North Pole"] = new lair("", "an ", "NG", "chasm", false);
telescope["see what looks like a writing desk"] = new lair("Giant's Castle", "a ", "plot hole", "castle", true);
telescope["see the tip of a baseball bat"] = new lair("Guano Junction", "a ", "baseball", "bats1", true);
telescope["see what seems to be a giant cuticle"] = new lair("Haunted Pantry", "a ", "razor-sharp can lid", "", true);
telescope["see a pair of horns"] = new lair("Moxie Vacation", "", "barbed-wire fence", "dinghy", false);
telescope["see a formidable stinger"] = new lair("Mysticality Vacation", "a ", "tropical orchid", "dinghy", false);
telescope["see a wooden beam"] = new lair("Muscle Vacation", "a ", "stick of dynamite", "dinghy", false);
telescope["an armchair"] = new lair("Hidden City", "", "pygmy pygment", "macguffinhiddencity", false);
telescope["a cowardly-looking man"] = new lair("Pandamonium Slums", "a ", "wussiness potion", "Pandamonium Slums", false);
telescope["a banana peel"] = new lair("Next to that Barrel with Something Burning in it", "", "gremlin juice", "", false);
telescope["a coiled viper"] = new lair("Black Forest", "an ", "adder bladder", "macguffinprelim", true);
telescope["a rose"] = new lair("Giant's Castle", "", "Angry Farmer candy", "castle", true);
telescope["a glum teenager"] = new lair("Giant's Castle", "a ", "thin black candle", "castle", true);
telescope["a hedgehog"] = new lair("Fantasy Airship", "", "super-spiky hair gel", "airship", true);
telescope["a raven"] = new lair("Black Forest", "", "Black No. 2", "macguffinprelim", true);
telescope["a smiling man smoking a pipe"] = new lair("Giant's Castle", "", "Mick's IcyVapoHotness Rub", "castle", true);
if (my_path() == "Bees Hate You") {
if (i_a("packet of orchid seeds") > 0 && i_a("tropical orchid") == 0) use(1, $item[packet of orchid seeds]) ;
if (i_a("honeypot") == 0 && i_a("handful of honey") >= 3) create(1, $item[honeypot]);
} else {
if (get_property("telescopeUpgrades") >= 1) {
if (get_property("lastTelescopeReset") != get_property("knownAscensions")) cli_execute("telescope");
for i from get_property("telescopeUpgrades").to_int() downto 1 {
telescopetext = get_property("telescope"+i);
level = telescope[telescopetext];
if ((get_property("bcasc_stage_"+level.section) == my_ascensions() || level.section == "") && (level.loc != "")) {
if (i_a(level.thing) == 0) {
if (level.autoadventure) {
bumAdv(to_location(level.loc), "", "items", "1 "+level.thing, "Getting "+level.a+level.thing+" for the NS tower because we have finished the stage '"+level.section+" in this script.");
} else {
print("BCC: Please get "+level.thing+" for telescope part "+i+" from "+level.section+" yourself", "purple");
return false;
}
} else {
print("BCC: You have at least one "+level.thing+" for telescope part "+i, "purple");
}
} else {
print("BCC: You haven't completed the stage '"+level.section+"' for the "+level.thing+" for telescope part "+i, "purple");
}
}
}
}
return true;
}