Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adds grid forge rigs, chemistry sets, and chemlabs #2187

Merged
merged 2 commits into from
Dec 17, 2022

Conversation

chaosvolt
Copy link
Member

Summary

SUMMARY: Content "Allow wiring up electric chemistry sets, vehicle forge rigs, and vehicle chemlabs to grids"

Purpose of change

This adds a few more grid-placeable utilities, in particular making some over vehicle parts reusable for grid purposes in case you're stuck with those.

Dependent upon #2172 since this includes fun stuff like chemistry sets (which are multi-function), and also consistent with #2155.

Describe the solution

  1. Added grid forge rigs. Copies from regular forge to be a bit less chonky.
  2. Added grid chemistry sets and chemistry rigs, the latter copying from the former.
  3. Defined fake item for grid chemistry sets, uses the qualities of a full chemistry set while substituting for basic chemistry sets (since grid chemistry set furniture already includes fake oven which substitutes a hotplate, and the upgraded chemistry set also subs for a hotplate).
  4. Defined construction entries and construction groups for new furniture.
  5. Misc: Also converted grid welding rigs to use copy-from.

Describe alternatives you've considered

Procrastinating.

Testing

  1. Loaded the forge rig change in a compiled build, did this before implementing the chemistry set stuff since it won't be happy with having crafting_pseudo_item as an array until Kheir's PR is merged.
  2. Debugged in a grid forge rig, confirmed that copy-from correctly carries over crafting_pseudo_item.
  3. Debugged in a grid welding rig, confirmed that copy-from correctly carries over examine_action.
  4. Checked affected files for syntax and lint errors after implementing the stuff that uses crafting_pseudo_item arrays.

Additional context

Note to self: The existence of use_furn_fake_item means I can borrow a page from Cataclysm++ and give forge items a repair use action without vehicle forges being broken, something I've wanted to do for years (in fact technically it was added to can forges in Cata++ specifically because furniture forges didn't play nice with having use actions).

This will most likely need updating to fix merge conflicts once Kheir's PR is merged since it also touches grid welder rigs.

@github-actions github-actions bot added the JSON related to game datas in JSON format. label Nov 13, 2022
@Coolthulhu Coolthulhu self-assigned this Nov 15, 2022
@Coolthulhu
Copy link
Member

I'm pretty sure I'm getting it from this PR:

electric_grid_test.cpp:441: FAILED:
  REQUIRE( sm->get_furn( pos_in_sm.raw() ).id() == f_floor_lamp_on )
with expansion:
  string_id( "f_null" )
  ==
  string_id( "f_floor_lamp_on" )
with messages:
  pos_abs := (550,7,0)
  pos_abs_sm := (45,0,0)

@chaosvolt
Copy link
Member Author

#1204 is the one that messes with the grid code, this one just adds more grid furniture with psuedo tools.

@Coolthulhu Coolthulhu merged commit cfc5261 into cataclysmbnteam:upload Dec 17, 2022
@chaosvolt chaosvolt deleted the grid-chemlabs branch December 17, 2022 17:35
@KheirFerrum KheirFerrum mentioned this pull request Feb 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
JSON related to game datas in JSON format.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants