Commit Graph

41 Commits

Author SHA1 Message Date
MistakeNot4892
618082f500 /atom New() => Initialize() [MDB IGNORE] (#8298)
* Find and replace argless atom New() to Initialize().

* Manual replacement of no-arg New() to Initialize().

* Manually replacing remaining New() overrides.

* Fixing linter issues with now-removed New() args.

* Tidying area init overrides.

* Porting Neb's atom subsystem.

* Trying to isolate init problems.

* Adjusting Init code post-test.

* Merging duplicate Initialize() procs.

* Merge resolution.
2022-01-04 18:47:57 -08:00
Neerti
fdabe51ee8 Linter Introduction + Cleanup (#8085)
* Adds linter defines to repo.

* Uncomments linter defines already in the code.

* Resolves unreachable code linter errors.

* Nukes decade+ old syndie specops code except for computer since that's mapped in?????

* Resolves procs has no parent linter error.

* Proc signature fixes

* Bad comments

* "In" danger

* Type safety

* Implied nested list abuse

* Top level ..() usage

* Sleepy coder typos

* Invalid kwargs calls

* Pointless returns

* Linter hacks (see full message)

Byond doesn't care and it has no effect but linter doesn't like var/proc
for holding references to procs, despite that it's valid byond code.

Also, the linter seems to have serious issues figuring out relative
proc names. This commit is a sort of take-it-or-leave-it thing. It's not
required, it just cuts down on warnings, but this code is valid DM code.

* WHATEVER THIS IS

* Trick dreamchecker linter into ignoring this file's sins in it's weird use of vars

* Fix list decoration syntax - Its a list, not list of lists

- To declare that a var is a list you can `var/list/blah = list()` syntax or the `var/blah[0]` syntax.  Both do exactly the same thing. But if you do `var/list/blah[0]` that is just like doing `var/list/list/blah = list()`

* Hopefully stops the ai holder subtype folder from going quantum and sometimes changes capitalization over time, and incidentally causing 20+ linter errors.

* Fixes unwrapped negated object in list linter error.

* Resolves colon-like list accessing linter error.

* Turns linter on in linter config.

* Fixes closet indentation properly and cleans up suit storage unit switch.

Co-authored-by: Aronai Sieyes <arokha@arokha.com>
Co-authored-by: Leshana <Leshana@users.noreply.github.com>
2021-05-25 18:17:26 -09:00
Meghan-Rossi
9611ae902e Makes wall-mounted machines layer above windows (#7708)
Makes wall-mounted machines layer above windows so that they are clickable if placed on windows
2020-10-16 23:01:39 -07:00
Aronai Sieyes
30613fff5c Optimize what starts in SSobj (#7155)
* Make intercom power change stateful

* Clean up air tank processing and initialize

* Optimize flashlight processing

* Optimize suit cooler processing

* Optimize geiger counter processing

* Optimize lighting processing

* Only process rigs on a person

* One more rig cleanup
2020-05-21 11:28:27 -07:00
Anewbe
aade8c356f Items are now assumed to be conductive, rather than the opposite 2019-03-02 20:34:49 -06:00
kevinz000
ab3f30b28f Merge remote-tracking branch 'polaris/master' into PS_PORT_SCHEDULER 2018-12-09 20:34:39 -08:00
kevinz000
c2c688c4c8 caps 2018-12-06 18:34:37 -08:00
kevinz000
2c0898f870 Regex 2018-10-14 20:03:17 -07:00
Anewbe
729ce71aa0 Converts most istype(thing,tool) procs into an appropriate thing.is_tool() format 2018-08-02 21:45:15 -05:00
Arokha Sieyes
91f0c05a4b SSAO object excludes
Moves several things onto a new plane/layer to keep them from getting the SSAO shadows so it looks nicer.
2018-05-14 11:38:22 -04:00
Arokha Sieyes
7aa5ca479a Adds 'Intercom Convo' verb
Allows an admin to 'schedule' up to 20 messages to play on the radio.
2018-02-27 21:17:47 -05:00
Neerti
99eb6f9404 Updates Tools
Adds toolspeed var, which is a multiplier on how 'fast' the tool works.  0.5 means it goes twice as fast.
Adds usesound var, which determines what sound is used when a tool is being used.
Changes a lot of code to use those two vars instead.
Adds 'ayyy' tools, which are ported from /tg/'s abductor gamemode.  They're currently admin only but I might make them obtainable by xenoarch later.
Adds powertools, also from /tg/.  CE starts with them in a new toolbelt that spawns in their locker, ported from (you guessed it) /tg/.
Changes welder sprites to look nicer, ported yet again from /tg/.  Modified the blue welder slightly so it can be the electric welder sprite.
Adds various sounds from /tg/, for tools and welders.
2017-08-03 04:49:23 -04:00
Leshana
e48b548f2b More and more Destroy() cleanups all across the board - Return qdel hints. 2017-06-05 23:01:41 -04:00
Anewbe
88b0c6086e Antag Radio changes 2017-03-25 14:19:57 -05:00
woodratt
19fb047f01 WR_SC_Map_Changes
- Fixes sprite issues with departmental intercoms.
- Tweaks to the random objects dm
- Copies Bay's flora and warning sign list, as well as ports some of their signs.
- Addition of a couple new floor decals.
- New table preset, wooden reinforced.
2017-03-08 17:44:48 -08:00
Neerti
f393dafa5d Ports Bay's Journalist TV Drone
Also ports prerequisite entertainment radio frequency code.
2017-01-09 05:03:40 -05:00
Neerti
828dacf485 Centralizes weight class definitions
A lot of new defines are now in inventory_sizes.dm, which contains;
All the size identifiers (the thing that tells the game if something is bulky, or w/e).
Storage costs for all the sizes, which are exponents of two, as previously.
A few constants for inventory size.

Also changes all storage item's capacity definitions by basing it off of how many 'normal slots' exist for it.  This allows one to change the definition for all of the defines in the file, and everything will follow along without needing to change 500 files.  In testing, I made all ITEMSIZE_COST_* defines doubled, and nothing had broke.

The benefit of doing all of this is that it makes adding new weight classes in the future much simpler, and makes knowing how much space a container has easier, as seeing ITEMSIZE_COST_NORMAL * 7 means it can hold seven normal items.
2016-09-22 00:51:51 -04:00
SinTwo
045c393683 Revert "Revert "Frame Cleanup""
This reverts commit 82722ba42f.
2016-08-13 19:55:57 -04:00
Yoshax
82722ba42f Revert "Frame Cleanup" 2016-08-06 00:27:03 +01:00
SinTwo
07b4eb2d95 final fixes, tweaks, and cleanups 2016-08-03 14:09:12 -04:00
SinTwo
66c3a007a9 frame cleanup fixes 2016-07-23 23:45:24 -04:00
SinTwo
eb120319eb Frame code cleanup 2016-07-23 13:31:30 -04:00
SinTwo
b356f5cf21 Construction Update 2016-03-25 16:02:36 -04:00
woodratt
1104407ffc Woodrat, Intercoms and rollerbed tweaks
- Departmental intercoms should have
2015-12-04 17:12:57 -08:00
PsiOmegaDelta
7d975aa36f Map tweaks.
Adds a couple of decals to the Thunderdome.
Rotates sleepers/scanners on z-level 1 and 2. Had already done so for z-level 5. Fixes #11058.
Full tile windows no longer appear to exist? Replaces the glass on the toxin test site with reinforced glass spawners.
2015-09-20 17:59:57 +02:00
PsiOmega
e5aa095f09 Non-headset/borg radios now all allow access to department channels. Headset and borg radios still rely on their encryption keys. 2015-09-03 09:38:15 +02:00
PsiOmega
13780eba09 Rotates and otherwise cleans up map intercom usage. 2015-09-02 14:26:59 +02:00
PsiOmega
c730a67d79 Makes it possible to select department channels on intercoms. 2015-09-02 10:38:16 +02:00
PsiOmega
e1aa20fda5 Radio changes.
Removes the radio free range option.
Instead all users can move within the standard radio frequency range, while authorized users can also select department channels.
2015-08-29 17:12:48 +02:00
PsiOmega
21fd8d825d Makes the private AI channel truly private. 2015-08-16 15:43:28 +02:00
Mloc
e602a7e286 remove the sub-area system
Removes area/list/related and area/master.
They were only used by the old lighting subarea system.

Signed-off-by: Mloc <colmohici@gmail.com>
2015-05-10 17:06:29 +01:00
PsiOmega
1ae0ad6d92 Updates the atom_pool, now datum_pool, to handle any datum object.
Makes the garbage collector similarly robust. Continues the whole Destroy/qdel porting.
2015-04-24 09:59:05 +02:00
Kelenius
10de826ca3 Removes FPRINT and TABLEPASS flags 2015-01-23 22:27:32 +03:00
PsiOmega
8ae93e2616 Radio fixes
Intercoms no longer have to check wiring, they can simply use the listening/receiving flags.
Can no longer enable reception/broadcasting if the relevant cables have been cut.
2014-11-27 17:10:26 +01:00
Zuhayr
90d65aed57 Removed attack_paw, attack_animal and attack_slime. 2014-11-13 17:15:29 +10:30
PsiOmega
fe126626ac Cleans up radio frequency numbers.
Replaces magic numbers across the code base with proper constants.
Prepares for the ability to have more than one antag channel in the future.
Corrects a lie.
2014-09-18 13:07:34 +02:00
Mloc-Argent
ebf2ba2d4a Fixes.
Made glowshrooms and intercoms not use a ridiculous internal loop, and fixed a pickup luminosity bug with glowshrooms.
fixes #3708
Fixes #3718
Fixes #3702

Signed-off-by: Mloc-Argent <colmohici@gmail.com>
2013-10-07 20:35:26 +01:00
giacomand@gmail.com
dfc282c9ef - Did some very minor optimizations to get_mobs_in_radio_ranges() and set the proc as a background proc.
- To help further lower the cost of this proc I have lowered the default intercom range to 2. I then added consistency of not being able to use an intercom from across the room by adding a check for distance, using the same variable as the intercom range. 
 - Committing a fix by VistaPOWA for the changeling sting drink. You should be able to create it now by mixing screwdrivercocktail, limejuice and lemonjuice.
Before it was orangejuice, limejuice, lemonuice and vodka but orangejuice and vodka would mix first to create screwdrivercocktail.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5560 316c924e-a436-60f5-8080-3fe189b3f50e
2013-01-16 07:38:35 +00:00
giacomand@gmail.com
c6a4b991bc TELECOMMUNICATION
Improvements to Telecomms. I wasn't happy with my relays and having telecomms send several messages on different Z levels was not effecient. I decided to overcome this by removing the need to attach Broadcasters and Transmitters to relays. Then I made relays just add to the signal data which z levels the message will be broadcasted on, instead of sending the message several times. It's a bit hard to explain but basically it should be better then ever, and adding more relays will not create serious performance issues. Since you can't control whether the Z level could only receive messages or only send them, I added options on the relay itself so you can set it. I then made an additional feature, which Nodrak gave me the idea for, which is that busses can change the frequency of a signal. It's an option on the Bus and you can set it to change the signal's frequency, which can create hilarious situations such as the command channel being redirected to the general channel. No way to duplicate a signal with a different frequency at the moment.
Since relays earlier depended on a stupid system in order to become a off-site relay, I instead just made it limited to the satellite Z level, which makes more sense.

Broadcasters and Receivers are linked to the HUB, but it's still possible to create a simple telecommunication system with a "Receiver -> Bus -> Processer -> Broadcaster" (though it will be slow)

OTHER

Smartfridge limit was lowered to 999, just below the infinite loop check limit. This is to prevent further issues that may occure.

Moved creating some icon datums above the SQL procs, just to make sure that the SQL itself isn't sleeping and causing issues with the datums being used before being loaded.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5183 316c924e-a436-60f5-8080-3fe189b3f50e
2012-11-25 00:08:29 +00:00
giacomand@gmail.com
eb68c1e510 -You can now only hear from headsets when it is on your ear slot. People around you won't be able to hear your headset anymore.
-The firedoor wasn't updating the freelook camera. When I looked at it I couldn't figure out why it was using it's own "rebuild" code, supposedly it only updates the air that it set in the dir variable but the current map doesn't utilize it at all (firelocks with a dir of 8 which are lined horizontalally), and you would have to have two thick wide firelocks to make it effective. I've commented it out and I'll put it back in if we have problems.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4832 316c924e-a436-60f5-8080-3fe189b3f50e
2012-10-08 03:52:25 +00:00
johnsonmt88@gmail.com
d36387607f More file structure stuff.
- The folders themselves are now finished
- Next I'll go through each file and organize them
- Lastly I'll start pulling the object definitions out of /code/defines/ and put them into their respective files.

**Note to committers**
Make sure the .dme file updates when you update to this revision. If necessary delete the .dme and svn-update.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4546 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-26 01:20:02 +00:00