forked from cdrock/TourGuide
-
Notifications
You must be signed in to change notification settings - Fork 0
/
iotm2023BOFA
57 lines (52 loc) · 3.96 KB
/
iotm2023BOFA
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
//Book of FActs
RegisterTaskGenerationFunction("IOTMBookofFactsGenerateTasks");
void IOTMBookofFactsGenerateTasks(ChecklistEntry [int] task_entries, ChecklistEntry [int] optional_task_entries, ChecklistEntry [int] future_task_entries)
{
// Exit out of the tile if they have neither skill and we don't actually think they should, either
if (!lookupSkill("Just the Facts").have_skill() && !__iotms_usable[$item[book of facts (dog-eared)]]) return;
monster habitat_monster = get_property_monster("_monsterHabitatsMonster");
int fights_left = clampi(get_property_int("_monsterHabitatsFightsLeft"), 0, 5);
string [int] description;
if (habitat_monster != $monster[none] && fights_left > 0)
{
description.listAppend("Neaaaar, faaaaaaar, wherever you spaaaaaaar, I believe that the heart does go onnnnn.");
description.listAppend("Will appear in any zone, so try to find a zone with few monsters.");
optional_task_entries.listAppend(ChecklistEntryMake("__monster " + habitat_monster, "", ChecklistSubentryMake("Fight " + pluralise(fights_left, "more non-native " + habitat_monster, "more non-native " + habitat_monster + "s"), "", description), -1));
}
int circadianAdv = (get_property_int("_circadianRhythmsAdventures"));
if ($effect[Recalling Circadian Rhythms].have_effect() > 0 && circadianAdv < 10) {
string [int] circadianDescription;
string circadianPhylum = (get_property("_circadianRhythmsPhylum"));
circadianDescription.listAppend("Fight " + (11 - circadianAdv) + " more " + circadianPhylum + "s to get RO advs.");
task_entries.listAppend(ChecklistEntryMake("__item cheap wind-up clock", "", ChecklistSubentryMake("Circadian Rhythms turngen", circadianDescription), -11).ChecklistEntrySetIDTag("Circadian Rhythms turngen"));
}
}
RegisterResourceGenerationFunction("IOTMBookofFactsGenerateResource");
void IOTMBookofFactsGenerateResource(ChecklistEntry [int] resource_entries)
{
if (!lookupSkill("Just the Facts").have_skill() && !__iotms_usable[$item[book of facts (dog-eared)]]) return;
string [int] description;
string [int] circadianDescription;
if (!get_property_boolean("_circadianRhythmsRecalled")) {
circadianDescription.listAppend("Can recall Circadian Rhythms to get +11 RO adv.");
circadianDescription.listAppend("Good targets: construct (glitch + snojo), dudes (witchess + NEP), horrors (shadow rift)");
resource_entries.listAppend(ChecklistEntryMake("__item cheap wind-up clock", "", ChecklistSubentryMake("Circadian Rhythms turngen", circadianDescription), 11).ChecklistEntrySetIDTag("Circadian Rhythms turngen"));
}
int habitatRecallsLeft = clampi(3 - get_property_int("_monsterHabitatsRecalled"), 0, 3);
if (get_property_int("_monsterHabitatsRecalled") < 3) {
description.listAppend("Good targets include monsters you want 6 of:");
description.listAppend("Fantasy bandit, eldritch tentacle, black crayon orc if the stars align");
resource_entries.listAppend(ChecklistEntryMake("__item hey deze map", "", ChecklistSubentryMake(pluralise(habitatRecallsLeft, "Habitat recall", "Habitat recalls"), "", description), 8).ChecklistEntrySetIDTag("habitat recalls"));
}
/* int BOFApocketwishes = clampi(3 - get_property_int("_BOFApocketwishes"), 0, 3);
if (get_property_int("BOFApocketwishes") < 3) {
description.listAppend("BOFA deez pocket wishes!");
resource_entries.listAppend(ChecklistEntryMake("__item pocket wish", "", ChecklistSubentryMake(pluralise(BOFApocketwishes, "extra pocket wish", "extra pocket wishes"), "", description), 8).ChecklistEntrySetIDTag("bofa wishes"));
}
int BOFAtatters = clampi(11 - get_property_int("_BOFAtatters"), 0, 11);
if (get_property_int("_BOFAtatters") < 11) {
description.listAppend("BOFA deez tatters!");
resource_entries.listAppend(ChecklistEntryMake("__item tattered scrap of paper", "", ChecklistSubentryMake(pluralise(BOFAtatters, "extra tatter", "extra tatters"), "", description), 8).ChecklistEntrySetIDTag("bofa tatters"));
}
*/
}