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

[MIRROR] General maintenance for Lathes #1873

Merged
merged 1 commit into from
Feb 9, 2024
Merged

Conversation

Steals-The-PRs
Copy link
Collaborator

Mirrored on Nova: NovaSector/NovaSector#839
Original PR: tgstation/tgstation#81244

About The Pull Request

  1. Qol Stuff

    • Screentips & examines for screwdriver, crowbar acts, multiool & wirecutter Also for Alt click
    • Techfabs can now also use the Mouse drag functionality to set drop target for items
    • Lathe printing animation now plays on loop instead of just flicking once till printing is finished for more visual feedback
  2. Code Improvements

    • Merged start_making() with do_make_item(). That proc was like only 3 lines long and used only in 1 place so let's just move that code to ui_act()
    • Merged user_print_item_id() with ui_act(). Again was used only in 1 place so let's just move that code in to save some proc overhead
    • Sets processing_flags for autolathe to NONE cause we don't use process()
    • Autodocs vars such as hacked , shocked etc & procs
    • maxmult is now computed client side saving backend bandwidth, construction_time is removed from lathes which did not use it
    • Removed all usages of lathe taxes and their related vars, removed engineering lathe no tax from ice moon, replaced with normal engineering lathe
  3. Fixes

    • Lathe sheet insertion animations are now linked & work again for all material types inserted via remote silo/local storage, silver/titanium/plastic all play the same animation(that is protolathe_shiny overlay). Other materials have their own respective overlays
    • Fixes #81243. Calling update_static_data_for_all_viewers() is too expensive for the UI. We should instead use SStgui.update_uis(src) which will report the busy status to the UI more immediatly
    • Fixes #81236. Some problems with the params passed to the timer callback. It should now print the correct number of requested items
    • Fixes #81192. design.materials would runtime for custom material items as they were list of texts not materials. We have to pass our manually parsed list of materials for an specific item to ensure they are set & used correctly. Same fixes apply for techfabs as well

Changelog

🆑 SyncIt21
qol: adds screentips & examines for screwdriver & crowbar acts & alt click.
qol: techfabs can now use the mouse drop functionality to set drop target.
qol: lathe printing animation plays on loop while printing rather than flicking once for more visual feedback
fix: lathe sheet insertion animations are now linked & work again for all material types inserted via remote silo/local storage
fix: printing custom materials items from autolathe works again.
fix: printing multiple items from lathes will actually print that correct quantity of items requested.
fix: printing items the 2nd time around from lathes won't cause the UI to reload each time.
code: autodoc for some vars & procs, merges procs.
refactor: Optimized code for autolathe & techfabs in general. Report bugs on github
/:cl:

* General maintenance for Lathes (#81244)

## About The Pull Request
1. **Qol Stuff**
- Screentips & examines for screwdriver, crowbar acts, multiool &
wirecutter Also for Alt click
- Techfabs can now also use the Mouse drag functionality to set drop
target for items
- Lathe printing animation now plays on loop instead of just flicking
once till printing is finished for more visual feedback

2. **Code Improvements**
- Merged `start_making()` with `do_make_item()`. That proc was like only
3 lines long and used only in 1 place so let's just move that code to
`ui_act()`
- Merged `user_print_item_id()` with `ui_act()`. Again was used only in
1 place so let's just move that code in to save some proc overhead
- Sets `processing_flags` for autolathe to `NONE` cause we don't use
`process()`
    - Autodocs vars such as `hacked` , `shocked` etc & procs
- `maxmult` is now computed client side saving backend bandwidth,
`construction_time` is removed from lathes which did not use it
- Removed all usages of lathe taxes and their related vars, removed
engineering lathe no tax from ice moon, replaced with normal engineering
lathe

3. **Fixes**
- Lathe sheet insertion animations are now linked & work again for all
material types inserted via remote silo/local storage,
silver/titanium/plastic all play the same animation(that is
`protolathe_shiny` overlay). Other materials have their own respective
overlays
- Fixes #81243. Calling `update_static_data_for_all_viewers()` is too
expensive for the UI. We should instead use `SStgui.update_uis(src)`
which will report the `busy` status to the UI more immediatly
- Fixes #81236. Some problems with the params passed to the timer
callback. It should now print the correct number of requested items
- Fixes #81192. `design.materials` would runtime for custom material
items as they were list of texts not materials. We have to pass our
manually parsed list of materials for an specific item to ensure they
are set & used correctly. Same fixes apply for techfabs as well


## Changelog
:cl:
qol: adds screentips & examines for screwdriver & crowbar acts & alt
click.
qol: techfabs can now use the mouse drop functionality to set drop
target.
qol: lathe printing animation plays on loop while printing rather than
flicking once for more visual feedback
fix: lathe sheet insertion animations are now linked & work again for
all material types inserted via remote silo/local storage
fix: printing custom materials items from autolathe works again.
fix: printing multiple items from lathes will actually print that
correct quantity of items requested.
fix: printing items the 2nd time around from lathes won't cause the UI
to reload each time.
code: autodoc for some vars & procs, merges procs.
refactor: Optimized code for autolathe & techfabs in general. Report
bugs on github
/:cl:

---------

Co-authored-by: MrMelbert <[email protected]>
Co-authored-by: Ghom <[email protected]>

* General maintenance for Lathes

* should fix all the stuff

* yeah that one is on me

* fixes dme

* they gotta stop privating procs this shit sucks

* ok

* do not the register context

---------

Co-authored-by: SyncIt21 <[email protected]>
Co-authored-by: MrMelbert <[email protected]>
Co-authored-by: Ghom <[email protected]>
Co-authored-by: Paxilmaniac <[email protected]>
@Iajret Iajret merged commit 6812169 into master Feb 9, 2024
24 checks passed
@Iajret Iajret deleted the upstream-mirror-839 branch February 9, 2024 16:28
AnywayFarus added a commit that referenced this pull request Feb 9, 2024
Iajret pushed a commit that referenced this pull request Apr 9, 2024
…eight class related shenanigans (#1873)

* Change setting item weight class to a setter to patch some weight class related shenanigans (#82494)

## About The Pull Request

Fixes #81052 
Fixes #58008

Setting weight class of items is now done via `update_weight_class`.

I updated as many occurrences of manually setting `w_class` as I could
find but I may have missed some. Let me know if you know of any I
missed.

This is done to allow datums to react to an item having its weight class
changed.

Humans and atom storage are two such datums which now react to having an
item in its contents change weight class, to allow it to expel items
that grow to a weight class beyond what is normally allowed.

## Changelog

:cl: Melbert
fix: You can't fit items which are normally too large for a storage by
fitting it in the storage when it is small, then growing it to a larger
size.
/:cl:

* Change setting item weight class to a setter to patch some weight class related shenanigans

---------

Co-authored-by: MrMelbert <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants