changes:
Updated the documentation in human update_icons a bit.
Renamed overlays_standing to overlays_raw to better describe what it is.
Nuked more compound overlays.
Ghosts now use appearance copy to copy their old mob (Fixes#3135)
Layer defines are now space-aligned instead of tab-aligned.
Renamed SURGERY_LEVEL to SURGERY_LAYER like the other layer defines.
Fixed a potential bug where belt overlays may have not cleared in certain cases.
Mostly efficiency changes to human icons, little bit of code deduplication in head icons.
The human overlay list has been changed to accept /list so that multiple items can be added to a layer without having to resort to adding overlays to an intermediary object like an /image.
changes:
Human skin color (not tone) is now stored as a hex string instead of a 3-value list.
Human body hair color (resomi only) is now stored as a hex string instead of a 3-value list.
Body markings now play nice with the human icon cache (Fixes#3110)
Hair properly uses its cache now in all cases.
Merged head organs and human icon's implementations of hair icon gen into a proc on human.
Replaced the individual hair and beard caches with a shared composited hair cache used by both head icon and mob icons.
Lists in the human overlay list are now flattened out onto the human, allowing for multiple objects within a single human icon layer without using an intermediary image.
Removed some unused caching lists.
Damage overlays no longer utilize overlays on a blank image for drawing, instead using a list in the human overlay list.
Shoe overlays no longer utilize overlays on the shoe image, instead using a list in the human overlay list.
Surgery overlays no longer utilize overlays on a blank image, instead using a list in the human overlay list.
-overdoses should happen at the start of the processing, instead just at the end, giving more chance for people to react to them
-reduce the damage from overdoses related to medicine and made anti toxin have a normal overdose cap
Fixes#3108Fixes#2953Fixes#3091Fixes#3102
Fixes the syringe gun at medical being the wrong type
Place the bomb range a bit more away from the launching room, to avoid damage to it
Fix a bug with table grabs
Remove the extra ion rifle from the armory and the emp grenades, because, it seems those are really excessive, as seen in the HK event rounds
Changes made by loredev request.
changes:
Gutter has been renamed to "Freespeak" via. define. Define name is unchanged.
The description of Gutter has been replaced with one supplied by Jackboot.
Replaced remaining references to gutter in the code with the define.
-removes the plasma cutter from the ce and eva's suit, replacing it with a drill that fills the same purpose of the old plasma cutter
-adds more access restriction to the rigs as whole
-adds actuators to the terminator rig
-adds the cmo labcoats to the locker
-fixes #3097
-fixes #3098
changes:
Human-type hair (facial & head), eyes, and lips are now cached in SSicon_cache.
Underwear, undershirts, and socks are now cached in SSicon_cache.
Removed forced icon regen for update_body - if this actually did anything, the cache key for these icons needs to be made more detailed.
Organs now fully use SSoverlays to apply overlays (previously they partially used it, which may have caused bugs).
A couple of hair styles (bald, shaved) are pretty common, so this should remove/reduce the overhead of constantly regenerating their icons. Also means that BST's icons only really need to be generated once.
Removes a whole bunch of in world loops.
Reworks SSmachinery to hold two lists: all_machines and processing_machines. all_machines contains all machines 5ever. All of them. Literally. Forever. And ever. processing_machines only contains machines that process with the SSmachinery controller.
I checked most types at runtime on the live server to see whether they're in processing_machines or in all_machines, and did debug to ensure that most machinery ends up and stays in all_machines.
Includes a basic UT to make sure all mapped in machinery types remain within the all_machines list post-init.
Removed another typo by me by removing capialization in borg icons all together.
Fixed two borg sprites never getting their eyes due to typos.
Brought order to the robot.dmi file.
This was an incredibly easy fix that removed some stupid code I never should have had to fix. >:(
Hoists should be fixed when this is merged (and if this compiles, given my apparent coding skill).
Fixes#3051Fixes#3055Fixes#3057Fixes#3061
Fixes some food having no taste, also fixe cheese tasting like meat and other minor things like grammar.
Removes the ,45 magazine from the warden's locker, and give them a helmet to match his armor
Fixes a missing window at the main central level
Fixes a messed up hall at central command
Adds a small room for interview for the ccia in the odin, that was left out due to map issues
Adds the captain chair overlay that I forgot to add way back
changes:
Storage objects can now defer shrinkwrapping of contents until the next stackframe if things are being put in them without using fill() (such as autodrobes & BSTs)
SSair init properly yells at the admins when it's done.
Turns the mining flags into light emitting beacons. This is for added ambiance and to make them more useful in the not-at-all lit asteroid of Nümap. They can now be used as waypoint markers!
Preview: https://kama.skullnet.me/index.php/s/E9ko2agfntCCamA
Since I'm sure people could come up with reasons any preset should have a file manager, I added it to all of them. Could undo it later, but it goes well with, say, the Relay program that lets you save (and view!) logs, as well as CERTAIN ROBOTICISTS (and mechatronic engineers) that like to put their forms on the computer.
With the introduction of PR #3023 , 510 and lower are no longer supported. So I removed all compile time defines that were meant to allow for its support and bumped the compiler error guard.
Reposting from PR #2880 because of branches conflict
Finally did find a way to add blueprints to construction cyborg. Engineering cyborg modules are now more related to construct things inside of an area, while construction cyborg is now have all tools which might be needed to create new areas (+APC's, air alarms and such). A bucket and a matter decomplier to a janiborg.
Maint.drones did receive their wires limit being lowered from 30 to 15, wood and plastic dispensers capacity is multiplied by 2, and a standart engi module pack is now contains 45 wire length instead of 30
Ports Baystation12/Baystation12#12658
Changing how the calculation of armor works , instead of just being a check if it is protected fully, half or nothing. Making armor more reliable and less rng dependant.
Also, uranium meteors will irradiate nearby people when they explode.
changes:
Atom types can now define custom adjacency code for the smoothing system.
Walls now draw using the generic icon smoothing system.
Walls now pre-bake colors into their icons instead of doing it client-side with the color var.
Walls can now use the SSoverlay appearance cache; wall icon updates should be faster.
The "rusty" wall type now actually works.
Smoothing now uses mutable_appearance instead of image in some places.
Should be a bit easier on clients, though I haven't done profiling.
This PR breaks 510 compatibility.
Adds an unique type of meat to the cavern dweller, with hyperzine, giving people a reason to hunt them down like carp. Also, replaces the old sculping block sprite with one that shares the same color of our mineral walls.
Adds wielded sprites for the assault rifle, bullup carbine and the AM rifle. Empty sprites for some pistols and also fixes the decloner dealing no damage at all.
Hoists now release hoistees if they wriggle out somehow. Shouldn't happen anyway, but consistency_check should handle any odd shenanigans.
Silicons should be able to be hoisted. Buckling wasn't anchoring them, for some strange reason.
Fixed a bad message, where [user] was used instead of [usr].
You can't directly unbuckle people from hoist hooks.
Fixes an issue where the crew monitoring map would say it was unable to connect to TCOMs when there was no one with suit sensors on but it could still connect to TCOMs.
Reduces the damage taken from shocks, so people won't be husked by bumping into any airlock. Also adds the features of human/electrocute_act to the human proc, so, there is no need to call the carbon proc.
Adds hoists! Traverse Z-levels in style!
Use a hoist kit to deploy it on the same tile as you, in the direction you're facing.
Drag an object or mob to the hoist clamp in order to attach them to it.
Left click on a hoist to move up or down, depending on its current direction. This will also pull anything attached to the clamp along with it.
When the clamp is blocked and can't move up or down further, it will automatically switch direction.
To disconnect someone (or something) from a clamp, drag the clamp to the tile you want to put them on. It must be within one tile of both you and whatever is attached to the clamp.
When you're done using a hoist, you can collapse it back into a hoist kit with the Collapse Hoist verb, for easy transportation.
Hoist kits are not available on the map, so they have to be spawned in.
It is preferred to use hoist kits instead of directly spawning a hoist, where possible, when testing.
This PR contains bugfixes for:
Drones being able to transmit empty messages when talking in local drone chat ("dronesay")
A possible runtime in dronesay, caused by a null-reference in player_list, or a mob not having a client
Underwear and Socks selection in Character Setup breaking when switching genders.
Character loadout is now sanitized each time before it gets displayed. Invalid selections will be reset to "None", when changing the character's gender.
changes:
Body marking icons are now cached in SSicon_cache.
Renamed the body-hair cache (used only by Resomi) to make it more clear what it is.
Humans now use SSoverlay for applying overlays, though they force-compile instead of waiting for it to tick.
Fixed a bug where getFlatIcon() did not work properly with SSoverlay overlays.
Canes and concealed canes have the same size, also fixes and re-adds their old update icon proc. And also, probably fixes beepsky attacking the hos dog.
changes:
Parallax now actually moves properly on Move().
Parallax movement can now be toggled as a preference.
Merged all movable/Move() overrides for performance reasons.