10 Commits

Author SHA1 Message Date
Aaron Suen
f1f26fee6c Oops, place_as_item is NOT a group 2023-05-05 19:24:26 -04:00
Aaron Suen
d872119fd7 Multiple press-craft fixes
- Fix door place-craft discovery not triggering due
  to wrong label name
- Fix many door witnesses not working because the door
  itself obstructs view of the action; "spread" the witness
  event to multiple positions and give the player credit
  if they can observe any part of the interacting nodes.
2022-03-29 09:06:15 -04:00
Aaron Suen
e3aef49a11 Make crafting work with non-node items
For example, making torches, assembling tools.
2022-03-29 08:28:18 -04:00
Aaron Suen
7921a78404 Fix door tote placement
When bypassing custom on_place logic and
skipping directly to "place as node" logic, also
allow nodes to customize their "place as node"
logic with another hook, which the tote can use
to ensure it's rebuilt when door-placed.
2021-12-30 12:49:24 -05:00
Aaron Suen
f5e966480b Fix delayed witness mis-ordering
Witness checks include data about the node in
place at the time that the witness even occurred,
so players are not awarded credit if the node they
see there was changed again afterwards.  A lot of
old witness code inserted the witness right
before the node was changed, since the node
change was done as a tail call, but this does not
work with delayed witnessing because the
delayed witness data would be tied to the old
node, not the replacement one.

Moving witness to after node setting should fix
a number of broken hints that should have been
delayed-witnessable, e.g. brick bonding.
2021-12-12 00:04:37 -05:00
Aaron Suen
4acedd01a3 Fix door press crafting recipes
The door could not handle recipes with duplicate
labels, which now includes the anvil recipes.

Switch to just identifying them by reference.
2021-11-30 21:13:41 -05:00
Aaron Suen
16641ff3e9 Fixed door pummel/dig handling
- Use catapult infrastructure instead
- Checks for storebox open sides
- All manual tests passed
2020-09-29 22:54:28 -04:00
Aaron Suen
15282c88a7 Initial working door digging/pummeling 2020-09-29 22:44:09 -04:00
Aaron Suen
a63b38f72a Press injecting into storeboxes 2020-09-29 21:28:34 -04:00
Aaron Suen
9a23e1f65f Separate press/catapult code 2020-09-29 21:13:31 -04:00