diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm
new file mode 100644
index 00000000000..0690ed89662
--- /dev/null
+++ b/code/game/mecha/mech_fabricator.dm
@@ -0,0 +1,191 @@
+/////////////////////////////
+///// Part Fabricator ///////
+/////////////////////////////
+
+
+/obj/machinery/mecha_part_fabricator
+ icon = 'mech_fab.dmi'
+ icon_state = "fabricator"
+ name = "Exosuit Fabricator"
+ density = 1
+ anchored = 1
+ layer=2
+ power_usage = 100
+ var/list/resources = list(
+ "metal"=20000,
+ "glass"=20000,
+ "gold"=0,
+ "silver"=0,
+ "diamond"=0,
+ "plasma"=0
+ )
+ var/res_max_amount = 200000
+ var/part_set
+ var/obj/being_built
+ var/list/part_sets = list(
+ "Ripley"=list(
+ list("result"="/obj/mecha_chassis/ripley","time"=100,"metal"=20000),
+ list("result"="/obj/item/mecha_parts/part/ripley_torso","time"=300,"metal"=40000,"glass"=15000),
+ list("result"="/obj/item/mecha_parts/part/ripley_left_arm","time"=200,"metal"=25000),
+ list("result"="/obj/item/mecha_parts/part/ripley_right_arm","time"=200,"metal"=25000),
+ list("result"="/obj/item/mecha_parts/part/ripley_left_leg","time"=200,"metal"=30000),
+ list("result"="/obj/item/mecha_parts/part/ripley_right_leg","time"=200,"metal"=30000)
+ ),
+ "Gygax"=list(
+ list("result"="/obj/mecha_chassis/gygax","time"=100,"metal"=25000),
+ list("result"="/obj/item/mecha_parts/part/gygax_torso","time"=300,"metal"=50000,"glass"=20000),
+ list("result"="/obj/item/mecha_parts/part/gygax_head","time"=200,"metal"=20000,"glass"=10000),
+ list("result"="/obj/item/mecha_parts/part/gygax_left_arm","time"=200,"metal"=30000),
+ list("result"="/obj/item/mecha_parts/part/gygax_right_arm","time"=200,"metal"=30000),
+ list("result"="/obj/item/mecha_parts/part/gygax_left_leg","time"=200,"metal"=35000),
+ list("result"="/obj/item/mecha_parts/part/gygax_right_leg","time"=200,"metal"=35000),
+ list("result"="/obj/item/mecha_parts/part/gygax_armour","time"=600,"metal"=75000,"diamond"=10000)
+ )
+ )
+
+ proc/output_parts_list(set_name)
+ var/output = ""
+ if(set_name in part_sets)
+ var/list/part_set = part_sets[set_name]
+ for(var/part in part_set)
+ var/resources_available = check_resources(part)
+ output += "[resources_available?"":""][output_part_info(part)][resources_available?"":""]
"
+ return output
+
+ proc/output_part_info(part)
+ var/path = part["result"]
+ var/obj/O = new path(src)
+ var/cost = "Cost: "
+ var/i = 0
+ for(var/p in part)
+ if(p in resources)
+ cost += "[i?" | ":null][part[p]] [p]"
+ i++
+ var/output = "[O.name] ([cost]) [part["time"]/10]sec"
+ del O
+ return output
+
+ proc/output_available_resources()
+ var/output
+ for(var/resource in resources)
+ output += "[resource]: [min(res_max_amount, resources[resource])] cm3
"
+ return output
+
+ proc/remove_resources(part)
+ for(var/p in part)
+ if(p in resources)
+ src.resources[p] -= part[p]
+ return
+
+ proc/check_resources(part)
+ for(var/p in part)
+ if(p in resources)
+ if(src.resources[p] < part[p])
+ return 0
+ return 1
+
+ attack_hand(mob/user as mob)
+ var/dat
+ if (..())
+ return
+ user.machine = src
+ if (src.being_built)
+ dat = {"Building [src.being_built.name].
+ Please wait until completion...
+
+ "}
+ else
+ dat = output_available_resources()
+ dat += "
"
+ if(!part_set)
+ for(var/part_set in part_sets)
+ dat += "[part_set]
"
+ else
+ dat += output_parts_list(part_set)
+ dat += "
Return"
+
+ user << browse({"
+
+
+[src.name]
+
+
+[dat]
+
+ "}, "window=mecha_fabricator")
+ onclose(user, "mecha_fabricator")
+ return
+
+
+ Topic(href, href_list)
+ ..()
+ if(href_list["part_set"])
+ if(href_list["part_set"]=="clear")
+ src.part_set = null
+ else
+ src.part_set = href_list["part_set"]
+ if(href_list["part"])
+ var/list/part = locate(href_list["part"])
+ if(!part) return
+ var/path = part["result"]
+ var/time = part["time"]
+ src.being_built = new path(src)
+ src.remove_resources(part)
+ src.icon_state = "fabricator_ani"
+ src.power_usage = 2000
+ spawn(time)
+ src.being_built.Move(get_step(src,EAST))
+ src.icon_state = initial(src.icon_state)
+ src.power_usage = initial(src.power_usage)
+ src.visible_message("[src] beeps, \"The [src.being_built] is complete\".")
+ src.being_built = null
+ src.updateUsrDialog()
+ src.updateUsrDialog()
+ return
+
+ process()
+ if (stat & (NOPOWER|BROKEN))
+ return
+
+ attackby(obj/item/stack/sheet/W as obj, mob/user as mob)
+ var/material
+ var/amnt
+ if(istype(W, /obj/item/stack/sheet/gold))
+ material = "gold"
+ amnt = "g_amt"
+ else if(istype(W, /obj/item/stack/sheet/silver))
+ material = "silver"
+ amnt = "g_amt"
+ else if(istype(W, /obj/item/stack/sheet/diamond))
+ material = "diamond"
+ amnt = "g_amt"
+ else if(istype(W, /obj/item/stack/sheet/plasma))
+ material = "plasma"
+ amnt = "g_amt"
+ else if(istype(W, /obj/item/stack/sheet/metal))
+ material = "metal"
+ amnt = "m_amt"
+ else if(istype(W, /obj/item/stack/sheet/glass))
+ material = "glass"
+ amnt = "g_amt"
+ else
+ return ..()
+
+ var/name = "[W.name]"
+ if(src.resources[material] < res_max_amount)
+ var/count = 0
+ spawn(10)
+ if(W && W.amount)
+ while(src.resources[material] < res_max_amount && W)
+ src.resources[material] += W.vars[amnt]
+ W.use(1)
+ count++
+
+ user << "You insert [count] [name] into the fabricator."
+ src.updateUsrDialog()
+ else
+ user << "The fabricator cannot hold more [name]."
+ return
diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm
index 01ed5937fc3..0d9c0debf84 100644
--- a/code/game/mecha/mecha.dm
+++ b/code/game/mecha/mecha.dm
@@ -28,7 +28,7 @@
var/datum/effects/system/spark_spread/spark_system = new
var/lights = 0
var/lights_power = 6
- var/inertia_dir = null //for open space travel.
+ //var/inertia_dir = null //for open space travel.
//inner atmos machinery. Air tank mostly
var/datum/gas_mixture/air_contents = new
diff --git a/code/game/mecha/mecha_construction.dm b/code/game/mecha/mecha_construction.dm
index c1c6b64334a..d93e4056236 100644
--- a/code/game/mecha/mecha_construction.dm
+++ b/code/game/mecha/mecha_construction.dm
@@ -5,7 +5,7 @@
/obj/mecha_chassis
name="Mecha Chassis"
icon = 'mech_construct.dmi'
- icon_state = "mecha_chassis"
+ icon_state = "backbone"
var/datum/construction/construct
flags = FPRINT | CONDUCT
@@ -37,6 +37,35 @@
..()
return
+
+/obj/mecha_chassis/gygax
+ name = "Gygax Chassis Frame"
+
+ New()
+ ..()
+ construct = new /datum/construction/mecha/gygax_chassis(src)
+
+ attackby(obj/item/W as obj, mob/user as mob)
+ if(istype(W, /obj/item/mecha_parts))
+ if(construct)
+ construct.check_all_steps(W, user)
+ else
+ ..()
+ return
+
+/obj/mecha_chassis/gygax_full
+ name = "Gygax Chassis"
+ icon_state = "gygax_chassis"
+
+ New()
+ ..()
+ construct = new /datum/construction/mecha/gygax(src)
+
+ attackby(obj/item/weapon/W as obj, mob/user as mob)
+ if(!construct || !construct.check_step(W, user))
+ ..()
+ return
+
/////////////////////////
////// Mecha Parts //////
/////////////////////////
@@ -45,30 +74,64 @@
/obj/item/mecha_parts
name = "mecha part"
icon = 'mech_construct.dmi'
- icon_state = "mecha_chassis"
+ icon_state = "blank"
w_class = 20
flags = FPRINT | TABLEPASS | CONDUCT
+/////////// Ripley
/obj/item/mecha_parts/part/ripley_torso
name="Ripley Torso"
- icon_state = "ripley_torso"
+ icon_state = "ripley_harness"
/obj/item/mecha_parts/part/ripley_left_arm
name="Ripley Left Arm"
- icon_state = "ripley_left_arm"
+ icon_state = "ripley_l_arm"
/obj/item/mecha_parts/part/ripley_right_arm
name="Ripley Right Arm"
- icon_state = "ripley_right_arm"
+ icon_state = "ripley_r_arm"
/obj/item/mecha_parts/part/ripley_left_leg
name="Ripley Left Leg"
- icon_state = "ripley_left_leg"
+ icon_state = "ripley_l_leg"
/obj/item/mecha_parts/part/ripley_right_leg
name="Ripley Right Leg"
- icon_state = "ripley_right_leg"
+ icon_state = "ripley_r_leg"
+
+///////// Gygax
+
+/obj/item/mecha_parts/part/gygax_torso
+ name="Gygax Torso"
+ icon_state = "gygax_harness"
+
+/obj/item/mecha_parts/part/gygax_head
+ name="Gygax Head"
+ icon_state = "gygax_head"
+
+/obj/item/mecha_parts/part/gygax_left_arm
+ name="Gygax Left Arm"
+ icon_state = "gygax_l_arm"
+
+/obj/item/mecha_parts/part/gygax_right_arm
+ name="Gygax Right Arm"
+ icon_state = "gygax_r_arm"
+
+/obj/item/mecha_parts/part/gygax_left_leg
+ name="Gygax Left Leg"
+ icon_state = "gygax_l_leg"
+
+/obj/item/mecha_parts/part/gygax_right_leg
+ name="Gygax Right Leg"
+ icon_state = "gygax_r_leg"
+
+/obj/item/mecha_parts/part/gygax_armour
+ name="Gygax Armour Plates"
+ icon_state = "gygax_armour"
+
+
+
/obj/item/mecha_parts/circuitboard
name = "Exosuit Circuit board"
@@ -84,16 +147,58 @@
ripley/peripherals
name = "Circuit board (Ripley Peripherals Control module)"
+ icon_state = "mcontroller"
ripley/main
name = "Circuit board (Ripley Central Control module)"
icon_state = "mainboard"
+ gygax/peripherals
+ name = "Circuit board (Gygax Peripherals Control module)"
+ icon_state = "mcontroller"
+
+ gygax/targeting
+ name = "Circuit board (Weapon Control and Targeting module)"
+ icon_state = "mcontroller"
+
+ gygax/main
+ name = "Circuit board (Gygax Central Control module)"
+ icon_state = "mainboard"
////////////////////////////////
///// Construction datums //////
////////////////////////////////
+/datum/construction/mecha/custom_action(step, atom/used_atom, mob/user)
+ if(istype(used_atom, /obj/item/weapon/weldingtool))
+ var/obj/item/weapon/weldingtool/W = used_atom
+ if (W:remove_fuel(2, user))
+ playsound(holder, 'Welder2.ogg', 50, 1)
+ else
+ return 0
+ else if(istype(used_atom, /obj/item/weapon/wrench))
+ playsound(holder, 'Ratchet.ogg', 50, 1)
+
+ else if(istype(used_atom, /obj/item/weapon/wirecutters))
+ playsound(holder, 'Wirecutter.ogg', 50, 1)
+
+ else if(istype(used_atom, /obj/item/weapon/cable_coil))
+ var/obj/item/weapon/cable_coil/C = used_atom
+ if(C.amount<3)
+ user << ("There's not enough cable to finish the task.")
+ return 0
+ else
+ C.use(4)
+ else if(istype(used_atom, /obj/item/stack))
+ var/obj/item/stack/S = used_atom
+ if(S.amount < 5)
+ user << ("There's not enough material in this stack.")
+ return 0
+ else
+ S.use(5)
+ return 1
+
+
/datum/construction/mecha/ripley_chassis
result = "/obj/mecha_chassis/ripley_full"
steps = list(list("key"="/obj/item/mecha_parts/part/ripley_torso"),//1
@@ -113,7 +218,7 @@
if(1)
*/
user.visible_message("[user] has connected [used_atom] to [holder].", "You connect [used_atom] to [holder]")
- holder.overlays += used_atom.icon_state
+ holder.overlays += used_atom.icon_state+"+o"
del used_atom
return 1
@@ -137,32 +242,8 @@
)
custom_action(step, atom/used_atom, mob/user)
- if(istype(used_atom, /obj/item/weapon/weldingtool))
- var/obj/item/weapon/weldingtool/W = used_atom
- if (W:remove_fuel(2, user))
- playsound(holder, 'Welder2.ogg', 50, 1)
- else
- return 0
- else if(istype(used_atom, /obj/item/weapon/wrench))
- playsound(holder, 'Ratchet.ogg', 50, 1)
-
- else if(istype(used_atom, /obj/item/weapon/wirecutters))
- playsound(holder, 'Wirecutter.ogg', 50, 1)
-
- else if(istype(used_atom, /obj/item/weapon/cable_coil))
- var/obj/item/weapon/cable_coil/C = used_atom
- if(C.amount<3)
- user << ("There's not enough cable to finish the task.")
- return 0
- else
- C.use(4)
- else if(istype(used_atom, /obj/item/stack))
- var/obj/item/stack/S = used_atom
- if(S.amount < 5)
- user << ("There's not enough material in this stack.")
- return 0
- else
- S.use(5)
+ if(!..())
+ return 0
//TODO: better messages.
switch(step)
@@ -200,6 +281,104 @@
+/datum/construction/mecha/gygax_chassis
+ result = "/obj/mecha_chassis/gygax_full"
+ steps = list(list("key"="/obj/item/mecha_parts/part/gygax_torso"),//1
+ list("key"="/obj/item/mecha_parts/part/gygax_left_arm"),//2
+ list("key"="/obj/item/mecha_parts/part/gygax_right_arm"),//3
+ list("key"="/obj/item/mecha_parts/part/gygax_left_leg"),//4
+ list("key"="/obj/item/mecha_parts/part/gygax_right_leg"),//5
+ list("key"="/obj/item/mecha_parts/part/gygax_head")
+ )
+
+ custom_action(step, atom/used_atom, mob/user)
+ user.visible_message("[user] has connected [used_atom] to [holder].", "You connect [used_atom] to [holder]")
+ holder.overlays += used_atom.icon_state+"+o"
+ del used_atom
+ return 1
+
+
+/datum/construction/mecha/gygax
+ result = "/obj/mecha/combat/gygax"
+ steps = list(list("key"="/obj/item/weapon/weldingtool"),//1
+ list("key"="/obj/item/weapon/wrench"),//2
+ list("key"="/obj/item/mecha_parts/part/gygax_armour"),//3
+ list("key"="/obj/item/weapon/weldingtool"),//4
+ list("key"="/obj/item/weapon/wrench"),//5
+ list("key"="/obj/item/stack/sheet/metal"),//6
+ list("key"="/obj/item/weapon/wrench"),//7
+ list("key"="/obj/item/weapon/gun/energy/taser_gun"),//8
+ list("key"="/obj/item/weapon/wrench"),//9
+ list("key"="/obj/item/weapon/gun/energy/laser_gun"),//10
+ list("key"="/obj/item/weapon/screwdriver"),//11
+ list("key"="/obj/item/mecha_parts/circuitboard/gygax/targeting"),//12
+ list("key"="/obj/item/weapon/screwdriver"),//13
+ list("key"="/obj/item/mecha_parts/circuitboard/gygax/peripherals"),//14
+ list("key"="/obj/item/weapon/screwdriver"),//15
+ list("key"="/obj/item/mecha_parts/circuitboard/gygax/main"),//16
+ list("key"="/obj/item/weapon/wirecutters"),//17
+ list("key"="/obj/item/weapon/cable_coil"),//18
+ list("key"="/obj/item/weapon/screwdriver"),//19
+ list("key"="/obj/item/weapon/wrench")//20
+ )
+
+ custom_action(step, atom/used_atom, mob/user)
+ if(!..())
+ return 0
+
+ //TODO: better messages.
+ switch(step)
+ if(20)
+ user.visible_message("[user] connects [holder] hydraulic systems", "You connect [holder] hydraulic systems.")
+ if(19)
+ user.visible_message("[user] adjusts [holder] hydraulic systems.", "You adjust [holder] hydraulic systems.")
+ if(18)
+ user.visible_message("[user] adds the wiring to [holder].", "You add the wiring to [holder].")
+ if(17)
+ user.visible_message("[user] adjusts the wiring of [holder].", "You adjust the wiring of [holder].")
+ if(16)
+ user.visible_message("[user] installs the central control module into [holder].", "You install the central computer mainboard into [holder].")
+ del used_atom
+ if(15)
+ user.visible_message("[user] secures the mainboard.", "You secure the mainboard.")
+ if(14)
+ user.visible_message("[user] installs the peripherals control module into [holder].", "You install the peripherals control module into [holder].")
+ del used_atom
+ if(13)
+ user.visible_message("[user] secures the peripherals control module.", "You secure the peripherals control module.")
+ if(12)
+ user.visible_message("[user] installs the weapon control module into [holder].", "You install the weapon control module into [holder].")
+ del used_atom
+ if(11)
+ user.visible_message("[user] secures the weapon control module.", "You secure the weapon control module.")
+ if(10)
+ user.visible_message("[user] installs the laser gun into the weapon socket.", "You install the laser gun into the weapon socket.")
+ del used_atom
+ if(9)
+ user.visible_message("[user] secures the laser gun in place and connects it to [holder] powernet.", "You secure the laser gun in place and connect it to [holder] powernet.")
+ if(8)
+ user.visible_message("[user] installs the taser gun into the weapon socket.", "You install the taser gun into the weapon socket.")
+ del used_atom
+ if(7)
+ user.visible_message("[user] secures the taser gun in place and connects it to [holder] powernet.", "You secure the taser gun in place and connect it to [holder] powernet.")
+ if(6)
+ user.visible_message("[user] installs internal armor layer to [holder].", "You install internal armor layer to [holder].")
+ if(5)
+ user.visible_message("[user] secures internal armor layer.", "You secure internal armor layer.")
+ if(4)
+ user.visible_message("[user] welds internal armor layer to [holder].", "You weld the internal armor layer to [holder].")
+ if(3)
+ user.visible_message("[user] installs Gygax Armour Plates to [holder].", "You install Gygax Armour Plates to [holder].")
+ holder.overlays += used_atom.icon_state
+ del used_atom
+ if(2)
+ user.visible_message("[user] secures Gygax Armour Plates.", "You secure Gygax Armour Plates.")
+ if(1)
+ user.visible_message("[user] welds Gygax Armour Plates to [holder].", "You weld Gygax Armour Plates to [holder].")
+ return 1
+
+
+
////////////////// misc ////////////////
diff --git a/code/game/research/designs.dm b/code/game/research/designs.dm
index da79fb5e3df..e66b6065bd6 100644
--- a/code/game/research/designs.dm
+++ b/code/game/research/designs.dm
@@ -351,6 +351,33 @@ datum
materials = list("$glass" = 2000, "acid" = 20)
build_path = "/obj/item/mecha_parts/circuitboard/ripley/peripherals"
+ gygax_main
+ name = "Circuit Design (\"Gygax\" Central Control module)"
+ desc = "Allows for the construction of a Safeguard AI Module."
+ id = "gygax_main"
+ req_tech = list("programming" = 4, "robotics" = 5)
+ build_type = IMPRINTER
+ materials = list("$glass" = 2000, "acid" = 20)
+ build_path = "/obj/item/mecha_parts/circuitboard/gygax/main"
+
+ gygax_peri
+ name = "Circuit Design (\"Gygax\" Peripherals Control module)"
+ desc = "Allows for the construction of a Safeguard AI Module."
+ id = "gygax_peri"
+ req_tech = list("programming" = 4, "robotics" = 5)
+ build_type = IMPRINTER
+ materials = list("$glass" = 2000, "acid" = 20)
+ build_path = "/obj/item/mecha_parts/circuitboard/gygax/peripherals"
+
+ gygax_targ
+ name = "Circuit Design (\"Gygax\" Weapons & Targeting Control module)"
+ desc = "Allows for the construction of a Safeguard AI Module."
+ id = "gygax_targ"
+ req_tech = list("programming" = 4, "robotics" = 5)
+ build_type = IMPRINTER
+ materials = list("$glass" = 2000, "acid" = 20)
+ build_path = "/obj/item/mecha_parts/circuitboard/gygax/targeting"
+
////////////////////////////////////////
//////////Disk Construction Disks///////
////////////////////////////////////////
diff --git a/icons/misc/mech_construct.dmi b/icons/misc/mech_construct.dmi
index f699ff95f06..2c7b30781a1 100644
Binary files a/icons/misc/mech_construct.dmi and b/icons/misc/mech_construct.dmi differ
diff --git a/icons/misc/mech_fab.dmi b/icons/misc/mech_fab.dmi
new file mode 100644
index 00000000000..4785b0ce074
Binary files /dev/null and b/icons/misc/mech_fab.dmi differ
diff --git a/icons/obj/module.dmi b/icons/obj/module.dmi
index c595399854b..432ec929bfd 100644
Binary files a/icons/obj/module.dmi and b/icons/obj/module.dmi differ
diff --git a/tgstation.dme b/tgstation.dme
index 5b7e5cdd9f2..e33c66b6371 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -1,529 +1,146 @@
// DM Environment file for InSpace.dme.
// All manual changes should be made outside the BEGIN_ and END_ blocks.
// New source code should be placed in .dm files: choose File/New --> Code File.
-
// BEGIN_INTERNALS
// END_INTERNALS
// BEGIN_FILE_DIR
#define FILE_DIR .
-#define FILE_DIR ".svn"
-#define FILE_DIR ".svn/prop-base"
-#define FILE_DIR ".svn/text-base"
-#define FILE_DIR ".svn/tmp"
#define FILE_DIR "code"
-#define FILE_DIR "code/.svn"
-#define FILE_DIR "code/.svn/text-base"
#define FILE_DIR "code/ATMOSPHERICS"
-#define FILE_DIR "code/ATMOSPHERICS/.svn"
-#define FILE_DIR "code/ATMOSPHERICS/.svn/text-base"
#define FILE_DIR "code/ATMOSPHERICS/components"
-#define FILE_DIR "code/ATMOSPHERICS/components/.svn"
-#define FILE_DIR "code/ATMOSPHERICS/components/.svn/text-base"
#define FILE_DIR "code/ATMOSPHERICS/components/binary_devices"
-#define FILE_DIR "code/ATMOSPHERICS/components/binary_devices/.svn"
-#define FILE_DIR "code/ATMOSPHERICS/components/binary_devices/.svn/text-base"
#define FILE_DIR "code/ATMOSPHERICS/components/unary"
-#define FILE_DIR "code/ATMOSPHERICS/components/unary/.svn"
-#define FILE_DIR "code/ATMOSPHERICS/components/unary/.svn/text-base"
-#define FILE_DIR "code/atoms"
-#define FILE_DIR "code/atoms/.svn"
-#define FILE_DIR "code/atoms/clothing"
-#define FILE_DIR "code/atoms/clothing/.svn"
-#define FILE_DIR "code/atoms/mob"
-#define FILE_DIR "code/atoms/mob/.svn"
-#define FILE_DIR "code/atoms/mob/living"
-#define FILE_DIR "code/atoms/mob/living/.svn"
-#define FILE_DIR "code/atoms/mob/living/sapien"
-#define FILE_DIR "code/atoms/mob/living/sapien/.svn"
-#define FILE_DIR "code/atoms/objects"
-#define FILE_DIR "code/atoms/objects/.svn"
-#define FILE_DIR "code/atoms/objects/radio"
-#define FILE_DIR "code/atoms/objects/radio/.svn"
-#define FILE_DIR "code/atoms/objects/storage"
-#define FILE_DIR "code/atoms/objects/storage/.svn"
#define FILE_DIR "code/datums"
-#define FILE_DIR "code/datums/.svn"
-#define FILE_DIR "code/datums/.svn/text-base"
#define FILE_DIR "code/datums/diseases"
-#define FILE_DIR "code/datums/diseases/.svn"
-#define FILE_DIR "code/datums/diseases/.svn/prop-base"
-#define FILE_DIR "code/datums/diseases/.svn/text-base"
#define FILE_DIR "code/datums/spells"
-#define FILE_DIR "code/datums/spells/.svn"
-#define FILE_DIR "code/datums/spells/.svn/text-base"
#define FILE_DIR "code/defines"
-#define FILE_DIR "code/defines/.svn"
-#define FILE_DIR "code/defines/.svn/text-base"
#define FILE_DIR "code/defines/area"
-#define FILE_DIR "code/defines/area/.svn"
-#define FILE_DIR "code/defines/area/.svn/text-base"
#define FILE_DIR "code/defines/mob"
-#define FILE_DIR "code/defines/mob/.svn"
-#define FILE_DIR "code/defines/mob/.svn/text-base"
#define FILE_DIR "code/defines/mob/dead"
-#define FILE_DIR "code/defines/mob/dead/.svn"
-#define FILE_DIR "code/defines/mob/dead/.svn/text-base"
#define FILE_DIR "code/defines/mob/living"
-#define FILE_DIR "code/defines/mob/living/.svn"
-#define FILE_DIR "code/defines/mob/living/.svn/text-base"
#define FILE_DIR "code/defines/mob/living/carbon"
-#define FILE_DIR "code/defines/mob/living/carbon/.svn"
-#define FILE_DIR "code/defines/mob/living/carbon/.svn/text-base"
#define FILE_DIR "code/defines/mob/living/silicon"
-#define FILE_DIR "code/defines/mob/living/silicon/.svn"
-#define FILE_DIR "code/defines/mob/living/silicon/.svn/text-base"
#define FILE_DIR "code/defines/obj"
-#define FILE_DIR "code/defines/obj/.svn"
-#define FILE_DIR "code/defines/obj/.svn/text-base"
#define FILE_DIR "code/defines/obj/clothing"
-#define FILE_DIR "code/defines/obj/clothing/.svn"
-#define FILE_DIR "code/defines/obj/clothing/.svn/text-base"
#define FILE_DIR "code/defines/obj/spawner"
-#define FILE_DIR "code/defines/obj/spawner/.svn"
-#define FILE_DIR "code/defines/obj/spawner/.svn/text-base"
#define FILE_DIR "code/defines/procs"
-#define FILE_DIR "code/defines/procs/.svn"
-#define FILE_DIR "code/defines/procs/.svn/text-base"
-#define FILE_DIR "code/defines/turf"
-#define FILE_DIR "code/defines/turf/.svn"
#define FILE_DIR "code/FEA"
-#define FILE_DIR "code/FEA/.svn"
-#define FILE_DIR "code/FEA/.svn/text-base"
#define FILE_DIR "code/game"
-#define FILE_DIR "code/game/.svn"
-#define FILE_DIR "code/game/.svn/prop-base"
-#define FILE_DIR "code/game/.svn/text-base"
#define FILE_DIR "code/game/area"
-#define FILE_DIR "code/game/area/.svn"
-#define FILE_DIR "code/game/area/.svn/text-base"
#define FILE_DIR "code/game/asteroid"
-#define FILE_DIR "code/game/asteroid/.svn"
-#define FILE_DIR "code/game/asteroid/.svn/text-base"
#define FILE_DIR "code/game/gamemodes"
-#define FILE_DIR "code/game/gamemodes/.svn"
-#define FILE_DIR "code/game/gamemodes/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/blob"
-#define FILE_DIR "code/game/gamemodes/blob/.svn"
-#define FILE_DIR "code/game/gamemodes/blob/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/changeling"
-#define FILE_DIR "code/game/gamemodes/changeling/.svn"
-#define FILE_DIR "code/game/gamemodes/changeling/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/ctf"
-#define FILE_DIR "code/game/gamemodes/ctf/.svn"
-#define FILE_DIR "code/game/gamemodes/ctf/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/cult"
-#define FILE_DIR "code/game/gamemodes/cult/.svn"
-#define FILE_DIR "code/game/gamemodes/cult/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/deathmatch"
-#define FILE_DIR "code/game/gamemodes/deathmatch/.svn"
-#define FILE_DIR "code/game/gamemodes/deathmatch/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/events"
-#define FILE_DIR "code/game/gamemodes/events/.svn"
-#define FILE_DIR "code/game/gamemodes/events/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/extended"
-#define FILE_DIR "code/game/gamemodes/extended/.svn"
-#define FILE_DIR "code/game/gamemodes/extended/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/malfunction"
-#define FILE_DIR "code/game/gamemodes/malfunction/.svn"
-#define FILE_DIR "code/game/gamemodes/malfunction/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/meteor"
-#define FILE_DIR "code/game/gamemodes/meteor/.svn"
-#define FILE_DIR "code/game/gamemodes/meteor/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/monkey"
-#define FILE_DIR "code/game/gamemodes/monkey/.svn"
-#define FILE_DIR "code/game/gamemodes/monkey/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/nuclear"
-#define FILE_DIR "code/game/gamemodes/nuclear/.svn"
-#define FILE_DIR "code/game/gamemodes/nuclear/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/restructuring"
-#define FILE_DIR "code/game/gamemodes/restructuring/.svn"
-#define FILE_DIR "code/game/gamemodes/restructuring/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/revolution"
-#define FILE_DIR "code/game/gamemodes/revolution/.svn"
-#define FILE_DIR "code/game/gamemodes/revolution/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/ruby"
-#define FILE_DIR "code/game/gamemodes/ruby/.svn"
-#define FILE_DIR "code/game/gamemodes/ruby/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/sandbox"
-#define FILE_DIR "code/game/gamemodes/sandbox/.svn"
-#define FILE_DIR "code/game/gamemodes/sandbox/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/traitor"
-#define FILE_DIR "code/game/gamemodes/traitor/.svn"
-#define FILE_DIR "code/game/gamemodes/traitor/.svn/text-base"
#define FILE_DIR "code/game/gamemodes/wizard"
-#define FILE_DIR "code/game/gamemodes/wizard/.svn"
-#define FILE_DIR "code/game/gamemodes/wizard/.svn/text-base"
#define FILE_DIR "code/game/jobs"
-#define FILE_DIR "code/game/jobs/.svn"
-#define FILE_DIR "code/game/jobs/.svn/text-base"
#define FILE_DIR "code/game/machinery"
-#define FILE_DIR "code/game/machinery/.svn"
-#define FILE_DIR "code/game/machinery/.svn/prop-base"
-#define FILE_DIR "code/game/machinery/.svn/text-base"
-#define FILE_DIR "code/game/machinery/antimatter_engine"
-#define FILE_DIR "code/game/machinery/antimatter_engine/.svn"
#define FILE_DIR "code/game/machinery/atmoalter"
-#define FILE_DIR "code/game/machinery/atmoalter/.svn"
-#define FILE_DIR "code/game/machinery/atmoalter/.svn/text-base"
#define FILE_DIR "code/game/machinery/bots"
-#define FILE_DIR "code/game/machinery/bots/.svn"
-#define FILE_DIR "code/game/machinery/bots/.svn/text-base"
#define FILE_DIR "code/game/machinery/computer"
-#define FILE_DIR "code/game/machinery/computer/.svn"
-#define FILE_DIR "code/game/machinery/computer/.svn/text-base"
#define FILE_DIR "code/game/machinery/doors"
-#define FILE_DIR "code/game/machinery/doors/.svn"
-#define FILE_DIR "code/game/machinery/doors/.svn/text-base"
#define FILE_DIR "code/game/machinery/embedded_controller"
-#define FILE_DIR "code/game/machinery/embedded_controller/.svn"
-#define FILE_DIR "code/game/machinery/embedded_controller/.svn/text-base"
#define FILE_DIR "code/game/machinery/pipe"
-#define FILE_DIR "code/game/machinery/pipe/.svn"
-#define FILE_DIR "code/game/machinery/pipe/.svn/text-base"
-#define FILE_DIR "code/game/machinery/power"
-#define FILE_DIR "code/game/machinery/power/.svn"
#define FILE_DIR "code/game/magic"
-#define FILE_DIR "code/game/magic/.svn"
-#define FILE_DIR "code/game/magic/.svn/text-base"
#define FILE_DIR "code/game/magic/cultist"
-#define FILE_DIR "code/game/magic/cultist/.svn"
-#define FILE_DIR "code/game/magic/cultist/.svn/prop-base"
-#define FILE_DIR "code/game/magic/cultist/.svn/text-base"
#define FILE_DIR "code/game/mecha"
-#define FILE_DIR "code/game/mecha/.svn"
-#define FILE_DIR "code/game/mecha/.svn/text-base"
#define FILE_DIR "code/game/mecha/combat"
-#define FILE_DIR "code/game/mecha/combat/.svn"
-#define FILE_DIR "code/game/mecha/combat/.svn/text-base"
#define FILE_DIR "code/game/mecha/combat/weapons"
-#define FILE_DIR "code/game/mecha/combat/weapons/.svn"
-#define FILE_DIR "code/game/mecha/combat/weapons/.svn/text-base"
#define FILE_DIR "code/game/mecha/working"
-#define FILE_DIR "code/game/mecha/working/.svn"
-#define FILE_DIR "code/game/mecha/working/.svn/text-base"
#define FILE_DIR "code/game/mecha/working/tools"
-#define FILE_DIR "code/game/mecha/working/tools/.svn"
-#define FILE_DIR "code/game/mecha/working/tools/.svn/text-base"
#define FILE_DIR "code/game/objects"
-#define FILE_DIR "code/game/objects/.svn"
-#define FILE_DIR "code/game/objects/.svn/text-base"
#define FILE_DIR "code/game/objects/alien"
-#define FILE_DIR "code/game/objects/alien/.svn"
-#define FILE_DIR "code/game/objects/alien/.svn/text-base"
#define FILE_DIR "code/game/objects/closets"
-#define FILE_DIR "code/game/objects/closets/.svn"
-#define FILE_DIR "code/game/objects/closets/.svn/text-base"
#define FILE_DIR "code/game/objects/closets/secure"
-#define FILE_DIR "code/game/objects/closets/secure/.svn"
-#define FILE_DIR "code/game/objects/closets/secure/.svn/text-base"
#define FILE_DIR "code/game/objects/devices"
-#define FILE_DIR "code/game/objects/devices/.svn"
-#define FILE_DIR "code/game/objects/devices/.svn/text-base"
#define FILE_DIR "code/game/objects/devices/PDA"
-#define FILE_DIR "code/game/objects/devices/PDA/.svn"
-#define FILE_DIR "code/game/objects/devices/PDA/.svn/text-base"
#define FILE_DIR "code/game/objects/items"
-#define FILE_DIR "code/game/objects/items/.svn"
-#define FILE_DIR "code/game/objects/items/.svn/text-base"
#define FILE_DIR "code/game/objects/items/weapons"
-#define FILE_DIR "code/game/objects/items/weapons/.svn"
-#define FILE_DIR "code/game/objects/items/weapons/.svn/text-base"
#define FILE_DIR "code/game/objects/radio"
-#define FILE_DIR "code/game/objects/radio/.svn"
-#define FILE_DIR "code/game/objects/radio/.svn/text-base"
#define FILE_DIR "code/game/objects/secstorage"
-#define FILE_DIR "code/game/objects/secstorage/.svn"
-#define FILE_DIR "code/game/objects/secstorage/.svn/text-base"
#define FILE_DIR "code/game/objects/spawners"
-#define FILE_DIR "code/game/objects/spawners/.svn"
-#define FILE_DIR "code/game/objects/spawners/.svn/text-base"
#define FILE_DIR "code/game/objects/stacks"
-#define FILE_DIR "code/game/objects/stacks/.svn"
-#define FILE_DIR "code/game/objects/stacks/.svn/text-base"
#define FILE_DIR "code/game/objects/storage"
-#define FILE_DIR "code/game/objects/storage/.svn"
-#define FILE_DIR "code/game/objects/storage/.svn/text-base"
#define FILE_DIR "code/game/research"
-#define FILE_DIR "code/game/research/.svn"
-#define FILE_DIR "code/game/research/.svn/text-base"
#define FILE_DIR "code/game/spacecraft"
-#define FILE_DIR "code/game/spacecraft/.svn"
-#define FILE_DIR "code/game/spacecraft/.svn/text-base"
#define FILE_DIR "code/game/verbs"
-#define FILE_DIR "code/game/verbs/.svn"
-#define FILE_DIR "code/game/verbs/.svn/text-base"
#define FILE_DIR "code/modules"
-#define FILE_DIR "code/modules/.svn"
#define FILE_DIR "code/modules/admin"
-#define FILE_DIR "code/modules/admin/.svn"
-#define FILE_DIR "code/modules/admin/.svn/text-base"
#define FILE_DIR "code/modules/admin/verbs"
-#define FILE_DIR "code/modules/admin/verbs/.svn"
-#define FILE_DIR "code/modules/admin/verbs/.svn/text-base"
-#define FILE_DIR "code/modules/assembly"
-#define FILE_DIR "code/modules/assembly/.svn"
-#define FILE_DIR "code/modules/ban"
-#define FILE_DIR "code/modules/ban/.svn"
-#define FILE_DIR "code/modules/build"
-#define FILE_DIR "code/modules/build/.svn"
-#define FILE_DIR "code/modules/chemical"
-#define FILE_DIR "code/modules/chemical/.svn"
-#define FILE_DIR "code/modules/combat"
-#define FILE_DIR "code/modules/combat/.svn"
-#define FILE_DIR "code/modules/combat/guns"
-#define FILE_DIR "code/modules/combat/guns/.svn"
-#define FILE_DIR "code/modules/computer"
-#define FILE_DIR "code/modules/computer/.svn"
-#define FILE_DIR "code/modules/door"
-#define FILE_DIR "code/modules/door/.svn"
-#define FILE_DIR "code/modules/gas"
-#define FILE_DIR "code/modules/gas/.svn"
-#define FILE_DIR "code/modules/genetic"
-#define FILE_DIR "code/modules/genetic/.svn"
-#define FILE_DIR "code/modules/hud"
-#define FILE_DIR "code/modules/hud/.svn"
-#define FILE_DIR "code/modules/login"
-#define FILE_DIR "code/modules/login/.svn"
-#define FILE_DIR "code/modules/medical"
-#define FILE_DIR "code/modules/medical/.svn"
#define FILE_DIR "code/modules/mob"
-#define FILE_DIR "code/modules/mob/.svn"
-#define FILE_DIR "code/modules/mob/.svn/text-base"
#define FILE_DIR "code/modules/mob/dead"
-#define FILE_DIR "code/modules/mob/dead/.svn"
#define FILE_DIR "code/modules/mob/dead/observer"
-#define FILE_DIR "code/modules/mob/dead/observer/.svn"
-#define FILE_DIR "code/modules/mob/dead/observer/.svn/text-base"
#define FILE_DIR "code/modules/mob/living"
-#define FILE_DIR "code/modules/mob/living/.svn"
-#define FILE_DIR "code/modules/mob/living/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/carbon"
-#define FILE_DIR "code/modules/mob/living/carbon/.svn"
-#define FILE_DIR "code/modules/mob/living/carbon/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/carbon/alien"
-#define FILE_DIR "code/modules/mob/living/carbon/alien/.svn"
-#define FILE_DIR "code/modules/mob/living/carbon/alien/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid"
-#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid/.svn"
-#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid/caste"
-#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid/caste/.svn"
-#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid/caste/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/carbon/alien/larva"
-#define FILE_DIR "code/modules/mob/living/carbon/alien/larva/.svn"
-#define FILE_DIR "code/modules/mob/living/carbon/alien/larva/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/carbon/beast"
-#define FILE_DIR "code/modules/mob/living/carbon/beast/.svn"
-#define FILE_DIR "code/modules/mob/living/carbon/beast/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/carbon/human"
-#define FILE_DIR "code/modules/mob/living/carbon/human/.svn"
-#define FILE_DIR "code/modules/mob/living/carbon/human/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/carbon/monkey"
-#define FILE_DIR "code/modules/mob/living/carbon/monkey/.svn"
-#define FILE_DIR "code/modules/mob/living/carbon/monkey/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/silicon"
-#define FILE_DIR "code/modules/mob/living/silicon/.svn"
-#define FILE_DIR "code/modules/mob/living/silicon/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/silicon/ai"
-#define FILE_DIR "code/modules/mob/living/silicon/ai/.svn"
-#define FILE_DIR "code/modules/mob/living/silicon/ai/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/silicon/aihologram"
-#define FILE_DIR "code/modules/mob/living/silicon/aihologram/.svn"
-#define FILE_DIR "code/modules/mob/living/silicon/aihologram/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/silicon/decoy"
-#define FILE_DIR "code/modules/mob/living/silicon/decoy/.svn"
-#define FILE_DIR "code/modules/mob/living/silicon/decoy/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/silicon/hivebot"
-#define FILE_DIR "code/modules/mob/living/silicon/hivebot/.svn"
-#define FILE_DIR "code/modules/mob/living/silicon/hivebot/.svn/text-base"
#define FILE_DIR "code/modules/mob/living/silicon/robot"
-#define FILE_DIR "code/modules/mob/living/silicon/robot/.svn"
-#define FILE_DIR "code/modules/mob/living/silicon/robot/.svn/text-base"
#define FILE_DIR "code/modules/mob/new_player"
-#define FILE_DIR "code/modules/mob/new_player/.svn"
-#define FILE_DIR "code/modules/mob/new_player/.svn/text-base"
#define FILE_DIR "code/modules/power"
-#define FILE_DIR "code/modules/power/.svn"
-#define FILE_DIR "code/modules/power/.svn/text-base"
#define FILE_DIR "code/modules/power/antimatter"
-#define FILE_DIR "code/modules/power/antimatter/.svn"
-#define FILE_DIR "code/modules/power/antimatter/.svn/text-base"
#define FILE_DIR "code/modules/power/singularity"
-#define FILE_DIR "code/modules/power/singularity/.svn"
-#define FILE_DIR "code/modules/power/singularity/.svn/text-base"
-#define FILE_DIR "code/modules/radio"
-#define FILE_DIR "code/modules/radio/.svn"
-#define FILE_DIR "code/modules/shuttle"
-#define FILE_DIR "code/modules/shuttle/.svn"
#define FILE_DIR "code/unused"
-#define FILE_DIR "code/unused/.svn"
-#define FILE_DIR "code/unused/.svn/text-base"
-#define FILE_DIR "code/unused/game"
-#define FILE_DIR "code/unused/game/.svn"
-#define FILE_DIR "code/unused/game/verbs"
-#define FILE_DIR "code/unused/game/verbs/.svn"
-#define FILE_DIR "code/unused/modules"
-#define FILE_DIR "code/unused/modules/.svn"
-#define FILE_DIR "code/unused/modules/admin"
-#define FILE_DIR "code/unused/modules/admin/.svn"
#define FILE_DIR "code/WorkInProgress"
-#define FILE_DIR "code/WorkInProgress/.svn"
-#define FILE_DIR "code/WorkInProgress/.svn/text-base"
#define FILE_DIR "code/WorkInProgress/computer2"
-#define FILE_DIR "code/WorkInProgress/computer2/.svn"
-#define FILE_DIR "code/WorkInProgress/computer2/.svn/text-base"
#define FILE_DIR "code/WorkInProgress/experimental"
-#define FILE_DIR "code/WorkInProgress/experimental/.svn"
-#define FILE_DIR "code/WorkInProgress/experimental/.svn/text-base"
#define FILE_DIR "code/WorkInProgress/optics"
-#define FILE_DIR "code/WorkInProgress/optics/.svn"
-#define FILE_DIR "code/WorkInProgress/optics/.svn/text-base"
#define FILE_DIR "code/WorkInProgress/pda2"
-#define FILE_DIR "code/WorkInProgress/pda2/.svn"
-#define FILE_DIR "code/WorkInProgress/pda2/.svn/text-base"
#define FILE_DIR "code/WorkInProgress/recycling"
-#define FILE_DIR "code/WorkInProgress/recycling/.svn"
-#define FILE_DIR "code/WorkInProgress/recycling/.svn/text-base"
-#define FILE_DIR "config"
-#define FILE_DIR "config/.svn"
-#define FILE_DIR "config/.svn/text-base"
-#define FILE_DIR "config/names"
-#define FILE_DIR "config/names/.svn"
-#define FILE_DIR "config/names/.svn/text-base"
-#define FILE_DIR "data"
-#define FILE_DIR "data/.svn"
-#define FILE_DIR "data/.svn/text-base"
-#define FILE_DIR "data/logs"
-#define FILE_DIR "data/logs/2011"
-#define FILE_DIR "data/logs/2011/02-February"
-#define FILE_DIR "data/player_saves"
-#define FILE_DIR "data/player_saves/v"
-#define FILE_DIR "data/player_saves/v/veyveyr"
#define FILE_DIR "icons"
-#define FILE_DIR "icons/.svn"
-#define FILE_DIR "icons/.svn/prop-base"
-#define FILE_DIR "icons/.svn/text-base"
#define FILE_DIR "icons/effects"
-#define FILE_DIR "icons/effects/.svn"
-#define FILE_DIR "icons/effects/.svn/prop-base"
-#define FILE_DIR "icons/effects/.svn/text-base"
#define FILE_DIR "icons/misc"
-#define FILE_DIR "icons/misc/.svn"
-#define FILE_DIR "icons/misc/.svn/prop-base"
-#define FILE_DIR "icons/misc/.svn/text-base"
#define FILE_DIR "icons/mob"
-#define FILE_DIR "icons/mob/.svn"
-#define FILE_DIR "icons/mob/.svn/prop-base"
-#define FILE_DIR "icons/mob/.svn/text-base"
#define FILE_DIR "icons/obj"
-#define FILE_DIR "icons/obj/.svn"
-#define FILE_DIR "icons/obj/.svn/prop-base"
-#define FILE_DIR "icons/obj/.svn/text-base"
#define FILE_DIR "icons/obj/atmospherics"
-#define FILE_DIR "icons/obj/atmospherics/.svn"
-#define FILE_DIR "icons/obj/atmospherics/.svn/prop-base"
-#define FILE_DIR "icons/obj/atmospherics/.svn/text-base"
#define FILE_DIR "icons/obj/clothing"
-#define FILE_DIR "icons/obj/clothing/.svn"
-#define FILE_DIR "icons/obj/clothing/.svn/prop-base"
-#define FILE_DIR "icons/obj/clothing/.svn/text-base"
#define FILE_DIR "icons/obj/doors"
-#define FILE_DIR "icons/obj/doors/.svn"
-#define FILE_DIR "icons/obj/doors/.svn/prop-base"
-#define FILE_DIR "icons/obj/doors/.svn/text-base"
#define FILE_DIR "icons/obj/machines"
-#define FILE_DIR "icons/obj/machines/.svn"
-#define FILE_DIR "icons/obj/machines/.svn/prop-base"
-#define FILE_DIR "icons/obj/machines/.svn/text-base"
#define FILE_DIR "icons/obj/pipes"
-#define FILE_DIR "icons/obj/pipes/.svn"
-#define FILE_DIR "icons/obj/pipes/.svn/prop-base"
-#define FILE_DIR "icons/obj/pipes/.svn/text-base"
#define FILE_DIR "icons/pda_icons"
-#define FILE_DIR "icons/pda_icons/.svn"
-#define FILE_DIR "icons/pda_icons/.svn/prop-base"
-#define FILE_DIR "icons/pda_icons/.svn/text-base"
-#define FILE_DIR "icons/PSD files"
-#define FILE_DIR "icons/PSD files/.svn"
-#define FILE_DIR "icons/PSD files/.svn/prop-base"
-#define FILE_DIR "icons/PSD files/.svn/text-base"
#define FILE_DIR "icons/Testing"
-#define FILE_DIR "icons/Testing/.svn"
-#define FILE_DIR "icons/Testing/.svn/prop-base"
-#define FILE_DIR "icons/Testing/.svn/text-base"
#define FILE_DIR "icons/turf"
-#define FILE_DIR "icons/turf/.svn"
-#define FILE_DIR "icons/turf/.svn/prop-base"
-#define FILE_DIR "icons/turf/.svn/text-base"
#define FILE_DIR "interface"
-#define FILE_DIR "interface/.svn"
-#define FILE_DIR "interface/.svn/text-base"
#define FILE_DIR "maps"
-#define FILE_DIR "maps/.svn"
-#define FILE_DIR "maps/.svn/prop-base"
-#define FILE_DIR "maps/.svn/text-base"
-#define FILE_DIR "maps/.svn/tmp"
#define FILE_DIR "maps/backup"
-#define FILE_DIR "maps/backup/.svn"
-#define FILE_DIR "maps/backup/.svn/text-base"
-#define FILE_DIR "music"
-#define FILE_DIR "music/.svn"
-#define FILE_DIR "music/.svn/text-base"
#define FILE_DIR "sound"
-#define FILE_DIR "sound/.svn"
#define FILE_DIR "sound/ambience"
-#define FILE_DIR "sound/ambience/.svn"
-#define FILE_DIR "sound/ambience/.svn/prop-base"
-#define FILE_DIR "sound/ambience/.svn/text-base"
#define FILE_DIR "sound/announcer"
-#define FILE_DIR "sound/announcer/.svn"
-#define FILE_DIR "sound/announcer/.svn/prop-base"
-#define FILE_DIR "sound/announcer/.svn/text-base"
#define FILE_DIR "sound/bots"
-#define FILE_DIR "sound/bots/.svn"
-#define FILE_DIR "sound/bots/.svn/prop-base"
-#define FILE_DIR "sound/bots/.svn/text-base"
#define FILE_DIR "sound/effects"
-#define FILE_DIR "sound/effects/.svn"
-#define FILE_DIR "sound/effects/.svn/prop-base"
-#define FILE_DIR "sound/effects/.svn/text-base"
#define FILE_DIR "sound/items"
-#define FILE_DIR "sound/items/.svn"
-#define FILE_DIR "sound/items/.svn/prop-base"
-#define FILE_DIR "sound/items/.svn/text-base"
#define FILE_DIR "sound/machines"
-#define FILE_DIR "sound/machines/.svn"
-#define FILE_DIR "sound/machines/.svn/prop-base"
-#define FILE_DIR "sound/machines/.svn/text-base"
#define FILE_DIR "sound/misc"
-#define FILE_DIR "sound/misc/.svn"
-#define FILE_DIR "sound/misc/.svn/prop-base"
-#define FILE_DIR "sound/misc/.svn/text-base"
#define FILE_DIR "sound/piano"
-#define FILE_DIR "sound/piano/.svn"
-#define FILE_DIR "sound/piano/.svn/prop-base"
-#define FILE_DIR "sound/piano/.svn/text-base"
#define FILE_DIR "sound/spells"
-#define FILE_DIR "sound/spells/.svn"
-#define FILE_DIR "sound/spells/.svn/prop-base"
-#define FILE_DIR "sound/spells/.svn/text-base"
#define FILE_DIR "sound/voice"
-#define FILE_DIR "sound/voice/.svn"
-#define FILE_DIR "sound/voice/.svn/prop-base"
-#define FILE_DIR "sound/voice/.svn/text-base"
#define FILE_DIR "sound/weapons"
-#define FILE_DIR "sound/weapons/.svn"
-#define FILE_DIR "sound/weapons/.svn/prop-base"
-#define FILE_DIR "sound/weapons/.svn/text-base"
-#define FILE_DIR "SQL"
-#define FILE_DIR "SQL/.svn"
-#define FILE_DIR "SQL/.svn/text-base"
// END_FILE_DIR
-
// BEGIN_PREFERENCES
#define DEBUG
// END_PREFERENCES
-
// BEGIN_INCLUDE
#include "code\names.dm"
#include "code\setup.dm"
@@ -815,6 +432,7 @@
#include "code\game\mecha\construction_datum.dm"
#include "code\game\mecha\global_iterator.dm"
#include "code\game\mecha\mech_bay.dm"
+#include "code\game\mecha\mech_fabricator.dm"
#include "code\game\mecha\mecha.dm"
#include "code\game\mecha\mecha_construction.dm"
#include "code\game\mecha\mecha_wreckage.dm"