mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-06-17 04:04:14 +01:00
60e3451960cfc1d40597dcafe7fc6165d6c012e3
87 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
bc2215667f |
Re-refactors batons / Refactors attack chain force modifiers (#90809)
Melee attack chain now has a list passed along with it, `attack_modifiers`, which you can stick force modifiers to change the resulting attack This is basically a soft implementation of damage packets until a more definitive pr, but one that only applies to item attack chain, and not unarmed attacks. This change was done to facilitate a baton refactor - batons no longer hack together their own attack chain, and are now integrated straight into the real attack chain. This refactor itself was done because batons don't send any attack signals, which has been annoying in the past (for swing combat). 🆑 Melbert refactor: Batons have been refactored again. Baton stuns now properly count as an attack, when before it was a nothing. Report any oddities, particularly in regards to harmbatonning vs normal batonning. refactor: The method of adjusting item damage mid-attack has been refactored - some affected items include the Nullblade and knives. Report any strange happenings with damage numbers. refactor: A few objects have been moved to the new interaction chain - records consoles, mawed crucible, alien weeds and space vines, hedges, restaurant portals, and some mobs - to name a few. fix: Spears only deal bonus damage against secure lockers, not all closet types (including crates) /🆑 |
||
|
|
11d82b7995 |
You can now interact with held mobs beside wearing them (feat: "minor" melee attack chain cleanup) (#90080)
People can now pet held mothroaches and pugs if they want to, or use items on them, hopefully without causing many issues. After all, it only took about a couple dozen lines of code to make... ...Oh, did the 527 files changed or the 850~ lines added/removed perhaps catch your eye? Made you wonder if I accidentally pushed the wrong branch? or skewed something up big time? Well, nuh uh. I just happen to be fed up with the melee attack chain still using stringized params instead of an array/list. It was frankly revolting to see how I'd have had to otherwise call `list2params` for what I'm trying to accomplish here, and make this PR another tessera to the immense stupidity of our attack chain procs calling `params2list` over and over and over instead of just using that one call instance from `ClickOn` as an argument. It's 2025, honey, wake up! I also tried to replace some of those single letter vars/args but there are just way too many of them. Improving old code. And I want to be able to pet mobroaches while holding them too. 🆑 qol: You can now interact with held mobs in more ways beside wearing them. /🆑 |
||
|
|
c3fe3d31ba |
You can cuff people to the tram rails #90293 (#3445)
## About The Pull Request https://github.com/tgstation/tgstation/pull/90293  Handcuffed people can be buckled to the tram rails. If the tram hits them then they will die badly. If they're not shockproof and are buckled to a powered rail, it will zap them repeatedly for a little bit of damage (but not a lot because you probably want them to die from something else). Unbuckling someone from a powered rail is also pretty dangerous. While doing this I fucked around a bit with how the "is the tram deadly" calculation worked because I didn't like how a deadly tram cuts your head off but does literally no other damage. Now it pulverises and beheads you. ## Why It's Good For The Game  --------- Co-authored-by: tgstation-ci[bot] <179393467+tgstation-ci[bot]@users.noreply.github.com> |
||
|
|
b6b8306fda | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-25-02a | ||
|
|
4c2a76ede3 |
Fix a large number of typos (#89254)
Fixes a very large number of typos. A few of these fixes also extend to variable names, but only the really egregious ones like "concious". |
||
|
|
7725c7d4b7 |
Updates the list of station commission plaques (#88233)
## About The Pull Request Commission plaques were outdated, so they needed updating. This adds Wawa's merge date, which was not present, moves Northstar's to the removed station list, and adds one for Nebulastation. I also alphabetized the current map list to be in line with the removed list. No map edits were made. ## Why It's Good For The Game Just keeping things up to date ## Changelog 🆑 spellcheck: Station commission plaques (the gold ones that have the date they were added) have been updated, adding Nebula's, fixing Wawa's, and decommissioning Northstar's. /🆑 |
||
|
|
3c5b1d8b68 |
Puts blood back on floor plane, puts runes on floor plane (removes shadows from blood and runes) (#87013)
## About The Pull Request Basically goes through and puts some flat objects onto the floor plane. Also puts blood back on the floor plane, since it seems like it used to be but may have been moved mistakenly questionmark. This means they will not be affected by Ambient Occlusion:  ## Why It's Good For The Game A lot of these "flat" things look really out of place because they're secretly "floating" due to being on the wrong plane ## Changelog 🆑 Melbert qol: Runes, crayons, and similar decals no longer have shadows fix: Blood and similar "mess" decals no longer have shadows (again) /🆑 |
||
|
|
e59d8ba64b | Merge commit '179a607a90ad7ec62bdaff4e6fe72af60ee56442' of https://github.com/tgstation/tgstation into upstream-24-10b | ||
|
|
b3245078c8 |
Puts blood back on floor plane, puts runes on floor plane (removes shadows from blood and runes) (#87013)
## About The Pull Request Basically goes through and puts some flat objects onto the floor plane. Also puts blood back on the floor plane, since it seems like it used to be but may have been moved mistakenly questionmark. This means they will not be affected by Ambient Occlusion:  ## Why It's Good For The Game A lot of these "flat" things look really out of place because they're secretly "floating" due to being on the wrong plane ## Changelog 🆑 Melbert qol: Runes, crayons, and similar decals no longer have shadows fix: Blood and similar "mess" decals no longer have shadows (again) /🆑 |
||
|
|
a4328ae1f9 |
Audits tgui_input_text() for length issues (#86741)
Fixes #86784
## About The Pull Request
Although some of the issues found were a direct result from #86692
(
|
||
|
|
9a9b428b61 |
Wallening Revert [MDB Ignore][IDB Ignore] (#86161)
This PR is reverting the wallening by reverting everything up to
|
||
|
|
6f0dd84a3d |
Splits wall layer into three (#85901)
## About The Pull Request Turns `ON_WALL_LAYER` into `FLAT_ON_WALL_LAYER` `ON_WALL_LAYER` `HIGH_ON_WALL_LAYER` Where `FLAT_ON_WALL_LAYER` is meant for lower-priority wall mounts like signs and posters `ON_WALL_LAYER` is default and `HIGH_ON_WALL_LAYER` is for stuff that "hang over" the wall Also makes the incident display actually wall mounted ## Why It's Good For The Game I noticed this while doing mapping and I thought it was a really cool effect  Unfortunately this effect was a coinflip because all wall mounts were on the same layer. Sometimes it'd look like this  So this allows us to do this kinda stuff consistently. Also has the added effect of letting us "de-prioritize" stuff like posters, so we can hang stuff *over* posters and signs, which could be useful. ## Changelog 🆑 Melbert qol: Some wall mounts will now consistently layer over others (light switches and cameras, notably, should always layer above other mounts like signs and status displays) /🆑 |
||
|
|
4b4e9dff1d |
Wallening [IDB IGNORE] [MDB IGNORE] (#85491)
## What's going on here Kept you waitin huh! This pr resprites most all walls, windows and other "wall adjacent" things to a 3/4th perspective, technical term is "tall" walls (we are very smart). If you're trying to understand the technical details here, much of the "rendering tech" is built off the idea of split-vis. Basically, split a sprite up and render it on adjacent turfs, to prevent seeing "through" walls/doors, and to support seeing "edges" without actually seeing the atom itself. Most of the rest of it is pipelining done to accommodate how icons are cut. ## Path To Merge Almost* all sprites and code is done at this point. There are some things missing both on and off the bounty list, but that will be the case forever unless we force upstream (you guys) to stop adding new shit that doesn't fit the style. I plan on accepting and integrating prs to the current working repo <https://github.com/wall-nerds/wallening> up until a merge, to make contribution simpler and allow things like bounties to close out more easily This pr is quite bulky, even stripping away map changes it's maybe 7000 LOC (We have a few maps that were modified with UpdatePaths, I am also tentatively pring our test map, for future use.) This may inhibit proper review, although that is part of why I am willing to make it despite my perfectionism. Apologies in advance. Due to the perspective shift, a lot of mapping work is going to need to be done at some point. This comes in varying levels of priority. Many wallmounts are offset by hand, some are stuck in the wall/basically cannot be placed on the east/west/north edges of walls (posters), some just don't look great good in their current position. Tests are currently a minor bit yorked, I thought it was more important to get this up then to clean them fully. ## What does it look like?       ## Credits <details> <summary>Historical Mumbojumbo</summary> I am gonna do my best to document how this project came to be. I am operating off third party info and half remembered details, so if I'm wrong please yell at me. This project started sometime in late 2020, as a product of Rohesie trying to integrate and make easier work from Mojave Sun (A recently defunct fallout server) with /tg/. Mojave Sun (Apparently this was LITERALLY JUST infrared baron, that man is insane) was working with tall walls, IE walls that are 48px tall instead of the normal 32. This was I THINK done based off a technical prototype from aao7 proving A it was possible and B it didn't look like dogwater. This alongside oranges begging the art team for 3/4th walls (he meant TGMC style) lead to Rohesie bringing on contributors from general /tg/, including actionninja who would eventually take over as technical lead and Kryson, who would define /tg/'s version of the artstyle. Much of the formative aspects of this project are their work. The project was coming along pretty well for a few months, but ran into serious technical issues with `SIDE_MAP`, a byond map_format that allows for simpler 3/4th rendering. Due to BULLSHIT I will not detail here, the map format caused issues both at random with flickering and heavily with multiz. Concurrent with this, action stepped down after hacking out the rendering tech and starting work on an icon cutter that would allow for simpler icon generation, leaving ninjanomnom to manage the project. Some time passed, and the project stalled out due to the technical issues. Eventually I built a test case for the issues we had with `SIDE_MAP` and convinced lummox jr (byond's developer) to explain how the fuckin thing actually worked. This understanding made the project theoretically possible, but did not resolve the problems with multi-z. Resolving those required a full rework of how rendering like, worked. I (alongside tattle) took over project development from ninjanomnom at this time, and started work on Plane Cube (#69115), which when finished would finally make the project technically feasible. The time between then and now has been slow, progressive work. Many many artists and technical folks have dumped their time into this (as you can see from the credits). I will get into this more below but I would like to explicitly thank (in no particular order) tattle, draco, arcanemusic, actionninja, imaginos, viro and kylerace for keeping the project alive in this time period. I would have curled up into a ball and died if I had to do this all myself, your help has been indispensable. </details> <details> <summary>Detailed Credits</summary> Deep apologies if I have forgotten someone (I am sure I have, if someone is you please contact me). I've done my best to collate from the git log/my memory. Thanks to (In no particular order): Raccoff: Being funny to bully, creating threshold decals for airlocks aa07: (I think) inspiring the project ActionNinja: Laying the technical rock we build off, supporting me despite byond trying to kill him, building the icon cutter that makes this possible ArcaneMusic: Artistic and technical work spanning from the project's start to literally today, being a constant of motivation and positivity. I can't list all the stuff he's done Armhulen: Key rendering work (he's the reason thindows render right), an upbeat personality and a kick in the ass. Love you arm Azlan: Damn cool sprites, consistently Ben10Omintrix: You know ben showed up just to make basic mobs work, he's just fuckin like that man BigBimmer: A large amount of bounty work, alongside just like, throwing shit around. An absolute joy to work with Capsandi: Plaques, blastdoors, artistic work early on CapybaraExtravagante: Rendering work on wall frames Draco: SO MUCH STUFF. Much of the spritework done over the past two years is his, constantly engaged and will take on anything. I would have given up if not for you Floyd: Early rendering work, so early I don't even know the details. Enjoy freedom brother Imaginos16: A guiding hand through the middle years, handled much of the sprite review and contribution for a good bit there Iamgoofball: A dedication to detail and aesthetic goals, spends a lot of effort dissecting feedback with a focus on making things as good as they can be at the jump Infrared: Part of the impetus for the project, made all the xenomorph stuff in the MS style Jacquerel: A bunch of little upkeep/technical things, has done so much sprite gruntwork (WHY ARE THERE SO MANY PAINTING TYPES) Justice12354: Solved a bunch of error sprites (and worked out how to actually make prs to the project) Thanks bro! Kryson: Built the artstyle of the project, carrying on for years even when it was technically dying, only stopping to casually beat cancer. So much of our style and art is Kryson KylerAce: Handled annoying technical stuff for me, built window frame logic and fully got rid of grilles. LemonInTheDark: Rendering dirtywork, project management and just so much fucking time in dreammaker editing sprites Meyhazah: Table buttons, brass windows and alll the old style doors Mothblocks: Has provided constant support, gave me a deadline and motivation, erased worries about "it not being done", gave just SO much money to fill in the critical holes in sprites. Thanks moth MTandi: Contributed art despite his own blackjack and hookers club opening right down the road, I'm sorry I rolled over some of your sprites man I wish we had finished earlier Ninjanomnomnom: Consulted on gags issues, kept things alive through some truly shit times oranges: This is his fault Rohesie: Organized the effort, did much of the initial like, proof of concept stuff. I hope you're doin well whatever you're up to. san7890: Consulting on mapper UX/design problems, being my pet mapper Senefi: Offsetting items with a focus on detail/the more unused canidates SimplyLogan: Detailed map work and mapper feedback, personally very kind even if we end up talking past each other sometimes. Thank you! SpaceSmithers: Just like, random mapping support out of nowhere, and bein a straight up cool dude Tattle: A bunch of misc project management stuff, organizing the discord, managing the test server, dealing with all the mapping bullshit for me, being my backup in case of bus. I know you think you didn't do much but your presence and work have been a great help Thunder12345: Came out of nowhere and just so much of the random bounties, I'm kind of upset about how much we paid him Time-Green: I hooked him in by fucking with stuff he made and now he's just doin shit, thanks for helping out man! Twaticus: Provided artistic feedback and authority for my poor feeble coder brain, believed in the project for YEARS, was a constant source of ❤️ and affirmation unit0016: I have no god damn idea who she is, popped out of nowhere on the github one day and dealt with a bunch of annoying rendering/refactoring. Godspeed random furry thank you for all your effort and issue reports Viro: A bunch of detailed spriting moving towards 3/4ths, both on and off the wallening fork. If anyone believed this project would be done, it was viro Wallem: Artistic review and consultation, was my go-to guy for a long time when the other two spritetainers were inactive Waltermeldon: Cracked out a bunch of rendering work, he's the reason windows look like not dogwater. Alongside floyd and action spent a TON of time speaking to lummox/unearthing how byond rendering worked trying to make this thing happen ZephyrTFA: Added directional airlock helpers, dealt with a big fuckin bugaboo that was living in my brain like it was nothing. Love you brother And finally: The Mojave Sun development team. They provided a testbed for the idea, committed hundreds and hundreds of hours to the artstyle, and were a large reason we caught issues early enough to meaningfully deal with them. Your work is a testament to what longterm effort and deep detailed care produce. I hope you're doing well whatever you're up to. Go out with a bang! </details> ## Changelog 🆑 Raccoff, aa07, ActionNinja, ArcaneMusic, Armhulen, Azlan, Ben10Omintrix, BigBimmer, Capsandi, CapybaraExtravagante, Draco, Floyd, Iamgoofball, Imaginos16, Infrared, Jacquerel, Justice12354, Kryson, KylerAce, LemonInTheDark, Meyhazah, Mothblocks, MTandi, Ninjanomnom, oranges, Rohesie, Runi-c, san7890, Senefi, SimplyLogan, SomeAngryMiner, SpaceSmithers, Tattle, Thunder12345, Time-Green, Twaticus, unit0016, Viro, Waltermeldon, ZephyrTFA with thanks to the Mojave Sun team! add: Resprites or offsets almost all "tall" objects in the game to match a 3/4ths perspective add: Bunch of rendering mumbo jumbo to make said 3/4ths perspective work /🆑 --------- Co-authored-by: Jacquerel <hnevard@gmail.com> Co-authored-by: san7890 <the@san7890.com> Co-authored-by: = <stewartareid@outlook.com> Co-authored-by: Capsandi <dansullycc@gmail.com> Co-authored-by: ArcaneMusic <hero12290@aol.com> Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com> Co-authored-by: SomeAngryMiner <53237389+SomeAngryMiner@users.noreply.github.com> Co-authored-by: KylerAce <kylerlumpkin1@gmail.com> Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com> Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com> Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com> Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com> Co-authored-by: Runi-c <5150427+Runi-c@users.noreply.github.com> Co-authored-by: Roryl-c <5150427+Roryl-c@users.noreply.github.com> Co-authored-by: tattle <article.disaster@gmail.com> Co-authored-by: Senefi <20830349+Peliex@users.noreply.github.com> Co-authored-by: Justice <42555530+Justice12354@users.noreply.github.com> Co-authored-by: BluBerry016 <50649185+unit0016@users.noreply.github.com> Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: SimplyLogan <47579821+loganuk@users.noreply.github.com> Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com> Co-authored-by: Rob Bailey <github@criticalaction.net> Co-authored-by: MMMiracles <lolaccount1@hotmail.com> |
||
|
|
e96f29d4a5 |
Merge remote-tracking branch 'Skyrat-SS13/master' into upstream-2024-06-16
# Conflicts: # _maps/_basemap.dm # _maps/map_files/IceBoxStation/IceBoxStation.dmm # _maps/skyrat/automapper/automapper_config.toml # code/__DEFINES/surgery.dm # code/datums/weather/weather_types/radiation_storm.dm # code/modules/antagonists/changeling/changeling.dm # code/modules/clothing/neck/_neck.dm # code/modules/events/_event.dm # code/modules/jobs/job_types/_job.dm # code/modules/mining/equipment/kinetic_crusher.dm # code/modules/mob/living/basic/vermin/frog.dm # modular_skyrat/modules/borgs/code/robot_upgrade.dm |
||
|
|
9efdb4f8bb |
[MIRROR] Wawastation (#27992)
* Wawastation * Update _basemap.dm * Update gateway.dm --------- Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com> |
||
|
|
b540aaf8ab |
[MIRROR] Afterattack is dead, long live Afterattack (#28128)
* Afterattack is dead, long live Afterattack * wew * fixes --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com> |
||
|
|
ff6b41aa07 |
Afterattack is dead, long live Afterattack (#83818)
## About The Pull Request - Afterattack is a very simple proc now: All it does is this, and all it's used for is for having a convenient place to put effects an item does after a successful attack (IE, the attack was not blocked)  - An overwhelming majority of afterattack implementations have been moved to `interact_with_atom` or the new `ranged_interact_with_atom` I have manually tested many of the refactored procs but there was 200+ so it's kinda hard ## Why It's Good For The Game Afterattack is one of the worst parts of the attack chain, as it simultaneously serves as a way of doing random interactions NOT AT ALL related to attacks (despite the name) while ALSO serving as the defacto way to do a ranged interaction with an item This means careless coders (most of them) may throw stuff in afterattack without realizing how wide reaching it is, which causes bugs. By making two well defined, separate procs for handing adjacent vs ranged interactions, it becomes WAY WAY WAY more easy to develop for. If you want to do something when you click on something else and you're adjacent, use `interact_with_atom` If you want to do something when you click on something else and you're not adjacent, use 'ranged_interact_with_atom` This does result in some instances of boilerplate as shown here:  But I think it's acceptable, feel free to oppose if you don't I'm sure we can think of another solution ~~Additionally it makes it easier to implement swing combat. That's a bonus I guess~~ ## Changelog 🆑 Melbert refactor: Over 200 item interactions have been refactored to use a newer, easier-to-use system. Report any oddities with using items on other objects you may see (such as surgery, reagent containers like cups and spray bottles, or construction devices), especially using something at range (such as guns or chisels) refactor: Item-On-Modsuit interactions have changed slightly. While on combat mode, you will attempt to "use" the item on the suit instead of inserting it into the suit's storage. This means being on combat mode while the suit's panel is open will block you from inserting items entirely via click (but other methods such as hotkey, clicking on the storage boxes, and mousedrop will still work). refactor: The detective's scanner will now be inserted into storage items if clicked normally, and will scan the storage item if on combat mode /🆑 |
||
|
|
c57afc4689 |
Wawastation (#82298)
- [x] #82282 - [x] map in aux base how the hell did i forget it - [x] fill out maints - [x] properly test the goddamn thing - [x] fix major cameranets - [ ] fix any issues - [x] write a proper pr body ## About The Pull Request adds this map to the map rotation bottom level (24.5.2024)  upper level (24.5.2024)  ## general map details and department stuff - the station is more focused on the bottom level, so falling in doesnt roundremove you - this is an asteroid station, so assistants can larp as dorfs and mine towards the sweet loot - there is plenty multiz usage - service is the center of the station **Service** - Is the center of the station. Arrivals docks directly in the middle of the station next to Upper Service, so bar might get more traffic. Not much different than normal Service, but janitors closet is also present here, he sleeps on the floor. We do not talk about the janitor. Above Bar is Library and Hydroponics with an overlook to look at bar. The Theater has a big curtain and a podium directly in the bar. 29.3.2024  **Civilian** - Also in the center of the station, next to bar. There isnt much to talk about dorms, its pretty normal. **Cargo** - Absence of chutes that go to departments, reminder that mail sorting is a thing. Cargo bay is a big open area with a boutique/shop facing primary hall that starts closed, and Cargo has its own crate elevator. Theres upper Cargo where mining, bitrunning and a secure warehouse is located (There may be a murder scene). The quartermasters office spans two z-levels and is relatively compact. Not much else different from regular cargo. ~~Oh also the QM starts with an empty PML-9 and a mostly functional rocket~~ 29.3.2024  **Medical** - Large centralized medbay, also two z-levels. There is a public waiting room with triage and a reception. There is also an inner elevator for the crippled. There are two medbay-access patient rooms that are unrestricted from the inside, and two operating rooms. Medbay has its own rad shelter. The virologist does not get their own satellite, but is still relatively secure. 29.3.2024 https://i.ibb.co/hs9kKbV/ezgif-1-f7b697b067.gif (large gif) **Command** - AI Sat transit tube access is here. HoP has an open stall facing primary hall, ~~and maybe a piano trapdoor~~ pretty classic bridge, Captain does not get his own office but gets a really comfortable quarters with his own emergency mass ejection for abandoning ship. The council meeting room is present above bridge, with ERT Ferry dock docking inside adjacent to the council room. **Security** - Mostly bottom z level security. Very compact brig cells, and a meeting room that everyone that is related to security may spawn in if youre lucky. Warden has a weapon handout point facing the inner security hall and the equipment room. Reeducation chamber has a shocked grille treadmill. HoS and Warden Room and armory are on the upper z-level, and warden has a VERY good overlook over permabrig. Armory is seperated into nonlethal to mostly nonlethal and lethal. 29.3.2024  **Science** - Also pretty centralized, breakroom with a smoking corner, two z levels and a big overlook. RD office overlooks toxins and bomb site. Genetics and RD Office is on the upper floor, with a science exclusive monkey exhibit. Xenobio is thick due to proximity to bomb site, otherwise normal. 29.3.2024  **AI Sat** - Okay at this point assume any department is multiz. The antechamber is an elevator and the turrets are on said elevator. The elevator may be sent to the top level by engineers, where the AI core is. Telecomms is on the bottom level, and AI core is above it. Contains a borg entertainment room, and also the upload. The elevator being raised is necessary to properly enter AI Room. **Engineering** - Contains a less stale but still average and less than optimal SM setup. Prone to catastrophic disaster. The SM Room is two levels and very open, and CE has a trapdoor directly into the shard. Turbine is above atmospherics, so is the crystallizer. The HFR and main atmos and distribution room are on the bottom level. Piped by **Kendra Hunter**. Contains a built in electrolyzer corner so atmos mains stop gutting the aesthetics to place down some dumb machine. ## Why It's Good For The Game another interesting map into the roster, different from the other multiz maps in the form that you dont get stuck in hell by falling down a hole todo write better section ## Changelog 🆑 add: wawastation, the station map /🆑 --------- Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com> |
||
|
|
fa65d517dd | fixups | ||
|
|
7aa6664021 |
Mirror (#27453)
* Fix Conflicts * Change COGBAR_ANIMATION_TIME to seconds and not deciseconds (#82530) Most people should not be using this define * New Battle Arcade (#81810) Remakes Battle Arcade from just about the ground up, with exceptions taken for emagged stuff since I didn't really want to touch its behavior. The Battle Arcade now has stages that players can go through, unlocking a stage by beating 2 enemies and the boss of the previous one, but this must all be done in a row. You can choose to take a break between each battle and there's a good chance you'll sleep just fine but there's also a chance it can go wrong either through an ambush or robbery. The Inn lets you restore everything for 15 gold and you can buy a sword and armor, each level you unlock is a new sword and armor pair you can buy that's better than the last, it's 30 gold each but scales up as you progress through levels. They are really worth getting so it's best to try to not lose your money early in. The battle system is nearly the same as how it was before but I removed the poor combo system that plagued the old arcade as one big knowledge lock, now it's more just turn based. The game is built on permadeath so dying means you restart from the beginning, but if you are going to lose you can try to escape instead which costs you half of your gold. Getting to higher levels increases the difficulty of enemies but also increases the gaming exp rewards which could make this a better way to get exp if you can get good at it. Gaming EXP is used to increase chances of counterattacking but doesn't give any extra health to the player. I also removed the exploit of being able to screwdriver arcade cabinets because people would do that if they thought they were on the verge of losing to bypass the effects of loss. I instead replaced it with a new interaction that the Curator's display case key can be used to reset arcade cabinets (there's several keys on the chain so it made sense to me), which I added solely because I thought Curators would be the type of person to have run an actual arcade. This is some gameplay https://github.com/tgstation/tgstation/assets/53777086/499083f5-75cc-43b5-b457-017a012beede As a misc sidenote, I also split up the arcade file just like how Orion Trail was before, just for neat code organization. The Inn keeper is straight up just a photo of my localhost dude, he's not a player reference or anything it's not my actual character. I also have no idea how well balanced this is cause I suck at it lol. Battle Arcade is one of 3 last machines in my hackmd here to turn into TGUI https://hackmd.io/XLt5MoRvRxuhFbwtk4VAUA?view I've always thought the current version of battle arcade is quite lame and lacks any progression, like Orion Trail I thought that since I was moving this to TGUI, it would also be a perfect opportunity to revamp it and try to improve on where it failed before, especially since the alternative (NTOS Arcade) is also lame as hell and is even lamer than HTML battle arcade (spam mana, then spam health, then just spam attack, rinse and repeat). This will hopefully be more entertaining and give players sense that they are getting through a series of tasks rather than doing one same one again and again. 🆑 JohnFulpWillard, Zeek the Rat add: Battle Arcade has been completely overhauled in a new progression system, this time using TGUI. add: The Curator's keys can now reset arcade cabinets. balance: You now need to be literate to play arcade games, except for Mediborg's Amputation Adventure. fix: You can no longer screwdriver emagged arcade consoles. Accept your fate. fix: Silicons can no longer play Mediborg's Amputation Adventure. /🆑 --------- Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com> * 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 🆑 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. /🆑 * Material datum color update, plus touching up some material items (knight armor, tiles) (#82500) ## About The Pull Request Tries to bring the material datum colors in closer approximation to the stacks they're attached too. I literally used the colors on the stacks. some might need to be lighter or darker, but for the most part they'll look...closer to their actual material hues.  I've also tweaked the sprites of both the tile object and the actual material tile turf to give it the right shading.  In addition to the tiles, I've also updated the knight armor and helmet to look closer to the much higher quality plate armor already in the game. ## Why It's Good For The Game It bothered me that the material datum coloring was inconsistent with the actual colors used for the material stacks. When they were updated, and even before they were updated, material datum stuff just never looked _right_. I wanted to change that so that it looks just right. I did not like the old material knight armor whatsoever. It was a dithered mess, and seemed to already use parts of the standard plate armor but with all the actual shading removed or replaced with the wrong colors. This fixes that so that the armor is actually readable for what it is. ## Changelog 🆑 image: Updates the colors of various material datum to bring them closer in-line with their actual material stacks image: Improves the sprites for the material knight armor and helmet. /🆑 * LateInitialize is not allowed to call parent anymore (#82540) ## About The Pull Request I've seen a few cases in the past where LateInitialize is done cause of the init return value being set to do so for no real reason, I thought I should try to avoid that by ensuring LateInitialize isn't ever called without overriding. This fixes a ton of machine's LateInitialize not calling parent (mechpad, door buttons, message monitor, a lot of tram machines, abductor console, holodeck computer & disposal bin), avoiding having to set itself up to be connected to power. If they were intended to not connect to power, they should be using ``NO_POWER_USE`` instead. Also removes a ton of returns to LateInit when it's already getting it from parent regardless (many cases of that in machine code). ## Why It's Good For The Game I think this is better for coding standard reasons as well as just making sure we're not calling this proc on things that does absolutely nothing with them. A machine not using power can be seen evidently not using power with ``NO_POWER_USE``, not so much if it's LateInitialize not calling parent. ## Changelog 🆑 fix: Mech pads, door buttons, message monitors, tram machines, abductor consoles & holodeck computers now use power. /🆑 * Fix table top deconstruction (#82508) ## About The Pull Request Edited: updated changelog, read comments for changes in implementation details So previously, tables would let you use a wrench to fully deconstruct them, or a screwdriver to take off only their top. This, however, broke in two different ways in #82280, when their deconstruction logic got changed. First off, deconstructed tables would only drop the materials for their top and not their frame. For this, the primary culprit seems to be on line 307: https://github.com/tgstation/tgstation/blob/c34d56a45b0461f5e0fad3cc75e81580c3357119/code/game/objects/structures/tables_racks.dm#L300-L307 Where `new framestack(target_turf, framestackamount)` accidentally got an extra indent, and ended up in the less common half of the if-else chain. Just moving this outside of the if-else chain again fixes it. Secondly, tables had their own special deconstruction logic, which got 'standardized'. Issue. This was special to accommodate for having two different deconstruction logics: full or top only. With `deconstruct(...)` no longer being overridable, I feel it's awkward to attempt to proxy that information to the new `atom_deconstruct(...)` So we introduce a new method, `deconstruct_top`, for the screwdriver to use, which handles deconstructing only the top. ```dm /obj/structure/table/proc/deconstruct_top() var/obj/table_frame = new frame(loc) if(obj_flags & NO_DECONSTRUCTION) table_frame.obj_flags |= NO_DECONSTRUCTION else // Mimic deconstruction logic, only drop our materials without NO_DECONSTRUCTION var/turf/target_turf = get_turf(src) drop_top_mats(target_turf) qdel(src) ``` Mimicking the `NO_DECONSTRUCTION` logic of normal deconstruction, and copying over the flag onto its frames if need be. This fixes screwdriver deconstruction. ## Why It's Good For The Game Fixes #82503. We can now deconstruct the table top separately again, AND get the right materials back too. ## Changelog 🆑 00-Steven, SyncIt21 fix: Wrench table deconstruction gives the right materials again. fix: Screwdriver table deconstruction only deconstructs the top again. /🆑 * [NO GBP] Reagent grinders display reagents on examination (#82535) ## About The Pull Request - Fixes #82531 Somehow omitted this during the general maintenance thing ## Changelog 🆑 fix: Reagent grinders display reagents of its beaker on examination /🆑 * Monkeys now use height offset (and monkey tail works) (#81598) This PR adds the ability for monkeys to wear any jumpsuit in the game, and adds support for them to wear things like coats, gloves, and shoes (though this cannot be obtained in-game and is solely achieved through admins, which I also improved a bit upon by adding a defined bitfield for no equip flags). This reverts a lot of changes from https://github.com/tgstation/tgstation/pull/73325 - We no longer check height from limbs and such to bring sprites down, instead monkeys now work more similarly to humans, so the entire PR was made irrelevant, and I didn't really want to leave around dead code for the sake of having a human with longer legs. I've now also added support for Dwarfism, which makes monkeys look even smaller. Very minor change but at least now the mutation doesn't feel like it does literally nothing to monkeys (since they can already walk over tables). Here's a few examples of how it can appear in game (purely for demonstration, as it is currently intentionally made impossible to obtain in-game, though if someone wants to change that post-this PR now that support is added, feel free): Tails have been broken for a while now, the only reason you see them in-game is because they are baked into the monkey sprites. This fixes that, which means humans can now get monkey tails implanted into them (hell yeah) and monkeys can have their tails removed (also hell yeah) * Gets [weird] with (spies) by adding protect and deuteragonist-flavored objectives. (#82447) ## About The Pull Request What are their goals? Why are they doing this? gets weird with Spy objectives - namely by adding a lot more ways spies might be asked to affect various targets around the station. the first of these is by several flavors of Protecting targets (these do NOT print a success at roundend in keeping with Spy design:) - Protect (get a humanoid target off alive) - Protect Nonhuman (get an entity off alive) - Jailbreak (make sure a humanoid target escapes free) - Detain (make sure a humanoid target gets taken out arrested) the second of this is by a new escape condition: - Exile (get off-station or off the Z-level by the end of the shift - sometimes it's not just pods, you need to fuck off to space to win.) the third is through a massive increase in the number of possible: - objective templates - departments to target (Command + Service added) - specific locations to target - general classes of objects to target (medicines, floor tiles, critical infrastructure, etc.) - efforts to target (such as meals, mechs, public supplies) - ways to leave (you can be asked to abscond from the scene of your crimes?) ## Why It's Good For The Game More goofy and weird prompts to do more interesting things with Spies. One thing I think we're sorely missing in our lineup is antagonists that can act a bit more as deuteragonists - very possibly helping the crew under certain conditions and frustrating the Hell out of them in others. Since there's no way to check their objectives, and they get their gear/progression through stealing shit, they're still very much an antagonist and exist under the suspicion of doing bad... but, just going by their objectives, introducing more varied (and in some cases even benign) goals for them creates suggestions pointing to a lot more varied and interesting stories if people choose to run with it. * Adds anosmia quirk (#82206) ## About The Pull Request Adds anosmia quirk. Anosmia, also known as smell blindness, is the loss of the ability to detect one or more smells. I tried to find all smells action and (most likely) update all of them, unfortunately I can't change descriptions for this quirk. ## Why It's Good For The Game Some characters will be able to not feel smells That affect: * Gases feelings and alerts (CO2, Plasma, miasm) - you don't feel them * Bakery and cooking * Changeling ability to feel other changelings by smell * Some unimportant spans * Explosions Part I - Directional Explosions (#82429) ## About The Pull Request Adds the ability for explosions to be directional. This is achieved by adding an angle check to `prepare_explosion_turfs()` to drop any turfs outside the cone of the explosion. If the arc covers a full 360 degrees, as is the default, it will accept all the turfs without performing the angle check. Uses this functionality to rework both rocket launcher backblast and X4 explosions. Rocket launcher backblast has been changed from a shotgun of indendiary bullets to a directional explosion of similar length. X4 now uses a directional explosion to "ensure user safety". Apparently the old method of moving the explosion one tile away didn't even work, as it blew up `target` before trying to check its density for the directional behaviour. https://youtu.be/Mzdt7d7Le2Y ## Why It's Good For The Game Directional explosions - Useful functionality for a range of potential use cases, which can be implemented with minimal extra processing cost (Worst case scenario being very large directional explosions) Backblast - Looks way cooler than a bunch of projectiles, and should be significantly more functional in high-lag situations where projectile code tends to get fucky X4 - More predictable for players wanting to use it as a breaching charge, you can actually stand near the charge and not have to worry about being hoist upon your own petard. ## Changelog 🆑 add: Added support for directional explosions. add: Rocket launcher backblast is now 271% more explosive, check your six for friendlies! add: X4 charges now explode in a cone away from the user when placed on a sufficiently solid object. fix: X4 charges will now behave correctly when placed on dense atoms (note: don't try to read a variable from an atom you just blew up) /🆑 * Add balloon alerts to plunging (#82559) ## About The Pull Request Makes all plunging actions (pretty much anything using `plunger_act`) have a visible balloon alert. ## Why It's Good For The Game Makes sense that others would easily notice you plunging the shit out of something. Also, more people might finally learn that you can plunge the vent clogs instead of welding them. ## Changelog 🆑 qol: Added balloon alerts whenever you start plunging something (i.e ) /🆑 * Fixes spurious runtime on Icemoon caused by turf calling unimplemented LateInitialize() (#82572) ## About The Pull Request As of https://github.com/tgstation/tgstation/pull/82540 this runtime was happening,  `/turf/open/openspace/icemoon/` can be changed to `/turf/open/misc/asteroid/snow/icemoon/do_not_chasm` before `Initialize()` returns, which resulted in it `INITIALIZE_HINT_LATELOAD` getting returned on a turf that does not have an implementation of that proc. This should fix that. ## Why It's Good For The Game Fixes CI error * Blueprints tgui (#82565) Blueprints now use a TGUI panel instead of the old HTML one. Also did general code improvement and maintaining to blueprints in general and also destroyed the ``areaeditor`` level, repathing it to just 'blueprints'. Also adds a sound when you look at structural data cause why not Video demonstration: https://github.com/tgstation/tgstation/assets/53777086/861773fd-3d57-472d-bc94-d67b0d4f1dbd The 4 blueprint types:  Another HTML menu dead underground. This is more responsive and doesn't require constant updating to see which area you're in, feels less OOC (instead of saying "the blueprints say", just say it, you ARE the blueprints). Like, come on  Look at all this wasted space  🆑 refactor: Blueprints now use TGUI. qol: Blueprints can now be used while lying down. /🆑 * General maintenance for chem master (#82002) **1. Qol** - Adds screen tips & examines for screwdriver, wrench, crowbar & beaker insertion, removal & replacing actions - Analyzing reagents is now a client side feature & not a back end mode, meaning one person can see details of a reagent while the other can print stuff and do other operations so it's a non blocking operation. This also means 2 players can see information of 2 different reagents in their own screens, With that the overlay for analysis mode has been removed - You cannot do any tool acts on machines while printing. Balloon alerts will be displayed warning you of that. - The preferred container for the master reagent in the beaker is now showed in both condiment & chem master. It can be enabled/disabled via a CheckBox **2. Code Improvements** - Removed defines like `TARGET_BEAKER` , `TARGET_BEAKER` etc. ther functionality is implemented as params in the `transfer_reagent()` proc directly - Removed all variables relating to analyzing reagents like `reagent_analysis_mode`, `has_container_suggestion` etc. all memory savings - `printable_containers` now stores static values that can be shared across many chem masters - Updates only overlays and not the whole icon during operations for efficiency **3. Fixes** - You can hit the chem master with the screwdriver, wrench, crowbar & beaker when in combat mode - You cannot insert hologram items into the chem master - Deconstructing a condiment master will give you the circuit board already pre-programmed with that option selected so you don't need to use a screwdriver to re program it - `printing_amount` is now the maximum number of containers that can be printed at a time. Presently this number with upgraded parts would print out empty containers especially for patches. This is because `volume_per_item` does not take into consideration this var. Also this var would not give control to the player on exactly how many containers to print as whatever amount the player entered would be multiplied with this value producing a lot of waste & worse empty containers. Now this var determines exactly how many containers you can print and is imposed on the client side UI as well **4. Refactors (UI performance)** - Beaker data is compressed into a single entity & sent to the UI. This is set to null if no beaker is loaded thus saving data sent - Reuses Beaker props from chem synthesizer to reduce code - reagent REF replaced with direct type converted to text and later converted with `text2path()` cause its much faster 🆑 qol: Adds screen tips & examines for screwdriver, wrench, crowbar & beaker insertion, removal & replacing actions qol: Analyzing reagents no longer blocks other players from doing other operations. Multiple players can analyze different reagents on the same machine qol: You cannot do any tool acts on the machine while printing to prevent any side effects. qol: The preferred container for the master reagent in the beaker is now showed in both condiment & chem master. The feature can be enabled/disabled via a check box code: removed defines for reagent transfer, vars for reagent analyzis to save memory. Autodoc for other vars & procs fix: You can hit the chem master with tools like screwdriver, crowbar, wrench & beaker in combat mode fix: You cannot insert hologram items into the chem master fix: Deconstructing a condiment master will give you the circuit board already pre-programmed with that option fix: You now print the exact amount of containers requested even with upgraded parts without creating empty containers. Max printable containers is 13 with tier 4 parts able to print 50 containers. refactor: Optimized client side UI code & chem master as a whole. /🆑 --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> * Wraps `lowertext()` to ensure proper stringification. (#82442) Fixes #82440 This PR just creates a new macro, `LOWER_TEXT()` (yes the irony is not lost on me) to wrap around all calls of `lowertext()` and ensure that whatever we input into that proc will be stringified using the `"[]"` (or `tostring()` for the nerds) operator. very simple. I also added a linter to enforce this (and prevent all forms of regression) because I think that machines should do the menial work and we shouldn't expect maintainers to remember this, let me know if you disagree. if there is a time when it should be opted out for some reason, the linter does respect it if you wrap your input with the `UNLINT()` function. * Clowns can now make balloon... toys. And also mallets and hats. (#82288) <!-- 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. --> Clowns will now start with a box of 24 random long balloons and a skillchip in their noggin allowing them to create balloon animals by combining two of them of different colour together. Owners of the skillchip also gain access to crafting recepies of balloon mallets, vests, helmets and tophats, all created from long balloons. A crate of long balloons, with a box of balloons inside, can be bought at cargo, in case the clown runs out. I might edit this once I wake up, its 3 in the morning right now. Oh also, resprited how balloons look in inventory.  Balloon animals funny. Silly features are my favourite kind of features, and this one's open-ended too. Someone on the coder chat recommended someone would do it that one time, here it goes. <!-- 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. --> 🆑 add: Added long balloon box to the clown's starting inventory, and a skill-chip of long lost honk-motherian knowledge to their brain. add: Added long balloons. Consequently, added balloon animals to make from such balloons. Also, balloon top hat, vest, helmet, and a mallet. Don't ask about the mallet. add: A long balloons box harvested fresh from the farms on the clown planet will be able to be shipped in a crate to the cargo department near you! add: As per requests; water balloons can now be printed at service lathe, and entertainment modsuit can now blow long balloons! image: Balloons will now have an unique sprite when in the inventory, compared when to on the ground. /🆑 <!-- 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: _0Steven <42909981+00-Steven@users.noreply.github.com> Co-authored-by: san7890 <the@san7890.com> Co-authored-by: Jacquerel <hnevard@gmail.com> * Quick spellcheck 'steall' (#82560) ## About The Pull Request https://github.com/tgstation/tgstation/pull/82447 quick followup to this, caught it while glancing through the code. * Fix * merge conflicts * Revert "Monkeys now use height offset (and monkey tail works) (#81598)" This reverts commit 5cfdc5972d16c6b509220e8874a927696249d36a. * fix * Fixed lateinitialize * This should cut it * Oh right * There? * Damn, here? * There * [NO GBP] Fixes spurious runtime caused by icemoon (again) (#82582) ## About The Pull Request https://github.com/tgstation/tgstation/pull/82572 I tried to fix this but there was an unaccounted race condition which just caused a separate runtime...  Since the type is being changed mid-execution `replacement_turf` will become out of scope. My bad--this should fix it now for good. --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com> Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com> Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com> Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com> Co-authored-by: _0Steven <42909981+00-Steven@users.noreply.github.com> Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> Co-authored-by: Higgin <cdonny11@yahoo.com> Co-authored-by: NeonNik2245 <106491639+NeonNik2245@users.noreply.github.com> Co-authored-by: Thunder12345 <Thunder12345@users.noreply.github.com> Co-authored-by: Lucy <lucy@absolucy.moe> Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> Co-authored-by: san7890 <the@san7890.com> Co-authored-by: YesterdaysPromise <122572637+YesterdaysPromise@users.noreply.github.com> Co-authored-by: Jacquerel <hnevard@gmail.com> Co-authored-by: Useroth <37159550+Useroth@users.noreply.github.com> |
||
|
|
45e52eb774 |
Merge remote-tracking branch 'skrat/master' into new-bubbermaster
# Conflicts: # _maps/RandomRuins/SpaceRuins/hilbertresearchfacility.dmm # _maps/RandomRuins/SpaceRuins/skyrat/interdynefob.dmm # _maps/map_files/Birdshot/birdshot.dmm # _maps/map_files/Deltastation/DeltaStation2.dmm # _maps/map_files/IceBoxStation/IceBoxStation.dmm # _maps/map_files/MetaStation/MetaStation.dmm # _maps/map_files/NorthStar/north_star.dmm # _maps/map_files/VoidRaptor/VoidRaptor.dmm # _maps/map_files/tramstation/tramstation.dmm # _maps/shuttles/pirate_ex_interdyne.dmm # code/__DEFINES/mobs.dm # code/__HELPERS/~skyrat_helpers/is_helpers.dm # code/datums/mood.dm # code/game/objects/effects/spawners/random/random.dm # code/modules/admin/verbs/adminhelp.dm # code/modules/clothing/head/jobs.dm # code/modules/mob/living/brain/brain_say.dm # code/modules/projectiles/guns/energy/kinetic_accelerator.dm # code/modules/unit_tests/screenshots/screenshot_humanoids__datum_species_jelly.png # code/modules/unit_tests/screenshots/screenshot_humanoids__datum_species_jelly_stargazer.png # code/modules/uplink/uplink_items/job.dm # config/lavaruinblacklist.txt # icons/mob/actions/actions_changeling.dmi # icons/mob/clothing/mask.dmi # icons/obj/mining.dmi # modular_skyrat/master_files/code/modules/client/preferences/headshot.dm # modular_skyrat/master_files/code/modules/mob/living/examine_tgui.dm # modular_skyrat/master_files/code/modules/research/techweb/all_nodes.dm # modular_skyrat/master_files/icons/mob/clothing/under/skirts_dresses.dmi # modular_skyrat/master_files/icons/obj/clothing/under/skirts_dresses.dmi # modular_skyrat/modules/aesthetics/airlock/icons/airlocks/multi_tile/metal_overlays.dmi # modular_skyrat/modules/colony_fabricator/code/appliances/space_heater.dm # modular_skyrat/modules/company_imports/code/armament_datums/deforest_medical.dm # modular_skyrat/modules/hyposprays/code/hypospray_kits.dm # strings/traumas.json # tgui/packages/tgui/interfaces/PreferencesMenu/preferences/features/character_preferences/skyrat/headshot.tsx |
||
|
|
c72d1dcf48 |
[MIRROR] Replaces a number of deciseconds into SECONDS (#27188)
* Replaces a number of deciseconds into SECONDS * blep --------- Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com> Co-authored-by: Waterpig <wtryoutube@seznam.cz> Co-authored-by: Waterpig <49160555+Majkl-J@users.noreply.github.com> |
||
|
|
d6e4db6e62 |
Ports BoxStation (NSSJourney) from FluffySTG (#1128)
<!-- 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 A nostalgic return of Boxstation with updates. https://www.youtube.com/watch?v=guBsPkUkPQg  Derived from FluffySTG, includes minimal Bubber changes. ## Why It's Good For The Game Gives an alternative option for a Box-type station without the presence of ice. ## Proof Of Testing Compiles. Runs. Full round tested. Currently gathering feedback and maintaining. ## 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. --> 🆑 Shayoki add: Adds Boxstation /🆑 <!-- 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. --> <!-- By opening a pull request. You have read and understood the repository rules located on the main README.md on this project. --> --------- Co-authored-by: nevimer <77420409+nevimer@users.noreply.github.com> Co-authored-by: Waterpig <49160555+Majkl-J@users.noreply.github.com> Co-authored-by: Cyprex <35031555+Cyprex@users.noreply.github.com> |
||
|
|
fa31403353 |
LateInitialize is not allowed to call parent anymore (#82540)
## About The Pull Request I've seen a few cases in the past where LateInitialize is done cause of the init return value being set to do so for no real reason, I thought I should try to avoid that by ensuring LateInitialize isn't ever called without overriding. This fixes a ton of machine's LateInitialize not calling parent (mechpad, door buttons, message monitor, a lot of tram machines, abductor console, holodeck computer & disposal bin), avoiding having to set itself up to be connected to power. If they were intended to not connect to power, they should be using ``NO_POWER_USE`` instead. Also removes a ton of returns to LateInit when it's already getting it from parent regardless (many cases of that in machine code). ## Why It's Good For The Game I think this is better for coding standard reasons as well as just making sure we're not calling this proc on things that does absolutely nothing with them. A machine not using power can be seen evidently not using power with ``NO_POWER_USE``, not so much if it's LateInitialize not calling parent. ## Changelog 🆑 fix: Mech pads, door buttons, message monitors, tram machines, abductor consoles & holodeck computers now use power. /🆑 |
||
|
|
1443ef79d3 |
Replaces a number of deciseconds into SECONDS (#82436)
## About The Pull Request Using these search regexes: Number ending in 0: `do_after\((\w+), (\d+)0,` Replace: `do_after($1, $2 SECONDS,` Single digit number: `do_after\((\w+), [1-9],` replace: `do_after($1, 0.$2 SECONDS,` Double: `do_after\((\w+), (\d)([1-9]),` Replace: `do_after($1, $2.$3 SECONDS,` ## Why It's Good For The Game Code readability |
||
|
|
10772c60ff | Merge remote-tracking branch 'skrat/master' into upstream-oct-25-2023 | ||
|
|
a77a2dbc41 |
Re-add and update Kilostation (#614)
<!-- 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 Adds Kilostation back in, fully reverting it's deletion and adding it in as a bubber map. I've fully brought Kilo up to date and added in the coroners office and bitrunner's den as best as I could, as well as adding a smattering of those fancy new digital clocks, and bandaids. As far as I can tell it's ready to go. And I figure 75 is a good max player count for Kilo, it **is** pretty cramped, could do 80 though maybe. <!-- Describe The Pull Request. Please be sure every change is documented or this can delay review and even discourage maintainers from merging your PR! --> <!-- Please make sure to actually test your PRs. If you have not tested your PR mention it. --> ## Why It's Good For The Game Kilostation is an amazing lowpop map and is well loved, and didn't deserve to be killed off. This will add a new map to use during low-pop other than birdshot and voidraptor. <!-- 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 🆑 add: Re-added Kilostation add: Bitrunner Den and Coroners office crammed into Kilostation fix: More things than I care to list to get Kilo up to date fix: Aligned Kilo's arrival dock with both shuttle doors. config: Made Kilostation voteable up to a max player count of 75 by default /🆑 <!-- 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. --> <!-- 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. --> |
||
|
|
7cf7be4b7b |
[MIRROR] Tram v6/Transport Subsystem [MDB IGNORE] (#24399)
* Tram v6/Transport Subsystem * Update icon_smoothing.dm * Update utility.dm * defines/icon * Update airlock.dm * Update door.dm * Update airlock.dm * Update airlock.dm --------- Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com> |
||
|
|
7626c3bd6c |
Tram v6/Transport Subsystem (#78230)
Co-authored-by: Unit0016 <50649185+unit0016@users.noreply.github.com> Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com> Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com> Co-authored-by: Kylerace <kylerlumpkin1@gmail.com> |
||
|
|
068089fb52 |
[MIRROR] Standardize Welder Fuel Usage [MDB IGNORE] (#21943)
* Standardize Welder Fuel Usage (#76021) Remove welder fuel usage from all actions except attacking and leaving it on most welder tasks require a minimum of 1u of fuel, some longer tasks require a minimum of 2 or 3u welders now drain 1u every 5 seconds they're active ## About The Pull Request Prior to this PR welder fuel usage was random, a lot of tasks didn't use any welder fuel and welders were basically near infinite so long as you didn't use them for combat, it took 26 seconds of activity to drain 1u of fuel, that means an emergency welder alone could run for 5 minutes straight before needing a refuel After this PR all welders will drain 1u every 5 seconds instead of every 26 seconds, but welding objects won't require extra fuel anymore, making the fuel usage much more consistent. resolves #55018 ## Why It's Good For The Game Actually makes fuel tanks useful and relevant without making it obnoxious to do repetitive quick tasks like turn rods into plates, there's actually a reason to upgrade off the emergency welder now since it lasts 50 seconds rather than 5 minutes ## Changelog 🆑 qol: Welders now have a more consistent fuel usage /🆑 * Standardize Welder Fuel Usage --------- Co-authored-by: Couls <coul422@gmail.com> |
||
|
|
c0e46fabf7 |
Standardize Welder Fuel Usage (#76021)
Remove welder fuel usage from all actions except attacking and leaving it on most welder tasks require a minimum of 1u of fuel, some longer tasks require a minimum of 2 or 3u welders now drain 1u every 5 seconds they're active ## About The Pull Request Prior to this PR welder fuel usage was random, a lot of tasks didn't use any welder fuel and welders were basically near infinite so long as you didn't use them for combat, it took 26 seconds of activity to drain 1u of fuel, that means an emergency welder alone could run for 5 minutes straight before needing a refuel After this PR all welders will drain 1u every 5 seconds instead of every 26 seconds, but welding objects won't require extra fuel anymore, making the fuel usage much more consistent. resolves #55018 ## Why It's Good For The Game Actually makes fuel tanks useful and relevant without making it obnoxious to do repetitive quick tasks like turn rods into plates, there's actually a reason to upgrade off the emergency welder now since it lasts 50 seconds rather than 5 minutes ## Changelog 🆑 qol: Welders now have a more consistent fuel usage /🆑 |
||
|
|
c4d4e1da63 |
[MIRROR] Minerals have been refactored so costs and minerals in items are now in terms of mineral defines. [MDB IGNORE] (#20916)
* Minerals have been refactored so costs and minerals in items are now in terms of mineral defines. * AI GEN RUN ONE --------- Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com> |
||
|
|
f2fd69a49a |
Minerals have been refactored so costs and minerals in items are now in terms of mineral defines. (#75052)
Ladies, Gentlemen, Gamers. You're probably wondering why I've called you all here (through the automatic reviewer request system). So, mineral balance! Mineral balance is less a balance and more of a nervous white dude juggling spinning plates on a high-wire on his first day. The fact it hasn't failed after going on this long is a miracle in and of itself. This PR does not change mineral balance. What this does is moves over every individual cost, both in crafting recipes attached to an object over to a define based system. We have 3 defines: `sheet_material_amount=2000` . Stock standard mineral sheet. This being our central mineral unit, this is used for all costs 2000+. `half_sheet_material_amount=1000` . Same as above, but using iron rods as our inbetween for costs of 1000-1999. `small_material_amount=100` . This hits 1-999. This covers... a startlingly large amount of the codebase. It's feast or famine out here in terms of mineral costs as a result, items are either sheets upon sheets, or some fraction of small mats. Shout out to riot darts for being the worst material cost in the game. I will not elaborate. Regardless, this has no functional change, but it sets the groundwork for making future changes to material costs much, MUCH easier, and moves over to a single, standardized set of units to help enforce coding standards on new items, and will bring up lots of uncomfortable balance questions down the line. For now though, this serves as some rough boundaries on how items costs are related, and will make adjusting these values easier going forward. Except for foam darts. I did round up foam darts. Adjusting mineral balance on the macro scale will be as simple as changing the aforementioned mineral defines, where the alternative is a rats nest of magic number defines. ~~No seriously, 11.25 iron for a foam dart are you kidding me what is the POINT WHY NOT JUST MAKE IT 11~~ Items individual numbers have not been adjusted yet, but we can standardize how the conversation can be held and actually GET SOMEWHERE on material balance as opposed to throwing our hands up or ignoring it for another 10 years. |
||
|
|
05a56c79c4 |
[MIRROR] Removal of Kilostation [MDB IGNORE] (#20854)
* Removal of Kilostation (#75039) ## About The Pull Request Removes Kilostation from the game. Since I know this is bound to be a touchy subject (the map has its fans, after all), I feel I need to explain the situation and why this decision has been made. While working on mapping for TGStation, there's an inherent struggle between what's good for mappers, and what's good for coders. On the mapping side, we want as many maps as we reasonably can have in the repo. On the code side, every map added introduces a new layer of complexity for adding new features. While we're attempting to make strides in improving cooperation between the two teams so we can handle both many maps and lots of new features, in the here and now this means that we find ourselves limited in how many maps we can maintain at once. With this in mind, we find ourselves in a conundrum when new maps come along. While it would be nice to accept everything new without needing to remove anything else, the above problems force us to stick to a limit. Via a fair amount of discussion on the maintainer team, this was set to 6 recently, which we reached when Northstar was merged, and meaning that a removal was required for any new maps. As for why the decision was made to take Birdshot over Kilo, I believe it is better for us to have a map that has room to grow and an active creator. As much as I was personally a Kilo enjoyer, the map has consistently proven to be problematic for new code additions due to its scale, and it receives little maintenance outside of the bare essentials as a result. With all this in mind, it comes out as the obvious choice for removal in this case. Of course, nothing stops it from coming back in future if any of the above changes. ## Why It's Good For The Game TL:DR: In order to keep the maintenance budget down, we need to remove a map for the sake of new blood, and in this case Kilo was the simplest choice. ## Changelog 🆑 del: Kilostation has went back to its home planet. It served us faithfully for nearly 3 and a half years. May it rest in peace. /🆑 --------- Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com> * Removal of Kilostation --------- Co-authored-by: EOBGames <58124831+EOBGames@users.noreply.github.com> Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com> |
||
|
|
c3a11c44cb |
Removal of Kilostation (#75039)
## About The Pull Request Removes Kilostation from the game. Since I know this is bound to be a touchy subject (the map has its fans, after all), I feel I need to explain the situation and why this decision has been made. While working on mapping for TGStation, there's an inherent struggle between what's good for mappers, and what's good for coders. On the mapping side, we want as many maps as we reasonably can have in the repo. On the code side, every map added introduces a new layer of complexity for adding new features. While we're attempting to make strides in improving cooperation between the two teams so we can handle both many maps and lots of new features, in the here and now this means that we find ourselves limited in how many maps we can maintain at once. With this in mind, we find ourselves in a conundrum when new maps come along. While it would be nice to accept everything new without needing to remove anything else, the above problems force us to stick to a limit. Via a fair amount of discussion on the maintainer team, this was set to 6 recently, which we reached when Northstar was merged, and meaning that a removal was required for any new maps. As for why the decision was made to take Birdshot over Kilo, I believe it is better for us to have a map that has room to grow and an active creator. As much as I was personally a Kilo enjoyer, the map has consistently proven to be problematic for new code additions due to its scale, and it receives little maintenance outside of the bare essentials as a result. With all this in mind, it comes out as the obvious choice for removal in this case. Of course, nothing stops it from coming back in future if any of the above changes. ## Why It's Good For The Game TL:DR: In order to keep the maintenance budget down, we need to remove a map for the sake of new blood, and in this case Kilo was the simplest choice. ## Changelog 🆑 del: Kilostation has went back to its home planet. It served us faithfully for nearly 3 and a half years. May it rest in peace. /🆑 --------- Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com> |
||
|
|
db37525763 |
[MIRROR] North Star Merge Plaque and Requests Console for QM [NO GBP] [MDB IGNORE] (#20605)
* North Star Merge Plaque and Requests Console for QM [NO GBP] (#74712) * North Star Merge Plaque and Requests Console for QM [NO GBP] --------- Co-authored-by: Cheshify <73589390+Cheshify@users.noreply.github.com> |
||
|
|
e3bf2de0de | North Star Merge Plaque and Requests Console for QM [NO GBP] (#74712) | ||
|
|
e895d0f98c |
[MIRROR] Tram signal defines, subtypes, documentation, compound damage calc [NO GBP] [MDB IGNORE] (#19313)
Tram signal defines, subtypes, documentation, compound damage calc [NO GBP] Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com> Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com> |
||
|
|
06451927fe |
Tram signal defines, subtypes, documentation, compound damage calc [NO GBP] (#73199)
## About The Pull Request - Adjusts the signal distance thresholds and moves them to the tram defines file - Makes a subtype of the signal for Tramstation specific variables - Updates documentation to dmDocs - Fixes #73367 (tram was compounding base damage and wound damage, changes to a flat 15% death chance, lowers base damage in favor of causing wounds) - Adds logging for when people get hit by the tram ## Why It's Good For The Game Cleanup, documentation, tram isn't killing everyone. ## Changelog 🆑 LT3 fix: Tram damage calculation takes into account compound wounds code: Tram crossing signals are now map specific admin: Combat log now generated when the tram collides with someone /🆑 |
||
|
|
1c93bd94e1 |
[MIRROR] Sign/plaque contextual screentips and file reorganizing [MDB IGNORE] (#19227)
* 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> |
||
|
|
7e2c352ca8 |
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. /🆑 |
||
|
|
2127d305b3 |
[MANUAL MIRROR] Tram Mk. IV (#19131)
Tram Mk. IV (#73057) - After one too many tram malfunctions, Nanotrasen's insurance provider finally sprung the cash for a new tram. Made with the latest in lightweight materials, there's more capacity than ever before to shuttle your crew around the station. https://user-images.githubusercontent.com/83487515/215639768-3f7fcb84-cfd2-4efe-b578-998197651f13.mp4 - Consolidates all the tram turfs, objs, and structures into respective .dm files because they were haphazardly spread everywhere. - Fixes tram doors playing open/close animations when they're already in the correct state, corrects timing for when they change density. - Tram now correctly has an operating status and will stop functioning when power is lost. - Call buttons no longer dispatch a tram that doesn't have power. - Fix for emergency exit when tram has no power. - Running at closing tram doors is a gamble, you may be crushed - Fixes https://github.com/tgstation/tgstation/issues/73125 Looks nice, more space, tram doors demand a pound of flesh. 🆑 LT3 imageadd: Nanotrasen's insurance provider finally sprung the cash for a new tram. Made with the latest in lightweight and mostly* non-flammable materials, travel in comfort and style! code: All tram components are now organised based on type code: Tram is now aware if it has power or not del: Removed movement slowdown running on tram plates fix: Tram call buttons will not work calling an unpowered tram fix: Tram doors will no longer cycle open/closed when they're already in the correct position fix: Fixed an edge case where running onto the tram you bounce off the open door as if it was closed fix: Unpowered tram doors can only be forced into the open position fix: Westbound travel shows the correct controls animation add: Tram doors take a chunk of flesh if you run at them last minute qol: Reduced duration of amber stage on tram crossing signals /🆑 |
||
|
|
4894878ff6 |
Tram Mk. IV (#73057)
## About The Pull Request - After one too many tram malfunctions, Nanotrasen's insurance provider finally sprung the cash for a new tram. Made with the latest in lightweight materials, there's more capacity than ever before to shuttle your crew around the station. https://user-images.githubusercontent.com/83487515/215639768-3f7fcb84-cfd2-4efe-b578-998197651f13.mp4 - Consolidates all the tram turfs, objs, and structures into respective .dm files because they were haphazardly spread everywhere. - Fixes tram doors playing open/close animations when they're already in the correct state, corrects timing for when they change density. - Tram now correctly has an operating status and will stop functioning when power is lost. - Call buttons no longer dispatch a tram that doesn't have power. - Fix for emergency exit when tram has no power. - Running at closing tram doors is a gamble, you may be crushed - Fixes https://github.com/tgstation/tgstation/issues/73125 ## Why It's Good For The Game Looks nice, more space, tram doors demand a pound of flesh. ## Changelog 🆑 LT3 imageadd: Nanotrasen's insurance provider finally sprung the cash for a new tram. Made with the latest in lightweight and mostly* non-flammable materials, travel in comfort and style! code: All tram components are now organised based on type code: Tram is now aware if it has power or not del: Removed movement slowdown running on tram plates fix: Tram call buttons will not work calling an unpowered tram fix: Tram doors will no longer cycle open/closed when they're already in the correct position fix: Fixed an edge case where running onto the tram you bounce off the open door as if it was closed fix: Unpowered tram doors can only be forced into the open position fix: Westbound travel shows the correct controls animation add: Tram doors take a chunk of flesh if you run at them last minute qol: Reduced duration of amber stage on tram crossing signals /🆑 |
||
|
|
92a3f862ef |
[MIRROR] Layering: Fixes wires and pipes on lattice catwalk, glass floor [NO GBP] [MDB IGNORE] (#18930)
Layering: Fixes wires and pipes on lattice catwalk, glass floor [NO GBP] (#72703) ## About The Pull Request - Fixes https://github.com/tgstation/tgstation/issues/72894 - Fixes layering for wiring and disposal pipes on lattice-based catwalk. (Goes on top.) Wiring and pipes on floor-based catwalk. (Goes underneath.) - Glass floor shifted to show wires/pipe underneath it. - Moves tram plaque to the game plane, layered underneath tossed objects. ## Why It's Good For The Game Wiring the solars looks weird with the wrong layering. ## Changelog 🆑 LT3 fix: Wires and pipes again rest on top of lattice catwalk /🆑 Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com> |
||
|
|
088a93a51d |
Layering: Fixes wires and pipes on lattice catwalk, glass floor [NO GBP] (#72703)
## About The Pull Request - Fixes https://github.com/tgstation/tgstation/issues/72894 - Fixes layering for wiring and disposal pipes on lattice-based catwalk. (Goes on top.) Wiring and pipes on floor-based catwalk. (Goes underneath.) - Glass floor shifted to show wires/pipe underneath it. - Moves tram plaque to the game plane, layered underneath tossed objects. ## Why It's Good For The Game Wiring the solars looks weird with the wrong layering. ## Changelog 🆑 LT3 fix: Wires and pipes again rest on top of lattice catwalk /🆑 |
||
|
|
85b56a310d | [MIRROR] Fix JSON description for solo bench and tram [NO GBP] [MDB IGNORE] (#18661) | ||
|
|
852f44b343 |
Fix JSON description for solo bench and tram [NO GBP] (#72634)
## About The Pull Request - I screwed up and called 'Bench Solo' 'Bench Right' in the JSON file. 'tram subfloor' should just be 'tram' since it pulls the name from the lower left tile of the tram. - Tram plaque no longer covers objects on that tile. |
||
|
|
280460bab8 |
[MANUAL MIRROR] [NO GBP] Side mounted tram controls (#18636)
* Side mounted tram controls (#72193) Continuation of https://github.com/tgstation/tgstation/pull/72047 this part was left out until it could be done using directional map helpers. - Side mounts the tram controls freeing up the middle space for shenanigans or whatever, and you can hit the controls faster from either side of the tram. - Emergency exit feature, doors can be forced open when the tram has lost power. - Accessible spots for wheelchairs (Ian's injured, you know!)  - Looks like a tram direction sign instead of an awkward center placed computer. Build an ice cream or illicit drugs shop or something in the middle. Frees up space. - You don't get stuck on an unpowered tram if you don't have a crowbar. 🆑 LT3 imageadd: Tram controls are now side mounted, freeing up space. Even better, you now have two of them! imageadd: Added a new accessible space on the tram for wheelchairs fix: Removed duplicate tram plate/platforms code: Tram has its own floor subtype for the walls and windows add: Emergency exit feature added for people who are silly enough to not carry a crowbar /🆑 * floors.dmi |
||
|
|
22585519a8 |
Side mounted tram controls (#72193)
## About The Pull Request Continuation of https://github.com/tgstation/tgstation/pull/72047 this part was left out until it could be done using directional map helpers. - Side mounts the tram controls freeing up the middle space for shenanigans or whatever, and you can hit the controls faster from either side of the tram. - Emergency exit feature, doors can be forced open when the tram has lost power. - Accessible spots for wheelchairs (Ian's injured, you know!)  ## Why It's Good For The Game - Looks like a tram direction sign instead of an awkward center placed computer. Build an ice cream or illicit drugs shop or something in the middle. Frees up space. - You don't get stuck on an unpowered tram if you don't have a crowbar. ## Changelog 🆑 LT3 imageadd: Tram controls are now side mounted, freeing up space. Even better, you now have two of them! imageadd: Added a new accessible space on the tram for wheelchairs fix: Removed duplicate tram plate/platforms code: Tram has its own floor subtype for the walls and windows add: Emergency exit feature added for people who are silly enough to not carry a crowbar /🆑 |
||
|
|
011fefdd81 |
[MIRROR] Refactors armor into dedicated subtypes [MDB IGNORE] (#18291)
* Refactors armor into dedicated subtypes * start * most tg things * pain (#18584) * shit * non-mod changes * compile Co-authored-by: John Doe <gamingskeleton3@gmail.com> * #18291 * compile fix * ??? Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com> Co-authored-by: John Doe <gamingskeleton3@gmail.com> Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com> |