forked from tgstation/tgstation
-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merge upstream 05.12.24 #844
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…ly_damage` (tgstation#88205) ## About The Pull Request Looks through calls to `receive_damage` and replaces them with calls to `apply_damage` `receive_damage` is a gross to use internal proc that doesn't take into account physiology (damage modifiers) or even update the mob's sprite when taking damage It should be avoided many uses - `apply_damage`, in fact, can take a bodypart as a target, and is overall a lot easier and more ergonomic to use. "So what are valid uses of it?" - Apply damage itself, and similar direct-damage procs - Ensuring you deal an exact amount of damage to a bodypart - Damaging a limb with no owner ## Changelog :cl: Melbert refactor: A ton of things now use the more correct method of applying damage to you. Which means they will correctly factor in damage modifiers and are less likely to break your sprite. Some examples include embedded objects jostling around, chiropractice, and tackling a wall. Report any oddities, such as extreme damage or bodyparts being wrongly affected. fix: Having acid splashed on your face may now disfigure you and make you bald, as it once did three years ago. fix: Itchy heretic trauma now better checks if the bodypart is covered or not before determining if you should itch. fix: "Repair Puncture" logs no longer mistakenly report you are "Incising burned flesh" /:cl:
…et hunger when fed (tgstation#88348) ## About The Pull Request More small fixes to stuff that I broke while working and reworking on aquariums. ## Why It's Good For The Game Safe mode is now safe mode. Fish are not bottomless pits.
…on#88178) ## About The Pull Request The organs code changes bundled with the organ fishing PR have broken a few things, while unveiling a bunch of other problems that flew under the radar. This concern the first category actually. Anyway, I've also included a unit test to ensure this won't be an inssue in the future. ## Why It's Good For The Game Fixing some errors.
## About The Pull Request Closes tgstation#87979 ***FSZZHHHH*** ## Changelog :cl: sound: Modsuits no longer horrifically screech when taken off /:cl:
## About The Pull Request Forgot to change this, occurs when you try to push off a floating locker that's moving in the same direction as you ## Changelog :cl: fix: Fixed a zero g pushoff runtime /:cl:
## About The Pull Request Fixes the runtime in tgstation#88324 ## Changelog :cl: fix: Fixed a board GPS imprintion runtime /:cl:
## About The Pull Request This fixes an `addtimer called with a callback assigned to a qdeleted object` runtime with paper planes Honestly at this point, it'd prolly be a good idea to stick a check to just automatically use the parent's loc if the alerting atom is being qdeleted ## Why It's Good For The Game meow ## Changelog :cl: fix: Fixed a runtime error related to the balloon alert from folding a paper plane. /:cl:
## About The Pull Request fixes some runtimes related to trying to remove things from a blackboard key list that arent tracked to begin with ## Why It's Good For The Game fixes monkey disarming runtimes ## Changelog :cl: /:cl:
## Why It's Good For The Game The hub text has a limited (255) amount of characters. Time Dilation being in there makes it so that the "Next Map" is cut off and doesn't show. I get that Time Dilation was added to show off the new TG server. But it's not necessary now and as a player looking at the hub I care way more about the next map than "time dilation" especially when no other server displays their lag rate in the hub so we have nothing to compare it to ## Changelog :cl: del: Time Dilation no longer shows in the hub text /:cl:
## About The Pull Request ![image](https://github.com/user-attachments/assets/e90e5fda-5305-430b-89a8-d92e3b82b599) Escape menu details no longer hug the top border of the screen. ## Why It's Good For The Game This has been triggering my OCD for months. ## Changelog :cl: qol: Shifted the escape menu stat panel down a bit /:cl:
## About The Pull Request repairbots now gain the ability to deconstruct when hacked by an AI. ive also updated their crafting menu requirements and they now drop their toolboxes when they're destroyed ## Why It's Good For The Game closes tgstation#88336 ## Changelog :cl: fix: repairbots now gain their destructive abilities when hacked by an AI fix: repairbot crafting recipes have been updated /:cl:
Closes tgstation#88283 Closes tgstation#88320 Fixes a harddel caused by the limp status effect not being properly deleted Reduces update-body calls in: - Initialize from 4 to 1 - On z-level change from 2 to 1 - On move with bloody shoes from 1 to 0 Mostly by just passing along the proper argument and removing seemingly unnecessary update body calls
…et is zero, fixes map_logging CI test (tgstation#87910) ## About The Pull Request The ruins get added to forced_ruins, quite often after all ruin budget is exhausted and thus they don't get spawned. This adjusts the logic to ignore the budget when there's forced_ruins to be had. Also apparently fixes map_logging CI test which was broken by the logic, and makes the stacked_lights test scream at you with the area name for the sake of easier debugging as it can proc on the ruins now ## Why It's Good For The Game Adjusts some logic to allow multi-ruins to spawn correctly, and to make sure our mappers make good space ruins too ## Changelog :cl: fix: Ruins will now correctly spawn their tied ruins in fix: The map_logging test now runs proper code: The stacked_lights test now screams with area names too. /:cl:
## About The Pull Request If you set up a server without `COMMS_KEY` set it will be blank, which is a valid key ## Why It's Good For The Game CommKey validation should fail closed not open ## Changelog
## About The Pull Request Closes tgstation#88338 ## Changelog :cl: fix: Fixed atrocinator not yeeting you up /:cl:
## About The Pull Request Code bad lack of runtimes good ## Changelog :cl: fix: Fixed a qdel loop in hypnosis brain trauma /:cl:
…gstation#88335) ## About The Pull Request ![image](https://github.com/user-attachments/assets/101bd911-c7ae-465a-99a6-f7a91b6c01e5) A very light remapping, a few cosmetic improvements such as snowy plating and some space by the door so it isn't flush against rockwalls. Most notably, the air alarm is actually on the inside now, so it reads the room inside instead of telling you that the Icemoon is indeed ice-cold. Also has all-access because would-be-callers might want to shut it up. ## Why It's Good For The Game The alarm being on the outside and reading the outside hurt me. Now it's a tiny bit nicer and cleaner. Except, you know. Still a frozen hellscape out there. ## Changelog :cl: fix: fixed the Icebox Phonebooth air alarm being on the outside, thus triggering because the planet is, indeed, cold. It is now inside and all-access so that callers can turn it off when they decide the phone's more important than their health and safety. /:cl:
…d of round start (tgstation#88316) ## About The Pull Request Mapvote will pull maps from the config based on the player count at time of vote creation, rather than round start ## Why It's Good For The Game if there are 30 connected round start, then 80 connected when the vote is made, the options available shouldn't be the smallest possible maps for the next round ## Changelog :cl: fix: Map vote now cares about current player count /:cl: --------- Co-authored-by: Odairu <[email protected]>
…eliable (tgstation#87799) ## About The Pull Request Refactors the meteor satalites to use proximity_monitor making them MUCH more reliable ## Why It's Good For The Game Previvously it would process and check if meteor is in range every 0.2 seconds via subsystem. This made it very possible that meteor flew past it before it even got detected, bypassing the shield. For it being station objective that feels rather silly. Especialy when meteors can actuely HIT THE SAT AND DESTROY IT Also slight delay in toggleing on so you cant spam toggle it ## Changelog :cl: refactor: Nanotrasen has introducted new upgrades into the aging station shield statalites, they require a but longer to toggle on however /:cl: --------- Co-authored-by: Ghom <[email protected]>
This PR causes following conflicts on translate branch: code/datums/wounds/bones.dm++<<<<<<< HEAD
+ user.visible_message(span_danger("[user] wrenches [victim]'s dislocated [limb.plaintext_zone] around painfully!"), span_danger("You wrench [victim]'s dislocated [limb.plaintext_zone] around painfully!"), ignored_mobs=victim)
+ to_chat(victim, span_userdanger("[user] wrenches your dislocated [limb.plaintext_zone] around painfully!"))
+ victim.apply_damage(10, BRUTE, limb, wound_bonus = CANT_WOUND)
++||||||| 2b11c36ee3a
++ user.visible_message(span_danger("[user] wrenches [victim]'s dislocated [limb.plaintext_zone] around painfully!"), span_danger("You wrench [victim]'s dislocated [limb.plaintext_zone] around painfully!"), ignored_mobs=victim)
++ to_chat(victim, span_userdanger("[user] wrenches your dislocated [limb.plaintext_zone] around painfully!"))
++ limb.receive_damage(brute=10, wound_bonus=CANT_WOUND)
++=======
+ user.visible_message(span_danger("[capitalize(user.declent_ru(NOMINATIVE))] болезнено прокручивает вывих в [limb.ru_plaintext_zone[PREPOSITIONAL] || limb.plaintext_zone] у [victim.declent_ru(GENITIVE)]!"), span_danger("Вы болезненно прокручиваете вывих в [limb.ru_plaintext_zone[PREPOSITIONAL] || limb.plaintext_zone] у [victim.declent_ru(GENITIVE)]!"), ignored_mobs=victim)
+ to_chat(victim, span_userdanger("[capitalize(user.declent_ru(NOMINATIVE))] болезнено прокручивает ваш вывих в [limb.ru_plaintext_zone[PREPOSITIONAL] || limb.plaintext_zone]!"))
+ limb.receive_damage(brute=10, wound_bonus=CANT_WOUND)
++>>>>>>> origin/translate
++<<<<<<< HEAD
+ user.visible_message(span_danger("[user] wrenches [victim]'s dislocated [limb.plaintext_zone] around painfully!"), span_danger("You wrench [victim]'s dislocated [limb.plaintext_zone] around painfully!"), ignored_mobs=victim)
+ to_chat(victim, span_userdanger("[user] wrenches your dislocated [limb.plaintext_zone] around painfully!"))
+ victim.apply_damage(10, BRUTE, limb, wound_bonus = CANT_WOUND)
++||||||| 2b11c36ee3a
++ user.visible_message(span_danger("[user] wrenches [victim]'s dislocated [limb.plaintext_zone] around painfully!"), span_danger("You wrench [victim]'s dislocated [limb.plaintext_zone] around painfully!"), ignored_mobs=victim)
++ to_chat(victim, span_userdanger("[user] wrenches your dislocated [limb.plaintext_zone] around painfully!"))
++ limb.receive_damage(brute=10, wound_bonus=CANT_WOUND)
++=======
+ user.visible_message(span_danger("[capitalize(user.declent_ru(NOMINATIVE))] болезнено прокручивает вывих в [limb.ru_plaintext_zone[PREPOSITIONAL] || limb.plaintext_zone] у [victim.declent_ru(GENITIVE)]!"), span_danger("Вы болезненно прокручиваете вывих в [limb.ru_plaintext_zone[PREPOSITIONAL] || limb.plaintext_zone] у [victim.declent_ru(GENITIVE)]!"), ignored_mobs=victim)
+ to_chat(victim, span_userdanger("[capitalize(user.declent_ru(NOMINATIVE))] болезнено прокручивает ваш вывих в [limb.ru_plaintext_zone[PREPOSITIONAL] || limb.plaintext_zone]!"))
+ limb.receive_damage(brute=10, wound_bonus=CANT_WOUND)
++>>>>>>> origin/translate
++<<<<<<< HEAD
+ victim.apply_damage(15, BRUTE, limb, wound_bonus = CANT_WOUND)
+ victim.visible_message(span_danger("[user] finishes resetting [victim.p_their()] [limb.plaintext_zone]!"), span_userdanger("You reset your [limb.plaintext_zone]!"))
++||||||| 2b11c36ee3a
++ limb.receive_damage(brute=15, wound_bonus=CANT_WOUND)
++ victim.visible_message(span_danger("[user] finishes resetting [victim.p_their()] [limb.plaintext_zone]!"), span_userdanger("You reset your [limb.plaintext_zone]!"))
++=======
+ limb.receive_damage(brute=15, wound_bonus=CANT_WOUND)
+ victim.visible_message(span_danger("[capitalize(user.declent_ru(NOMINATIVE))] заканчивает лечение вывиха своей [limb.ru_plaintext_zone[GENITIVE] || limb.plaintext_zone]!"), span_userdanger("Вы вправили вывих своей [limb.ru_plaintext_zone[GENITIVE] || limb.plaintext_zone]!"))
++>>>>>>> origin/translate
++<<<<<<< HEAD
+ victim.apply_damage(10, BRUTE, limb, wound_bonus = CANT_WOUND)
+ user.visible_message(span_danger("[user] finishes resetting [victim]'s [limb.plaintext_zone]!"), span_nicegreen("You finish resetting [victim]'s [limb.plaintext_zone]!"), ignored_mobs=victim)
+ to_chat(victim, span_userdanger("[user] resets your [limb.plaintext_zone]!"))
++||||||| 2b11c36ee3a
++ limb.receive_damage(brute=10, wound_bonus=CANT_WOUND)
++ user.visible_message(span_danger("[user] finishes resetting [victim]'s [limb.plaintext_zone]!"), span_nicegreen("You finish resetting [victim]'s [limb.plaintext_zone]!"), ignored_mobs=victim)
++ to_chat(victim, span_userdanger("[user] resets your [limb.plaintext_zone]!"))
++=======
+ limb.receive_damage(brute=10, wound_bonus=CANT_WOUND)
+ user.visible_message(span_danger("[capitalize(user.declent_ru(NOMINATIVE))] заканчивает лечение вывиха [limb.ru_plaintext_zone[GENITIVE] || limb.plaintext_zone] у [victim.declent_ru(GENITIVE)]!!"), span_nicegreen("Вы вправили вывих [limb.ru_plaintext_zone[GENITIVE] || limb.plaintext_zone] у [victim.declent_ru(GENITIVE)]!"), ignored_mobs=victim)
+ to_chat(victim, span_userdanger("[capitalize(user.declent_ru(NOMINATIVE))] заканивает лечение вывиха вашей [limb.ru_plaintext_zone[GENITIVE] || limb.plaintext_zone]!"))
++>>>>>>> origin/translate
code/datums/wounds/pierce.dm++<<<<<<< HEAD
+ var/bleeding_wording = (!limb.can_bleed() ? "holes" : "bleeding")
+ user.visible_message(span_green("[user] cauterizes some of the [bleeding_wording] on [victim]."), span_green("You cauterize some of the [bleeding_wording] on [victim]."))
+ victim.apply_damage(2 + severity, BURN, limb, wound_bonus = CANT_WOUND)
++||||||| 2b11c36ee3a
++ var/bleeding_wording = (!limb.can_bleed() ? "holes" : "bleeding")
++ user.visible_message(span_green("[user] cauterizes some of the [bleeding_wording] on [victim]."), span_green("You cauterize some of the [bleeding_wording] on [victim]."))
++ limb.receive_damage(burn = 2 + severity, wound_bonus = CANT_WOUND)
++=======
+ var/bleeding_wording = (!limb.can_bleed() ? "дыр" : "кровотечений")
+ user.visible_message(span_green("[capitalize(user.declent_ru(NOMINATIVE))] прижигает часть [bleeding_wording] на [victim.declent_ru(PREPOSITIONAL)]."), span_green("Вы прижигаете часть [bleeding_wording] на [victim.declent_ru(PREPOSITIONAL)]."))
+ limb.receive_damage(burn = 2 + severity, wound_bonus = CANT_WOUND)
++>>>>>>> origin/translate
code/datums/wounds/slash.dm++<<<<<<< HEAD
+ var/bleeding_wording = (!limb.can_bleed() ? "cuts" : "bleeding")
+ user.visible_message(span_green("[user] cauterizes some of the [bleeding_wording] on [victim]."), span_green("You cauterize some of the [bleeding_wording] on [victim]."))
+ victim.apply_damage(2 + severity, BURN, limb, wound_bonus = CANT_WOUND)
++||||||| 2b11c36ee3a
++ var/bleeding_wording = (!limb.can_bleed() ? "cuts" : "bleeding")
++ user.visible_message(span_green("[user] cauterizes some of the [bleeding_wording] on [victim]."), span_green("You cauterize some of the [bleeding_wording] on [victim]."))
++ limb.receive_damage(burn = 2 + severity, wound_bonus = CANT_WOUND)
++=======
+ var/bleeding_wording = (!limb.can_bleed() ? "порезов" : "кровотечений")
+ user.visible_message(span_green("[capitalize(user.declent_ru(NOMINATIVE))] прижигает часть [bleeding_wording] на [limb.ru_plaintext_zone[PREPOSITIONAL] || limb.plaintext_zone]."), span_green("Вы прижигаете часть [bleeding_wording] на [limb.ru_plaintext_zone[PREPOSITIONAL] || limb.plaintext_zone]."))
+ limb.receive_damage(burn = 2 + severity, wound_bonus = CANT_WOUND)
++>>>>>>> origin/translate
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
🙏 Слияние с восходящим потоком
О великий восходящий поток, спасибо что приносишь нам свои дары контента и багфиксов
🗺️ Изменение Карты
В этом ПРе затронут файл не станционной карты. Может и не один.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
About The Pull Request
мерге