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
New Smartfridge Features and Spritework #6532
New Smartfridge Features and Spritework #6532
Conversation
- Updates default smartfridge icon to be empty state rather than full - Updates broken icon to look more damaged, and obscures contents with damage - Updates depowered icon to obscure contents state with darkness - Adds a wire panel cover to all smartfridge icons - Wire Panel transparent overlay updated to fit the new wire panel design - Adds a 'Contents Full' indicator light for when the smartfridge is at max cap. - Light blinks red when the smartfridge cannot hold any more. - Adds 5 capacity states to the smartfridge ranging from empty to full - New icon states help indicate at-a-glance the current capacity of the fridge.
- Smartfridge now indicates it's inventory quantity using its 5 new custom icons - Smartfridge makes a visual indication as well as an icon overlay when it's full - Smartfridge performs an animation when retrieving an item - Lowered the initial smartfridge max capacity to 1000 (can be upgraded)
- Adds a retrieval animation to the Disk Compartmentalizer using the new system and - Adjusts Max Number of Items for all of the other smartfridges so as to promote upgrading by Science
- Smartfridge cannot accept items when depowered or broken anymore - Smartfridge previously could not be broken, this has been fixed - You can now see broken state sprite for all smartfridges - Smartfridges have identical health and armor to vendors - Smartfridge now reacts to power changes by updating it's icon accordingly - Smartfridges can now emit slogans and 'sales pitches' like vendors - Groundwork laid for smartfridge wiring functionality
- Power wires, shock wires, speaker wires, and disabling wire! - Cutting the power wire turns off the smartfridge power. - Pulsing the disable wire prevents it from dispensing anything (though it can still accept items) - Pulsing the speaker wire disables pitches. - The shock wire is self-explanatory, works the same as vendors. - Makes the smartfridge need to have it's panel open to be unwrenched, now. - This makes the smartfridge deconstruction/wrenching mechanic work the same as most machines. - Fixes bug with the drying rack where it would react poorly to tools. - Adds a nice warning message if the user attempts to use the standard decon tools on a drying rack.
- Makes more sense this way, doctors get priority access to initial chems. - Allows smartfridge pitches to only include custom items made by the Chemist: - Crew-facing smartfridge will start empty, so they know if there's items in the fridge, they're worth checking.
- Organ smartfridge was given product_slogans - Organ smartfridge was given a hint to it's use in it's description - Organ smartfridge added to the Yogstation map in the surgery room - Increased pitch rate of all smartfridges
- Also adds surplus prosthetic crate to Yogsmeta and Minsky since they were lacking them
…idges from using advanced smartfridge features
Don't know what's going on with Travis there, but I think I fixed everything. This has all been pretty thoroughly tested. |
Travis decided to break on the last check, the PR should be good. |
Huh, I didn't know that. I thought that was only for vendors! Still good to hear. Great work on the organ port by the way! |
Smartfridge Improvements
This PR fixes a ton of bugs relating to smartfridges, making them work along the same standards as other machines and also adds a ton of extra features.
Reasoning
I got fed up with the fact that the Chemist would never realize when I was using the smartfridge. Every time I would go up to the smartfridge to retrieve an item, the Chemist wouldn't realize I was using it and would ask me if I needed anything. But I'd already have my item, he just wouldn't know because it was deposited directly into my hand.
Plus, the smartfridge was crap. It didn't work. It was deconstructed differently than other machines, there was no wiring whatsoever to pulse or cut, and the panel was broken (when you screwdrivered it, nothing would show up, but the smartfridge would become unusable). Among a whole host of other bugs.
Finally, nobody ever checks the chemistry smartfridge or Bar's drink showcase. Why? Because there's no way to tell if there's any new items in it. This PR fixes these issues and more.
New Features
Smartfridge Pitches/Slogans
Similarly to how vendors work, some smartfridges will now advertise their contents. This is what it looks like:
This will help people realize what the smartfridge has. It's primarily intended for the Chemist and the Bartender. As such, only the smart chemistry smartfridge and the drink showcase have this feature enabled by default. However all of the smartfridges have a set of slogans written for them they can use if there are no items in them, or sometimes at random. Try activating the speaker of a smartfridge to hear them! This feature can be toggled on and off by pulsing the speaker wire of the smartfridge.
Smartfridge Capacity Indication
Now you can see how many items the smartfridge has in it, at a glance! Different capacity levels (as a percentage of their max number of items) can be seen now with the icon of the smartfridge. When the smartfridge becomes full, a little red indicator light begins to blink showing that it cannot receive anymore items!
Wiring!
You may have noticed in the above gif that there is also now wiring for the smartfridge! A whole new set of wiring for the station blueprints allows you to do all sorts of things with the wiring, such as:
Wiring works on almost all smartfridge derivatives, including the disk compartmentalizer and new organ fridge! The only smartfridge machine it's disabled for is the drying rack because that thing's fucking weird.
Dispensing Animations!
Now when you remove an item, you can actually see it on the icon! This communicates to you and everyone around you that you removed an item from the machine. A lot of people don't notice that it spits it into their hand, so this will help with the confusion.
Bonus: Disk Compartmentalizer Dispensing Animation!
I figured the disk toaster deserved a little love, too. Now you can see the disk pop out of the compartmentalizer like a piece of toast!
The Smartfridge can now be broken!
You may not have realized it, but the smartfridge prior to this PR literally could not be broken! It would simply disappear. With my changes, it can be destroyed, utilizing the broken icon state it had. I also updated the broken icon state to look more broken:
Organ Storage Smartfridge
While I was working on this PR, @SomeguyManperson released his port of the TG organ damage system. Seeing as a new smartfridge was made available I went and added the Organ Storage Smartfridge to all of the maps surgery areas. All of the features I added work with the new organ smartfridge subtype, as you should expect. I went and added some product slogans for the organ storage smartfridge as well.
Assorted Bugfixes List:
Changelog
🆑
rscadd: Adds organ storage smartfridges to all maps
rscadd: Adds surplus prosthetic crate to Minsky/Delta
tweak: Adds wiring and capacity indication to smartfridges
tweak: Adds advertisement capability to smartfridges
bugfix: Smartfridges can now be broken/depowered properly
bugfix: Fixes drying rack not reacting to tools properly
tweak: Smartfridge deconstruction/unwrenching method standardized
imageadd: Adds dispensing animations to Smartfridge and Disk Compartmentalizer
spellcheck: fixed a few typos in robot.dm and apc.dm
tweak: Switches the two chemistry smartfridges around on Yogstation
/:cl: