Commit Graph

72 Commits

Author SHA1 Message Date
Bjorn Neergaard 3f6f15703e Factor out atmos access; un-parent thermomachine rotation 2016-01-25 12:03:04 -06:00
Bjorn Neergaard 1599742f7e Re-structure tgui's ui_act 2016-01-22 19:25:36 -06:00
Bjorn Neergaard 41caa93330 Hotfix for display issues and UIs droping ui_act calls 2016-01-18 17:00:15 -06:00
Bjorn Neergaard a1ff8e8783 Refactor tgui interactions
Removes a lot of duplicated code, thanks to @nullquery's parent tweaks
2016-01-18 14:27:56 -06:00
Bjorn Neergaard 1c64360882 tgui atmos control computers 2016-01-18 14:21:57 -06:00
Bjorn Neergaard aec6bc103c Fix tgui proc signatures and thus AI APC reboot
This allows state overloading

Make AI reboot code use ui_interact instead of attack_ai
Fixes #13762
2016-01-04 16:25:20 -06:00
Bjorn Neergaard 777ba0486d Rename the tgui pref and adjust all UI sizes for the rewrite 2016-01-01 17:47:45 -06:00
Bjorn Neergaard a2bb279164 NanoUI is now 'tgui' 2016-01-01 17:47:44 -06:00
Bjorn Neergaard 8d344ec883 Finish even more UIs...
* Add atmos UIs and solar interface
* Add air alarm interface
2016-01-01 17:47:13 -06:00
oranges 134a76cc8f Line ending apocalypse 2015-12-17 14:12:37 +13:00
Bjorn Neergaard da4842dddf Make NanoUI resistant to Topic spoofs
Move Topic() into a NanoUI-specific ui_act proc
Update to @YotaXP's latest JSON code.
Return focus to the mapwindow if a key is pressed in a NanoUI.
2015-12-15 22:37:52 -06:00
Bjorn Neergaard 47b727a23e Rework how NanoUI handles Topic()
Also, add the ability to winset and the like, all from Javascript
2015-12-15 13:12:35 -06:00
Bjorn Neergaard 5678dfcbd1 Prefix everything with 'nanoui' to avoid conflicts 2015-12-15 13:12:33 -06:00
Bjorn Neergaard 8fdfa08e58 Port NanoUI styles to LESS 2015-12-15 13:08:27 -06:00
Bjorn Neergaard a0c54eba97 Begin rewrite of NanoUI frontend.
* Remove jQuery in favor of polyfills.
* Make NanoUI work with IE8-IE11
* Upstream doT
* Change NanoUI template syntax
* Event driven code
2015-12-15 13:07:11 -06:00
Bjorn Neergaard 34b717afb4 radio_controller -> SSradio, SSbp -> SSnpc 2015-12-04 22:25:24 -06:00
Bjorn Neergaard 06e5df9336 Fix NanoUI missing assignment; use two-line ifs 2015-11-29 18:20:10 -05:00
Bjorn Neergaard 404642b25b Update the rest of the Atmos stuff 2015-11-27 23:17:15 -05:00
Bjorn Neergaard b897fb6d72 Fix NanoUIs flashing, update Tanks, Solars, and Canisters 2015-11-27 15:30:18 -05:00
Bjorn Neergaard 1a44e3d851 Refactor NanoUI API
Also update NanoUI-using code to the new API.
2015-11-26 07:11:31 -05:00
Tkdrg 3308f76efb Improves speed of redraw_lighting()
No longer uses animate() when unneeded, because animate() is slow.
Also turns Clamp() into a macro to reduce proccall overhead.

The whitespace changes in atmos are needed because of the way the
preprocessor handles macros.

Thank you MrPerson for helping with this.
2015-11-06 23:36:03 -03:00
duncathan 381139422c Merge branch 'master' of https://github.com/tgstation/-tg-station into pipecleanup
Conflicts:
	_maps/map_files/MiniStation/MiniStation.dmm
	code/ATMOSPHERICS/atmospherics.dm
	code/ATMOSPHERICS/components/binary_devices/pump.dm
	code/ATMOSPHERICS/components/components_base.dm
	code/ATMOSPHERICS/components/unary_devices/cryo.dm
	code/ATMOSPHERICS/components/unary_devices/vent_pump.dm
	code/ATMOSPHERICS/components/unary_devices/vent_scrubber.dm
	code/ATMOSPHERICS/pipes/manifold.dm
	code/ATMOSPHERICS/pipes/manifold4w.dm
	code/ATMOSPHERICS/pipes/simple.dm
	code/_compile_options.dm
	code/controllers/subsystem/garbage.dm
	code/game/machinery/bots/mulebot.dm
	code/modules/mob/living/carbon/alien/say.dm
	code/modules/mob/living/simple_animal/bot_swarm/swarmer.dm
	html/changelogs/.all_changelog.yml
2015-09-01 20:29:00 -06:00
duncathan 51c09f16bf makes all Destroy()'s return properly 2015-08-31 00:21:01 -06:00
duncathan b5d6e00cea makes atmos machinery return properly from destroy() 2015-08-30 23:18:03 -06:00
duncathan 48a06b96dd fixing pipe gc 2015-08-28 20:37:44 -06:00
duncathan 99234185de first pass of cleanup
makes simple pipes more OOP
adjusts defines; puts them in __DEFINES/atmospherics.dm
adds DEVICE_TYPE_LOOP define, which is used in a bunch of the for loops
2015-08-16 23:10:57 -06:00
duncathan 8c2519e115 merge conflicts 2015-07-16 04:54:11 -06:00
duncathan ae417d2a03 Merge branch 'master' of https://github.com/tgstation/-tg-station into atmosrefactor2
Conflicts:
	code/ATMOSPHERICS/atmospherics.dm
	code/ATMOSPHERICS/components/binary_devices/binary_atmos_base.dm
	code/ATMOSPHERICS/components/binary_devices/passive_gate.dm
	code/ATMOSPHERICS/components/binary_devices/pump.dm
	code/ATMOSPHERICS/components/binary_devices/volume_pump.dm
	code/ATMOSPHERICS/components/trinary_devices/filter.dm
	code/ATMOSPHERICS/components/trinary_devices/mixer.dm
	code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm
	code/ATMOSPHERICS/components/unary_devices/Freezer.dm
	code/ATMOSPHERICS/components/unary_devices/cryo.dm
	code/ATMOSPHERICS/components/unary_devices/unary_base.dm
	code/ATMOSPHERICS/components/unary_devices/vent_scrubber.dm
	code/modules/events/vent_clog.dm
	code/modules/mob/living/carbon/human/species.dm
	config/admins.txt
2015-07-16 04:27:25 -06:00
duncathan 280373489b fixes things per aran's request 2015-07-16 03:34:18 -06:00
Firecage 4688c2c969 Fixes proc arguments 2015-07-15 23:52:35 +02:00
duncathan e074fb7856 makes air flow; fixes EVERYTHING 2015-07-11 18:45:19 -06:00
duncathan 0e004e3939 fixes runtimes 2015-07-11 02:47:31 -06:00
duncathan e63771c9f4 finally gets airs, nodes and parents working... sorta
nodes is working fine as far as I can tell
airs seems fine but it's somewhat untestable until I fix parents
parents is initializing, but not updating properly

also adds my ckey to admins.txt
2015-07-11 02:47:22 -06:00
duncathan 140bbd3972 3rd pass OOP
now we've got lists for parents, nodes, and air mixtures
(they're all broken)
moves tank.dm, cryo.dm, Freezer.dm to components/unary_devices/
2015-07-11 02:47:19 -06:00
Fayrik 0ba314552a The initial tweaks are in place, ran out of time to finish it though. 2015-05-11 18:54:31 +01:00
MrStonedOne eb7d5fefa5 Merge remote-tracking branch 'upstream/master' into step-aside-aran-im-here-to-touch-your-precious
Conflicts:
	code/controllers/subsystem/ticker.dm
2015-05-02 03:03:29 -07:00
MrStonedOne bd6d51a0b5 Massive MC and subsystem rewrite
MC:
	No longer tracks a subsystem's cpu usage. This was basically worthless and took up space on the stat panel
	Can calculate wait down to a tenth of a decisecond to make it fps/world.ticklag agnostic
	Now allows subsystems to have a dynamic wait, that is based on a ratio of how long that subsystem has been taking to process(cost). (This system allows for upper and lower bounds, and an changeable cost delta for each subsystem)
	MC can now be told to init a zlevel

All Subsystems:
	Stats panel now allows child subsystems to pass it a message to add to its stats entry. All subsystems have been moved over to this system - This should cut down on subsystems having to copy and paste the stats proc in order to add to it
	All subsystems now properlly handle being given a zlevel in their init proc

Subsystem changes:
	Air:
		Added air to the dynamic wait subsystem. upper bound: 50, lower bound: 5, cost delta: 3 times process cost
		Air now fires 4 times faster when it can do so without lagging things up
		Pipenet has been merged into air
		Atmos machinery now processes with process_atmos(), ticked by air, not machinery.
		Hotspots (the fire object) are now object pooled
	Pipenet:
		Deleted, added to air
	Machinery:
		Moved all atmos calcualtions in all objects's process() to process_atmos().
	Lighting:
		Added Lighting to the dynamic wait subsystem. upper bound: 20, lower bound: 5, cost delta: 3 times process cost
	Ticker:
		Fixed ticker not updating the lobby panel when game start delayed
		Fixed the game start timer updating rapidly from queued fires when game start delay is removed
	Garbage/qdel:
		qdel will now limit its process time to 2ds a fire.
		qdel can now be given hints as a return to Destroy() as to what should be done with the object.
		the options are:
			queue: (default) this is the normal behavior.
			letmelive: old default to non-null/zero. does nothing with the object
			iwillgc: functionally the same as above, mainly to let people working with objects know that the object will not be queued for GC checking
			harddel: this will queue the object to be deleted without storing a soft reference, mainly to save locate() processing time.
			harddel_now: this will del() the object. To allow for a clean removal of every del() not in qdel
		All objects have been updated to the new system, harddel and iwillgc was not added to any new objects.
		Fixed some objects not GCing because they didn't properlly clear references in Destory()
		Fixed some objects getting qdel'ed preventing other objects from getting GCed because they did not null their reference to that object.
2015-04-29 02:00:25 -07:00
Fayrik 80ff5d45d0 Air alarm template still needs a tweak, but it's functional now. 2015-04-25 05:22:00 +01:00
kingofkosmos 1d14471d00 Ellipses to waiting messages. Warning-spanclasses to failing messages with an exclamation mark. 2015-04-24 20:50:50 +03:00
Remie Richards 5fc7af7fbf attackby() now has an argument containing the parameters of the click that called it. Items placed on tables now center their icon where the user clicked. this is NOT true for racks, since racks look organised in their sprite.
Items reset their pixel_x and pixel_y values on pickup.
2015-02-19 13:02:43 +00:00
tkdrg e52ace562c Adds atmos investigate_log
Sort of ported from the /vg/ atmos logging by N3X15
Right now includes opening/closing pumps and opening/closing canisters.
Also adds a message_admins() when a plasma canister is opened.
2015-01-01 21:37:32 -03:00
Menshin 567bb27722 * Fixed unwrencheable atmos objects' stored pipe being wrongly created on New() because initialize directions weren't set when instanciating
* Fixed constructed unwrencheable atmos objects having a stored straight pipe , because dirs weren't set on instanciation
Those fixes, at least, bend pipes transforming into straight pipes on wrench/unwrench
* Fixed the digital valve pathing in some places
* Fixed bend pipes appearing as straight pipes when wrenched without connecting to anything

* Pipe colors are now preserved on wrenching/unwrenching
* Various clean-up of unaligned partially connected pipes icons
2014-12-29 20:34:13 +01:00
hornygranny cd9a8a5125 Merge pull request #5909 from Razharas/InputFix
Fix of atmos input exploit
2014-11-24 10:40:51 -08:00
Razharas 2a20c6bcf3 Fix of atmos input exploit
What on tin
2014-11-16 05:18:22 +03:00
Menshin ec944abfc6 * limit atmos/fire alerts to the current z_level
* atmos/fire alerts are now linked to an object and not its area, as intended
* simplified and full pathed the radio frequency datum
* made radio objects properly clean on del/qdel, instead of letting the radio controller remove nulls at each post_signal()
2014-11-14 10:10:45 +01:00
Aranclanos 8aa5a137c5 Pipenet revamp
-Removed the pipenet network datum, now it will all be done with the pipeline datum
-All atmos pipes and machines will always have a pipeline datum
-Moved the valves to the binary subtype and the portable connectors to the unary subtype
-The pipe vents (who were barely used in three spots of the map) are removed, the map slots will replaced with outlets
-Fixes some bugs of pipenet disconnection, mostly on explosions
-Cleaned a bit the copypaste of construction.dm of pipes
-Removed the ID restrictions of digital valves and the frequency (both unused)
2014-11-03 08:21:31 -03:00
Daniel 3ea3462e6e Squashed up 2014-09-30 23:50:51 +02:00
Firecage 6c7af5eb32 SPANCLASSES!!!!! 2014-08-26 09:52:13 +02:00
Firecage b74fc08283 Absolute paths for the files in the ATMOSPHERICS folder 2014-08-16 12:33:16 +02:00
Kyrah Abattoir 301c5be5f5 /code/ATMOSPHERICS/* lowercasing pass. 2013-11-18 01:36:36 +01:00