Game version: master
Start adding another chunk of heavy duty frame to your tank or forge a nodachi in a car in some city centre, get interrupted multiple times, waste all the action progress randomly at one of encounters.
It seems like smashing corpses screw up the previous task.
The issue is crafting/construction intermediate results are not visible to player and only being kept in memory.
It's even a bit weirder.
My understanding of the code is if you stand in the exact same place and repeat the task it'll resume the previous progress.
Fun issue: It'll even resume the previous progress _and complete the previous task_ if you're trying to do something different now (observed with vehicles).
Start vehicle construction task X, get interrupted, deal with interruption, position yourself to resume task, start _other_ vehicle task Y, task X get's completed. I cannot recall if materials for task X or Y get consumed 馃榿
If so, then it's definitely a bug.
This is the main reason I keep suggesting we create an entity that
represents in-progress crafting that spawns on the map. Then this entity
can be interacted with to either resume the craft or disassemble it.
The current code is working as intended, but it can only handle trivial
intertuptions, if you move or trigger certain other long actions it will
lose it's state.
I believe we should also have single class with common methods which can handle various types of crafting results: items, constructions, vehicles.
Somewhat related issue - #112.
Fixed by the new crafting state mechanics.
Most helpful comment
This is the main reason I keep suggesting we create an entity that
represents in-progress crafting that spawns on the map. Then this entity
can be interacted with to either resume the craft or disassemble it.
The current code is working as intended, but it can only handle trivial
intertuptions, if you move or trigger certain other long actions it will
lose it's state.