Commit Graph

27 Commits

Author SHA1 Message Date
nemvar c15b2bb785 Fixes a bug that allowed the multiplication of materials. (#48584)
* No more double mats

* this isn't even a stack. I have been bambozeeled.

* Turns out the src. was important

* Alright this should work better.

* Alright this does work.
2020-01-05 19:44:27 -05:00
ArcaneMusic 4024a1aa91 Finally fixes duct stacks so they can be recycled. (#48201) 2019-12-11 15:34:50 -05:00
spookydonut 175439f63a Removes unreachable code (#48143)
About The Pull Request

As detected by SpaceManiac/SpacemanDMM#123
2019-12-10 20:52:13 +13:00
Tlaltecuhtli e63ebb94d9 adds plumbing machine that can grind/juice items (#47881)
cl
add: plumbing machine to grind/juice objects and put it on duct net
/cl
!! it doesnt move shit you need to add belts to feed it!!

sprite by arcanemagician
2019-12-05 09:56:35 +13:00
Rob Bailey eadbc14cde Chem Plumbing Interfaces V2 (#47983)
* chem interfaces v2

* reaction chamber cleanup

* rebuild + fixes

* Revert input style changes, add placeholder styles, reduce input width
2019-12-02 01:59:07 +02:00
spookydonut 2591ce17a6 Travis EOF newline detection v3 (#47539)
* scream

* aaa

* aaa

* new one
2019-11-04 19:16:50 -08:00
Rob Bailey 874ec7515a Plumbing Machines tgui-next (#47476)
* Chem Machines tgui-next

filter + acclimator rework

acclimator fix

splitter

splitter polish

more splitter polish

synthesizer

pill press

get rid of some unused imports

debug chem synth

rebuild

* format
2019-11-03 23:06:19 +01:00
Time-Green 8393e52a4e Optimizes duct reconnecting (#47434)
* optimizes duct connecting

* i hang myself on live television

* yippa ka yay
2019-10-30 16:31:17 -07:00
Rob Bailey c49367f895 More tgui-next uis (#47333)
* More uis

cargo express console

cargo express routes

ui scale change

delete clockwork slab

chem acclimator proper

codex gigas

gigas cleanup

crew console

crew monitor work

scrap crew console for a later pr

lint fixes + rebuild

get rid of some temp files

get rid of more temp files

much better codex gigas

remove unused file

* rebuild

* rebuild
2019-10-25 11:55:40 +02:00
Time-Green 66045b25d3 stops ducts from constantly runtiming on being placed down
credits to steamport for finding it, I completely and utterly forgot a pretty obvious mistake
2019-10-20 09:35:58 +02:00
Time-Green 338e072873 allows direct machine to machine construction
and fixes being able to have ducts running under machines
2019-10-19 13:45:30 +02:00
Time-Green 8a0649c63d fixes multilayer ducts being off-center 2019-10-18 15:34:18 +02:00
Time-Green c02fdb64f6 plumbing bugs and fixes 2019-10-18 14:59:03 +02:00
nemvar c62bfc5616 Travis warning begone (#47165)
* Travis begone

* Fixes other part of this
2019-10-17 20:41:10 -04:00
carlarctg cc999b2815 Twat carpets have reagents/ Oil is now considered Fuel (#46930)
* bra

* ME GRAMMAR GOOD?

* asbestos in your lung

* Merge branch 'master' into CARPET

* Merge branch 'master' into CARPET

* bruh

* Revert "bruh"

This reverts commit 186de868197ee5904ae2e72060736dc3a505f66d.

* Revert "Revert "bruh""

This reverts commit a855f2b838f02b852fb16f4a15123ca5a26b858f.

* orange man, reasonable

* Update code/modules/reagents/chemistry/reagents/other_reagents.dm

Co-Authored-By: Fel <fludd121@gmail.com>

* Update code/modules/reagents/chemistry/reagents/other_reagents.dm

Co-Authored-By: moo <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>

* cobby is a good amnitni

* e
2019-10-16 17:30:18 -04:00
Time-Green bca59b9a50 [READY] Plumbing: Endgame (#46759)
cl
add: Plumbing equipment is now available through the medical protolathe. It's under medical machinery boards
add: Add's a new chemistry area on metastation for chemical factories. It's located left of main surgery.
tweak: Chemistry has been turned into the Apothecary. It's basically normal chemistry, but Medical Doctors have acces aswell.
tweak: The smoke machine is now plumbing compatible. Put this knowledge to good use.
sprite: Thanks to @CRITAWAKETS for the plumbing RCD sprite!
/cl

Finally adds plumbing to the game!

Chemistry has been turned into the apothecary. For all intents and purposes it's old chem, but doctors have acces.

West of main surgery is now the new chemistry factory area.

I've also had to move stuff around alot, because you can't just add a big new room without having stuff in the way.

Currently only on metastation. I'm completely drained from adding it to meta alone and doing all maps right now will burn me out.
2019-10-17 00:10:30 +13:00
Aleksej Komarov 5521c8ebee [READY] tgui-next: Initial PR, speedy new Air Alarm interface. (#46764)
* Initial tgui-next commit

* Improve dev server, slight changes to layout.

* Add more components, fix dragging, finalize scrubber list

* Complete an air alarm interface.

* Multiple improvements based on feedback

- LabeledList now has a "buttons" prop, where you can put buttons.
- Improved Box and Flex components
- Whole UI is now dimmable if non-interactive
- Basic documentation of components (Box and Flex so far).
- Icon and Box now accept a "color" prop.
- Routing improved in "Layout" component, you can now specify whether an interface is scrollable.

* Less harsh dimming

* Redux, Toasts

- Fixed inconsistent backend updates with Redux.
- Added Toasts which are currently unused, but are functional.

* acclimator + ai airlock ui

* Add a progress bar component, implement resizing

* Fix a zero in title bar

* Add a linter to keep shit tidy, fix danger level mapping, add some more docs

* better ai door interact ui

* final ai airlock interface

* Fix issues with code, enforce hard 120 line length cap, automerge binaries

* Implement hot module reloading

* Fix progress bar, add color support

* Fix ProgressBar baseline alignment issues

* Remove unwanted padding on the bottom of the LabeledList.

* Component improvements

- Fix baseline issues with Button and ProgressBar components
- Box how inherits props from Box
- Atomic colors and Button colors are now auto-generated, all range of colors supported

* Chem Dispenser UI, animated numbers, more style fixes

* Add an IE8 polyfill

* Intermediate state of fixing IE8

* Lots of shimming and general misery

* Fully working old TGUI chainloader for IE8, more pipeline improvements

* Support title-less Sections

* Delete Yarn, use Lerna for workspace management

* Improve maths and animated numbers

* Fix loss of focus for scrollable content, activate buttons with keyboard

* Attempt to bust the cache, grab focus on keyboard presses too

* Fix hot module replacement by manually pulling replaced modules.

* backend logging

 un-nuke line endings

changes without insane line endings

* helper procs + href support

* slight optimization

* compiles

* Redux, Hotkeys, Kitchen Sink (for UI testing), Tabs component

* Push logs to backend, small kitchen sink changes, tab fixes

* Update component reference in README

* Small fixes

* Next bunch of IE8 fixes, PureComponent optimization for Inferno

* Delete old tgui html

* Log the event of loading the old tgui

* Enable tgui logging on server by default

* Final solution

* Extract routes into a separate file, fix ChemDispenser bug

- Chem dispenser was needlessly disabling transfer amount buttons

* Disable baseline alignment for vertical tabs

* Fix tabs and box units

- Tab content was not taking full page width
- Box can now accepts strings as units, which will be treated as raw style values.

* Fix tgui on Terry

* Fix sending all logs with an "error" flag

* Some macro UI component changes and improvements

- Refer to README.md diff to see what's new

* Tooltip component

* Add support for themes, nanotrasen logo is back

* Clockwork theme hotfix

* Slight adjustment to logo positioning

* Actually proper solution for logo positioning

* Fix color maps

* tgui-next thermomachine interface

* tgui-next canister interface

* Add icon_class_name proc to asset cache

* Lots of stuff backported from actioninja's repo

* Cleanup oopsies

* Cargo UI adjustments

* Nuke lodash

* Minor fixes and cleanup

- Remove local Inferno package in favor of upstream Inferno
- Fix "initial" prop on AnimatedNumber
- Force fancy=0 for IE8
- Click-through dimmer

* Add a bat file for dummies

* podlauncher interface fix

* Update README, assert code dominance

* Clarify usage of event handlers in Inferno

* Document LabeledList.Divider

* Fukken grammar

* fixes cellular emporium readapt button not working

* fixes incorrect action on button in atmos control interface

* remove unneeded data from airlock electronics ui

* Set +x mode on bin/tgui

* Fix filename cases

- They were untracked by git on windows

* Ignore package lock, make batch more robust

- package-lock.json is very random and unreliable as fuck. Yarn was better.

* Build tgui-next in travis

* bruh

- fixes tgui error reporting

* logging cleanup + always log
2019-10-15 17:20:37 +02:00
Time-Green 7aff176c9c Fixes floating point errors in plumbing (#46448)
* fixes floating point error and get_chem_id

* Fixes excessive floating point errors in plumbing

* unfucko wokie my disgusting attempt at conflict solving
2019-09-21 18:46:37 +02:00
kingofkosmos 8358169b8e New 'hear' span class (#46369)
* Reverts italics-span back to no color.

* Cleans up many extra spaces and indents.

* Adds 'hear' span class.

* Replaces all 'italics' used in heard messages with 'hear'.
2019-09-14 23:56:34 -07:00
Time-Green d81e1fab5c Plumbing Splitter, reaction chamber, destroyer and pill press (#46149)
* chemical splitters

* adds the pill press

also removes a debug variable from the splitter used for getting the perfect ui size

* chem disposer

* half a reaction chamber

i forgot to fucking merge upstream so I cant do anything without making ungodly conflicts

* wip

* more work on the reaction chamber

* fixes big brain maths

* removes one / because travis is throwing a shitfit
2019-09-02 23:52:29 -07:00
skoglol 8e6276d450 Adds UI dimension vars to machinery (#45959)
* Adds dimension var to machinery.

* cleaner

* newlines

* Cleanup
2019-08-22 00:33:10 -07:00
Time-Green b5159fbf31 [READY] Plumbing: Chemical Filters (#45473)
Adds chemical filters to the plumbing arsenal

They have one input, and three outputs. The left and right outputs can be given filters. It's basically the exact same as atmos filters but it has TWO filter sides.

It doesn't have an enormous list of chems to select from, you just enter a chem and it's added if it's valid.

cl
add: Adds chemical filters to plumbing
/cl
I was planning to do a bunch at once, but europe is on fire and im delirious

I also moved the existing unique plumbing datums into their own folder, wich was only chemical acclimators
2019-08-09 10:59:36 +12:00
nemvar e587b970da Adds parent calls to almost all tool_acts (#45582)
* Adds parent calls to almost all tool_acts

* actually compiles
2019-08-03 22:25:57 -07:00
Time-Green d4bfdd2a40 Plumbing: Chemical Acclimators (#45243)
* Finishes pump and fixes visual bug with disconnecting plumbing objects

* More bugfixes, finishes liquid pump

* Chemical synthesizer, wrench signal to handle unwrenching

* adds input and output pipes and changes ob into obj

* dmdocs all of plumbing through proper means

* adds sprites by meyhaza

also added wrenching interaction and fixed a dumb dumb with me fucking up an object path

* brightens the sprites a little by me

* removes big select from synthesizer ui

* update tgui.js thing

* unfuck pump color

apparently the replace all of spriting has downsides

* chemical acclimator

only heats and cools but i gotta commit and do other stuff

* finishes chemical acclimators

* uodates .dme

* updates .dme again

forgot plumbing component
2019-07-26 17:43:45 -07:00
Time-Green d18fe2101a [READY] Plumbing improvements and chemical synthesizers (#45185)
Removes dumb visual bugs.
Put the copy pasted wrench stuff for disabling and enabling the component, in the component using a new signal from default_unfasten_wrench.
Add a general plumbing machinery subtype. Right now it's mainly for cataloging.
Adds the chemical synthesizer. You can select a single chemical and an amount between 0 and 5. It will produce it every tick. Should be combined with other synthesizers to create meth factories.
Makes the liquid pump a fully functioning machine.

cl
add: The station comes one step closer to plumbing with the introduction of the chemical synthesizer.
sprite: sprites for the synthesizer, input and output commissioned by @Meyhazah
/cl

I wanted to do all the plumbing basic equipment at once, but stuff like plumbing heaters is gonna be ugly if I don't rework them completely and I don't wanna scare the maintainers away.

There is slight copypasting from the chem_dispenser and with the chem synthesizer, but having it be inhereted would be a worse clusterfuck IMO.
2019-07-23 21:22:16 +12:00
Time-Green fa52748e43 fix plumbing visuals 2019-07-09 08:58:34 +02:00
Time-Green ceeff661a0 [READY] Plumbing (#44833)
cl Time-Green
add: Adds plumbing pipes and some hidden plumbing related machines. They're not available in-game yet.
sprites: Geyser and geyser pump sprites created by Mey-Ha-Zah!
/cl
Adds the following objects:

    Fluid ducts . Like atmos pipe, but for reagents. They're smart and can be seperated by layer and color

    Geysers. They spawn on lavaland and can be harvested with liquid pumps or just beakers.

    Liquid pumps. For pumping geysers. They need to be on a wire node and connected to a duct network.

    Plumbable reagent dispenser subtype.

    New plumbing RPD specific RPD.

    Plungers. The reinforced plunger can be used for plunging geysers to activate them. They currently serve no other function and can't be worn as a hat yet.

They're all disabled and admin only.

Adds the following systems:

    Ductnet datum. They pretty much say "hey, we're connected"

    Plumbing component. You can turn any movable atom into a plumbable thing. Comes with overlays and everything. They're essential for everything that has input and outputs, except pipes. That means you can have machines connected to both atmospheric pipes and fluid ducts. They only connect with layer 3 ducts.

    Fluid subsystem that handles the processing on the plumbing machinery and other plumbing related stuff.

Basically atmospherics but with reagents. Reagents are pressurized and thus transferred instantly, to avoid those stupid leftovers in pipes no one likes. I am PRing it now because if I were to add a dozen or so associated machines, it would be too much of a pain to manage/review in one PR. It would also be a massive waste if people didn't even want it in the first place.

Also yes all of this works (as far as I know)

Things I plan to add in later PR's

    Layers / colors (maybe) done
    Machinery (Stuff like chemical processors, filters, special mixing chambers and factories)
    Make geysers more interesting, so chemists/atmostechs/cargotechs/assistants can go to lavaland and get some exotic stuff.
    Pipe fractures. Damaged pipes could do the cartooney water soaker beam coming out to shoot at people cause why the fuck not.

Code concerns:

    Connecting is handled through pipes only. Not sure if this is the best approach. This means plumbing devices cant directly connect to each other without pipes. I could add some exceptions to handle it. I could also take connecting away from pipes and make it a global proc, with alot of exceptions since it'd be handling both plumbing machinery and the ducts.

    Reagent transferring. Basically the transfer is instantaneous from A to B. I did this because stuff getting stuck in pipes could pose some serious mixing problems with chemistry, since it's alot more delicate than atmos. I could understand if people would want it to be like atmos. It wouldn't be difficult to change.

Also for testing I suggest you set the pipe_dispenser to category 3 to print fluid ducts. My tests were done with
/obj/structure/geyser
/obj/structure/reagent_dispensers/plumbed/storage
/obj/item/plunger/reinforced
/obj/machinery/power/liquid_pump
/obj/item/pipe_dispenser/plumbing
that and standard tools for setting things up
2019-07-09 11:58:02 +12:00