Commit Graph

70 Commits

Author SHA1 Message Date
Lohikar 0db557ac29 machinery_process() & auto_use_power efficiency tweaks (#2657)
changes:

Machinery now uses machinery_process() instead of process(), allowing machines to be put into SSprocessing-style lists in addition to the machinery list.
Automatic power calculations now involve less proc-calls.
2017-06-12 19:09:36 +03:00
Lohikar 3be27b9efa Merge SSnanoui & Nanomanager (#2427)
Merges the NanoUI subsystem with Nanomanager, as well as cleans up some nanomanager code.
Most of the files in this commit are changed as a result of removing the nanomanager global in favor of the SSnanoui global.
2017-05-23 16:33:00 +03:00
Lohikar f6dc33a465 Newmap - SMC, Openturf, Arrivals Controller, and Mine Turf Improvements (#1958)
* Replace SSingulo with SScalamity; processing cleanup
- SScalamity now handles blobs as well as singularity-types.
- Processing subtypes have been simplified to not require a stop_processing definition.

* this is probably important

* Remove cascade disabling SSgarbage

* Fixed a bug where dust() did not qdel the target mob

* Misc fixes

* Fix decals surviving break-to-plating

* Subsystem flag tweaks

* Apparently subsystems are new'd before config is.

* Fix paper icons

* Speculative fix for insane lag

* Better machinery stat

* Make organs not use SSoverlay

* Misc bugfixes & tweaks

* Nightmode fixes

* Changelog for SMC

* Port /tg/'s improved MC crash handling

* Add some more SS Recover() procs

* supply_controller -> SScargo

* More New() -> Initialize()

* pAI and robot construction overlays

* Fix cargo unit tests

* Merge the DMM Suite's atom/New() into atoms_init

* Lighting pre-baking

* Lighting initialization logging

* Fix some bad SS init orders

* Fix SSlighting logging; rename Processes to MC

* Speculative fix for insane GC lag

* Prebaked openturf/icon_smooth & fix lighting prebake

* SS init status; SSatoms LATEQDEL

* Fix bug with MC init stat panel

* Fix parallax

* Misc

* Ignore SS_NO_DISPLAY during init

* apparently this is important

* REEEEEE

* Image GC fixes; broadcaster radio-new sanity

* RCON Cleanup

* Move pAI recruiter into subsystem

* Move global solars list into sun subsystem

* Make chickens not use a global

* Demote SSdisposals to SS_BACKGROUND; garbage-debug cleanup

* Speed up space init a little

* Fix bad timer flags on floor drying

* Subsystem panic-restart verb for mins

* Explosion speedup

* Minor subsystem & MC logging tweaks

* SSopenturf improvements

* Make pipenet actually initialize (whoops)

* Minor tweaks

* Implement lighting rounding

* comments are hard okay

* Minor lattice tweaks

* Fix some timer issues & better closet init

* Timer sanity

* Request console tweaks + Storage init sanity

* Minor SSmachiner RCON improvements

* Further reduce world-start timer count

* Standardize subsystem logging

* Garbage hard delete profiling from /tg/

* Timer hang detection & recovery

* Log machines that sleep in process() and fuck up SSmachinery

* Fix an issue with external airlocks sleeping in process()

* Failsafe logging

* Minor tweaks

* Revert "Request console tweaks + Storage init sanity"

This reverts commit 98d3579e35.

* Re-implement RC changes

* Fix SQL FT saving

* Fix SSmachinery sleep in disposals

* Minor SS tweaks

* Paper fixes

* Blood drying fixes

* Merge gameticker and SSticker

* Minor global list init cleanup

* Lagcheck biogenerator & bags

* Tweak SScargo init order; RIG Initialize()

* Caching tweaks

* Remove rogue comma

* Initialize fixes

* Lighting destroy cleanup

* Fix emagging airlocks

* Initial SSicon implementation

* Tweaks & Fixes

* Fire + Air alarm queued icon updates

* Overlays + Queued icon cleanup

* Runtime & background fixes

* Kill some meaningless set statements

* Kill some image qdels

* Bump up lighting rounding val

* Fix adv. scanner destroy runtimes

* Remove unneeded icon update limiting

* Move icon smoothing into helpers

* Show a warning if DM 510 compiles without memory leak hack enabled

* Re-organize subsystems & MC defines a little

* Airlock SFX

* Log of Changes

* Make SSicon_update disable itself when not doing anything

* Fix respawn verb runtime when used early in server-init

* Add more information to MC's stat_entry()

* Replace direct refernces to gcDestroyed with QDEL* macros

* plant_controller -> SSplants

* More plant tweaks

* Add more humor to changelog

* Move parallax globals into SSparallax

* Lighting responsiveness tweaks

* Fix parallax init order & better MC init panel stat

* Make mobs GC

* More overlays + Remove intercom spawn()

* SSfast_process; make pinpointers not use spawn-recursion to process
Also made the SM Cascade beach process with SSprocessing instead of a spawn loop.

* Update changelog

* Mob GC tweaks

* Del() cleanup

* Fix insomniac ZAS connection edges

* Minor pAI cleanup

* Convert more things to SSoverlay; fix duplicated overlay in field gens

* SM Bluespace turf tweaks

* Update SSgarbage debug globals list

* Human-type qdel tweaks

* Subsystem suspension; stat_entry improvements

* SQL Statistics cleanup

* Fix runtimes with ambrosia

* More disable() -> suspend(); fix nightmode again

* Human qdel fix; minor tweaks

* Update turbolift to work with StonedMC

* Make lifts use timers instead of a subsystem

* Make SSassets start earlier

* Convert the radio controller into a subsystem

* Fix some missing CHECK_TICKs in asteroid generation

* MC stat tweaks; make shouldnt_see a typecache

* Kill some redundant debug-controller entries

* radio_controller -> SSradio

* Better SSgarbage hard-del logging from /tg/ upstream

* Logging tweaks + GELF

* Misc client caching improvements

* Slime SSoverlay

* Oven icon fixes

* Implant fixes
- Death implants will no longer spam Common on death of user.
- Death implants should handle a deleted user better.

* Holder tweaks + Welding tool Initialize()

* Fix some bad subsystem logging

* Fix suit cooling units spawning without cells

* Starlight tweaks

* Gibber infinite gib fix

* More SSoverlay stuff

* Make crates use CUT_OVERLAY_IN

* Make SSarrivals suspend instead of disable

* Make openturf use split/phased tick checks

* Speculative fix for unwet timer runtimes

* Blood overlay tweaks/fixes

* Update crusher to play nice with SMC + SSoverlay

* Openturf improvements and fixes

* Minor turbolift tweaks

* Lighting performance improvements + ChangeTurf tweaks

* this is probably important

* Fix wall weld noises on changeturf

* More ChangeTurf tweaks

* Explosion tweaks

* Pre-game lobby tweaks

* Openturf tweaks

* Prevent admins from starting the game before init finishes

* Fix Travis

* Kill an unused var

* Fix ChangeTurf runtimes on openturfs

* Fixes

* Browser datum fixes, asset caching

* Update changelog

* Changelog

* Lobby tweaks

* Ticker tweaks; kill ticker var

* Further lobby tweaks

* Cascade tweaks

* air_master -> SSair

* Reduce overhead from radio autosay

* alarm_manager -> SSalarm

* bomb_processor -> SSexplosives

* corp_regs -> SSlaw

* ZAS overlay fixes

* Small wall icon optimization

* Fix effects master

* Assembly tweaks

* Megavend fixes

* Shuttle fixes

* Camera alert performance improvements

* Fix some world.log spam from lighting overlays

* Fix some Initialize() procs

* Openspace responsiveness tweaks

* Make HE pipes animate through openturfs

* Kill a spawn
2017-05-02 14:40:40 -04:00
SoundScopes 97bb1e8e38 Travis: Indentation / list fixes (#1254)
Fixes the tools/indentation.awk script to not demand a comma at the end of perfectly valid comments.
Makes it report unnecessary commas in lists.
Readds it to the Travis build list.
2016-12-19 16:40:52 +02:00
PsiOmega cdb4270f48 Merge remote-tracking branch 'upstream/master' into dev-freeze 2015-07-06 17:31:41 +02:00
mwerezak c46f32e8d7 Airlock controller fixes
Fixes airlocks opening their doors before the pumps have turned off.
Fixes airlocks getting confused if you mash buttons in quick succession.
2015-07-04 23:49:54 -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
mwerezak 014692269c Greatly simplifies docking initialization 2015-03-23 23:35:35 -04: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
PsiOmega 327e81958b Shuttle mech sensors can now be slaved to airlock docking controllers. 2014-09-17 07:46:39 +02:00
mwerezak 2de7df27e0 Fixes mech sensors preventing shuttle undocking
Airlock controllers now use a signal_mech_sensor() proc to send commands
to mech sensors. Docking controllers don't appear to store the mech
sensor tag anywhere so the mech sensor code was left commented out.
2014-09-15 23:56:13 -04:00
Zuhayr b47d91b612 Merge resolution, master into dev. 2014-08-21 12:01:38 +09:30
mwerezak 2bd96ab29e Fixes multi docking port undocking conditions
The undocking conditions for multidocking ports (used by the escape
shuttle) were overly strict, failing if any door was open/unlocked.
Changed to allow undocking if at least one of the inner or outer doors
can close and lock.
2014-08-16 20:50:34 -04:00
mwerezak 3c46e4c35b Fixes airlocks aborting when cycled
Fixes airlocks aborting because the doors took too long to close.
2014-08-16 14:39:37 -04:00
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
Zuhayr f09d1218fe Master to dev merge. 2014-08-11 17:23:40 +09:30
mwerezak 17574b8b20 Allows escape shuttle to scan IDs from within UI
Fixes #5592
2014-07-30 15:13:53 -04:00
mwerezak 5eaebce87e Merge remote-tracking branch 'upstream/dev' into power-net 2014-07-27 20:25:57 -04:00
mwerezak e8a4818d2b Optimizes air alarm power updating 2014-07-27 19:59:26 -04:00
PsiOmega 4f8dc3f951 Installs the new mecha-sensor in the departure area airlocks and the shuttle itself.
Also corrects the online icon state for the sensor and allows the simple docking controller to toggle the on/off state.
2014-07-27 10:58:55 +02:00
mwerezak 83d54af746 Adjusts power usage for R&D equipment 2014-07-27 03:36:28 -04:00
PsiOmega 0036bea6b6 A sensor which registers mechs and trains attempting to pass by and, if necessary, blocks their movement.
If enabled, detects mechs/trains and blocks their movement if they are coming from any of the directions set by dir. Can currently only be enabled/disabled by radio command and airlocks are updated to utilize this.

The current setup allows mechs to move through airlocks during normal cycles, which for example lets Odysseus out to save lives.
Once a shuttle docks however, the sensors are enabled to prevent boarding.

If blocked, players receive a simple message stating that their command has been overridden.
2014-07-26 20:07:18 +02:00
Mloc-Hibernia 51d2451c01 Merge remote-tracking branch 'upstream/dev-freeze' into dev
Signed-off-by: Mloc-Hibernia <colmohici@gmail.com>

Conflicts:
	nano/templates/geoscanner.tmpl
2014-07-18 13:15:30 +00:00
mwerezak 7361c7da45 Loosens the undocking requirements for airlocks 2014-07-17 22:03:05 -04:00
mwerezak 3ea7e0ce3c Adds a name for the escape pod controller 2014-07-17 20:07:13 -04:00
mwerezak 21b2742086 Adds default values for some docking tags
Simplifies the mapping of docking controllers by cutting down on the
number of tags needed to be entered.
2014-07-17 20:01:20 -04:00
Mark Aherne 6c12d62285 Merge branch 'dev' of https://github.com/Faerdan/Baystation12 into dev 2014-07-11 10:53:08 +01:00
Mark Aherne 7e7e6cd8ac Continued work in progress on a major revision of the NanoUI templating system. 2014-07-11 10:48:42 +01:00
mwerezak 4ac685afd9 Removes duplicate defines, updates comments 2014-07-07 23:18:12 -04:00
mwerezak 0e15d55b24 Fixes #5459 2014-07-05 14:43:18 -04:00
mwerezak 8388ecb94a Allows escape pods to be armed from inside the pod 2014-07-01 21:55:37 -04:00
mwerezak 1cc840dccc Adds the ability to force launch escape pods
Also reduces their countdown from 15 to 10 seconds.
2014-06-28 19:40:18 -04:00
mwerezak d5c5d4b21f Adds escape pod docking controller type
Escape pods now no longer launch automatically during regular crew
transfers. However they can be set to launch during a regular crew
transfer by emagging the escape pod controller.

Also fixes emergency shuttle arrival announcement having the wrong ETD.
2014-06-25 12:32:12 -04:00
mwerezak c44ac554dd Improves multi-airlock docking UI 2014-06-25 12:28:58 -04:00
mwerezak bb38379138 Improves simple docking controller UI 2014-06-25 12:26:07 -04:00
mwerezak 079a52de6a Adds multi-airlock docking controller 2014-06-25 00:21:00 -04:00
mwerezak bdafc1136f Fixes airlocks being stuck if they run out of air 2014-06-25 00:20:37 -04:00
mwerezak e17b8bffab Replaces the emergency shuttle control console
Replaces the old emergency shuttle control console with a nice new
NanoUI one. Improves the NanoUI for the docking controllers.
2014-06-23 22:01:21 -04:00
mwerezak d837e5d246 Streamlined docking code
Server and client now have more consistent responsibilities.
Ferry shuttles will always be forced undocked when moved, even if moved
by admin magic.
2014-06-14 15:51:26 -04:00
mwerezak dc7d8fafe0 Adjusts how undocking signals are used
Now both server and client will to undock concurrently. It looks much
more natural.
2014-06-14 15:16:05 -04:00
mwerezak 232e50e415 Shuttle console refactoring
Also adjusted the way undocking signals were used.
2014-06-14 15:15:48 -04:00
mwerezak acec01fb14 Docking overrides now have a clear purpose
Originally the purpose of the docking override was to allow the shuttle
to move even if it couldn't undock properly (e.g. the doors were stuck
open), however it makes more sense just to have the shuttle take care of
that. This commit now makes the behaviour of the docking overrides line
up with it's new purpose.
2014-06-14 15:15:30 -04:00
mwerezak ed4fb8d3c6 Shuttles now dock on arrival and departure
Squashes 3 commits:

Shuttles now dock on arrival and departure

Adds docking controller to outpost, tweaks

Finishes off shuttle_console
Could use some cleanup, though.
Commented out the debug stuff.
2014-06-10 00:05:08 -04:00
mwerezak 0319c96502 Adds docking support to shuttles, NanoUI 2014-06-09 23:41:08 -04:00
mwerezak 63ea6eba0d Adds docking controllers to shuttles
Shuttles dock at round start.
2014-06-09 23:37:37 -04:00
Mike 129ee988b4 Adds a docking controller to the research shuttle
Squashes 3 commits:

Adds a controller for single door based docks

Adds a docking controller to the research shuttle

Adds override control to airlock dock nano-ui
2014-06-09 23:29:03 -04:00
mwerezak ad7a1c5d59 Adds docking controllers
Squashed 10 commits:

Adds simple docking controllers

Adds docking_controllers.dm

Moves docking handshake code into its own type
Keeps docking code separate from the code for messing with airlocks and
doors.

Improves handling of invalid states

Adds docking controller to research shuttle dock

Also adds the start of a nano-ui template.

Resetting the dock controller resets the override

Adds debug verbs

Adds support for overriding docking checks

Less confusing name for the docking program
2014-06-09 23:14:53 -04:00