boolean buMax(string maxme, int maxMainstat) {
if (get_property("bcasc_dontTouchStuff") == "true") {
print("BCC: Not changing outfit as bcasc_dontTouchStuff is true", "purple");
return true;
}
print("BCC: Maximizing '"+maxme+"'", "blue");
if (my_path() == "Way of the Suprising Fist") maxme += " -weapon -offhand";
if (my_path() == "Avatar of Boris" && !contains_text(maxme, "outfit")) {
if (i_a("Boris's Helm") > 0) maxme += " +equip Boris's Helm";
else if (i_a("Boris's Helm (askew)") > 0) maxme += " +equip Boris's Helm (askew)";
}
if (!in_hardcore()) {
if (cli_execute("outfit bumcheekascend")) {}
if (contains_text(maxme, "+outfit") && contains_text(maxme, "+equip")) {
string [int] strs = split_string(maxme, "\\+");
foreach i in strs {
if (strs[i] != "") {
//print(strs[i], "green");
cli_execute(strs[i]);
}
}
return true;
}
if (contains_text(maxme, "+outfit")) {
cli_execute("outfit "+maxme.replace_string("+outfit ", ""));
return true;
}
if (contains_text(maxme, "pirate fledges")) {
cli_execute("equip acc3 pirate fledges");
return true;
}
if (contains_text(maxme, "mega gem")) {
cli_execute("equip acc3 mega gem");
cli_execute("equip acc2 talisman o' nam");
return true;
}
if (contains_text(maxme, "talisman")) {
cli_execute("equip acc3 talisman o' nam");
return true;
}
if (contains_text(maxme, "nuns")) {
cli_execute("outfit "+bcasc_warOutfit);
return true;
}
return true;
}
//We should sell these to avoid hassle with muscle classes.
foreach i in $items[antique helmet, antique shield, antique greaves, antique spear, drowsy sword] {
autosell(item_amount(i), i);
}
//Just a quick check for this.
if (contains_text(maxme, "continuum transfunctioner") && my_primestat() == $stat[Muscle]) {
cli_execute("maximize "+max_bees+" beeosity, mainstat "+maxme+(my_path() == "Way of the Surprising Fist" ? "" : " +melee -ml"));
return true;
}
if (contains_text(maxme, "knob goblin elite") && !(my_path() == "Way of the Surprising Fist")) {
if (my_basestat($stat[Muscle]) < 15) abort("You need 15 base muscle to equip the KGE outfit.");
if (my_basestat($stat[Moxie]) < 15) abort("You need 15 base moxie to equip the KGE outfit.");
cli_execute("maximize "+max_bees+" beeosity, mainstat "+maxme+" -ml");
return true;
}
if (maxme.contains_text("item") && have_path_familiar($familiar[Mad Hatrack])) {
maxme += " -equip spangly sombrero";
}
//The hilarious comedy prop is basically never the good choice.
if (available_amount($item[hilarious comedy prop]) > 0 && !contains_text(maxme, "hp regen")) {
maxme = maxme + " -equip hilarious comedy prop";
}
//Manual override for the nuns.
if (contains_text(maxme, "nuns")) {
cli_execute("maximize mainstat " + ((bcasc_AllowML) ? "" : "-10 ml") + " +outfit "+bcasc_warOutfit);
switch (my_primestat()) {
case $stat[Muscle] : cli_execute("maximize "+max_bees+" beeosity, " + (my_path() == "Zombie Slayer" ? "" : "0.5 mp regen max") + ", mainstat " + ((bcasc_AllowML) ? "" : "-10 ml") + (my_path() == "Way of the Surprising Fist" ? "" : " +melee ")+((anHero()) ? "+shield" : "")+" +outfit "+bcasc_warOutfit); break;
case $stat[Mysticality] : cli_execute("maximize "+max_bees+" beeosity, 0.5 mp regen max, mainstat " + ((bcasc_AllowML) ? "" : "-10 ml") + " +outfit "+bcasc_warOutfit); break;
case $stat[Moxie] : cli_execute("maximize "+max_bees+" beeosity, 0.5 mp regen max, mainstat " + ((bcasc_AllowML) ? "" : "-10 ml") + (my_path() == "Way of the Surprising Fist" ? "" : " -melee +outfit ")+bcasc_warOutfit); break;
}
string sns = prepSNS();
if (sns != "") {
equip(to_item(sns.replace_string("+equip ", "")));
}
return true;
}
//Basically, we ALWAYS want and -ml, for ALL classes. Otherwise we let an override happen.
switch (my_primestat()) {
case $stat[Muscle] : cli_execute("maximize "+max_bees+" beeosity, mainstat "+maxMainstat+" max, "+maxme+(my_path() == "Way of the Surprising Fist" ? "" : " +melee ")+((anHero()) ? "+shield" : "") + ((bcasc_AllowML) ? "" : " -10 ml") + " +muscle experience " + (my_path() == "Zombie Slayer" ? "" : "+0.5 mp regen min +0.5 mp regen max ")); break;
case $stat[Mysticality] : cli_execute("maximize "+max_bees+" beeosity, mainstat "+maxMainstat+" max, "+maxme+" +10spell damage +mysticality experience +5 mp regen min +5 mp regen max " + ((bcasc_AllowML) ? "" : "-10 ml")); break;
case $stat[Moxie] : cli_execute("maximize "+max_bees+" beeosity, mainstat "+maxMainstat+" max, "+maxme+(my_path() == "Way of the Surprising Fist" ? "" : " -melee ") + ((bcasc_AllowML) ? "" : "-10 ml") + " +moxie experience +0.5 mp regen min +0.5 mp regen max "); break;
}
return true;
}