Commit Graph

72 Commits

Author SHA1 Message Date
AffectedArc07 42da9918d7 Makes solars auto-track again (#13278)
* Makes solars auto-track again

* Forgot this
2020-04-11 15:46:09 -06:00
AffectedArc07 210f8badf4 Makes all global variables handled by the GLOB controller (#13152)
* Handlers converted, now to fix 3532 compile errors

* 3532 compile fixes later, got runtimes on startup

* Well the server loads now atleast

* Take 2

* Oops
2020-03-20 21:56:37 -06:00
AffectedArc07 04ba5c1cc9 File standardisation (#13131)
* Adds the check components

* Adds in trailing newlines

* Converts all CRLF to LF

* Post merge EOF

* Post merge line endings

* Final commit
2020-03-17 18:08:51 -04:00
Citinited fddff1049b [Testmerge ready] Ports tool behaviours; refactors all tools; adds functionality for self-filling reagent containers (#11700)
* Adds support for self-filling reagent containers

* Sets tool_behaviour on the default set of tools

* Fixing merge conflicts

* Refactors welder to use tool behaviour

* The refactor: part I

* The refactor: part II

* Tool Refactor Part III: Revenge of the Maint

* Tool Refactor Part IV: A New Hope

* Tool Refactor Part V: The Oldcoder Strikes Back

* Tool Refactor Part VI: Return of the Coder

* VII

* Holy shit, it compiles?!

* Nannek I completed your TODO, you owe me ice cream

* Tool helpers; telepad is compliant

* Bugtest, Round 1: Fight

Fuck refactoring disposals

* Buggfixing, Round 2: Electric Boogaloo

* Personal crafting uses tool behaviours now

* Construction datums use new tool behaviours; better way of handling fueltank refuelling; more bugfixing

* multitool_check_buffer change; removes some useless things in tool_helpers

* proc name change

* TRUE/FALSE changes

* Bugfixing, Round 3: A Good Day To Bugfix Hard

Fixes multiple issues raised by the testmerge

* Minor style changes
2020-02-15 13:31:08 -07:00
Fox McCloud 67dc33ac3f for-the-strength-from-which-he-gives-is-unerring 2019-10-05 02:08:11 -04:00
Fox McCloud 5170f3fbae the-strength-of-this-world-fades 2019-10-04 19:34:08 -04:00
Fox McCloud 20c4cf0a08 for-if-I-stand-I-stand-by-his-will-alone 2019-10-03 19:52:03 -04:00
Fox McCloud d29be05f74 the-figment-that-was-is-now-gone 2019-10-01 19:08:15 -04:00
Fox McCloud a469d0fcf2 for-God-has-redeemed-us-all 2019-09-30 16:49:15 -04:00
Fox McCloud aa49033844 nor-shall-our-souls-falter 2019-09-17 16:06:09 -04:00
Fox McCloud 7b57d2e319 fixups 2019-04-29 04:41:31 -04:00
Purpose 037f215d16 updates vars to use the defines 2018-09-16 01:22:57 +01:00
tigercat2000 7d8c9a731a SS Conversion: Atoms, Machines, n' Mobs
This converts the machine and mob processes to the SMC. Additionally, it
adds the Atom subsystem, which handles all Initialize() calls in place
of the old gameticker. Due to incompatibility with our atmospherics
(FUCK OUR ATMOSPHERICS FOR FUCKING EVER JESUS CHRIST WHO THE FUCK MADE
THIS PIECE OF GODDAMN SHIT) atmospherics machines do not use
Initialize() as they should, instead opting for a custom atmos_init
proc that the air controller handles.
2018-04-28 17:55:15 -07:00
Fox McCloud 5c4aa9b3fd Removes All Weapons 2018-04-15 16:25:56 -04:00
Fox McCloud 22dc6860b3 Ports TG's Garbage Subsystem 2018-03-28 20:02:39 -04:00
Fox McCloud 5701ea7c75 Ports Nano UI to Subsystems 2018-03-26 23:59:52 -04:00
Fox McCloud 2b6a6eb812 Ports Sun Controller to Subsystem 2018-03-25 19:23:26 -04:00
Sam 2d13e2f7bf Converts /modules/ to using WEIGHT_CLASS_x 2017-05-28 01:25:09 +01:00
Markolie 3aa1399995 Implement usesound/toolspeed 2017-03-07 16:46:28 +01:00
Crazylemon64 f954382619 Adds a ui_key arg to ui_data 2016-12-31 12:51:07 -08:00
Tigercat2000 b9abce843d NanoUI Update: Seperate UI Data into ui_data() proc
This commit changes how NanoUI's live data updating system works.
Previously, data for the template was directly gathered in the
ui_interact proc. Now, it is seperated into the proc `ui_data`.

To players, this does absolutely nothing.
To coders, this opens up the potential for a much more complicated and
fancy graphical updating system in the future, because the data is
available on-demand without ever having to call
nanomanager.try_update_ui.
2016-12-14 13:37:34 -08:00
Tigercat2000 71e5344a98 Mass replace 2016-07-07 19:34:02 -07:00
Tastyfish 4fd9d3e131 Nano animations! 2016-05-27 14:52:04 -04:00
Tigercat2000 78f53553f8 Reduce lines by removing blank lines added by PJ's script 2016-04-05 08:25:57 -07:00
Tigercat2000 9d430844c3 Replace most (if not all) output << operators with to_chat(user, message)
Currently, to_chat is literally just a proc that does user << message.
But it'll let us do output modification in the future, especially for
something like Goon's HTML chat.

Big thanks to PJB for his to_chat script, see
https://github.com/d3athrow/vgstation13/pull/6625 for more details.
2016-04-05 08:15:05 -07:00
Tigercat2000 7f4ac72910 Progress bars + Wall Rationalization
This commit does the following:
 - Ports progress bars from -tg- (tgstation/-tg-station#9921)
 - Refactors wall attackby code to make it 100% less insane; Instead of
   manually checking every little thing, it uses do_after,
   consequentially, making the new progress bars affect dealing with walls
   as well.

Wall code makes a tiger sad.
2015-08-31 13:38:51 -07:00
Markolie 2e3f4c63dd Solar control initialization fix 2015-08-03 01:14:06 +02:00
Markolie 38b313a454 Engineering outpost solar update 2015-08-01 22:25:32 +02:00
Markolie 0a4a2f34cf Map updates 2015-08-01 21:41:34 +02:00
Markolie 51035f931e Powernet rework 2015-07-31 23:59:41 +02:00
Fox-McCloud 822dc6bac1 solar tweaks 2015-07-14 00:23:58 -04:00
Fox-McCloud 6cbdad58cf Sun Controller Scheduler Integration 2015-07-13 20:54:10 -04:00
Krausus b386cec388 Initial GC fixes/tweaks/cleanup/documenting 2015-06-27 01:56:57 -04:00
Tigercat2000 d20298e996 -tg- atom pooling system, qdel changes
This commit first and foremost ports the -tg- atom pooling system, and
removes the old experimental system entirely.

Secondly, this PR modifies the qdel system to use a -tg- lookalike
"destroy hint" system, which means that individual objects can tell qdel
what to do with them beyond taking care of things they need to delete.
This ties into the atom pooling system via a new hint define,
QDEL_HINT_PUTINPOOL, which will place the atom in the pool instead of
deleting it as per standard.

Emitter beams are now fully pooled.

Qdel now has semi-compatibility with all datum types, however it is not
the same as -tg-'s "Queue everything!" system. It simply passes it through
the GC immediately and adds it to the "hard del" lists. This means that
reagents can be qdel'ed, but there is no purpose as of yet, as it is more
or less the same as just deleting them, with the added effect of adding
logs of them being deleted to the garbage collector.
2015-06-21 15:47:57 -07:00
Markolie 672305e034 Adds a "params" parameter to attackby(), so it keeps track of pixel_x and pixel_y among other things 2015-02-22 22:12:11 +01:00
Markolie 95e18fd397 Solar update, convert solar to NanoUI 2015-02-16 21:35:34 +01:00
ZomgPonies fdd1d94769 Hopefully fix solars for realsies 2014-05-01 21:49:24 -04:00
ZomgPonies 1ebe9f34e9 Solar fixes 2014-04-27 17:39:56 -04:00
ZomgPonies 1cdbe818ad tg's solars update 2014-04-22 09:46:36 -04:00
ESwordTheCat c43652b33a Okay shards converted to pool usage now.
Conflicts:
	code/game/machinery/computer/arcade.dm
	code/game/machinery/doors/windowdoor.dm
	code/game/machinery/telecomms/traffic_control.dm
	code/game/objects/structures/displaycase.dm
	code/modules/mining/mine_turfs.dm
	code/modules/reagents/reagent_containers/food/drinks/drinkingglass.dm
2014-04-19 19:57:53 -04:00
Ccomp5950 e7d4f4ad4b Effeciency Project: APC / Machinery power usage.
We no longer run auto_use_power() on every machine every tick.
We now have a global list of areas, and areas that have an APC in them (all_areas and active_areas) no more looping through world bullshit.
A bunch of snowflakey as fuck machines won't use_power() in their process, you get two options, active and idle, use them!
This means a lot of machines won't double dip on power as well so power usage for the station has dropped about 20%

Because everything is snowflakey as fuck we're going to have some machines that don't force an update on their power usage.  Fuck them.
We should catch them with the root obj/machine/proc's forcing updates.

Conflicts:
	code/modules/mob/mob.dm
	code/modules/power/apc.dm
2014-03-08 17:03:29 -05:00
Rob Nelson c3b021e246 Added a garbage collector implementation based on rumors from Goon and proc references in released gooncode.
And holy shit it's fast

Conflicts:
	baystation12.dme
	code/ATMOSPHERICS/pipes.dm
	code/game/machinery/Sleeper.dm
	code/game/machinery/rechargestation.dm
	code/game/objects/structures/crates_lockers/crates.dm
	code/game/objects/structures/tables_racks.dm
	code/modules/mining/mine_turfs.dm
	code/modules/paperwork/photocopier.dm
	code/modules/power/cable.dm
	html/changelog.html
2014-01-29 23:45:21 -05:00
ZomgPonies 63421d58e0 Image caching optimizations 2013-10-05 09:49:55 -04:00
Zuhayr 6f207a3a14 Fixes #2424 2013-06-27 18:09:48 -07:00
Zuhayr e41c47c52b Fixes #3082. 2013-06-19 00:21:15 -07:00
adammartinez271828 3b95bf2279 Updates to sun.dm and solar.dm
Improved solar manual tracking by switching sun.dm and solar.dm to run off of the same clock (world.time) and added several options to the solar generator control computer.
2013-04-07 10:17:41 -04:00
rockdtben@gmail.com 169c96db1b Too remove potential excessive garbage collection per tick. We will be reusing lists for overlays instead of deleting and creating them.
the .Cut() proc on a list will empty a list by default. This also will set the len to 0.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5465 316c924e-a436-60f5-8080-3fe189b3f50e
2013-01-04 15:11:06 +00:00
giacomand@gmail.com 7af60a7fb5 -Changed the powernet nodes list to be a dictionary list (associative list, hashtable, etc..)
-Added a solars_list. The sun will use this list instead of the machines list. I made a proc which decided on whether to use this list or the powernet nodes list depending on what is smallest. I replaced some loops to use this proc.
-The sun will reference this list for debugging purposes. The sun will also remove solar equipment in the list which are not connected to a powernet.
-Cut down on some duplicated code.
-Fixed an issue with solar panels not updating their direction correctly.
-Changed the proc updateicon()'s name to update_icon()

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5418 316c924e-a436-60f5-8080-3fe189b3f50e
2012-12-29 07:24:42 +00:00
giacomand@gmail.com eca72b69aa -Added constructable solar arrays.
-Added a solar pack crate to order.
-Machines that have a use_power of 0 will no longer be turned off due to lack of power in the area.
-Fixed a bug with the solar computer not reconnecting to the powernet when dismantled and remantled.
-Increased the cap of crates to 30.
-Some performance tweaks.
-Some standardization.
-All objects of type /obj/machinery/power will try to disconnect from the powernet before deleting, this will help reduce the node list size.
-Added a heat_proof variable for doors. It will effect glass airlocks and it'll determine whether they can block heat or not. Research glass airlocks will always have it enabled.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5344 316c924e-a436-60f5-8080-3fe189b3f50e
2012-12-16 19:51:23 +00:00
giacomand@gmail.com b00c0c2a9f -New sprites APC sprites by TankNut!
-New wraith sprites by TankNut!
-Decreased flare duration, again(!)
-Made a based interact proc and changed the updateDialog to call that instead of attack_hand. This caused issues with the APC and getting the power cell out of it. I then changed all machines that had their own defined proc (that was everywhere)


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5001 316c924e-a436-60f5-8080-3fe189b3f50e
2012-11-03 14:45:29 +00:00