* Sign/plaque contextual screentips and file reorganizing (#73246)
## About The Pull Request
This PR adds contextual screen tips to signs and plaques based on the
held tool. Wrenches unfasten, and welders repair. Behaves the same with
plaques, but plaques also get a screentip for using a fountain pen on
them if they can be engraved. Also adds a tip to editable-item signs
with a pen out.
Tested to avoid issues with posters from cropping up, and it appears to
still behave correctly with paper posters, which are apparently a type
of sign. Go figure.

I've also reorganized the sign and plaque files to follow our more
standard object hierarchy of base type -> inherited procs -> subtype
specific procs, where these were interspersed throughout the file. I did
however leave the armor datums below the object, as they appear to
follow new convention.
## Why It's Good For The Game
Screentips avoid ambiguity and improve readability of construction. Easy
improvement.
Plus, improves consistency of the signs file layout-wise.
## Changelog
🆑
qol: Adds screentips to both signs and plaque construction/modification.
/🆑
* Sign/plaque contextual screentips and file reorganizing
---------
Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
Exempts horrible goose from tram hit counter (#72811)
Tram hitting the goose increments the hit counter, this fixes it so
mobs without clients don't increase the Tram's hit counter.
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
* Tram collision counter hazard lights (#72406)
## About The Pull Request
To the best of Nanotrasen's ability, valuable crew members are still
getting hit by the tram. To further encourage safe practices, a new
indicator with hazard lights has been installed outside medbay. It will
flash when tram collisions are occurring during times of lax safety for
extra visibility.

## Why It's Good For The Game
Go for the high score.
## Changelog
🆑 LT3
imageadd: Hazard lights added to the tram collision counter
/🆑
* Tram collision counter hazard lights
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Fixes a bunch of sidemap/plane cube issues (#72178)
## About The Pull Request
[fixes solor trackers offsetting wrong, and panels not using plane
offsets](8f461ab8ec)
[fixes cyborg hats offsetting phyiscally over their
head](5fd5b4240e)
[fixes reflector parts z fighting with their neighbors. if we physically
offset them, they'll have nothing to fight
with](088dcfe91f)
[fixes burgers layering wrong. uses a combo of pixel z to do the visual
offsets, and pixel_y to modify
layering](ec39e2bcd3)
[fixes signs, needed to use pixel_w instead of x, I think we may be
living under iso rules? I'm not totally sure I need to investigate
more](560d152fd7)
[fixes paperbin
rendering](e6c57ec00e)
## Why It's Good For The Game
Closes#72094Closes#72035
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Fixes Unwrenched Signs Having An Error Sign (#72027)
## About The Pull Request
I think this code was first made with the assumption that every sign
would be in the same DMI? Anyways, let's just ensure that it now works
in modern code by also passing in a valid icon file as well to the
non-descript "item sign".
## Why It's Good For The Game
Fixes#71920.
## Changelog
🆑
fix: When you unwrench a flag, you should now no longer see the big
flashy red ERROR sign.
/🆑
* Fixes Unwrenched Signs Having An Error Sign
Co-authored-by: san7890 <the@san7890.com>
* More sign subtypes (#71794)
## About The Pull Request
Adds new sign subtypes for use with in-game sign customization and the
object tree while mapping. This expansion does not add new icons, it
only adds subtypes for existing icons that are neglected.
An alternative telecomms sign subtype was given a `sign_change_name`
variable so that it could be customized in-game.
Erased the "alt" from a "yes smoking" sign variable since there is only
one type.
Variable sanitization in places where it would already inherit from the
parent object.
The following sign subtypes have been added:
- Chemistry (alt)
- Xenobio (alt)
- Botany (alt1 and alt2)
- Warning: Blast Doors
## Why It's Good For The Game
The icons are already present, but now the signs are available to
mappers without having to manually edit the `icon_state`.
Players have more options when editing signs in-game.
## Changelog
🆑
add: More options are now available when creating and editing signs.
/🆑
* More sign subtypes
Co-authored-by: SpaceSmithers <105393050+SpaceSmithers@users.noreply.github.com>
* Coffee Shop DLC - done right this time edition (#70991)
## About The Pull Request
this is a re-attempt at PR #70725 that was practically ready but was
ruined in the course of my hardships with git. Mistakes were made.
In this re-edition I also addressed a few suggestions from the comments
of the original pr. There is a shaker added in the meta station cafe and
the pill bottle is moved out of sight to the fridge (I still left it
cause it contained antidepressants for the especially overworked NT
employees). Additionally, the naming of `/cup/glass/coffee` has been
handled differently this time to minimize the need of changing the code
in multiple places.
Please refer to the original PR for all details concerning the content,
below I add just a rough line-out for the sake of coherency.

The content of the pr extends to:
- a new coffee bean driven coffeemaker
- syrup bottles
- a coffee condiment display box
- almost complete make-over of the meta station cafe
- adding the new coffeemaker in a few break rooms on delta and tram (2
machines per station)
## Why It's Good For The Game
Please refer to #70725
## Changelog
🆑
add: After a massive success of the Modello 3 series, Piccionaia Home
Appliances rolls out a completely new coffeemaker model and renovates
the meta station cafe for free in a promotional campaign!
add: Syrup bottles, condiment displays, and more, to make the spess
coffee experience even better
/🆑
Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: Tastyfish <crazychris32@ gmail.com>
* Coffee Shop DLC - done right this time edition
Co-authored-by: disappointedButNotSuprised <57324037+disappointedButNotSuprised@users.noreply.github.com>
Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: Tastyfish <crazychris32@ gmail.com>
* Adds a tram collision indicator board (#70812)
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->
## About The Pull Request
Based off the delamination counter, adds a tram hit counter sign. Every
time the tram hits someone, a signal is sent and the sign increments.
<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->

## Why It's Good For The Game
Showing how many people have been hit by the tram is an amusing
statistic to display.
<!-- Argue for the merits of your changes and how they benefit the game,
especially if they are controversial and/or far reaching. If you can't
actually explain WHY what you are doing will improve the game, then it
probably isn't good for the game in the first place. -->
## Changelog
<!-- If your PR modifies aspects of the game that can be concretely
observed by players or admins you should add a changelog. If your change
does NOT meet this description, remove this section. Be sure to properly
mark your PRs to prevent unnecessary GBP loss. You can read up on GBP
and it's effects on PRs in the tgstation guides for contributors. Please
note that maintainers freely reserve the right to remove and add tags
should they deem it appropriate. You can attempt to finagle the system
all you want, but it's best to shoot for clear communication right off
the bat. -->
🆑 LT3
add: A tram collision counter has been added, hopefully encouraging
employees to be more careful. Don't become a statistic!
/🆑
<!-- Both 🆑's are required for the changelog to work! You can put
your name to the right of the first 🆑 if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@ users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Adds a tram collision indicator board
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@ users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Sign with slime mutation map for xenobio (#70539)
* Sign with slime mutation map for xenobio
Co-authored-by: Andrew <mt.forspam@gmail.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
* Wall clocks are no longer described as powered by bluespace (#70198)
* Wall clocks are no longer described as powered by bluespace
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* "It has been 0 days since the last incident" sign (#70099)
Adds a fun sign to various places in engineering which tracks how many days (read: rounds) it has been since last time the engine delaminated.
* "It has been 0 days since the last incident" sign
Co-authored-by: Jacquerel <hnevard@gmail.com>
* Poster Pack 2 - Beyond Posters (#68235)
Adds a new selection of posters, poster-like objects, and wall decorations.
New entirely with this PR, shipping containers! These sprites were adapted from a base from TGMC, with brands and designs more fitting to our universe here on TG
Another new addition, flags! These draw upon Common Core lore, representing several major factions from the lorebase as a new mapping tool
Finally, there are two interactive wall objects- wall clocks, and calendars:
The wall clock shows both the "real time", represented as the Earth time, or Treaty Coordinated Standard Time, and the station time, represented as the local time, or Coalition Standard Time
The calendar gives the in-universe date, as well as any active holidays
Why It's Good For The Game
This adds a lot of fun aesthetic additions that I think will benefit our mapping team in creating new spaces and breathing new life into older ones. Additionally, it helps make our Common Core lore a bit more tangible to the playerbase, bringing it away from being "just on a wiki" and into the game proper.
A whole host of new posters have just become available.
For the architects among you: a number of new aesthetic options are available for mapping with. Let your creativity free!
* Poster Pack 2 - Beyond Posters
* add to dumb modular file
Co-authored-by: EOBGames <58124831+EOBGames@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
* Patches Rad_Area Directional Sign Helpers (#67945)
Patches Rad_Area Directional Sign
Hey there,
I was trying to do something much more ambitious, but that completely fell through. I did catch this little mistake that caused this to occur though:
This PR just makes it the correct pathing for the directional helpers.
* Patches Rad_Area Directional Sign Helpers
Co-authored-by: san7890 <the@san7890.com>
* DeltaStation's Recreation Area Rework, (LUNG CANCER EDITION) (#65588)
* DeltaStation's Recreation Area Rework, (LUNG CANCER EDITION)
Co-authored-by: san7890 <34697715+san7890@users.noreply.github.com>
* Modernizing Radiation -- TL;DR: Radiation is now a status effect healed by tox healing, and contamination is removed
* Fixing conflicts
* Makes it compile, yeet all the RAD armor from everywhere (thanks RegEx!)
* Removing more lingering rad armor (woo)
* Damnit powerarmors
* Bye bye rad collectors!
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Makes obj_integrity only updated through procs (#59474)
Having things updating integrity directly is just going to cause more problems down the line as more elements and components depend on being notified of integrity changes. It's an easy mistake to make so making it private should deal with the problem.
get_integrity() might be useful in the future but is mainly a side effect of making obj_integrity private as that also disallows reads.
* Makes obj_integrity private and only updated through procs
* Mirror!
Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
Co-authored-by: Funce <funce.973@gmail.com>
* Gives the monkey a gun (#58565)
This adds a rare-ish negative station trait that gives Pun Pun a weapon, fills their heart with anger, and bloodies up the location they spawn in. (Yes the weapon is even more rarely a gun)
A request for one of the weapons to be a sign meant that a random sign type was added here as well.
* Gives the monkey a gun
Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
* Tramstation: choo choo MORE MAP COMIN' THROUH
* Tramstation: Skyrat Edition (#4104)
* Decals Fixed
* Modularity? Whatever
* Fuck me if I need to make a second PR for this
* Blueshield + Cryo + Ian Fursuit
* Automatic changelog generation for PR #4104 [ci skip]
Co-authored-by: MMMiracles <lolaccount1@hotmail.com>
Co-authored-by: Cheshify <73589390+Cheshify@users.noreply.github.com>
* Opacity refactor (#52881)
Moves all opacity var manipulation to a proc which sends a signal.
light_blocker element for movable opaque atoms made, which tracks its movement and updates the affected turfs for proper lighting updates.
has_opaque_atom boolean replaced by the opacity_sources lazylist to keep track of the sources, and a directional_opacity which serves a similar function but also allows for future expansion with on-border opaque objects (not yet implemented).
Some opacity-related sight procs optimized as a result of this.
Some variables moved to the object's definition.
A define or two added into the mix for clarity.
Some code cleaning, like turning booleans into their defines.
One file renamed for clarity.
Changelog
cl
balance: Mechs no longer block sight. It's a non-trivial cost for the lighting system with little to no gain.
/cl
* Opacity refactor
Co-authored-by: Rohesie <rohesie@gmail.com>
* Merge pull request #52727 from MrMelbert/touchyfeely
Allows blind people to touch things to examine them
* Allows blind people to touch things to examine them
Co-authored-by: skoglol <33292112+kriskog@users.noreply.github.com>
* Renames a few variables. Also reorders fallback order again.
Renames item_state to inhand_icon_state
Renames mob_overlay_icon to worn_icon
Renames mob_overlay_state to worn_icon_state
worn_icon_state/mob_overlay_state now never gets used for inhands.
* Fixes some comments
* Fixes map issue
* Restart lints
* Properly resolves conflicts
* inhand icons
* Adding to the object, forgot to name one icon.
* Fixing some stuff, and creating inhand icons.
* Fixes a thing I broke.
* Fixes things (including ALL posters) that shouldn't be wrenchable being wrenchable. Plaques now transfer icon_state always.
* Picture frames, painting frames, and the monkey portrait are now wooden.
* Fountain pens can now be uncommonly found in maint.
* Uneditable sign types should not become editable when unwrenched.
* Move redefined var above newly defined var.
* Oh God I hope this works...
* It didn't work.
* Making things better.
* Making things even better.
* That made things worse.
* Sorting works! \o/
* Tidying some thing ups.
* Adding a custom plaque to the game.
* Some plaque tweaks.
* Makes plaques more durable than signs.
* Adds the stack crafting.
* Plaques take a little time to engrave, signs can't be changed instantly anymore.
* Comments, and renamed the global list to avoid confusion.
* Appends "sign" to every name, makes department signs not all caps, fixes some names and descriptions.
* Touching up plaque customization and display, removing one last all caps.
* Plaques can now be engraved in hand too.
* Newline.
* Update code/game/objects/structures/customplaque.dm
Co-Authored-By: Rohesie <rohesie@gmail.com>
* Update code/game/objects/structures/customplaque.dm
Co-Authored-By: Rohesie <rohesie@gmail.com>
* Mirroring some fixes from customplaque.dm
* A bunch of stuff.
* Unwrenched signs now lay horizontal.
* A lot more stuff, turned a negative variable into a positive.
* Fix chat inconsistency, remove deprecated and unused variable.
* Apparently buildable_sign is used elsewhere, whoops.
* Adding documentation to this, fixing a bool being 0 in another file.
* Don't know why this was here, sign dir is 100% irrelevant.
* Fixes some sound malarkey.
* Changes delays to be readable, removes unneeded return.
* Fixes these two early returns, it needed return TRUE at the end to work.
* Trying to fix a revert I messed up...
* Moving plaques to a directory, moving old sign plaque types into it. Map changes.
* Rename since I relocated this object entirely.
* Signs (and plaques) now properly place, and aren't visible through walls.
* Comment to help people in the future.
* Signs and plaques can be placed diagonally now.
* Removes duplicated code line.
* Blank signs now commonly spawn in maint, blank plaques uncommonly.
* Repairing signs & plaques with a welder is now good to go.
* Moves the GLOB, makes it start as an empty list.
* Update code/game/objects/structures/plaques/_plaques.dm
Co-Authored-By: Rohesie <rohesie@gmail.com>
* Gets rid of some oldcode.
* Apply suggestions from code review
Co-Authored-By: tralezab <40974010+tralezab@users.noreply.github.com>
* Simplifying dir switch to two if elses.
* Plaques take one sheet of gold to graft instead of five.
* Just making this wording in crafting a little clearer.
* They can be removed with wrenches, so I don't think this is proper.
* Makes variables descriptive.
* More descriptive variables, a little dmdoc, move things around to be next to like things.
* Remove a redundant definition.
* Apply suggestions from code review
Co-Authored-By: Rohesie <rohesie@gmail.com>
* Fixes mapping path, rename sign_backing to just sign.
Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>