Commit Graph

3840 Commits

Author SHA1 Message Date
Rohesie
2a695064d4 Fixes table stacking exploit (#54650)
Tables could be placed on top of each other, leading to stacking of glass tables, and infinite sin. This doesn't cover anything close to all of it, but it's a good patch for now.
2020-10-31 22:42:20 -07:00
EOBGames
bbc9e40d22 Corrects the Chisel Description (#54711) 2020-10-31 21:35:27 -07:00
Krysonism
9ff7944101 [READY] decorations loot crate! +3 new fancy carpets! (#54612)
* base

* fixes

* crate

* Update code/game/turfs/open/floor/fancy_floor.dm

Co-authored-by: Fikou <piotrbryla@onet.pl>

* adds the crate to the pool.

* the crate is pretty rare, why not let it drop four items?

* Update lootdrop.dm

Newline phone edit

* ungoofed

Co-authored-by: Fikou <piotrbryla@onet.pl>
2020-10-30 22:12:34 +01:00
Rohesie
c55bb1b6c8 Basepixels (#54652) 2020-10-28 20:31:13 -07:00
Kylerace
6e6084f537 Holodeck bedsheets no longer drop cloth when cut (#54548)
they now check if they have HOLOFLAG_1 and if they do they dont drop cloth
2020-10-27 03:53:12 -03:00
Timberpoes
840312474b Adds game logging to welding airlocks, firedoors and lockers (#54593) 2020-10-25 23:38:47 -04:00
81Denton
b76f4b33b9 no more floating resin (#54558)
Co-authored-by: Denton <d@ent.on>
2020-10-26 01:15:40 +08:00
Time-Green
e0fefcc07e [READY] Multilayer plumbing machinery (#54081)
* multilayer machinery!

* adds layer mode to plungers for changing plumbing layers

* minor fixes

* Adds more feedback to plunger layer mode and places proper checks for layer changing
2020-10-23 10:41:23 +02:00
Kylerace
86be8c0548 Makes dressers not drop wood when they have the NODECONSTRUCT flag (#54534) 2020-10-23 00:15:26 -03:00
Rohesie
c07df08690 Standardizes attack chain signal returns and fixes a tk bug (#54475)
The attack chain is a bit of a mess, and the introduction of signals hasn't helped in simplifying it.

In order to take a step into untangling this, I re-ordered the attack signals to no longer be by source type and instead to be grouped more modularly, as they are all members of the attack chain and function similarly. They all share the trait of potentially ending the attack chain via a return, but had several different names for it. I joined it into one.

Additionally, fixed a tk bug reported by @Timberpoes by adding a signal return check at the base of /mob/proc/RangedAttack

Lastly, removed the async call of /datum/mutation/human/telekinesis/proc/on_ranged_attack, which was added as a lazy patch to appease the linter complaining about a sleep on a signal handler (namely in /obj/singularity/attack_tk). Fixed the problem using timers.

Also cleaned some code here and there.
2020-10-21 05:42:38 +01:00
Qustinnus
74755a5a3a Audio falloff re-work, and increased audio range. (#54362)
imo; the ss13 audio-scape is quite barren, you can only hear most things if you can see them, which in my opinion doesn't make much sense. This changes that so you can hear further away, but falloff is much higher, so in reality you will only hear things relatively quietly when they're out of sight.

This PR increases the hearing distance of most sound by 9, excluding sounds such as antag items that are meant to be used stealthily

This PR also replaces Byond's inbuilt falloff system with something I made, (And thanks to potato for helping me throw together a formula for it). This fall-off system makes sound fall off more naturally, with sounds being full volume within a certain range, and then softly falling off until they are completely quiet. This makes for a smoother transition between "This sound is full volume" and "I dont hear this sound".

Co-authored-by: ff <ff>
2020-10-20 17:14:16 -07:00
Rohesie
29ec525147 Implements timed_action_flags for do_after-like procs (#54409)
Originally I wanted to fix an issue where the `get_up()` `do_after()` would ignore the callback checks, because it was `uninterruptible`, so that made me refactor these procs to allow for higher granularity on checks and standardize behavior a bit more.
There's more work to be done for them, but one thing at a time.

* Removes the `uninterruptible` check in favor of the more granular `timed_action_flags`
* Cleans code on the `do_atom`, `do_after_mob`, `do_mob` and `do_after` procs to standardize them a little better.
2020-10-19 17:06:49 -04:00
Emmanuel S
18bd7474b5 Adds the New-and-Improved Training Machine, Training Toolbox! (#54133)
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
2020-10-16 15:56:51 -07:00
Dennok
74836458c1 Shuttle tweak and fix (#54395)
Fix lavaland podding
Make lavaland pod destinations hidden
Removed unused variables from connect_to_shuttle() proc
Shuttle consoles remove old custom port id from possible destinations when connects to new shuttle
Custom ports keeps clear from unwanted numbers.
Now shuttle machinery property connects to additional loaded shuttles.
Add some docking_port register logging and safety.
2020-10-15 14:27:19 -03:00
ArcaneMusic
1b7189d63d Arcononomy: Personal Departmental Cargo Ordering (#53881)
Alright crew, here's the 4-11. This adds a new Modular Computer app, that works functionally identically to the cargo console. but before we delve into that, lets hit the adjacent aspects first.

Cargo Packs now contain a new variable, access_view, that is only applied to cargo packs viewed in this app. It determines the access level required to be able to see those individual packs, in the same way that you need certain accesses to open certain crates anyway. This means that outside of certain inter-departmental crates that see overlap in who can/should be able to order it, heads can browse and purchase crates based on their department's needs and wants.

The cargo ordering console has been renamed on the DM side. Because now that there's another, similar cargo ordering DM that was going to get confusing fast, as just calling it "Console" gets on my nerves and is harder to spot on VSC for me and everyone going forward forever.

Cool, back to buying stuff. heads of staff can download the cargo ordering app on tablets and laptops only, and it gives them access to purchase cargo using their department funds. These purchases are made against the user's department budget, and enables purchasing supplies with cargo without needing to beg them to use their money on your junk, adding it fully to the cargo shuttle's next load, while still giving cargo the first right to refusal if they wanted to, for some reason.
From there on out, cargo's responsibility is primarily getting the goods you bought to you, which is technically already their job!.
2020-10-15 17:30:50 +03:00
Yenwodyah
50b3a441d7 Fix guillotine buckling (#54357)
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-10-13 18:44:48 -07:00
ZeWaka
9629feed35 Converts A && A.B into A?.B (#54342)
Implements the ?. operator, replacing code like A && A.B with A?.B

BYOND Ref:
When reading A?.B, it's equivalent to A && A.B except that A is only evaluated once, even if it's a complex expression like a proc call.
2020-10-13 16:43:53 -03:00
Ghilker
c4c36e9add holosign little refractor (#54287) 2020-10-12 13:58:56 -03:00
Rohesie
af65c90125 Mobility refactor: no more update_mobility() (#54183)
This is a pretty big change all around. The gist of it is that it moves the mobility_flags into traits or variables that can track the sources, and to which we can append code to react to the events, be it via signals or via on_event-like procs.

For example, MOBILITY_STAND could mean, depending on context, that the mob is either already standing or that it may be able to stand, and thus is lying down.

There was a lot of snowflakery and redefinitions on top of redefinitions, so this is bound to create bugs I'm willing to fix as I learn them.

The end-goal is for every living mob to use the same mobility system, for the traits to mean the same among them, and for no place to just mass-change settings without a way to trace it, such as with mobility_flags = NONE and mobility_flags = ALL

Fixes AIs being able to strip nearby people. They've lost their hands usage.
2020-10-09 16:04:30 -07:00
Cimika/Lessie/KathyRyals
2557727e43 Added science berets. (#54255) 2020-10-09 19:36:46 -03:00
girl
2e08a1f508 BSbodybags inherit heaviest item weight + Easier to escape the disarm/BSbodybag combo (#54065)
Bodybags now inherit the weight of their heaviest item. If it doesn't have a weight (people), we assume bulky since things like people can be firecarried or whatever.

It now takes less time to get out of a bag (20 > 12 secs), and the progress bar is unbreakable unless you get incapacitated. This means people interested in using it to kidnap can still do so but it requires considerably more effort that isnt based on a latency difference and a quick disarm. The timer still runs down if you open the bag and try to put them back in but good attempt😏.

This also fixes an issue with the BSB where it was picking up or otherwise doublecalling checks from inheritance.
2020-10-09 17:30:16 -03:00
ArcaneMusic
19d1adc78a [s]Showers now properly react with 10u per tick instead of 1000u. (#54236)
Turns out what I thought was reagent units used per reaction was actually reaction multiplier in #53377, and it flew under the radar until literally 15 minutes ago.

This adjusted the reaction quantity down to 0.05, which with the 200 unit reagent volume of the showers, equates to about a 10u reaction per tick, ya know, rather high but reasonable considering that before it was mistakenly set to *5 instead, which meant you could de-husk a patient in a literal single tick with 1 unit of synthflesh.
2020-10-09 01:47:46 -03:00
Krysonism
73818aed45 Converts Pizza to use the new food component. (#53641)
pizzas now use processing component
2020-10-08 11:53:13 +02:00
Mickyan
fb76d6d38a Allows rotating statues with alt click (#54179)
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-10-06 18:30:22 -07:00
ShizCalev
b3765c4194 Merge pull request #54048 from nicbn/tank-frames
Adds tank holders
2020-10-06 18:12:17 -04:00
Qustinnus
cf11ade4d7 Nerfs uranium material effects, and changes how effective materials are on sheets and statues (#54178) 2020-10-06 13:01:48 -07:00
Rohesie
db54913fe6 Mobility refactor: UI, pull and lying down edition (#54078) 2020-10-03 17:23:21 -07:00
ShizCalev
2d6eecc2e7 Update code/game/objects/structures/tank_holder.dm 2020-10-02 12:33:44 -04:00
ShizCalev
744d271514 Update code/game/objects/structures/tank_holder.dm 2020-10-02 12:27:44 -04:00
ShizCalev
d83812192c Update code/game/objects/structures/tank_holder.dm 2020-10-02 12:24:03 -04:00
Nicolas Nattis
0e3400fd40 Komponemts 2020-10-01 20:37:57 -03:00
Nicolas Nattis
a9bc0b0fbe Code improvement v1 2020-10-01 17:15:26 -03:00
Nicolas Nattis
118349e362 Merge branch 'master' of https://github.com/tgstation/tgstation into tank-frames 2020-09-30 12:34:32 -03:00
Timberpoes
ff92111c96 You can now throw things over raillings. (#54062)
Any movable atom with an attached thrownthing datum can now pass harmlessly over railings, and potentially fall safe down to the z-level below.
2020-09-30 01:26:17 -03:00
Qustinnus
eca964db35 Ports soup, snacks, icecream, salads and meat to newfood (#54028)
Ports soup, snacks, icecream, salads and meat to newfood
2020-09-29 20:36:27 -07:00
nemvar
963779471a Merge pull request #53906 from Rohesie/smoothing
[READY] Refactor icon smoothing to use 8-bit bitmasking
2020-09-29 17:07:12 +02:00
L
3f9244752e nemvar more like nemnerd 2020-09-29 08:47:47 -03:00
Rohesie
3cc7733f34 Moblity refactor: hands blocked and restrained edition. (#53981)
Splits the restrained() proc into component traits: TRAIT_HANDS_BLOCKED for the general inability to use hands and TRAIT_RESTRAINED for the more specific condition that permits arrests.
    Code moved away from the update_mobility() proc so it doesn't have to wait for an update, instead changing based on events. The idea is to eventually kill that proc.
    Wrapper proc added for setting the handcuffed value so we can react to the event of it changing.
    Kills the RestrainedClickOn() proc. That is now just an UnarmedAttack(), in where the ability to use hands can be checked. Monkeys keep their bite attack and humans their self-examine.
2020-09-29 11:23:43 +01:00
AnturK
5acc1a2bcd Duplicating statues sanity (#54018) 2020-09-28 19:02:05 -03:00
Nicolas Nattis
a7b2f754b4 Fixes 2020-09-28 16:01:56 -03:00
Nicolas Nattis
d46613fa9a Allows to throw things over tank holders 2020-09-28 15:59:01 -03:00
Nicolas Nattis
1285bfd9d0 Code improvement and small fix 2020-09-28 15:54:23 -03:00
Nicolas Nattis
735e4ae373 More fixes 2020-09-28 15:32:53 -03:00
Nicolas Nattis
7a70c4bf5d Fix 2020-09-28 15:18:00 -03:00
Nicolas Nattis
5848ee5fc7 Merge branch 'master' of https://github.com/tgstation/tgstation into tank-frames 2020-09-28 15:06:44 -03:00
Nicolas Nattis
c53841c1df Adds the tank holder 2020-09-28 15:04:55 -03:00
antropod
7a32cbebe9 Fixes for Syndicate Forgotten Ship (#53832)
* Fixes missing implant on Syndicate Ship Captain:
  Syndicate Ship Crew Members have their implants. There are 2 boxes of syndicate firing pins in captains locker, but captain can't use them. This change fixes that. Captain had implant initially, but it was removed accidentally in #50597

Fixes spare magazines spawned in lockers:
  Captain has 2 mags for APS instead of 9mm mags in their locker.
  Crewmembers have 9mm mags instead of 10mm mags.
  10mm ammoboxes replaced with 9mm.
  Why do we even have 10mm mags, if crew spawns with makarov and captain spawns with APS.
2020-09-28 12:05:24 -03:00
L
fb38066f09 bitmask 2020-09-26 12:14:27 -03:00
L
5a21a0d92f objs 2020-09-26 12:14:26 -03:00
L
bf1878713f nodiag 2020-09-26 12:14:25 -03:00