Bug - Fixed haunted gimlet takes a turn to craft

TQuilla

New member
... but the internal database doesn't know it (emphasis added):

void testme() {
print(creatable_turns($item[haunted orange], 1, false));
print(creatable_turns($item[haunted pizza], 1, false));
print(creatable_turns($item[haunted cherry pie], 1, false));
print(creatable_turns($item[haunted hell ramen], 1, false));
print(creatable_turns($item[haunted bottle of vodka], 1, false));
print(creatable_turns($item[haunted martini], 1, false));
print(creatable_turns($item[haunted eggnog], 1, false));
print(creatable_turns($item[haunted gimlet], 1, false));
print(creatable_turns($item[twice-haunted screwdriver], 1, false));
}

> testme

0
0
0
0
0
0
0
0
0
Returned: void

> make haunted gimlet

Verifying ingredients for haunted gimlet (1)...
Pulling items from storage...
Creating haunted gimlet (1)...
You acquire an item: haunted gimlet
Preference homebodylCharges changed from 11 to 10
Successfully created haunted gimlet (1)
 

heeheehee

Developer
Staff member
Hm. gimlet is listed as "fancy" in items.txt, but only as MIX in concoctions.txt (which is used in this determination here).

Aspirationally, I think it makes sense to remove MIX_FANCY / COOK_FANCY in favor of detecting this attribute from the ingredient list, but that's a bigger fix than is needed for this specific report.
 

heeheehee

Developer
Staff member
r26410 should fix the immediate issue. That said, creatable_turns will always return 0 if you have a bartender-in-the-box, regardless of whether you set free=false or not.

If free is true, this function will take into account free crafting from things like Rapid Prototyping or Thor's Pliers, but will always take into account the chef-in-the-box, bartender-in-the-box, and Innabox regardless of the boolean setting.
 
Top