Commit Graph

23 Commits

Author SHA1 Message Date
Atermonera
cbb40196fc Machinery: Always use update_use_power() 2020-03-23 23:21:10 -04:00
Leshana
c837078105 Replaced "area" shuttles with "landmark" shuttles.
Largely ported from the work done at Baystation in https://github.com/Baystation12/Baystation12/pull/17460 and later commits.

 - Shuttles no longer require a separate area for each location they jump to.
   Instead destinations are indicated by landmark objects, which are not necessarily exclusive to that shuttle.
   This means that more than one shuttle could use the same docking port (not at the same time of course).
 - Enhanced shuttle control computers to use nanoui if they didn't.
 - Organizes shuttle datum code a bit better so there is less re-inventing the wheel in subtypes.
 - Allows the possibility of shuttles (or destinations) that start on late-loaded maps.
 - Deprecate the "extra" shuttle areas that are no longer needed and update shuttle areas in unit tests

This all required a bit of infrastructure improvements.

 - ChangeArea proc, for changing the area of a turf.
 - Fixed lighting overlays actually being able to be destroyed.
 - Added a few utility macros and procs.
 - Added "turf translation" procs which are like move_contents_to but more flexible.
2020-03-05 10:29:08 -05:00
Atermonera
131636b1d2 Capitalizes initialize() to Initialize() because Destroy() is capitalized and this is pretty nerve-grinding 2019-03-26 13:21:08 -04:00
Leshana
cef001bf2a Update every initialize() proc to return an initialize hint.
* Yes, all of them.
* Also did a few corrections to redundant New() and broken Destroy() along the way
* Renamed the turf_initializer.initialize() proc to InitializeTurf to avoid confusion.
* Subsumed /area/proc/initialize into /atom/proc/initialize() - Made /area's LateInitialize to get same behavior as before.
2018-02-03 01:00:57 -05:00
killer653
fb8ba69ada Fixes all the other stuff 2017-10-15 20:56:13 -04:00
PsiOmega
e7d85f8edc Adds Destroys. 2015-04-24 17:11:14 +02: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
PsiOmega
675b277d16 NanoUIs based on embedded controllers should no longer wander across the screen.
calling updateDialog() forces a NanoUI window to re-openi, which is a bit of a pain when done in process().
2015-02-19 10:43:10 +01:00
Zuhayr
4090f04839 Readded monkey dexterity checks in each attack_hand as appropriate. 2014-11-13 17:46:37 +10:30
Zuhayr
90d65aed57 Removed attack_paw, attack_animal and attack_slime. 2014-11-13 17:15:29 +10:30
mwerezak
9d7c5dc197 Gives filters proper names, updates airlocks to use filters
Docking ports still don't use filters though, as it would mess with the
docking ports that are also airlocks. Docking is infrequent though so it
should be fine.
2014-08-15 20:27:00 -04:00
mwerezak
e8a4818d2b Optimizes air alarm power updating 2014-07-27 19:59:26 -04:00
mwerezak
83d54af746 Adjusts power usage for R&D equipment 2014-07-27 03:36:28 -04:00
mwerezak
079a52de6a Adds multi-airlock docking controller 2014-06-25 00:21:00 -04:00
mwerezak
3bc6f4c9b6 Generalizes embedded_controller/radio 2014-06-09 23:08:07 -04:00
mwerezak
32ba5903b4 Generalizes embedded program 2014-06-09 23:05:58 -04:00
Loganbacca
d35fbfd562 Airlock controller rewrite
- /datum/computer/file/embedded_program moved from embedded_controller_base.dm to code/game/machinery/embedded_controller/airlock_program.dm
- embedded_controller_base.dm cleaned up and identical parts of the controller subtypes were moved here
- embedded_controller subtypes moved to code/game/machinery/embedded_controller/airlock_controllers.dm
- Added nanoUI templates for airlock controllers
- Added a couple of classes to nano/css/shared.css for colouring buttons
- Minor map update to maintain airlock compatibility and fix a broken airlock near virology
2014-02-13 14:23:02 +13:00
giacomand@gmail.com
6a2d78bc94 -Killed the updateDialog lag. I added a check to see if there were any mobs to update, if not it will stop checking until a user uses the machine again. I had to replace all the machine = src and machine = null with procs to help make it manageable. I believe this is one of the culprits causing the server to lag as the round goes on, as more players will interact with machines.
-Atmos delay is now based on active players, to help fight lag for massive player rounds.

-Changed some for(blah in world) loops to use the correct lists.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4958 316c924e-a436-60f5-8080-3fe189b3f50e
2012-10-25 19:15:51 +00:00
vageyenaman@gmail.com
d29e3be8d4 Removes poo. XSI and co. weren't very fond of it, and the last thing I would do is make them uncomfortable and challenge their leadership by keeping poo in.
An experimental lagfix, which removes a couple THOUSAND unnecessary machines from the machine processing list. Please report any unresponsive machinery (as result of this commit) as HIGH PRIORITY issues. I'm not quite sure how much lag this will kill, but I'm confident that it will be at least slightly noticeable.

More work on step_triggers. The escape shuttle should no longer blast things forever and give them infinite momentum.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3370 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-29 03:53:38 +00:00
rastaf.zero@gmail.com
2530b5b995 Air alarms improved. New functions are:
- mass control all air machines in area (5 modes)
 - adjustable alarm thresholds
 - air alarm in server room now is preset to treat temperature 80 K as okay.
EMP now affects bots internal cameras.
Fixed problem with AI clicking on mulebot.
Some fixes for welding with unlit welder, mostly cosmetic.
Airlock controller (as in EVA) now react to commands faster.
Access controller (was in engineering and virology in past) was speeded up too. One is installed into Incinerator to demonstrate that now it isn't fucking slow.
Airlock in toxin mixing room now have pump, so airlock can work properly.
Added some intercoms to medbay lobby.
Doors now won't lag due do mapmakers mistakes.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1187 316c924e-a436-60f5-8080-3fe189b3f50e
2011-03-14 19:21:02 +00:00
rastaf.zero@gmail.com
05fa76963e Added primitive optimization to radio code.
Lag reduced by approx 30% (0.5 seconds of total 1.5 on my system).
Some air alarms on the map copypasted from toxins one, with its special settings.
Added list of used frequencies and HOW IT WORKS section to communications.dm. Sorry for some engrish.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@895 316c924e-a436-60f5-8080-3fe189b3f50e
2011-01-21 19:20:17 +00:00
n3ophyt3@gmail.com
bd9819c272 Made items that get unbloodied update their icon during the unbloodying, so you can tell how much you used your gun between getting blood on it and cleaning it.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@791 316c924e-a436-60f5-8080-3fe189b3f50e
2011-01-06 17:08:33 +00:00
only.lurking
662c08272a git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2 316c924e-a436-60f5-8080-3fe189b3f50e 2010-08-23 14:29:20 +00:00