diff --git a/code/ATMOSPHERICS/components/valve.dm b/code/ATMOSPHERICS/components/valve.dm index 835adeed27..bcb962857c 100644 --- a/code/ATMOSPHERICS/components/valve.dm +++ b/code/ATMOSPHERICS/components/valve.dm @@ -131,7 +131,7 @@ obj/machinery/atmospherics/valve process() ..() - machines.Remove(src) + . = PROCESS_KILL /* if(open && (!node1 || !node2)) close() diff --git a/code/ATMOSPHERICS/pipes.dm b/code/ATMOSPHERICS/pipes.dm index 422b4e941d..33f3a798c4 100644 --- a/code/ATMOSPHERICS/pipes.dm +++ b/code/ATMOSPHERICS/pipes.dm @@ -106,7 +106,7 @@ obj/machinery/atmospherics/pipe if(!parent) //This should cut back on the overhead calling build_network thousands of times per cycle ..() else - machines.Remove(src) + . = PROCESS_KILL /*if(!node1) parent.mingle_with_turf(loc, volume) @@ -339,7 +339,7 @@ obj/machinery/atmospherics/pipe if(!parent) ..() else - machines.Remove(src) + . = PROCESS_KILL /* if(!node1) parent.mingle_with_turf(loc, 200) if(!nodealert) @@ -520,7 +520,7 @@ obj/machinery/atmospherics/pipe process() if(!parent) if(build_killswitch <= 0) - machines.Remove(src) + . = PROCESS_KILL else build_killswitch-- ..() @@ -626,7 +626,7 @@ obj/machinery/atmospherics/pipe if(!parent) ..() else - machines.Remove(src) + . = PROCESS_KILL /* if(!node1) parent.mingle_with_turf(loc, 70) diff --git a/code/controllers/master_controller.dm b/code/controllers/master_controller.dm index faa7dfd8cd..248c760c4d 100644 --- a/code/controllers/master_controller.dm +++ b/code/controllers/master_controller.dm @@ -25,9 +25,7 @@ datum/controller/game_controller var/ticker_cost = 0 var/total_cost = 0 - var/obj/machinery/last_obj_processed //Used for MC 'proc break' debugging - var/datum/disease/last_disease_processed //Used for MC 'proc break' debugging - var/obj/machinery/last_machine_processed //Used for MC 'proc break' debugging + var/last_thing_processed datum/controller/game_controller/New() //There can be only one master_controller. Out with the old and in with the new. @@ -101,7 +99,6 @@ datum/controller/game_controller/proc/process() if(!Failsafe) new /datum/failsafe() var/currenttime = world.timeofday - last_tick_duration = (currenttime - last_tick_timeofday) / 10 last_tick_timeofday = currenttime @@ -110,107 +107,128 @@ datum/controller/game_controller/proc/process() var/start_time = world.timeofday controller_iteration++ + //AIR timer = world.timeofday + last_thing_processed = air_master.type air_master.process() air_cost = (world.timeofday - timer) / 10 sleep(breather_ticks) + //SUN timer = world.timeofday + last_thing_processed = sun.type sun.calc_position() sun_cost = (world.timeofday - timer) / 10 sleep(breather_ticks) + //MOBS timer = world.timeofday - for(var/i=1,i<=mob_list.len,i++) + var/i = 1 + while(i<=mob_list.len) var/mob/M = mob_list[i] if(M) + last_thing_processed = M.type M.Life() + i++ continue mob_list.Cut(i,i+1) - i-- mobs_cost = (world.timeofday - timer) / 10 sleep(breather_ticks) + //DISEASES timer = world.timeofday - for(var/i=1,i<=active_diseases.len,i++) + i = 1 + while(i<=active_diseases.len) var/datum/disease/Disease = active_diseases[i] if(Disease) - last_disease_processed = Disease + last_thing_processed = Disease.type Disease.process() + i++ continue active_diseases.Cut(i,i+1) - i-- diseases_cost = (world.timeofday - timer) / 10 sleep(breather_ticks) + //MACHINES timer = world.timeofday - for(var/i=1,i<=machines.len,i++) + i = 1 + while(i<=machines.len) var/obj/machinery/Machine = machines[i] if(Machine) - last_machine_processed = Machine - Machine.process() - if(Machine) - if(Machine.use_power) - Machine.auto_use_power() - continue + last_thing_processed = Machine.type + if(Machine.process() != PROCESS_KILL) + if(Machine) + if(Machine.use_power) + Machine.auto_use_power() + i++ + continue machines.Cut(i,i+1) - i-- machines_cost = (world.timeofday - timer) / 10 sleep(breather_ticks) + //OBJECTS timer = world.timeofday - for(var/i=1,i<=processing_objects.len,i++) + i = 1 + while(i<=processing_objects.len) var/obj/Object = processing_objects[i] if(Object) - last_obj_processed = Object + last_thing_processed = Object.type Object.process() + i++ continue processing_objects.Cut(i,i+1) - i-- objects_cost = (world.timeofday - timer) / 10 sleep(breather_ticks) + //PIPENETS timer = world.timeofday - for(var/i=1,i<=pipe_networks.len,i++) + last_thing_processed = /datum/pipe_network + i = 1 + while(i<=pipe_networks.len) var/datum/pipe_network/Network = pipe_networks[i] if(Network) Network.process() + i++ continue pipe_networks.Cut(i,i+1) - i-- networks_cost = (world.timeofday - timer) / 10 sleep(breather_ticks) + //POWERNETS timer = world.timeofday - for(var/i=1,i<=powernets.len,i++) + last_thing_processed = /datum/powernet + i = 1 + while(i<=powernets.len) var/datum/powernet/Powernet = powernets[i] if(Powernet) Powernet.reset() + i++ continue powernets.Cut(i,i+1) - i-- powernets_cost = (world.timeofday - timer) / 10 sleep(breather_ticks) + //TICKER timer = world.timeofday + last_thing_processed = ticker.type ticker.process() ticker_cost = (world.timeofday - timer) / 10 + //TIMING total_cost = air_cost + sun_cost + mobs_cost + diseases_cost + machines_cost + objects_cost + networks_cost + powernets_cost + ticker_cost var/end_time = world.timeofday if(end_time < start_time) start_time -= 864000 //deciseconds in a day sleep( round(minimum_ticks - (end_time - start_time),1) ) - else sleep(10) @@ -283,4 +301,10 @@ datum/controller/game_controller/proc/Recover() //Mostly a placeholder for now. /client/verb/spawn_FS() new /datum/failsafe() -*/ + +/client/verb/machines_list() + for(var/i=1,i<=machines.len,i++) + var/machine = machines[i] + if(istype(machine,/datum)) world.log << machine:type + else world.log << machine +*/ \ No newline at end of file diff --git a/code/game/machinery/computer/robot.dm b/code/game/machinery/computer/robot.dm index 746d00fbd8..e3f51ce211 100644 --- a/code/game/machinery/computer/robot.dm +++ b/code/game/machinery/computer/robot.dm @@ -97,14 +97,6 @@ onclose(user, "computer") return -//Why is this in robot/computer and why does it exist when /obj/machinery/computer/engine does not? -Nodrak -/*/obj/machinery/computer/engine/process() - if(stat & (NOPOWER|BROKEN)) - return - use_power(500) - src.updateDialog() - return*/ - /obj/machinery/computer/robotics/Topic(href, href_list) if(..()) return diff --git a/code/game/machinery/hydroponics.dm b/code/game/machinery/hydroponics.dm index 830ffd47ab..788dce4a55 100644 --- a/code/game/machinery/hydroponics.dm +++ b/code/game/machinery/hydroponics.dm @@ -50,8 +50,8 @@ obj/machinery/hydroponics/process() - if(myseed && !(myseed in contents)) - contents += myseed + if(myseed && (myseed.loc != src)) + myseed.loc = src if(world.time > (src.lastcycle + src.cycledelay)) src.lastcycle = world.time diff --git a/code/game/machinery/igniter.dm b/code/game/machinery/igniter.dm index 7459a175ed..0cacca07ed 100644 --- a/code/game/machinery/igniter.dm +++ b/code/game/machinery/igniter.dm @@ -16,7 +16,7 @@ src.icon_state = text("igniter[]", src.on) return -/obj/machinery/igniter/process() +/obj/machinery/igniter/process() //ugh why is this even in process()? if (src.on && !(stat & NOPOWER) ) var/turf/location = src.loc if (isturf(location)) diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm index 6c4c5548b1..b622c169fb 100644 --- a/code/game/machinery/machinery.dm +++ b/code/game/machinery/machinery.dm @@ -93,24 +93,13 @@ Class Procs: /obj/machinery/New() ..() - machines.Add(src) + machines += src /obj/machinery/Del() - machines.Remove(src) ..() /obj/machinery/process()//If you dont use process or power why are you here - - /* - Big note: if do not call ..() in any machinery subtype process() call or it will - be removed from the list of machines to iterate. It is, however, okay to call ..() - if the machine has a parent process() call. For instance, machinery/atmospherics has a - root process() call, so things like cryocells can call ..() and not worry about - it getting removed from machines. - */ - - machines.Remove(src) // uncommented by Doohl - return + return PROCESS_KILL /obj/machinery/emp_act(severity) if(use_power && stat == 0) diff --git a/code/game/machinery/newscaster.dm b/code/game/machinery/newscaster.dm index 2c45e611fb..5bbb1b26d1 100644 --- a/code/game/machinery/newscaster.dm +++ b/code/game/machinery/newscaster.dm @@ -891,8 +891,9 @@ obj/item/weapon/newspaper/attackby(obj/item/weapon/W as obj, mob/user as mob) src.paper_remaining-- return -/obj/machinery/newscaster/process() //Was thinking of doing the icon update through process, but multiple iterations per second does not - return //bode well with a newscaster network of 10+ machines. Let's just return it, as it's added in the machines list. +//Removed for now so these aren't even checked every tick. Left this here in-case Agouri needs it later. +///obj/machinery/newscaster/process() //Was thinking of doing the icon update through process, but multiple iterations per second does not +// return //bode well with a newscaster network of 10+ machines. Let's just return it, as it's added in the machines list. /obj/machinery/newscaster/proc/newsAlert(channel) //This isn't Agouri's work, for it is ugly and vile. var/turf/T = get_turf(src) //Who the fuck uses spawn(600) anyway, jesus christ diff --git a/code/game/objects/effects/overlays.dm b/code/game/objects/effects/overlays.dm index 0df933ece3..140e5314eb 100644 --- a/code/game/objects/effects/overlays.dm +++ b/code/game/objects/effects/overlays.dm @@ -12,12 +12,6 @@ ..() spawn(10) del src -/obj/effect/overlay/water - name = "water" - icon = 'icons/misc/beach.dmi' - icon_state = "water2" - layer = MOB_LAYER+0.1 - /obj/effect/overlay/palmtree_r name = "Palm tree" icon = 'icons/misc/beach2.dmi' diff --git a/code/game/supplyshuttle.dm b/code/game/supplyshuttle.dm index dc66b2e139..de9a4e2b50 100644 --- a/code/game/supplyshuttle.dm +++ b/code/game/supplyshuttle.dm @@ -592,7 +592,7 @@ var/list/mechtoys = list( O.orderedby = idname supply_shuttle.requestlist += O - temp = "Order requst placed.
" + temp = "Order request placed.
" temp += "
OK | Authorize Order" else if(href_list["confirmorder"]) diff --git a/code/game/turfs/unsimulated/beach.dm b/code/game/turfs/unsimulated/beach.dm index 74d4d909ae..d8ce4659b0 100644 --- a/code/game/turfs/unsimulated/beach.dm +++ b/code/game/turfs/unsimulated/beach.dm @@ -13,4 +13,8 @@ /turf/unsimulated/beach/water name = "Water" - icon_state = "water" \ No newline at end of file + icon_state = "water" + +/turf/unsimulated/beach/water/New() + ..() + overlays += image("icon"='icons/misc/beach.dmi',"icon_state"="water2","layer"=MOB_LAYER+0.1) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index b8910ba606..d1291a6268 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -674,8 +674,10 @@ note dizziness decrements automatically in the mob's Life() proc. if(master_controller) stat(null,"MasterController-[last_tick_duration] ([master_controller.processing?"On":"Off"]-[controller_iteration])") stat(null,"Air-[master_controller.air_cost]\t Sun-[master_controller.sun_cost]") - stat(null,"Mob-[master_controller.mobs_cost]\t Dis-[master_controller.diseases_cost]") - stat(null,"Mch-[master_controller.machines_cost]\t Obj-[master_controller.objects_cost]") + stat(null,"Mob-[master_controller.mobs_cost]\t #[mob_list.len]") + stat(null,"Dis-[master_controller.diseases_cost]\t #[active_diseases.len]") + stat(null,"Mch-[master_controller.machines_cost]\t #[machines.len]") + stat(null,"Obj-[master_controller.objects_cost]\t #[processing_objects.len]") stat(null,"Net-[master_controller.networks_cost]\t Pnet-[master_controller.powernets_cost]") stat(null,"Tick-[master_controller.ticker_cost]\t ALL-[master_controller.total_cost]") else diff --git a/code/modules/mob/organ/organ.dm b/code/modules/mob/organ/organ.dm index 7fe61e128d..81b45f5128 100644 --- a/code/modules/mob/organ/organ.dm +++ b/code/modules/mob/organ/organ.dm @@ -4,11 +4,11 @@ var/name = "organ" var/mob/owner = null -/datum/organ/proc/process() - return 0 +///datum/organ/proc/process() +// return 0 -/datum/organ/proc/receive_chem(chemical as obj) - return 0 +///datum/organ/proc/receive_chem(chemical as obj) +// return 0 diff --git a/code/modules/power/antimatter/shielding.dm b/code/modules/power/antimatter/shielding.dm index ffc0cd5130..9c646e25de 100644 --- a/code/modules/power/antimatter/shielding.dm +++ b/code/modules/power/antimatter/shielding.dm @@ -80,7 +80,7 @@ proc/cardinalrange(var/center) /obj/machinery/am_shielding/process() - if(!processing) ..() + if(!processing) . = PROCESS_KILL //TODO: core functions and stability //TODO: think about checking the airmix for plasma and increasing power output return @@ -174,7 +174,6 @@ proc/cardinalrange(var/center) /obj/machinery/am_shielding/proc/shutdown_core() processing = 0 - machines.Remove(src) if(!control_unit) return control_unit.linked_cores.Remove(src) control_unit.reported_core_efficiency -= efficiency diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 73f1feeff3..c4c127c11e 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -573,7 +573,7 @@ #define LIGHTING_POWER_FACTOR 20 //20W per unit luminosity -/obj/machinery/light/process() +/obj/machinery/light/process()//TODO: remove/add this from machines to save on processing as needed ~Carn PRIORITY if(on) use_power(luminosity * LIGHTING_POWER_FACTOR, LIGHT) diff --git a/code/modules/power/singularity/emitter.dm b/code/modules/power/singularity/emitter.dm index a89f0b874c..59ad51fa7a 100644 --- a/code/modules/power/singularity/emitter.dm +++ b/code/modules/power/singularity/emitter.dm @@ -105,22 +105,20 @@ s.set_up(5, 1, src) s.start() A.dir = src.dir - if(src.dir == 1)//Up - A.yo = 20 - A.xo = 0 - else if(src.dir == 2)//Down - A.yo = -20 - A.xo = 0 - else if(src.dir == 4)//Right - A.yo = 0 - A.xo = 20 - else if(src.dir == 8)//Left - A.yo = 0 - A.xo = -20 - else // Any other - A.yo = -20 - A.xo = 0 - A.process() + switch(dir) + if(NORTH) + A.yo = 20 + A.xo = 0 + if(EAST) + A.yo = 0 + A.xo = 20 + if(WEST) + A.yo = 0 + A.xo = -20 + else // Any other + A.yo = -20 + A.xo = 0 + A.process() //TODO: Carn: check this out /obj/machinery/emitter/attackby(obj/item/W, mob/user) diff --git a/code/modules/power/singularity/generator.dm b/code/modules/power/singularity/generator.dm index 047c724012..8b20fc16ab 100644 --- a/code/modules/power/singularity/generator.dm +++ b/code/modules/power/singularity/generator.dm @@ -13,9 +13,7 @@ var/turf/T = get_turf(src) if(src.energy >= 200) new /obj/machinery/singularity/(T, 50) - spawn(0) - del(src) - return + if(src) del(src) /obj/machinery/the_singularitygen/attackby(obj/item/W, mob/user) if(istype(W, /obj/item/weapon/wrench)) diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index 52b1b587b8..9031c2ebc8 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -83,7 +83,7 @@ sunfrac = cos(p_angle) ** 2 -/obj/machinery/power/solar/process() +/obj/machinery/power/solar/process()//TODO: remove/add this from machines to save on processing as needed ~Carn PRIORITY if(stat & BROKEN) return if(!control) return if(obscured) return @@ -141,7 +141,7 @@ /obj/machinery/power/solar/fake/process() - machines.Remove(src) + . = PROCESS_KILL return diff --git a/code/modules/recycling/conveyor2.dm b/code/modules/recycling/conveyor2.dm index e3d3add7ff..0b80389d1d 100644 --- a/code/modules/recycling/conveyor2.dm +++ b/code/modules/recycling/conveyor2.dm @@ -76,7 +76,7 @@ use_power(100) affecting = loc.contents - src // moved items will be all in loc - spawn(1) // slight delay to prevent infinite propagation due to map order + spawn(1) // slight delay to prevent infinite propagation due to map order //TODO: please no spawn() in process(). It's a very bad idea var/items_moved = 0 for(var/atom/movable/A in affecting) if(!A.anchored) diff --git a/code/modules/research/message_server.dm b/code/modules/research/message_server.dm index 534fa761db..0380c90a62 100644 --- a/code/modules/research/message_server.dm +++ b/code/modules/research/message_server.dm @@ -82,7 +82,7 @@ var/global/list/obj/machinery/message_server/message_servers = list() /obj/machinery/message_server/process() //if(decryptkey == "password") // decryptkey = generateKey() - if((stat & (BROKEN|NOPOWER)) && active) + if(active && (stat & (BROKEN|NOPOWER))) active = 0 return update_icon() diff --git a/code/modules/research/server.dm b/code/modules/research/server.dm index 0ef69460fe..54807706a9 100644 --- a/code/modules/research/server.dm +++ b/code/modules/research/server.dm @@ -90,7 +90,7 @@ ..() -/obj/machinery/r_n_d/server/proc/ + //Backup files to centcomm to help admins recover data after greifer attacks /obj/machinery/r_n_d/server/proc/griefProtection() for(var/obj/machinery/r_n_d/server/centcom/C in world) @@ -190,7 +190,7 @@ no_id_servers -= S /obj/machinery/r_n_d/server/centcom/process() - return + return PROCESS_KILL //don't need process() /obj/machinery/computer/rdservercontrol diff --git a/code/setup.dm b/code/setup.dm index 295f66fadf..0317a54a73 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -495,3 +495,6 @@ var/list/liftable_structures = list(\ #define BORGMESON 1 #define BORGTHERM 2 #define BORGXRAY 4 + +//some arbitrary defines to be used by self-pruning global lists. (see master_controller) +#define PROCESS_KILL 26 //Used to trigger removal from a processing list diff --git a/maps/tgstation.2.0.9.dmm b/maps/tgstation.2.0.9.dmm index 24148e035c..a5236f4cef 100644 --- a/maps/tgstation.2.0.9.dmm +++ b/maps/tgstation.2.0.9.dmm @@ -6162,7 +6162,7 @@ "coz" = (/turf/simulated/floor/holofloor{dir = 10; icon_state = "green"},/area/holodeck/source_basketball) "coA" = (/obj/structure/holohoop{dir = 1},/turf/simulated/floor/holofloor{dir = 2; icon_state = "green"},/area/holodeck/source_basketball) "coB" = (/turf/simulated/floor/holofloor{dir = 6; icon_state = "green"},/area/holodeck/source_basketball) -"coC" = (/obj/effect/overlay/water,/turf/simulated/beach/water,/area/holodeck/source_beach) +"coC" = (/turf/simulated/beach/water,/area/holodeck/source_beach) "coD" = (/obj/structure/table/holotable,/turf/simulated/floor/holofloor{dir = 10; icon_state = "green"},/area/holodeck/source_thunderdomecourt) "coE" = (/obj/structure/table/holotable,/obj/item/clothing/head/helmet/thunderdome,/obj/item/clothing/suit/armor/tdome/green,/obj/item/clothing/under/color/green,/obj/item/weapon/holo/esword/green,/turf/simulated/floor/holofloor{dir = 2; icon_state = "green"},/area/holodeck/source_thunderdomecourt) "coF" = (/obj/structure/table/holotable,/obj/machinery/readybutton,/turf/simulated/floor/holofloor{dir = 6; icon_state = "green"},/area/holodeck/source_thunderdomecourt) @@ -6974,7 +6974,7 @@ "cEf" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/holding) "cEg" = (/obj/structure/table,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/holding) "cEh" = (/obj/machinery/vending/cola,/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/holding) -"cEi" = (/obj/effect/overlay/water,/turf/unsimulated/beach/water,/area/centcom/holding) +"cEi" = (/turf/unsimulated/beach/water,/area/centcom/holding) "cEj" = (/turf/unsimulated/floor{dir = 8; icon_state = "red"},/area/tdome) "cEk" = (/turf/unsimulated/floor{icon_state = "green"; dir = 4},/area/tdome) "cEl" = (/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 6},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) @@ -7094,7 +7094,7 @@ "cGv" = (/turf/unsimulated/beach/coastline{density = 1; opacity = 1},/area/beach) "cGw" = (/turf/unsimulated/beach/coastline,/area/beach) "cGx" = (/turf/unsimulated/beach/water{density = 1; opacity = 1},/area/beach) -"cGy" = (/obj/effect/overlay/water,/turf/unsimulated/beach/water,/area/beach) +"cGy" = (/turf/unsimulated/beach/water,/area/beach) "cGz" = (/turf/unsimulated/wall,/area/wizard_station) "cGA" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/obj/effect/decal/cleanable/cobweb,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) "cGB" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) diff --git a/tgstation.dme b/tgstation.dme index 5884d6e227..2f0ab65071 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -6,219 +6,6 @@ // BEGIN_FILE_DIR #define FILE_DIR . -#define FILE_DIR "code" -#define FILE_DIR "code/ATMOSPHERICS" -#define FILE_DIR "code/ATMOSPHERICS/components" -#define FILE_DIR "code/ATMOSPHERICS/components/binary_devices" -#define FILE_DIR "code/ATMOSPHERICS/components/trinary_devices" -#define FILE_DIR "code/ATMOSPHERICS/components/unary" -#define FILE_DIR "code/controllers" -#define FILE_DIR "code/datums" -#define FILE_DIR "code/datums/diseases" -#define FILE_DIR "code/datums/helper_datums" -#define FILE_DIR "code/datums/spells" -#define FILE_DIR "code/defines" -#define FILE_DIR "code/defines/area" -#define FILE_DIR "code/defines/obj" -#define FILE_DIR "code/defines/procs" -#define FILE_DIR "code/defines/tanning" -#define FILE_DIR "code/FEA" -#define FILE_DIR "code/game" -#define FILE_DIR "code/game/area" -#define FILE_DIR "code/game/asteroid" -#define FILE_DIR "code/game/gamemodes" -#define FILE_DIR "code/game/gamemodes/blob" -#define FILE_DIR "code/game/gamemodes/blob/blobs" -#define FILE_DIR "code/game/gamemodes/changeling" -#define FILE_DIR "code/game/gamemodes/cult" -#define FILE_DIR "code/game/gamemodes/events" -#define FILE_DIR "code/game/gamemodes/events/holidays" -#define FILE_DIR "code/game/gamemodes/extended" -#define FILE_DIR "code/game/gamemodes/malfunction" -#define FILE_DIR "code/game/gamemodes/meteor" -#define FILE_DIR "code/game/gamemodes/nuclear" -#define FILE_DIR "code/game/gamemodes/revolution" -#define FILE_DIR "code/game/gamemodes/sandbox" -#define FILE_DIR "code/game/gamemodes/traitor" -#define FILE_DIR "code/game/gamemodes/wizard" -#define FILE_DIR "code/game/jobs" -#define FILE_DIR "code/game/jobs/job" -#define FILE_DIR "code/game/machinery" -#define FILE_DIR "code/game/machinery/atmoalter" -#define FILE_DIR "code/game/machinery/bots" -#define FILE_DIR "code/game/machinery/computer" -#define FILE_DIR "code/game/machinery/doors" -#define FILE_DIR "code/game/machinery/embedded_controller" -#define FILE_DIR "code/game/machinery/kitchen" -#define FILE_DIR "code/game/machinery/pipe" -#define FILE_DIR "code/game/machinery/telecomms" -#define FILE_DIR "code/game/mecha" -#define FILE_DIR "code/game/mecha/combat" -#define FILE_DIR "code/game/mecha/equipment" -#define FILE_DIR "code/game/mecha/equipment/tools" -#define FILE_DIR "code/game/mecha/equipment/weapons" -#define FILE_DIR "code/game/mecha/medical" -#define FILE_DIR "code/game/mecha/working" -#define FILE_DIR "code/game/objects" -#define FILE_DIR "code/game/objects/effects" -#define FILE_DIR "code/game/objects/effects/decals" -#define FILE_DIR "code/game/objects/effects/spawners" -#define FILE_DIR "code/game/objects/items" -#define FILE_DIR "code/game/objects/items/devices" -#define FILE_DIR "code/game/objects/items/devices/PDA" -#define FILE_DIR "code/game/objects/items/devices/radio" -#define FILE_DIR "code/game/objects/items/robot" -#define FILE_DIR "code/game/objects/items/stacks" -#define FILE_DIR "code/game/objects/items/stacks/sheets" -#define FILE_DIR "code/game/objects/items/stacks/tiles" -#define FILE_DIR "code/game/objects/items/weapons" -#define FILE_DIR "code/game/objects/items/weapons/grenades" -#define FILE_DIR "code/game/objects/items/weapons/implants" -#define FILE_DIR "code/game/objects/items/weapons/secstorage" -#define FILE_DIR "code/game/objects/items/weapons/storage" -#define FILE_DIR "code/game/objects/items/weapons/tanks" -#define FILE_DIR "code/game/objects/structures" -#define FILE_DIR "code/game/objects/structures/crates_lockers" -#define FILE_DIR "code/game/objects/structures/crates_lockers/closets" -#define FILE_DIR "code/game/objects/structures/crates_lockers/closets/secure" -#define FILE_DIR "code/game/objects/structures/stool_bed_chair_nest" -#define FILE_DIR "code/game/turfs" -#define FILE_DIR "code/game/turfs/simulated" -#define FILE_DIR "code/game/turfs/unsimulated" -#define FILE_DIR "code/game/vehicles" -#define FILE_DIR "code/game/vehicles/airtight" -#define FILE_DIR "code/game/verbs" -#define FILE_DIR "code/js" -#define FILE_DIR "code/modules" -#define FILE_DIR "code/modules/admin" -#define FILE_DIR "code/modules/admin/DB ban" -#define FILE_DIR "code/modules/admin/verbs" -#define FILE_DIR "code/modules/assembly" -#define FILE_DIR "code/modules/client" -#define FILE_DIR "code/modules/clothing" -#define FILE_DIR "code/modules/clothing/glasses" -#define FILE_DIR "code/modules/clothing/gloves" -#define FILE_DIR "code/modules/clothing/head" -#define FILE_DIR "code/modules/clothing/masks" -#define FILE_DIR "code/modules/clothing/shoes" -#define FILE_DIR "code/modules/clothing/spacesuits" -#define FILE_DIR "code/modules/clothing/suits" -#define FILE_DIR "code/modules/clothing/under" -#define FILE_DIR "code/modules/clothing/under/jobs" -#define FILE_DIR "code/modules/critters" -#define FILE_DIR "code/modules/critters/hivebots" -#define FILE_DIR "code/modules/detectivework" -#define FILE_DIR "code/modules/flufftext" -#define FILE_DIR "code/modules/food" -#define FILE_DIR "code/modules/library" -#define FILE_DIR "code/modules/liquid" -#define FILE_DIR "code/modules/maps" -#define FILE_DIR "code/modules/mining" -#define FILE_DIR "code/modules/mob" -#define FILE_DIR "code/modules/mob/dead" -#define FILE_DIR "code/modules/mob/dead/observer" -#define FILE_DIR "code/modules/mob/living" -#define FILE_DIR "code/modules/mob/living/blob" -#define FILE_DIR "code/modules/mob/living/carbon" -#define FILE_DIR "code/modules/mob/living/carbon/alien" -#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid" -#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid/caste" -#define FILE_DIR "code/modules/mob/living/carbon/alien/larva" -#define FILE_DIR "code/modules/mob/living/carbon/alien/special" -#define FILE_DIR "code/modules/mob/living/carbon/brain" -#define FILE_DIR "code/modules/mob/living/carbon/human" -#define FILE_DIR "code/modules/mob/living/carbon/metroid" -#define FILE_DIR "code/modules/mob/living/carbon/monkey" -#define FILE_DIR "code/modules/mob/living/silicon" -#define FILE_DIR "code/modules/mob/living/silicon/ai" -#define FILE_DIR "code/modules/mob/living/silicon/ai/freelook" -#define FILE_DIR "code/modules/mob/living/silicon/decoy" -#define FILE_DIR "code/modules/mob/living/silicon/pai" -#define FILE_DIR "code/modules/mob/living/silicon/robot" -#define FILE_DIR "code/modules/mob/living/simple_animal" -#define FILE_DIR "code/modules/mob/new_player" -#define FILE_DIR "code/modules/mob/organ" -#define FILE_DIR "code/modules/paperwork" -#define FILE_DIR "code/modules/power" -#define FILE_DIR "code/modules/power/antimatter" -#define FILE_DIR "code/modules/power/singularity" -#define FILE_DIR "code/modules/power/singularity/particle_accelerator" -#define FILE_DIR "code/modules/projectiles" -#define FILE_DIR "code/modules/projectiles/ammunition" -#define FILE_DIR "code/modules/projectiles/guns" -#define FILE_DIR "code/modules/projectiles/guns/energy" -#define FILE_DIR "code/modules/projectiles/guns/projectile" -#define FILE_DIR "code/modules/projectiles/projectile" -#define FILE_DIR "code/modules/reagents" -#define FILE_DIR "code/modules/reagents/reagent_containers" -#define FILE_DIR "code/modules/reagents/reagent_containers/food" -#define FILE_DIR "code/modules/reagents/reagent_containers/food/drinks" -#define FILE_DIR "code/modules/reagents/reagent_containers/food/drinks/bottle" -#define FILE_DIR "code/modules/reagents/reagent_containers/food/snacks" -#define FILE_DIR "code/modules/reagents/reagent_containers/glass" -#define FILE_DIR "code/modules/reagents/reagent_containers/glass/bottle" -#define FILE_DIR "code/modules/recycling" -#define FILE_DIR "code/modules/research" -#define FILE_DIR "code/modules/scripting" -#define FILE_DIR "code/modules/scripting/AST" -#define FILE_DIR "code/modules/scripting/AST/Operators" -#define FILE_DIR "code/modules/scripting/Implementations" -#define FILE_DIR "code/modules/scripting/Interpreter" -#define FILE_DIR "code/modules/scripting/Parser" -#define FILE_DIR "code/modules/scripting/Scanner" -#define FILE_DIR "code/modules/security levels" -#define FILE_DIR "code/unused" -#define FILE_DIR "code/unused/beast" -#define FILE_DIR "code/unused/computer2" -#define FILE_DIR "code/unused/disease2" -#define FILE_DIR "code/unused/gamemodes" -#define FILE_DIR "code/unused/hivebot" -#define FILE_DIR "code/unused/mining" -#define FILE_DIR "code/unused/optics" -#define FILE_DIR "code/unused/pda2" -#define FILE_DIR "code/unused/powerarmor" -#define FILE_DIR "code/unused/spacecraft" -#define FILE_DIR "code/WorkInProgress" -#define FILE_DIR "code/WorkInProgress/carn" -#define FILE_DIR "code/WorkInProgress/mapload" -#define FILE_DIR "code/WorkInProgress/organs" -#define FILE_DIR "code/WorkInProgress/virus2" -#define FILE_DIR "html" -#define FILE_DIR "icons" -#define FILE_DIR "icons/effects" -#define FILE_DIR "icons/mecha" -#define FILE_DIR "icons/misc" -#define FILE_DIR "icons/mob" -#define FILE_DIR "icons/obj" -#define FILE_DIR "icons/obj/assemblies" -#define FILE_DIR "icons/obj/atmospherics" -#define FILE_DIR "icons/obj/clothing" -#define FILE_DIR "icons/obj/doors" -#define FILE_DIR "icons/obj/machines" -#define FILE_DIR "icons/obj/pipes" -#define FILE_DIR "icons/pda_icons" -#define FILE_DIR "icons/spideros_icons" -#define FILE_DIR "icons/Testing" -#define FILE_DIR "icons/turf" -#define FILE_DIR "icons/vehicles" -#define FILE_DIR "icons/vending_icons" -#define FILE_DIR "interface" -#define FILE_DIR "maps" -#define FILE_DIR "maps/RandomZLevels" -#define FILE_DIR "sound" -#define FILE_DIR "sound/AI" -#define FILE_DIR "sound/ambience" -#define FILE_DIR "sound/effects" -#define FILE_DIR "sound/hallucinations" -#define FILE_DIR "sound/items" -#define FILE_DIR "sound/machines" -#define FILE_DIR "sound/mecha" -#define FILE_DIR "sound/misc" -#define FILE_DIR "sound/piano" -#define FILE_DIR "sound/voice" -#define FILE_DIR "sound/weapons" -#define FILE_DIR "tools" -#define FILE_DIR "tools/Redirector" // END_FILE_DIR // BEGIN_PREFERENCES @@ -1109,7 +896,6 @@ #include "code\modules\power\switch.dm" #include "code\modules\power\terminal.dm" #include "code\modules\power\tracker.dm" -#include "code\modules\power\turbine.dm" #include "code\modules\power\antimatter\containment_jar.dm" #include "code\modules\power\antimatter\control.dm" #include "code\modules\power\antimatter\shielding.dm"