Commit Graph

14 Commits

Author SHA1 Message Date
Iamgoofball a8ec1c76df Merge branch 'master' of https://github.com/tgstation/-tg-station into graphics
Conflicts:
	code/ATMOSPHERICS/atmospherics.dm
	code/game/machinery/computer/computer.dm
	code/game/objects/items/weapons/explosives.dm
	code/game/objects/structures/crates_lockers/closets/fireaxe.dm
	code/game/objects/structures/musician.dm
	code/game/objects/structures/tables_racks.dm
	code/game/objects/structures/window.dm
2015-06-23 12:54:26 -07:00
Iamgoofball c2256d41fc BAR NOW SHOWS UP ON THE OBJECT YOU'RE INTERACTING WITH 2015-06-13 13:58:08 -07:00
duncathan dab13732fe cleans up icon paths; modifies certain unary devices
updates icon paths in multiple files
removed insulated icon state in pipe_item.dmi (insulateds are deaaaad)
lays an icon framework so that o2 generators, cold sinks, heat sinks may eventually be made constructable
  they no longer override update_icon() but instead update like just about every other device
  eventually I'll give these real sprites but given that they're unused it can wait for now
  sprites and construction are outside the scope of this PR
makes heat exchangers update their color based on their node
  because heat exchangers are different sprite-wise they had to override update_icon entirely
makes heat exchanger, heat sinks, cold sinks, o2 generators non-dense
2015-06-13 02:43:17 -06:00
kingofkosmos de280c72b5 Removed some more spans from visible messages. 2015-04-24 21:06:59 +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
carnie a029a49392 SubSystem rewrite
Misc:

+Fixes unreported issue with initializing lighting on a specific zlevel

+Fixes two similar issues with moveElement and moveRange. Where fromIndex or toIndex could be adjusted incorrectly in certain conditions. Potentially causing bad-sorts, or out of bound errors.

+Rewrites listclearnulls(list/L) to no longer iterate through L.len elements for every null in the list (plus 1). i.e. went from L.len*(number_of_nulls+1) list-element reads (best-case), to L.len list-element reads (worst-case)

+New proc/getElementByVar(list/L, varname, value) which finds the first datum in a list, with a variable named varname, which equals value. You can also feed it atoms instead of lists due to the way the in operator functions.

+Fixes an unreported issue with Yota's list2text rewrite. Under certain conditions, the first element would not be converted into a string. Causing type-mismatch runtimes.

+New global map_ready variable. This is not fully implemented yet, but will be used to avoid duplicate calls to initialize() for map objects.

+All turfs now maintain references to all lights currently illuminating them. This will mean higher memory use unfortunately, due to the huge number of turfs. However, it will speed up updateAffectingLights significantly. I've used list husbandry to reduce baseline memory usage, so it shouldn't be any worse than some past atmos modifications memory-wise.

-Removed 'quadratic lighting', can add this back at some point. Sorry.

+modified the way lum() works slightly, to allow turfs to have overridden delta-lumen. i.e. space cannot be illuminated more than its default ambiance. This allowed removal of some iffy special-snowflake lighting areas implemented by somebody else.

+Lighting images in the dmi can now use arbitrary naming schemes. It is reliant on order now. This allows the dmi to be replaced by simply dropping in a new dmi.

-Removed all subtypes of /area/shuttle. Shuttles now create duplicate 'rooms' of /area/shuttle. (More on this later). This will conflict with most maps. Guide on how to fix to follow.

+All verbs/tools relating to world.tick_lag were refactored to use world.fps. However old config text for setting tick_lag will still work (it converts the value to fps for you)

+MC stats improved using smoothing. They now have their own tab so they dont get in the way when you're playing as an admin.

-removed the push_mob_back stuff due to conflicting changes. Sorry Giacom.

_OK, NOW THE ACTUAL INTERESTING STUFF_

Following systems moved over to subsystem datums:
air_master
garbage_manager
lighting_controller
process_mobs (aka Life())
nanomanager
power
sun
pipenets
AFK kick loops
shuttle_controller (aka emergency shuttle/pods), supply_shuttle and other shuttles
voting
bots
radio
diseases
events
jobs
objects
ticker

Subsystems hooks and variables should be commented fairly in-depth. If anything isn't particularly clear, please make an issue.

Many system-specific global variables have been refactored into

All tickers which previously used world.timeofday now use world.time

some subsystems can iterate before round start. this resolves the issue with votes not working pregame
2014-12-31 13:25:41 +00:00
tkdrg 0a47c8ec4e You can no longer put transit tube pods in a station that already has one. 2014-10-27 11:55:46 -03:00
tkdrg c6ba2b5c22 Shortens stopped tube time and cleans up a bit 2014-10-14 14:14:58 -03:00
tkdrg c6d5a44269 Makes transit tubes a lot faster 2014-10-13 19:55:30 -03:00
tkdrg cc5a29b9fb Fixes tube pod decon & gives tubes two spin dirs 2014-10-09 19:18:35 -03:00
tkdrg 4ef2e494a1 Changes flip/rotation, better diagonal handling 2014-10-05 14:09:10 -03:00
tkdrg d0ce2a848d First iteration of constructable transit tubes 2014-10-04 21:18:41 -03:00
Giacomand d42aa1e28a Fixes a typo. 2014-04-21 21:00:23 +01:00
Giacomand 016889bfc0 Fixes transit tubes being stuck, it uses process() instead of a spawn'd loop.
Segmented the transit tube code into its own folder and code files, for each part of the tube.
2014-04-21 15:44:50 +01:00