Commit Graph

32144 Commits

Author SHA1 Message Date
kingofkosmos
3263decaad Personalized combat messages part 2 (#52890)
Adds more "personalized" combat messages for all participants in a fight: the attacker, the victim and the spectators
2020-08-13 11:34:57 -03:00
LemonInTheDark
f66dc66ae5 Fixes tesla coil hell contraptions (#52889)
Removes the ability for tesla coils to generate power with more then 85% efficiency.
Cleans up the remainder of my zap_act refactor, making the proc better fit its usecase and removing some unneeded code.
Adds a check in the tesla coil zap() proc that makes sure we're not trying to use power that's not there.
Removes some seemingly complex math from said proc, replaces it with a static 20% draw * the efficiency.
2020-08-13 11:32:27 -03:00
Rohesie
7586d20c23 Fixes staminacrit not paralyzing (#52906)
Additionally removes the now-superfluous stam_paralyzed variable. We can already track this with the incapacitated effect from the stamina source.
2020-08-13 14:51:56 +12:00
Rohesie
c5feef02df Fixes a slime emote runtime (#52896)
It wasn't checking the parent call return value.
This is the runtime:
2020-08-13 14:05:13 +12:00
Rohesie
14f5c6f918 Floored trait (#52884)
Refactors mobility, so we respond to more things as events.
One has_legs and has_arms are turned into events we'll be close to be able to eschew update_mobility()
2020-08-13 14:04:33 +12:00
Rohesie
b0726e032b Icon smooth refactor (#52864)
bitflag list construct added: an associative list of bitflags for cheap and quick element comparison between two lists using the same system.

    canSmoothWith list turned into a bitflag list.

    smoothing_groups list added to substitute the type path list.

    smoothing procs turned into atom procs, refactored and optimized a bit.

    smooth directions redefined in order to fit in 8 bits for a future smoothing system

    some variable names changed, foreseeing a second smoothing system

    SMOOTH_OBJ flag added, for things that need to scan turfs for smoothing. The old locate() optimization has the risk of returning false negatives by finding a child and returning null while there might be one of the wanted type as well, as it doesn't match the type exactly.

    SMOOTH_TRUE and SMOOTH_MORE condensed into SMOOTH_CORNERS. The old behavior can be replicated using smoothing groups without loss.

    Does very minor code cleanup.

    Processing-wise didn't find a noticeable difference. The system loses on init a bit by setting the bitflag_lists, and by scanning whole turf contents for object smoothing (increasing accuracy), and gains by making less checks per target to smooth, through the same bitflag_lists.

    Memory-wise there should be a small improvement, given that on the old system we had 63512 canSmoothWith lists (a few typelists, most unique), and on this new system canSmoothWith + smoothing_groups are both bitflag_lists from the same pool, totaling 46 in number.

Could be tested a bit to see if I missed any icons not properly smoothing.
2020-08-13 14:03:49 +12:00
ArcaneMusic
71660f8f10 Adds the Account Registration Machine. (#52745)
This adds the Account Registration Machine to the game, it's obtained at the computerized recordkeeping tech (Rather far in to the tech tree) and only obtained from the security lathe to prevent access from being too widespread, because I don't trust players have access to this until at LEAST half the shift has gone by. What this enables you to do is to create new accounts for blank IDs. The accounts won't have a parent payment account until actually assigned a job by a card console, but for all intents and purposes they'll act and interact like a standard, station bank account.
2020-08-12 18:43:08 -03:00
Angust
30a04a4f65 Fixes space vine/kudzu aggressive spread friendly fire and replaces ex_act (#52650)
* Fix spacevine friendly fire and replace explosions

* Newline at end of file

* Moved var into for, replaced silly range 0, added autodoc, changed comment

* Removed accidental parentheses

* Travis rebuild, and minor fix

* Travis rebuild

* New Travis rebuild attempt

* Changed to playsound(M
2020-08-12 21:15:48 +02:00
Fhaxaris
a4cc16d2a3 No more flipping your gun instead of reloading. (#52868)
Now you do both regardless.
2020-08-12 14:20:03 -03:00
spessbro
8acd9d5a1e New exports & bounties (#52428)
* Update organs.dm

tails :)

* durathread, plastic and cloth exports

* slime extracts for cargo

deffo wont get snatched up by an antag on the way

* paperwork bounties

* cat ears and nerf cat tail value

* buff hypercharged core & nerf rainbow core

* added humanlike meats

* soap bounty

* fun artisanal stuff to export

* already soap bounty i'm dumb

* lower bounty rewards

* `lower plastic value

* moving raw meat exports

* adding humanoid food values

* added export values to human meats

* added sheetza and meat blocks to exports

* nerfed the values big time

* no more plastique
2020-08-12 11:41:13 -04:00
Time-Green
b96829252e Plumbing teleporters (#51881)
* Makes the plumbing RCD accept every object

* Adds simple plumbing teleporter

* Polishes plumbing teleporters

* Fixes runtime

* this to src

* circuitboard doesnt need anchoring

* Fixes overlay flickering being weird

* Makes the Chemical Recipient's positioning less awkward

* Comments and documentation

* uh

* Fixes dme

* Revert "uh"

This reverts commit af6f30089f9f31d527f6ab3e2b1c72cf6ab6d60d.

* Update code/_globalvars/lists/construction.dm

Co-authored-by: girl <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>

* Update code/game/objects/items/RCD.dm

Co-authored-by: girl <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>

* Update code/modules/plumbing/plumbers/_plumb_machinery.dm

Co-authored-by: girl <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>

* uncasts loop

* update icons

Co-authored-by: girl <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>
2020-08-12 11:37:55 -04:00
zxaber
c8ec453c1e Updates Fission360 (#52783) 2020-08-12 17:10:51 +03:00
Kyle Spier-Swenson
641b880a8d Fix cdn rsc (#52886)
I was converting this to use length so it didn't have to care if the list existed or not, and forgot to remove the .len. this broke cdn .rsc files because length(num) returns 0.
2020-08-12 15:58:20 +12:00
Fikou
0f5d054e88 fixes ice box pods landing 3 tiles away (#52844)
they now land in a random place on the same z level.
the docking ports for pods check for the lavaland area for random tiles place themselves on, but ice moon doesnt have a lavaland, so they land in the default space, which is 3 tiles away
2020-08-11 22:53:06 -03:00
Kyle Spier-Swenson
8df93ba39e [Ready] CDN browser assets! (#52681)
Rewrites the asset_cache system to handle sending assets to a CDN via a webroot.

see https://github.com/MrStonedOne/tgstation/blob/asset-cdn/code/modules/asset_cache/readme.md

Fixed a lot of bugs with assets, removed some dead code.

Changes:
    Moved asset cache code to transport datums, the currently loaded one is located at SSassets.transport, asset cache calls made before the config is loaded use the simple browse_rsc transport.
    Added subsystem call for when the config loads or reloads.
    Added a webroot CDN asset transport. assets are saved to a file in a format based on the file's hash (currently md5).
    Assets that don't use get_asset_url or get_url_mappings (such as browser assets referred to by static html files like changelog.html or static css files) can be saved to browse_rsc even when in cdn asset mode by setting legacy to TRUE on the datum returned by register_assets
    Added a system for saving assets on a cdn in a hash based namespace (folder), assets within the same namespace will always be able to refer to each other by relative names. (used to allow cdn'ing font awesome without having to make something that regenerates it's css files.).
    The simple/namespaced asset cache datum helper will handle generating a namespace composed of the combined md5 of everything in the same datum, as well as registering them properly.
    Moved external resource from a snowflake loaded file to a config entry, added it to resources.txt
    To ensure the system breaks in local testing in any situation that wouldn't work in cdn mode, the simple transport will mutate the filenames of non-legacy and non-namespaced assets and return this with get_asset_url.
    Simple transport's passive send of all roundstart assets to all clients is now a config that defaults to off. this is to break race conditions during local testings from devs accidentally relying on this instead of using send() properly.

cl
refactor: Interface assets (js/css/images) can now be managed using an external webserver instead of byond's one at a time file transfer queue.
admin: Adds admin verb toggle-cdn that allows admins to disable the external webserver asset transport and revert to the old system. Useful if the webserver backing this goes down (thanks cloudflare).
config: New config file, resources.txt, (must be loaded by an $include statement from the main config)
server: The external_rsc_urls.txt config has been moved to the main config system.
/cl
Porting notes:

Interface webpages must refer to their assets (css/js/image/etc) by a generated url, or the asset must register itself as a legacy asset. The system is designed to break in localtest (on simple/legacy mode) in most situations that would break in cdn mode.

Requires latest tgui.

The webserver must set the proper CORS headers for font files or font awesome (and other fonts) won't load.

/tg/'s webserver config: https://gist.github.com/MrStonedOne/523388b2f161af832292d98a8aad0eae
2020-08-12 13:51:43 +12:00
nemvar
7f5b6e3b34 Adds a recommended fps option. (#52850)
Adds a recommended fps option. Setting fps to -1 now sets client.fps to RECOMMENDED_FPS.
Sets recommended fps as the default option for new players.
Current value for recommended fps is 40.
2020-08-11 22:25:29 -03:00
Jared-Fogle
00c593026b You can now craft cable restraints directly from the radial menu (#52614) 2020-08-11 21:54:22 -03:00
LemonInTheDark
d71a896267 Tweaks voice analyzers, pulsing a grenade's bomb wire now uses the grenade's timer delay. (#52710)
Makes suicide bombing with voice analyzers harder, while keeping the more fun behavior by adding some tells and delays.
Things attached to a grenade's pulse wire use the grenades timer, rather then just insta booming.
2020-08-11 20:02:36 -03:00
WarlockD
6317c371c2 Various Paper bug fixes (#52470)
* Ugh too tired fix latter

* Ok think its fixed, still need to make the stamp working

* Major fixes done, but still the ui dosn't pop up once you examine the door

* Ok you can read doors now, that was annoying.

Ok we done

* Update paper.dm

oh fix

* I have DONE it! Alright

* Miner fixes on order

* Update tgui.bundle.js

* Update code/modules/paperwork/paper.dm

Sure

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/paperwork/paper.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Alright some fixes

* Update tgstation.dme

* Revert "Update tgstation.dme"

This reverts commit 3eaa48d9fcfa2645663420165c39643c3ae5d939.

* Update tgui.bundle.js

* Update code/datums/components/honkspam.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/datums/components/honkspam.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/paperwork/paper.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/paperwork/paper.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Bahhh...me..so..tired

* pointless uistate gooone

* Update tgui.bundle.js

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-11 23:39:10 +03:00
Timberpoes
d2fa99ff76 Telekinesis works on interacting with items. (#52834)
Rolls TK checks into baseline mob can_interact_with code.

TK check code unashamedly stolen from /mob/living/carbon/human/shared_living_ui_distance

This change touches every single can_interact interaction involving a mob and an atom, except /obj/machine which overrides can_interact without calling the parent and thus is unaffected by this change.

It enables any functionality that would require a can_interact() check to return TRUE. It effectively works alongside the adjacency check and comes into play if the adjacency check would fail.
2020-08-11 15:51:33 -03:00
Timberpoes
8d2ebb14e8 Fixed runtime involving crew pinpointers by removing indestructibility from non-nuke pinpointers (#52845)
Remove invulnerability from crew pinpointer
2020-08-11 12:18:08 -03:00
Jared-Fogle
3cf450d564 Give mood buff for defibbing someone (#52798) 2020-08-11 11:55:46 -03:00
Fikou
450e1c166a magboots now update speed (#52839) 2020-08-11 11:15:26 -03:00
Timberpoes
215f036bb9 TRAIT_NODEATH blocks succumbing (#52836) 2020-08-11 11:13:17 -03:00
AnturK
7dff0d66ad Fixes admin add component log (#52840) 2020-08-11 11:12:21 -03:00
zxaber
94c4367ede Support for expansion-class modPC hardware (#52644)
* Support for expansion-class modPC hardware

* end of the line

* As requested

Did anyone know that the tablet vendor was attaching the wrong ModPC printer? I bet no one knew that.

* update
2020-08-11 13:40:05 +03:00
Rohesie
8f917ff1d9 immobilized (#52578)
Adds an immobilized trait.
    Adds procs for several variable changes so we can respond to their events.
    Adds some signals for said variables changing.

Need to turn the variation in number of usable legs and arms (get_num_legs() and get_num_arms()) into events we can respond to, but they are pretty annoying to do so. Probably for a different PR.
2020-08-11 14:44:01 +12:00
uomo
c3bae86da9 Fixing icon state. (#52829) 2020-08-10 21:32:03 -03:00
uomo
52a090af65 Consistency for station pets. (#52717)
* Station pets!

* Makes Lia and Sgt Araneus actual subtypes.

* Fixes some vars.

* Turns on AI for Cayenne and Lia, makes Lia neutral faction.

* Gives Lamarr a description.

* Pettable status and emotes for HoS and syndicate pet..

* Tom the mouse consistency.

* Comment correction.
2020-08-10 17:46:03 -03:00
Jared-Fogle
8b05335e19 Adds feedback to the supermatter exploding while in a locker (#52762)
* Adds feedback to the supermatter exploding while in a locker

* Fix z level check
2020-08-10 17:40:05 -03:00
Fikou
2b9e047ca4 cult overlays are now anchored (#52821)
should fix singularity hammers moving cult floor obj overlays and fix #47316
Also fixes #50978
2020-08-10 17:28:15 -03:00
Timberpoes
26afd77419 Species code can go fellate itself (#52774)
Fixes #51787
Fixes #44981

Species code is the fucking worst.

Lizard tails and spikes are broken outside of admin intervention and neither work nor apply when spawning into the game from the main menu.

Functionality was broken in #49062
Functionality was further broken in #49771

This code makes my soul hurt. I don't have the time or patience to refactor it. This should work around all the functionality broken in the above two PRs until such a time as someone fixes this mess.

If anyone does that, may God have mercy on their soul, for this code has none.
2020-08-10 17:09:11 -03:00
ShizCalev
a611971abe Fixes floorbots potentially ending up with negative tiles in their inventory. (#52772) 2020-08-10 17:03:43 -03:00
Arkatos1
52ef73b88c Pipe cleaner cable color fix (#52759)
This PR fixes a bug where service cyborgs were unable to set a color of the pipe cleaner cable they possess due to not setting an actual color code for a cable colorization and a duplicit name variable.

Also adds an option for cancelling color choosing input as per maintainer suggestion.
2020-08-10 17:00:38 -03:00
ShizCalev
24eee0440d Fixes nations and banners not using global job lists (#52763) 2020-08-10 16:59:56 -03:00
Jared-Fogle
82125e06eb CPR will now automatically repeat, but you can no longer do it multiple times at once (#52521)
* CPR will now automatically repeat

* Fix being able to do multiple CPRs at once, styling

* Make changes as per review

* Refactor into loop

* Change while TRUE to do while

* Change conditional

* Explicitly set 3 SECONDS
2020-08-10 16:34:01 -03:00
TiviPlus
b4fe4f717b Refactors area stuff (#52751)
-bitfielded a bunch of bools on /area, I left some untouched cus they get called a lot
-Unused vars
-Fixed a var pretending to be a fake bool
-Probably more
2020-08-10 16:31:59 -03:00
Ryll Ryll
b7ae6fc64d Refactors Temporal Scarring, changes how it works, removes longtimer quirk (#52688)
* changes temporal scarring

* hhh why is there no ckey

* note

* oops

* fixed
2020-08-10 16:29:27 -03:00
Ryll Ryll
938606d9bb Fixes commendations breaking the shuttle (#52769)
* my heart skips a beat, my heart skips a beat

* Update code/__HELPERS/hearted.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* case insensitive

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-10 16:27:56 -03:00
ArcaneDefence
1d8af989ad Fixes some pacifism oversights (#52820) 2020-08-10 13:24:25 -04:00
ShizCalev
399ab1ee8f Fixes a couple things not sending icon update signals (#52778) 2020-08-10 11:24:09 -04:00
Ryll Ryll
e00b753b61 Fixes clothing fixing one more time (#52789)
* this better be the last time i s2g

* sensor

* remove return

* cap it
2020-08-10 11:23:45 -04:00
YPOQ
4cc0e98853 Fixes failed implosion breaking implosion compressor (#52812) 2020-08-10 11:23:23 -04:00
Paxilmaniac
7d29a40568 Adds Large Welding Fuel Tanks (#52808)
* Adds the large fuel tank

These are actually just tactical nukes on wheels but whatever

* Gives engineering these new tanks

Because who else would need them hm?
2020-08-10 11:22:38 -04:00
WarlockD
ff6d4ebe4a Blacklist fix for self crafting (#52804)
* First fix

* Ugggh
2020-08-10 11:21:36 -04:00
ike709
4b529e30cf CentCom Galactic Ban DB: Bigger and Better Edition (#52588)
Admins will now be able to look up a player's bans from several other servers via the player panel.

My hope is that porting this to as many servers as possible will encourage more servers to make their bans publicly viewable so they can be included in this system. Direct access to a server's database is not required (or even supported).

Supported servers:

    BeeStation
    /vg/station
    OracleStation
    FTL13
    Fulpstation
    TGMC

Planned support (WIP):

    World Server
    Yogstation
    Halo: SSE
    Any other server willing to make their bans publicly visible.

API: https://centcom.melonmesa.com
Source: https://github.com/bobbahbrown/CentCom
Changelog

cl ike709 and bobbahbrown
add: Admins can now see your bans on (some) other servers.
/cl
2020-08-10 08:33:11 +12:00
tralezab
63382211d8 Mafia Lobby Reworks, Panel Redesign, Abstaining, and More
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-08-08 23:36:37 +03:00
Fikou
560364672f Dropping Now, Stand By For Titanfall: Mecha Orbital Pad (#52224)
* mecha orbital pad

* mecha orbital pad 2

* mecha orbital pad 3

* mecha orbital pad 4

* mecha orbital pad 5

* mecha orbital pad 6

* mecha orbital pad 7

* fixing conflicts

* Apply suggestions from code review

Co-authored-by: Rohesie <rohesie@gmail.com>

* conflicts and map and tgui and icons bro

* fix

* wa

Co-authored-by: Rohesie <rohesie@gmail.com>

* tguy

* Removed eslint ignore

Shouldn't be impacting the build.

* Update code/game/machinery/computer/mechlaunchpad.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* some fun stuff

* cool desc

* final changes hopefully

* late initalizing

* bitflags

* one last thing

* rohesie stuff

* Update tgui.bundle.js

* mm

* Update tgui.bundle.js

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-08-08 23:05:53 +03:00
Timberpoes
c3f23edfc0 Re-enables cyborg cameras through camera consoles and AI eye vision. (#52767)
* Better camera logic

* AI eye cameras can see through borgo cams

* Switch that to being able to see through any silicon's camera

* Switch that to being able to see through any silicon's camera

* Disable borgo camera at high damage

* Rohesie-proof some code
2020-08-08 16:52:00 +02:00
uomo
358e549229 Petting more animals now causes floating hearts and a moodlet, borgs can now pet animals. (#52594)
* Petting.

* Oops.

* Update code/modules/mob/living/simple_animal/friendly/penguin.dm

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

* Working on underlying redo.

* More.

* Fixing to work with new emote system.

* Move proc and defines to living instead of mob.

* ...Moves it to simple_animal instead.

* Revert cat crate fix (other PR handling), fixes emote thing.

* Appveyor did not care for that.

* Comment typo.

* Very descriptive var name.

* Borgs can now commit pet.

* sweeps up missing manual_emotes, adds a hop to link for ghosts, and moves the name preface to ghost only

* More descriptive vars and proc name.

* Better descriptive vars.

* Making the borg code slightly nicer.

Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2020-08-07 20:46:49 -04:00