diff --git a/code/controllers/subsystem/research.dm b/code/controllers/subsystem/research.dm index 900dfd1c54..3b2df8bade 100644 --- a/code/controllers/subsystem/research.dm +++ b/code/controllers/subsystem/research.dm @@ -24,265 +24,263 @@ SUBSYSTEM_DEF(research) var/list/techweb_categories = list() //category name = list(node.id = TRUE) var/list/techweb_boost_items = list() //associative double-layer path = list(id = list(point_type = point_discount)) var/list/techweb_nodes_hidden = list() //Node ids that should be hidden by default. + var/list/techweb_point_items = list( //path = list(point type = value) - /obj/item/assembly/signaler/anomaly = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/assembly/signaler/anomaly = list(TECHWEB_POINT_TYPE_GENERIC = 5000), // Cit three more anomalys anomalys - /obj/item/assembly/signaler/anomaly = list(TECHWEB_POINT_TYPE_GENERIC = 7500), - /obj/item/assembly/signaler/anomaly = list(TECHWEB_POINT_TYPE_GENERIC = 10000), - // - Slime Extracts! - - /obj/item/slime_extract/grey = list(TECHWEB_POINT_TYPE_GENERIC = 500), // Adds in slime core deconing - /obj/item/slime_extract/metal = list(TECHWEB_POINT_TYPE_GENERIC = 750), - /obj/item/slime_extract/purple = list(TECHWEB_POINT_TYPE_GENERIC = 750), - /obj/item/slime_extract/orange = list(TECHWEB_POINT_TYPE_GENERIC = 750), - /obj/item/slime_extract/blue = list(TECHWEB_POINT_TYPE_GENERIC = 750), - /obj/item/slime_extract/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 1000), - /obj/item/slime_extract/silver = list(TECHWEB_POINT_TYPE_GENERIC = 1000), - /obj/item/slime_extract/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 1000), - /obj/item/slime_extract/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 1000), - /obj/item/slime_extract/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 1250), - /obj/item/slime_extract/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 1250), - /obj/item/slime_extract/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 1250), - /obj/item/slime_extract/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 1250), - /obj/item/slime_extract/red = list(TECHWEB_POINT_TYPE_GENERIC = 1250), - /obj/item/slime_extract/green = list(TECHWEB_POINT_TYPE_GENERIC = 1250), - /obj/item/slime_extract/pink = list(TECHWEB_POINT_TYPE_GENERIC = 1250), - /obj/item/slime_extract/gold = list(TECHWEB_POINT_TYPE_GENERIC = 1250), - /obj/item/slime_extract/black = list(TECHWEB_POINT_TYPE_GENERIC = 1500), - /obj/item/slime_extract/adamantine =list (TECHWEB_POINT_TYPE_GENERIC = 1500), - /obj/item/slime_extract/oil = list(TECHWEB_POINT_TYPE_GENERIC = 1500), - /obj/item/slime_extract/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 1500), - /obj/item/slime_extract/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/assembly/signaler/anomaly = list(TECHWEB_POINT_TYPE_GENERIC = 10000), + // - Slime Extracts! - Basics + /obj/item/slime_extract/grey = list(TECHWEB_POINT_TYPE_GENERIC = 500), + /obj/item/slime_extract/metal = list(TECHWEB_POINT_TYPE_GENERIC = 750), + /obj/item/slime_extract/purple = list(TECHWEB_POINT_TYPE_GENERIC = 750), + /obj/item/slime_extract/orange = list(TECHWEB_POINT_TYPE_GENERIC = 750), + /obj/item/slime_extract/blue = list(TECHWEB_POINT_TYPE_GENERIC = 750), + /obj/item/slime_extract/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 1000), + /obj/item/slime_extract/silver = list(TECHWEB_POINT_TYPE_GENERIC = 1000), + /obj/item/slime_extract/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 1000), + /obj/item/slime_extract/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 1000), + /obj/item/slime_extract/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 1250), + /obj/item/slime_extract/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 1250), + /obj/item/slime_extract/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 1250), + /obj/item/slime_extract/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 1250), + /obj/item/slime_extract/red = list(TECHWEB_POINT_TYPE_GENERIC = 1250), + /obj/item/slime_extract/green = list(TECHWEB_POINT_TYPE_GENERIC = 1250), + /obj/item/slime_extract/pink = list(TECHWEB_POINT_TYPE_GENERIC = 1250), + /obj/item/slime_extract/gold = list(TECHWEB_POINT_TYPE_GENERIC = 1250), + /obj/item/slime_extract/black = list(TECHWEB_POINT_TYPE_GENERIC = 1500), + /obj/item/slime_extract/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 1500), + /obj/item/slime_extract/oil = list(TECHWEB_POINT_TYPE_GENERIC = 1500), + /obj/item/slime_extract/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 1500), + /obj/item/slime_extract/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 2500), // Reproductive - Crossbreading Cores! - (Grey Cores) - /obj/item/slimecross/reproductive/grey = list(TECHWEB_POINT_TYPE_GENERIC = 1000), - /obj/item/slimecross/reproductive/orange = list(TECHWEB_POINT_TYPE_GENERIC = 1500), - /obj/item/slimecross/reproductive/purple = list(TECHWEB_POINT_TYPE_GENERIC = 1500), - /obj/item/slimecross/reproductive/blue = list(TECHWEB_POINT_TYPE_GENERIC = 1500), - /obj/item/slimecross/reproductive/metal = list(TECHWEB_POINT_TYPE_GENERIC = 1500), - /obj/item/slimecross/reproductive/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 1750), - /obj/item/slimecross/reproductive/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 1750), - /obj/item/slimecross/reproductive/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 1750), - /obj/item/slimecross/reproductive/silver = list(TECHWEB_POINT_TYPE_GENERIC = 1750), - /obj/item/slimecross/reproductive/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 2000), - /obj/item/slimecross/reproductive/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 2000), - /obj/item/slimecross/reproductive/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 2000), - /obj/item/slimecross/reproductive/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 2000), - /obj/item/slimecross/reproductive/red = list(TECHWEB_POINT_TYPE_GENERIC = 2250), - /obj/item/slimecross/reproductive/green = list(TECHWEB_POINT_TYPE_GENERIC = 2250), - /obj/item/slimecross/reproductive/pink = list(TECHWEB_POINT_TYPE_GENERIC = 2250), - /obj/item/slimecross/reproductive/gold = list(TECHWEB_POINT_TYPE_GENERIC = 2250), - /obj/item/slimecross/reproductive/oil = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/reproductive/black = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/reproductive/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/reproductive/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/reproductive/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/reproductive/grey = list(TECHWEB_POINT_TYPE_GENERIC = 1000), + /obj/item/slimecross/reproductive/orange = list(TECHWEB_POINT_TYPE_GENERIC = 1500), + /obj/item/slimecross/reproductive/purple = list(TECHWEB_POINT_TYPE_GENERIC = 1500), + /obj/item/slimecross/reproductive/blue = list(TECHWEB_POINT_TYPE_GENERIC = 1500), + /obj/item/slimecross/reproductive/metal = list(TECHWEB_POINT_TYPE_GENERIC = 1500), + /obj/item/slimecross/reproductive/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 1750), + /obj/item/slimecross/reproductive/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 1750), + /obj/item/slimecross/reproductive/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 1750), + /obj/item/slimecross/reproductive/silver = list(TECHWEB_POINT_TYPE_GENERIC = 1750), + /obj/item/slimecross/reproductive/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 2000), + /obj/item/slimecross/reproductive/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 2000), + /obj/item/slimecross/reproductive/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 2000), + /obj/item/slimecross/reproductive/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 2000), + /obj/item/slimecross/reproductive/red = list(TECHWEB_POINT_TYPE_GENERIC = 2250), + /obj/item/slimecross/reproductive/green = list(TECHWEB_POINT_TYPE_GENERIC = 2250), + /obj/item/slimecross/reproductive/pink = list(TECHWEB_POINT_TYPE_GENERIC = 2250), + /obj/item/slimecross/reproductive/gold = list(TECHWEB_POINT_TYPE_GENERIC = 2250), + /obj/item/slimecross/reproductive/oil = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/reproductive/black = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/reproductive/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/reproductive/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/reproductive/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 2750), // Burning - Crossbreading Cores! - (Orange Cores) - /obj/item/slimecross/burning/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2000), - /obj/item/slimecross/burning/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/burning/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/burning/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/burning/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/burning/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/burning/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/burning/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/burning/silver = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/burning/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/burning/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/burning/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/burning/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/burning/red = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/burning/green = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/burning/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/burning/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/burning/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/burning/black = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/burning/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/burning/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/burning/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/burning/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2000), + /obj/item/slimecross/burning/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/burning/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/burning/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/burning/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/burning/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/burning/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/burning/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/burning/silver = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/burning/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/burning/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/burning/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/burning/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/burning/red = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/burning/green = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/burning/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/burning/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/burning/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/burning/black = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/burning/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/burning/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/burning/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 3750), // Regenerative - Crossbreading Cores! - (Purple Cores) - /obj/item/slimecross/regenerative/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2000), - /obj/item/slimecross/regenerative/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/regenerative/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/regenerative/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/regenerative/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/regenerative/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/regenerative/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/regenerative/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/regenerative/silver = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/regenerative/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/regenerative/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/regenerative/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/regenerative/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/regenerative/red = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/regenerative/green = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/regenerative/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/regenerative/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/regenerative/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/regenerative/black = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/regenerative/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/regenerative/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/regenerative/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/regenerative/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2000), + /obj/item/slimecross/regenerative/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/regenerative/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/regenerative/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/regenerative/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/regenerative/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/regenerative/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/regenerative/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/regenerative/silver = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/regenerative/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/regenerative/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/regenerative/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/regenerative/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/regenerative/red = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/regenerative/green = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/regenerative/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/regenerative/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/regenerative/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/regenerative/black = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/regenerative/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/regenerative/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/regenerative/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 3750), // Stabilized - Crossbreading Cores! - (Blue Cores) - /obj/item/slimecross/stabilized/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2000), - /obj/item/slimecross/stabilized/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/stabilized/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/stabilized/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/stabilized/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/stabilized/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/stabilized/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/stabilized/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/stabilized/silver = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/stabilized/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/stabilized/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/stabilized/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/stabilized/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/stabilized/red = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/stabilized/green = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/stabilized/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/stabilized/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/stabilized/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/stabilized/black = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/stabilized/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/stabilized/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/stabilized/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/stabilized/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2000), + /obj/item/slimecross/stabilized/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/stabilized/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/stabilized/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/stabilized/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/stabilized/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/stabilized/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/stabilized/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/stabilized/silver = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/stabilized/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/stabilized/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/stabilized/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/stabilized/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/stabilized/red = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/stabilized/green = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/stabilized/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/stabilized/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/stabilized/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/stabilized/black = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/stabilized/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/stabilized/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/stabilized/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 3750), // Industrial - Crossbreading Cores! - (Metal Cores) - /obj/item/slimecross/industrial/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2000), - /obj/item/slimecross/industrial/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/industrial/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/industrial/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/industrial/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/industrial/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/industrial/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/industrial/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/industrial/silver = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/industrial/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/industrial/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/industrial/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/industrial/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/industrial/red = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/industrial/green = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/industrial/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/industrial/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/industrial/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/industrial/black = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/industrial/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/industrial/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/industrial/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/industrial/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2000), + /obj/item/slimecross/industrial/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/industrial/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/industrial/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/industrial/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/industrial/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/industrial/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/industrial/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/industrial/silver = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/industrial/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/industrial/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/industrial/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/industrial/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/industrial/red = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/industrial/green = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/industrial/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/industrial/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/industrial/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/industrial/black = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/industrial/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/industrial/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/industrial/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 3750), // Charged - Crossbreading Cores! - (Yellow Cores) - /obj/item/slimecross/charged/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2250), - /obj/item/slimecross/charged/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/charged/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/charged/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/charged/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/charged/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/charged/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/charged/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/charged/silver = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/charged/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/charged/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/charged/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/charged/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/charged/red = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/charged/green = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/charged/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/charged/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/charged/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/charged/black = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/charged/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/charged/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/charged/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 4000), + /obj/item/slimecross/charged/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2250), + /obj/item/slimecross/charged/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/charged/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/charged/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/charged/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/charged/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/charged/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/charged/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/charged/silver = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/charged/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/charged/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/charged/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/charged/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/charged/red = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/charged/green = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/charged/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/charged/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/charged/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/charged/black = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/charged/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/charged/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/charged/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 4000), // Selfsustaining - Crossbreading Cores! - (Dark Purple Cores) - /obj/item/slimecross/selfsustaining/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2250), - /obj/item/slimecross/selfsustaining/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/selfsustaining/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/selfsustaining/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/selfsustaining/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/selfsustaining/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/selfsustaining/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2250), + /obj/item/slimecross/selfsustaining/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/selfsustaining/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/selfsustaining/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/selfsustaining/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/selfsustaining/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 3000), /obj/item/slimecross/selfsustaining/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/selfsustaining/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/selfsustaining/silver = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/selfsustaining/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/selfsustaining/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/selfsustaining/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/selfsustaining/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/selfsustaining/red = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/selfsustaining/green = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/selfsustaining/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/selfsustaining/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/selfsustaining/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/selfsustaining/black = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/selfsustaining/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/selfsustaining/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/selfsustaining/silver = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/selfsustaining/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/selfsustaining/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/selfsustaining/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/selfsustaining/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/selfsustaining/red = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/selfsustaining/green = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/selfsustaining/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/selfsustaining/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/selfsustaining/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/selfsustaining/black = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/selfsustaining/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3750), /obj/item/slimecross/selfsustaining/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/selfsustaining/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 4000), + /obj/item/slimecross/selfsustaining/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 4000), // Consuming - Crossbreading Cores! - (Sliver Cores) - /obj/item/slimecross/consuming/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2250), - /obj/item/slimecross/consuming/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/consuming/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/consuming/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/consuming/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2750), - /obj/item/slimecross/consuming/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/consuming/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/consuming/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/consuming/silver = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/consuming/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/consuming/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/consuming/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/consuming/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/consuming/red = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/consuming/green = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/consuming/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/consuming/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/consuming/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/consuming/black = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/consuming/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/consuming/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/consuming/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 4000), + /obj/item/slimecross/consuming/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2250), + /obj/item/slimecross/consuming/orange = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/consuming/purple = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/consuming/blue = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/consuming/metal = list(TECHWEB_POINT_TYPE_GENERIC = 2750), + /obj/item/slimecross/consuming/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/consuming/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/consuming/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/consuming/silver = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/consuming/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/consuming/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/consuming/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/consuming/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/consuming/red = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/consuming/green = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/consuming/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/consuming/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/consuming/oil = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/consuming/black = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/consuming/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/consuming/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/consuming/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 4000), // Prismatic - Crossbreading Cores! - (Pyrite Cores) - /obj/item/slimecross/prismatic/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/prismatic/orange = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/prismatic/purple = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/prismatic/blue = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/prismatic/metal = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/prismatic/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/prismatic/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/prismatic/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/prismatic/silver = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/prismatic/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/prismatic/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/prismatic/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/prismatic/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/prismatic/red = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/prismatic/green = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/prismatic/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/prismatic/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/prismatic/oil = list(TECHWEB_POINT_TYPE_GENERIC = 4000), - /obj/item/slimecross/prismatic/black = list(TECHWEB_POINT_TYPE_GENERIC = 4000), - /obj/item/slimecross/prismatic/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 4000), - /obj/item/slimecross/prismatic/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 4000), - /obj/item/slimecross/prismatic/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 4250), + /obj/item/slimecross/prismatic/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/prismatic/orange = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/prismatic/purple = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/prismatic/blue = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/prismatic/metal = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/prismatic/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/prismatic/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/prismatic/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/prismatic/silver = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/prismatic/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/prismatic/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/prismatic/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/prismatic/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/prismatic/red = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/prismatic/green = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/prismatic/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/prismatic/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/prismatic/oil = list(TECHWEB_POINT_TYPE_GENERIC = 4000), + /obj/item/slimecross/prismatic/black = list(TECHWEB_POINT_TYPE_GENERIC = 4000), + /obj/item/slimecross/prismatic/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 4000), + /obj/item/slimecross/prismatic/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 4000), + /obj/item/slimecross/prismatic/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 4250), // Recurring - Crossbreading Cores! - (Cerulean Cores) - /obj/item/slimecross/recurring/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2500), - /obj/item/slimecross/recurring/orange = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/recurring/purple = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/recurring/blue = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/recurring/metal = list(TECHWEB_POINT_TYPE_GENERIC = 3000), - /obj/item/slimecross/recurring/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/recurring/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/recurring/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/recurring/silver = list(TECHWEB_POINT_TYPE_GENERIC = 3250), - /obj/item/slimecross/recurring/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/recurring/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/recurring/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/recurring/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3500), - /obj/item/slimecross/recurring/red = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/recurring/green = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/recurring/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/recurring/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3750), - /obj/item/slimecross/recurring/oil = list(TECHWEB_POINT_TYPE_GENERIC = 4000), - /obj/item/slimecross/recurring/black = list(TECHWEB_POINT_TYPE_GENERIC = 4000), - /obj/item/slimecross/recurring/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 4000), - /obj/item/slimecross/recurring/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 4000), - /obj/item/slimecross/recurring/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 4250) - ) // End of Cit changes + /obj/item/slimecross/recurring/grey = list(TECHWEB_POINT_TYPE_GENERIC = 2500), + /obj/item/slimecross/recurring/orange = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/recurring/purple = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/recurring/blue = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/recurring/metal = list(TECHWEB_POINT_TYPE_GENERIC = 3000), + /obj/item/slimecross/recurring/yellow = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/recurring/darkpurple = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/recurring/darkblue = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/recurring/silver = list(TECHWEB_POINT_TYPE_GENERIC = 3250), + /obj/item/slimecross/recurring/bluespace = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/recurring/sepia = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/recurring/cerulean = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/recurring/pyrite = list(TECHWEB_POINT_TYPE_GENERIC = 3500), + /obj/item/slimecross/recurring/red = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/recurring/green = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/recurring/pink = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/recurring/gold = list(TECHWEB_POINT_TYPE_GENERIC = 3750), + /obj/item/slimecross/recurring/oil = list(TECHWEB_POINT_TYPE_GENERIC = 4000), + /obj/item/slimecross/recurring/black = list(TECHWEB_POINT_TYPE_GENERIC = 4000), + /obj/item/slimecross/recurring/lightpink = list(TECHWEB_POINT_TYPE_GENERIC = 4000), + /obj/item/slimecross/recurring/adamantine = list(TECHWEB_POINT_TYPE_GENERIC = 4000), + /obj/item/slimecross/recurring/rainbow = list(TECHWEB_POINT_TYPE_GENERIC = 4250) + ) var/list/errored_datums = list() var/list/point_types = list() //typecache style type = TRUE list //---------------------------------------------- @@ -304,6 +302,13 @@ SUBSYSTEM_DEF(research) autosort_categories() error_design = new error_node = new + + for(var/A in subtypesof(/obj/item/seeds)) + var/obj/item/seeds/S = A + var/list/L = list() + L[TECHWEB_POINT_TYPE_GENERIC] = 50 + initial(S.rarity) * 2 + techweb_point_items[S] = L + return ..() /datum/controller/subsystem/research/fire() diff --git a/code/game/objects/effects/spawners/lootdrop.dm b/code/game/objects/effects/spawners/lootdrop.dm index 953b8b1f00..71c394a404 100644 --- a/code/game/objects/effects/spawners/lootdrop.dm +++ b/code/game/objects/effects/spawners/lootdrop.dm @@ -378,3 +378,11 @@ /obj/item/circuitboard/computer/apc_control, /obj/item/circuitboard/computer/robotics ) + +/obj/effect/spawner/lootdrop/keg + name = "random keg spawner" + lootcount = 1 + loot = list(/obj/structure/reagent_dispensers/keg/mead = 5, + /obj/structure/reagent_dispensers/keg/aphro = 2, + /obj/structure/reagent_dispensers/keg/aphro/strong = 2, + /obj/structure/reagent_dispensers/keg/gargle = 1) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 2bf039218b..78dde8d206 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -10,6 +10,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) var/item_state = null var/lefthand_file = 'icons/mob/inhands/items_lefthand.dmi' var/righthand_file = 'icons/mob/inhands/items_righthand.dmi' + var/list/alternate_screams = list() //REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE //Dimensions of the icon file used when this item is worn, eg: hats.dmi //eg: 32x32 sprite, 64x64 sprite, etc. diff --git a/modular_citadel/code/game/objects/items/balls.dm b/code/game/objects/items/balls.dm similarity index 99% rename from modular_citadel/code/game/objects/items/balls.dm rename to code/game/objects/items/balls.dm index 79552bff6d..59b47bacbd 100644 --- a/modular_citadel/code/game/objects/items/balls.dm +++ b/code/game/objects/items/balls.dm @@ -89,4 +89,4 @@ resistance_flags = ACID_PROOF /datum/action/item_action/squeeze - name = "Squeak!" \ No newline at end of file + name = "Squeak!" diff --git a/modular_citadel/code/game/objects/items/boombox.dm b/code/game/objects/items/boombox.dm similarity index 100% rename from modular_citadel/code/game/objects/items/boombox.dm rename to code/game/objects/items/boombox.dm diff --git a/code/game/objects/items/devices/radio/electropack.dm b/code/game/objects/items/devices/radio/electropack.dm index 6aee67f2ee..d5cf6daabb 100644 --- a/code/game/objects/items/devices/radio/electropack.dm +++ b/code/game/objects/items/devices/radio/electropack.dm @@ -144,3 +144,80 @@ Code: user << browse(dat, "window=radio") onclose(user, "radio") return + +/obj/item/electropack/shockcollar + name = "shock collar" + desc = "A reinforced metal collar. It seems to have some form of wiring near the front. Strange.." + icon = 'modular_citadel/icons/obj/clothing/cit_neck.dmi' + alternate_worn_icon = 'modular_citadel/icons/mob/citadel/neck.dmi' + icon_state = "shockcollar" + item_state = "shockcollar" + body_parts_covered = NECK + slot_flags = ITEM_SLOT_NECK | ITEM_SLOT_DENYPOCKET //no more pocket shockers + w_class = WEIGHT_CLASS_SMALL + strip_delay = 60 + equip_delay_other = 60 + materials = list(MAT_METAL=5000, MAT_GLASS=2000) + + var/tagname = null + +/datum/design/electropack/shockcollar + name = "Shockcollar" + id = "shockcollar" + build_type = AUTOLATHE + build_path = /obj/item/electropack/shockcollar + materials = list(MAT_METAL=5000, MAT_GLASS=2000) + category = list("hacked", "Misc") + +/obj/item/electropack/shockcollar/attack_hand(mob/user) + if(loc == user && user.get_item_by_slot(SLOT_NECK)) + to_chat(user, "The collar is fastened tight! You'll need help taking this off!") + return + return ..() + +/obj/item/electropack/shockcollar/receive_signal(datum/signal/signal) + if(!signal || signal.data["code"] != code) + return + + if(isliving(loc) && on) + if(shock_cooldown == TRUE) + return + shock_cooldown = TRUE + addtimer(VARSET_CALLBACK(src, shock_cooldown, FALSE), 100) + var/mob/living/L = loc + step(L, pick(GLOB.cardinals)) + + to_chat(L, "You feel a sharp shock from the collar!") + var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread + s.set_up(3, 1, L) + s.start() + + L.Knockdown(100) + + if(master) + master.receive_signal() + return + +/obj/item/electropack/shockcollar/attackby(obj/item/W, mob/user, params) //moves it here because on_click is being bad + if(istype(W, /obj/item/pen)) + var/t = input(user, "Would you like to change the name on the tag?", "Name your new pet", tagname ? tagname : "Spot") as null|text + if(t) + tagname = copytext(sanitize(t), 1, MAX_NAME_LEN) + name = "[initial(name)] - [tagname]" + else + return ..() + +/obj/item/electropack/shockcollar/ui_interact(mob/user) //on_click calls this + var/dat = {" + +Frequency/Code for shock collar:
+Frequency: +[format_frequency(src.frequency)] +Set
+Code: +[src.code] +Set
+
"} + user << browse(dat, "window=radio") + onclose(user, "radio") + return diff --git a/code/game/objects/items/devices/radio/encryptionkey.dm b/code/game/objects/items/devices/radio/encryptionkey.dm index cc009b5fc2..e26b9dd845 100644 --- a/code/game/objects/items/devices/radio/encryptionkey.dm +++ b/code/game/objects/items/devices/radio/encryptionkey.dm @@ -92,7 +92,13 @@ /obj/item/encryptionkey/heads/hop name = "\proper the head of personnel's encryption key" icon_state = "hop_cypherkey" - channels = list(RADIO_CHANNEL_SUPPLY = 1, RADIO_CHANNEL_SERVICE = 1, RADIO_CHANNEL_COMMAND = 1) + channels = list(RADIO_CHANNEL_SERVICE = 1, RADIO_CHANNEL_COMMAND = 1) + +/obj/item/encryptionkey/heads/qm + name = "\proper the quartermaster's encryption key" + desc = "An encryption key for a radio headset. Channels are as follows: :u - supply, :c - command." + icon_state = "hop_cypherkey" + channels = list(RADIO_CHANNEL_SUPPLY = 1, RADIO_CHANNEL_COMMAND = 1) /obj/item/encryptionkey/headset_cargo name = "supply radio encryption key" diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index 13cd30561a..8c6666085e 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -206,6 +206,12 @@ GLOBAL_LIST_INIT(channel_tokens, list( icon_state = "com_headset" keyslot = new /obj/item/encryptionkey/heads/hop +/obj/item/radio/headset/heads/qm + name = "\proper the quartermaster's headset" + desc = "The headset of the king (or queen) of paperwork." + icon_state = "com_headset" + keyslot = new /obj/item/encryptionkey/heads/qm + /obj/item/radio/headset/headset_cargo name = "supply radio headset" desc = "A headset used by the QM and his slaves." diff --git a/code/game/objects/items/grenades/grenade.dm b/code/game/objects/items/grenades/grenade.dm index 4f3dab803d..033ea9e791 100644 --- a/code/game/objects/items/grenades/grenade.dm +++ b/code/game/objects/items/grenades/grenade.dm @@ -122,3 +122,6 @@ owner.visible_message("[attack_text] hits [owner]'s [src], setting it off! What a shot!") prime() return TRUE //It hit the grenade, not them + +/obj/item/proc/grenade_prime_react(obj/item/grenade/nade) + return diff --git a/code/game/objects/items/robot/ai_upgrades.dm b/code/game/objects/items/robot/ai_upgrades.dm index 7f7780d3a4..acfc1353b9 100644 --- a/code/game/objects/items/robot/ai_upgrades.dm +++ b/code/game/objects/items/robot/ai_upgrades.dm @@ -9,8 +9,10 @@ icon_state = "datadisk3" -/obj/item/malf_upgrade/afterattack(mob/living/silicon/ai/AI, mob/user) +/obj/item/malf_upgrade/afterattack(mob/living/silicon/ai/AI, mob/user, proximity) . = ..() + if(!proximity) + return if(!istype(AI)) return if(AI.malf_picker) @@ -18,7 +20,11 @@ to_chat(AI, "[user] has attempted to upgrade you with combat software that you already possess. You gain 50 points to spend on Malfunction Modules instead.") else to_chat(AI, "[user] has upgraded you with combat software!") + to_chat(AI, "Your current laws and objectives remain unchanged.") //this unlocks malf powers, but does not give the license to plasma flood AI.add_malf_picker() + AI.hack_software = TRUE + log_game("[key_name(user)] has upgraded [key_name(AI)] with a [src].") + message_admins("[ADMIN_LOOKUPFLW(user)] has upgraded [ADMIN_LOOKUPFLW(AI)] with a [src].") to_chat(user, "You upgrade [AI]. [src] is consumed in the process.") qdel(src) @@ -26,12 +32,14 @@ //Lipreading /obj/item/surveillance_upgrade name = "surveillance software upgrade" - desc = "A software package that will allow an artificial intelligence to 'hear' from its cameras via lip reading." + desc = "An illegal software package that will allow an artificial intelligence to 'hear' from its cameras via lip reading and hidden microphones." icon = 'icons/obj/module.dmi' icon_state = "datadisk3" -/obj/item/surveillance_upgrade/afterattack(mob/living/silicon/ai/AI, mob/user) +/obj/item/surveillance_upgrade/afterattack(mob/living/silicon/ai/AI, mob/user, proximity) . = ..() + if(!proximity) + return if(!istype(AI)) return if(AI.eyeobj) @@ -39,4 +47,6 @@ to_chat(AI, "[user] has upgraded you with surveillance software!") to_chat(AI, "Via a combination of hidden microphones and lip reading software, you are able to use your cameras to listen in on conversations.") to_chat(user, "You upgrade [AI]. [src] is consumed in the process.") + log_game("[key_name(user)] has upgraded [key_name(AI)] with a [src].") + message_admins("[ADMIN_LOOKUPFLW(user)] has upgraded [ADMIN_LOOKUPFLW(AI)] with a [src].") qdel(src) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 3ae0a4bd17..f34fc6a9a3 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -223,6 +223,46 @@ if(!iscyborg(loc)) deductcharge(1000 / severity, TRUE, FALSE) +/obj/item/melee/baton/stunsword + name = "stunsword" + desc = "not actually sharp, this sword is functionally identical to a stunbaton" + icon = 'modular_citadel/icons/obj/stunsword.dmi' + icon_state = "stunsword" + item_state = "sword" + lefthand_file = 'modular_citadel/icons/mob/inhands/stunsword_left.dmi' + righthand_file = 'modular_citadel/icons/mob/inhands/stunsword_right.dmi' + +/obj/item/melee/baton/stunsword/get_belt_overlay() + if(istype(loc, /obj/item/storage/belt/sabre)) + return mutable_appearance('icons/obj/clothing/belt_overlays.dmi', "stunsword") + return ..() + +/obj/item/melee/baton/stunsword/get_worn_belt_overlay(icon_file) + return mutable_appearance(icon_file, "-stunsword") + +/obj/item/ssword_kit + name = "stunsword kit" + desc = "a modkit for making a stunbaton into a stunsword" + icon = 'icons/obj/vending_restock.dmi' + icon_state = "refill_donksoft" + var/product = /obj/item/melee/baton/stunsword //what it makes + var/list/fromitem = list(/obj/item/melee/baton, /obj/item/melee/baton/loaded) //what it needs + afterattack(obj/O, mob/user as mob) + if(istype(O, product)) + to_chat(user,"[O] is already modified!") + else if(O.type in fromitem) //makes sure O is the right thing + var/obj/item/melee/baton/B = O + if(!B.cell) //checks for a powercell in the baton. If there isn't one, continue. If there is, warn the user to take it out + new product(usr.loc) //spawns the product + user.visible_message("[user] modifies [O]!","You modify the [O]!") + qdel(O) //Gets rid of the baton + qdel(src) //gets rid of the kit + + else + to_chat(user,"Remove the powercell first!") //We make this check because the stunsword starts without a battery. + else + to_chat(user, " You can't modify [O] with this kit!") + //Makeshift stun baton. Replacement for stun gloves. /obj/item/melee/baton/cattleprod name = "stunprod" @@ -249,5 +289,6 @@ sparkler?.activate() . = ..() + #undef STUNBATON_CHARGE_LENIENCY #undef STUNBATON_DEPLETION_RATE diff --git a/code/game/world.dm b/code/game/world.dm index 5e7629fbb4..df0eba70cd 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -34,10 +34,12 @@ GLOBAL_LIST(topic_status_cache) #endif load_admins() + load_mentors() LoadVerbs(/datum/verbs/menu) if(CONFIG_GET(flag/usewhitelist)) load_whitelist() LoadBans() + initialize_global_loadout_items() reload_custom_roundstart_items_list()//Cit change - loads donator items. Remind me to remove when I port over bay's loadout system GLOB.timezoneOffset = text2num(time2text(0,"hh")) * 36000 @@ -49,8 +51,6 @@ GLOBAL_LIST(topic_status_cache) if(NO_INIT_PARAMETER in params) return - cit_initialize() - Master.Initialize(10, FALSE, TRUE) if(TEST_RUN_PARAMETER in params) diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm index 07014c8a0a..696ff1346c 100644 --- a/code/modules/clothing/head/misc.dm +++ b/code/modules/clothing/head/misc.dm @@ -178,6 +178,7 @@ icon_state = "xenos" item_state = "xenos_helm" desc = "A helmet made out of chitinous alien hide." + alternate_screams = list('sound/voice/hiss6.ogg') flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR|HIDESNOUT /obj/item/clothing/head/fedora @@ -421,4 +422,4 @@ name = "security cowboy hat" desc = "A security cowboy hat, perfect for any true lawman" icon_state = "cowboyhat_sec" - item_state= "cowboyhat_sec" \ No newline at end of file + item_state= "cowboyhat_sec" diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index 1000decc87..bb2014db5c 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -86,6 +86,7 @@ desc = "Perfect for winter in Siberia, da?" icon_state = "ushankadown" item_state = "ushankadown" + alternate_screams = list('sound/voice/human/cyka1.ogg', 'sound/voice/human/cheekibreeki.ogg') flags_inv = HIDEEARS|HIDEHAIR var/earflaps = 1 cold_protection = HEAD @@ -164,6 +165,7 @@ icon_state = "cardborg_h" item_state = "cardborg_h" flags_cover = HEADCOVERSEYES + alternate_screams = list('modular_citadel/sound/voice/scream_silicon.ogg') flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR|HIDESNOUT dog_fashion = /datum/dog_fashion/head/cardborg diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index 06aa5aeb0c..beb852f10f 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -471,6 +471,7 @@ name = "white sundress" desc = "Makes you want to frolic in a field of lillies." icon_state = "sundress_white" + item_state = "sundress" item_color = "sundress_white" body_parts_covered = CHEST|GROIN fitted = FEMALE_UNIFORM_TOP @@ -580,7 +581,7 @@ icon_state = "flower_dress" item_state = "sailordress" item_color = "flower_dress" - body_parts_covered = CHEST|GROIN + body_parts_covered = CHEST|GROIN|LEGS fitted = FEMALE_UNIFORM_TOP can_adjust = FALSE @@ -605,9 +606,8 @@ /obj/item/clothing/under/croptop name = "crop top" desc = "We've saved money by giving you half a shirt!" - icon_state = "sailor_dress" - item_state = "sailordress" - item_color = "sailor_dress" + icon_state = "croptop" + item_color = "croptop" body_parts_covered = CHEST|GROIN|ARMS fitted = FEMALE_UNIFORM_TOP can_adjust = FALSE @@ -935,4 +935,5 @@ icon_state = "christmasfemaleg" item_state = "christmasfemaleg" body_parts_covered = CHEST|GROIN - can_adjust = FALSE \ No newline at end of file + can_adjust = FALSE + diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm index da8eb3846d..edaa5ce269 100644 --- a/code/modules/reagents/reagent_containers/spray.dm +++ b/code/modules/reagents/reagent_containers/spray.dm @@ -199,6 +199,9 @@ amount_per_transfer_from_this = 5 list_reagents = list(/datum/reagent/consumable/condensedcapsaicin = 40) +/obj/item/reagent_containers/spray/pepper/empty // for techfab printing + list_reagents = null + /obj/item/reagent_containers/spray/pepper/suicide_act(mob/living/carbon/user) user.visible_message("[user] begins huffing \the [src]! It looks like [user.p_theyre()] getting a dirty high!") return OXYLOSS diff --git a/code/modules/research/designs/autolathe_desings/autolathe_designs_electronics.dm b/code/modules/research/designs/autolathe_desings/autolathe_designs_electronics.dm index 5b247efe74..4ca780620d 100644 --- a/code/modules/research/designs/autolathe_desings/autolathe_designs_electronics.dm +++ b/code/modules/research/designs/autolathe_desings/autolathe_designs_electronics.dm @@ -54,7 +54,7 @@ /datum/design/desttagger name = "Destination Tagger" id = "desttagger" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 250, MAT_GLASS = 125) build_path = /obj/item/destTagger category = list("initial", "Electronics") @@ -62,7 +62,7 @@ /datum/design/handlabeler name = "Hand Labeler" id = "handlabel" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 150, MAT_GLASS = 125) build_path = /obj/item/hand_labeler category = list("initial", "Electronics") @@ -73,4 +73,4 @@ build_type = AUTOLATHE materials = list(MAT_GLASS = 20) build_path = /obj/item/stock_parts/cell/emergency_light - category = list("initial", "Electronics") \ No newline at end of file + category = list("initial", "Electronics") diff --git a/code/modules/research/designs/autolathe_desings/autolathe_designs_medical_and_dinnerware.dm b/code/modules/research/designs/autolathe_desings/autolathe_designs_medical_and_dinnerware.dm index 27852b2798..0d303c3968 100644 --- a/code/modules/research/designs/autolathe_desings/autolathe_designs_medical_and_dinnerware.dm +++ b/code/modules/research/designs/autolathe_desings/autolathe_designs_medical_and_dinnerware.dm @@ -68,66 +68,74 @@ /datum/design/scalpel name = "Scalpel" id = "scalpel" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 4000, MAT_GLASS = 1000) build_path = /obj/item/scalpel - category = list("initial", "Medical") + category = list("initial", "Medical","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE /datum/design/circular_saw name = "Circular Saw" id = "circular_saw" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 10000, MAT_GLASS = 6000) build_path = /obj/item/circular_saw - category = list("initial", "Medical") + category = list("initial", "Medical","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE /datum/design/surgicaldrill name = "Surgical Drill" id = "surgicaldrill" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 10000, MAT_GLASS = 6000) build_path = /obj/item/surgicaldrill - category = list("initial", "Medical") + category = list("initial", "Medical","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE /datum/design/retractor name = "Retractor" id = "retractor" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 6000, MAT_GLASS = 3000) build_path = /obj/item/retractor - category = list("initial", "Medical") + category = list("initial", "Medical","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE /datum/design/cautery name = "Cautery" id = "cautery" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 2500, MAT_GLASS = 750) build_path = /obj/item/cautery - category = list("initial", "Medical") + category = list("initial", "Medical","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE /datum/design/hemostat name = "Hemostat" id = "hemostat" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 5000, MAT_GLASS = 2500) build_path = /obj/item/hemostat - category = list("initial", "Medical") + category = list("initial", "Medical","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE /datum/design/beaker name = "Beaker" id = "beaker" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_GLASS = 500) build_path = /obj/item/reagent_containers/glass/beaker - category = list("initial", "Medical") + category = list("initial", "Medical","Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SERVICE | DEPARTMENTAL_FLAG_SCIENCE /datum/design/large_beaker name = "Large Beaker" id = "large_beaker" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_GLASS = 2500) build_path = /obj/item/reagent_containers/glass/beaker/large - category = list("initial", "Medical") + category = list("initial", "Medical","Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SERVICE | DEPARTMENTAL_FLAG_SCIENCE /datum/design/healthanalyzer name = "Health Analyzer" @@ -141,10 +149,11 @@ /datum/design/pillbottle name = "Pill Bottle" id = "pillbottle" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 20, MAT_GLASS = 100) build_path = /obj/item/storage/pill_bottle - category = list("initial", "Medical") + category = list("initial", "Medical","Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL /datum/design/syringe name = "Syringe" @@ -165,15 +174,17 @@ /datum/design/hypovialsmall name = "Hypovial" id = "hypovial" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 500) build_path = /obj/item/reagent_containers/glass/bottle/vial/small - category = list("initial","Medical") + category = list("initial","Medical","Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL /datum/design/hypoviallarge name = "Large Hypovial" id = "large_hypovial" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 2500) build_path = /obj/item/reagent_containers/glass/bottle/vial/large - category = list("initial","Medical") + category = list("initial","Medical","Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL diff --git a/code/modules/research/designs/autolathe_desings/autolathe_designs_tcomms_and_misc.dm b/code/modules/research/designs/autolathe_desings/autolathe_designs_tcomms_and_misc.dm index 29d28b7132..a0af3d8b1e 100644 --- a/code/modules/research/designs/autolathe_desings/autolathe_designs_tcomms_and_misc.dm +++ b/code/modules/research/designs/autolathe_desings/autolathe_designs_tcomms_and_misc.dm @@ -68,58 +68,65 @@ /datum/design/pipe_painter name = "Pipe Painter" id = "pipe_painter" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 5000, MAT_GLASS = 2000) build_path = /obj/item/pipe_painter - category = list("initial", "Misc") + category = list("initial", "Misc","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING /datum/design/airlock_painter name = "Airlock Painter" id = "airlock_painter" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 50, MAT_GLASS = 50) build_path = /obj/item/airlock_painter - category = list("initial", "Misc") + category = list("initial", "Misc","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING /datum/design/cultivator name = "Cultivator" id = "cultivator" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL=50) build_path = /obj/item/cultivator - category = list("initial","Misc") + category = list("initial","Misc","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_SERVICE /datum/design/plant_analyzer name = "Plant Analyzer" id = "plant_analyzer" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 30, MAT_GLASS = 20) build_path = /obj/item/plant_analyzer - category = list("initial","Misc") + category = list("initial","Misc","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_SERVICE /datum/design/shovel name = "Shovel" id = "shovel" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 50) build_path = /obj/item/shovel - category = list("initial","Misc") + category = list("initial","Misc","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_SERVICE | DEPARTMENTAL_FLAG_CARGO /datum/design/spade name = "Spade" id = "spade" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 50) build_path = /obj/item/shovel/spade - category = list("initial","Misc") + category = list("initial","Misc","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_SERVICE /datum/design/hatchet name = "Hatchet" id = "hatchet" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 15000) build_path = /obj/item/hatchet - category = list("initial","Misc") + category = list("initial","Misc","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_SERVICE /datum/design/recorder name = "Universal Recorder" @@ -220,10 +227,10 @@ /datum/design/packageWrap name = "Package Wrapping" id = "packagewrap" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 200, MAT_GLASS = 200) build_path = /obj/item/stack/packageWrap - category = list("initial", "Misc") + category = list("initial", "Misc","Equipment") maxstack = 30 /datum/design/holodisk @@ -248,4 +255,4 @@ build_type = AUTOLATHE materials = list(MAT_METAL = 300, MAT_GLASS = 150) build_path = /obj/item/key/collar - category = list("initial", "Misc") \ No newline at end of file + category = list("initial", "Misc") diff --git a/code/modules/research/designs/autolathe_desings/autolathe_designs_tools.dm b/code/modules/research/designs/autolathe_desings/autolathe_designs_tools.dm index 0300658a84..c413f546f0 100644 --- a/code/modules/research/designs/autolathe_desings/autolathe_designs_tools.dm +++ b/code/modules/research/designs/autolathe_desings/autolathe_designs_tools.dm @@ -7,18 +7,20 @@ /datum/design/bucket name = "Bucket" id = "bucket" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 200) build_path = /obj/item/reagent_containers/glass/bucket - category = list("initial","Tools") + category = list("initial","Tools","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_SERVICE /datum/design/crowbar name = "Pocket Crowbar" id = "crowbar" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 50) build_path = /obj/item/crowbar - category = list("initial","Tools") + category = list("initial","Tools","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE /datum/design/flashlight name = "Flashlight" @@ -63,10 +65,11 @@ /datum/design/tscanner name = "T-Ray Scanner" id = "tscanner" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 150) build_path = /obj/item/t_scanner - category = list("initial","Tools") + category = list("initial","Tools","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING /datum/design/weldingtool name = "Welding Tool" @@ -74,7 +77,8 @@ build_type = AUTOLATHE materials = list(MAT_METAL = 70, MAT_GLASS = 20) build_path = /obj/item/weldingtool - category = list("initial","Tools") + category = list("initial","Tools","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE /datum/design/mini_weldingtool name = "Emergency Welding Tool" @@ -87,26 +91,28 @@ /datum/design/screwdriver name = "Screwdriver" id = "screwdriver" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 75) build_path = /obj/item/screwdriver - category = list("initial","Tools") - + category = list("initial","Tools","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE /datum/design/wirecutters name = "Wirecutters" id = "wirecutters" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 80) build_path = /obj/item/wirecutters - category = list("initial","Tools") + category = list("initial","Tools","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE /datum/design/wrench name = "Wrench" id = "wrench" - build_type = AUTOLATHE + build_type = AUTOLATHE | PROTOLATHE materials = list(MAT_METAL = 150) build_path = /obj/item/wrench - category = list("initial","Tools") + category = list("initial","Tools","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE /datum/design/welding_helmet name = "Welding Helmet" @@ -122,8 +128,9 @@ build_type = AUTOLATHE materials = list(MAT_METAL = 10, MAT_GLASS = 5) build_path = /obj/item/stack/cable_coil/random - category = list("initial","Tools") + category = list("initial","Tools","Tool Designs") maxstack = 30 + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE /datum/design/toolbox name = "Toolbox" diff --git a/code/modules/research/designs/bluespace_designs.dm b/code/modules/research/designs/bluespace_designs.dm index 064e672d37..84fe526cd8 100644 --- a/code/modules/research/designs/bluespace_designs.dm +++ b/code/modules/research/designs/bluespace_designs.dm @@ -53,7 +53,7 @@ materials = list(MAT_DIAMOND = 1500, MAT_PLASMA = 1500) build_path = /obj/item/stack/ore/bluespace_crystal/artificial category = list("Bluespace Designs") - departmental_flags = DEPARTMENTAL_FLAG_SCIENCE + departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING /datum/design/telesci_gps name = "GPS Device" diff --git a/code/modules/research/designs/electronics_designs.dm b/code/modules/research/designs/electronics_designs.dm index f9af852eba..1525c6659e 100644 --- a/code/modules/research/designs/electronics_designs.dm +++ b/code/modules/research/designs/electronics_designs.dm @@ -23,6 +23,16 @@ category = list("Electronics") departmental_flags = DEPARTMENTAL_FLAG_ALL +/datum/design/ai_cam_upgrade + name = "AI Surveillance Software Update" + desc = "A software package that will allow an artificial intelligence to 'hear' from its cameras via lip reading." + id = "ai_cam_upgrade" + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_GLASS = 5000, MAT_GOLD = 15000, MAT_SILVER = 15000, MAT_DIAMOND = 20000, MAT_PLASMA = 10000) + build_path = /obj/item/surveillance_upgrade + category = list("Electronics") + departmental_flags = DEPARTMENTAL_FLAG_SCIENCE + /////////////////////////////////// //////////Nanite Devices/////////// /////////////////////////////////// diff --git a/code/modules/research/designs/medical_designs.dm b/code/modules/research/designs/medical_designs.dm index cd40f7aac3..4a34ec181d 100644 --- a/code/modules/research/designs/medical_designs.dm +++ b/code/modules/research/designs/medical_designs.dm @@ -162,16 +162,6 @@ category = list("Medical Designs") departmental_flags = DEPARTMENTAL_FLAG_MEDICAL -/datum/design/holobarrier_med - name = "PENLITE holobarrier projector" - desc = "PENLITE holobarriers, a device that halts individuals with malicious diseases." - build_type = PROTOLATHE - build_path = /obj/item/holosign_creator/medical - materials = list(MAT_METAL = 500, MAT_GLASS = 500, MAT_SILVER = 100) //a hint of silver since it can troll 2 antags (bad viros and sentient disease) - id = "holobarrier_med" - category = list("Medical Designs") - departmental_flags = DEPARTMENTAL_FLAG_MEDICAL - /datum/design/genescanner name = "Genetic Sequence Analyzer" desc = "A handy hand-held analyzers for quickly determining mutations and collecting the full sequence." @@ -192,6 +182,16 @@ category = list("Medical Designs") departmental_flags = DEPARTMENTAL_FLAG_MEDICAL +/datum/design/medspray + name = "Medical Spray" + desc = "A medical spray bottle, designed for precision application, with an unscrewable cap." + id = "medspray" + build_path = /obj/item/reagent_containers/medspray + build_type = PROTOLATHE + materials = list(MAT_METAL = 2500, MAT_GLASS = 500) + category = list("Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + /datum/design/medicalkit name = "Empty Medkit" desc = "A plastic medical kit for storging medical items." @@ -227,7 +227,7 @@ desc = "Produce additional disks for storing genetic data." id = "cloning_disk" build_type = PROTOLATHE - materials = list(MAT_METAL = 300, MAT_GLASS = 100, MAT_SILVER=50) + materials = list(MAT_METAL = 300, MAT_GLASS = 100, MAT_SILVER = 50) build_path = /obj/item/disk/data category = list("Medical Designs") departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE @@ -248,6 +248,7 @@ /datum/design/defibrillator name = "Defibrillator" + desc = "A portable defibrillator, used for resuscitating recently deceased crew." id = "defibrillator" build_type = PROTOLATHE build_path = /obj/item/defibrillator @@ -267,10 +268,10 @@ /datum/design/defib_heal name = "Defibrillator Healing disk" - desc = "An upgrade which increases the healing power of the defibrillator" + desc = "An upgrade which increases the healing power of the defibrillator." id = "defib_heal" build_type = PROTOLATHE - materials = list(MAT_METAL=16000, MAT_GLASS = 18000, MAT_GOLD = 6000, MAT_SILVER = 6000) + materials = list(MAT_METAL = 16000, MAT_GLASS = 18000, MAT_GOLD = 6000, MAT_SILVER = 6000) build_path = /obj/item/disk/medical/defib_heal construction_time = 10 category = list("Misc") @@ -278,10 +279,10 @@ /datum/design/defib_shock name = "Defibrillator Anti-Shock Disk" - desc = "A safety upgrade that guarantees only the patient will get shocked" + desc = "A safety upgrade that guarantees only the patient will get shocked." id = "defib_shock" build_type = PROTOLATHE - materials = list(MAT_METAL=16000, MAT_GLASS = 18000, MAT_GOLD = 6000, MAT_SILVER = 6000) + materials = list(MAT_METAL = 16000, MAT_GLASS = 18000, MAT_GOLD = 6000, MAT_SILVER = 6000) build_path = /obj/item/disk/medical/defib_shock construction_time = 10 category = list("Misc") @@ -289,10 +290,10 @@ /datum/design/defib_decay name = "Defibrillator Body-Decay Extender Disk" - desc = "An upgrade allowing the defibrillator to work on more decayed bodies" + desc = "An upgrade allowing the defibrillator to work on more decayed bodies." id = "defib_decay" build_type = PROTOLATHE - materials = list(MAT_METAL=16000, MAT_GLASS = 18000, MAT_GOLD = 16000, MAT_SILVER = 6000, MAT_TITANIUM = 2000) + materials = list(MAT_METAL = 16000, MAT_GLASS = 18000, MAT_GOLD = 16000, MAT_SILVER = 6000, MAT_TITANIUM = 2000) build_path = /obj/item/disk/medical/defib_decay construction_time = 10 category = list("Misc") @@ -300,15 +301,23 @@ /datum/design/defib_speed name = "Defibrillator Fast Charge Disk" - desc = "An upgrade to the defibrillator capacitors, which let it charge faster" + desc = "An upgrade to the defibrillator's capacitors, which lets it charge faster." id = "defib_speed" build_type = PROTOLATHE build_path = /obj/item/disk/medical/defib_speed - materials = list(MAT_METAL=16000, MAT_GLASS = 8000, MAT_GOLD = 26000, MAT_SILVER = 26000) + materials = list(MAT_METAL = 16000, MAT_GLASS = 8000, MAT_GOLD = 26000, MAT_SILVER = 26000) construction_time = 10 category = list("Misc") departmental_flags = DEPARTMENTAL_FLAG_MEDICAL +/datum/design/defibrillator_compact + name = "Compact Defibrillator" + desc = "A compact defibrillator that can be worn on a belt." + id = "defibrillator_compact" + build_type = PROTOLATHE + build_path = /obj/item/defibrillator/compact + materials = list(MAT_METAL = 16000, MAT_GLASS = 8000, MAT_SILVER = 6000, MAT_GOLD = 3000) + ///////////////////////////////////////// //////////Cybernetic Implants//////////// ///////////////////////////////////////// @@ -605,115 +614,6 @@ category = list("Medical Designs") departmental_flags = DEPARTMENTAL_FLAG_MEDICAL -///////////////////// -//Adv Surgery Tools// -///////////////////// - -/datum/design/drapes - name = "Plastic Drapes" - desc = "A large surgery drape made of plastic." - id = "drapes" - build_type = PROTOLATHE - materials = list(MAT_PLASTIC = 2500) - build_path = /obj/item/surgical_drapes - category = list("Medical Designs") - departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE - -/datum/design/retractor_adv - name = "Advanced Retractor" - desc = "An almagation of rods and gears, able to function as both a surgical clamp and retractor. " - id = "retractor_adv" - build_type = PROTOLATHE - materials = list(MAT_METAL = 500, MAT_GLASS = 500, MAT_SILVER = 1500, MAT_GOLD = 1000) - build_path = /obj/item/retractor/advanced - category = list("Medical Designs") - departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE - -/datum/design/surgicaldrill_adv - name = "Surgical Laser Drill" - desc = "It projects a high power laser used for medical applications." - id = "surgicaldrill_adv" - build_type = PROTOLATHE - materials = list(MAT_METAL = 2500, MAT_GLASS = 2500, MAT_SILVER = 6000, MAT_GOLD = 5500, MAT_DIAMOND = 3500) - build_path = /obj/item/surgicaldrill/advanced - category = list("Medical Designs") - departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE - -/datum/design/scalpel_adv - name = "Laser Scalpel" - desc = "An advanced scalpel which uses laser technology to cut." - id = "scalpel_adv" - build_type = PROTOLATHE - materials = list(MAT_METAL = 1500, MAT_GLASS = 1500, MAT_SILVER = 4000, MAT_GOLD = 2500) - build_path = /obj/item/scalpel/advanced - category = list("Medical Designs") - departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE - - -///////////////////////////////////////// -//////////Alien Surgery Tools//////////// -///////////////////////////////////////// - -/datum/design/alienscalpel - name = "Alien Scalpel" - desc = "An advanced scalpel obtained through Abductor technology." - id = "alien_scalpel" - build_path = /obj/item/scalpel/alien - build_type = PROTOLATHE - materials = list(MAT_METAL = 2000, MAT_SILVER = 1500, MAT_PLASMA = 500, MAT_TITANIUM = 1500) - category = list("Medical Designs") - departmental_flags = DEPARTMENTAL_FLAG_MEDICAL - -/datum/design/alienhemostat - name = "Alien Hemostat" - desc = "An advanced hemostat obtained through Abductor technology." - id = "alien_hemostat" - build_path = /obj/item/hemostat/alien - build_type = PROTOLATHE - materials = list(MAT_METAL = 2000, MAT_SILVER = 1500, MAT_PLASMA = 500, MAT_TITANIUM = 1500) - category = list("Medical Designs") - departmental_flags = DEPARTMENTAL_FLAG_MEDICAL - -/datum/design/alienretractor - name = "Alien Retractor" - desc = "An advanced retractor obtained through Abductor technology." - id = "alien_retractor" - build_path = /obj/item/retractor/alien - build_type = PROTOLATHE - materials = list(MAT_METAL = 2000, MAT_SILVER = 1500, MAT_PLASMA = 500, MAT_TITANIUM = 1500) - category = list("Medical Designs") - departmental_flags = DEPARTMENTAL_FLAG_MEDICAL - -/datum/design/aliensaw - name = "Alien Circular Saw" - desc = "An advanced surgical saw obtained through Abductor technology." - id = "alien_saw" - build_path = /obj/item/circular_saw/alien - build_type = PROTOLATHE - materials = list(MAT_METAL = 10000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 1500) - category = list("Medical Designs") - departmental_flags = DEPARTMENTAL_FLAG_MEDICAL - -/datum/design/aliendrill - name = "Alien Drill" - desc = "An advanced drill obtained through Abductor technology." - id = "alien_drill" - build_path = /obj/item/surgicaldrill/alien - build_type = PROTOLATHE - materials = list(MAT_METAL = 10000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 1500) - category = list("Medical Designs") - departmental_flags = DEPARTMENTAL_FLAG_MEDICAL - -/datum/design/aliencautery - name = "Alien Cautery" - desc = "An advanced cautery obtained through Abductor technology." - id = "alien_cautery" - build_path = /obj/item/cautery/alien - build_type = PROTOLATHE - materials = list(MAT_METAL = 2000, MAT_SILVER = 1500, MAT_PLASMA = 500, MAT_TITANIUM = 1500) - category = list("Medical Designs") - departmental_flags = DEPARTMENTAL_FLAG_MEDICAL - /datum/design/cybernetic_ears name = "Cybernetic Ears" desc = "A pair of cybernetic ears." diff --git a/code/modules/research/designs/misc_designs.dm b/code/modules/research/designs/misc_designs.dm index b18db566af..54a7af8f8c 100644 --- a/code/modules/research/designs/misc_designs.dm +++ b/code/modules/research/designs/misc_designs.dm @@ -257,7 +257,7 @@ departmental_flags = DEPARTMENTAL_FLAG_SERVICE /datum/design/roastingstick - name = "Advanced roasting stick" + name = "Advanced Roasting Stick" desc = "A roasting stick for cooking sausages in exotic ovens." id = "roastingstick" build_type = PROTOLATHE @@ -267,7 +267,7 @@ departmental_flags = DEPARTMENTAL_FLAG_SERVICE /datum/design/locator - name = "Bluespace locator" + name = "Bluespace Locator" desc = "Used to track portable teleportation beacons and targets with embedded tracking implants." id = "locator" build_type = PROTOLATHE @@ -276,6 +276,15 @@ category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_SECURITY +/datum/design/donksoft_refill + name = "Donksoft Toy Vendor Refill" + desc = "A refill canister for Donksoft Toy Vendors." + id = "donksoft_refill" + build_type = PROTOLATHE + materials = list(MAT_METAL = 25000, MAT_GLASS = 15000, MAT_PLASMA = 20000, MAT_GOLD = 10000, MAT_SILVER = 10000) + build_path = /obj/item/vending_refill/donksoft + category = list("Equipment") + ///////////////////////////////////////// ////////////Janitor Designs////////////// ///////////////////////////////////////// @@ -320,8 +329,28 @@ category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_SERVICE +/datum/design/spraybottle + name = "Spray Bottle" + desc = "A spray bottle, with an unscrewable top." + id = "spraybottle" + build_type = PROTOLATHE + materials = list(MAT_METAL = 3000, MAT_GLASS = 200) + build_path = /obj/item/reagent_containers/spray + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_SERVICE + +/datum/design/beartrap + name = "Bear Trap" + desc = "A trap used to catch space bears and other legged creatures." + id = "beartrap" + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_TITANIUM = 1000) + build_path = /obj/item/restraints/legcuffs/beartrap + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_SERVICE + ///////////////////////////////////////// -////////////Holosign Designs////////////// +////////////Holosign Designs///////////// ///////////////////////////////////////// /datum/design/holosign @@ -384,141 +413,20 @@ category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING +/datum/design/holobarrier_med + name = "PENLITE holobarrier projector" + desc = "PENLITE holobarriers, a device that halts individuals with malicious diseases." + build_type = PROTOLATHE + build_path = /obj/item/holosign_creator/medical + materials = list(MAT_METAL = 500, MAT_GLASS = 500, MAT_SILVER = 100) //a hint of silver since it can troll 2 antags (bad viros and sentient disease) + id = "holobarrier_med" + category = list("Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL /////////////////////////////// ////////////Tools////////////// /////////////////////////////// -/datum/design/rcd_upgrade/frames - name = "RCD frames designs upgrade" - desc = "Adds the computer frame and machine frame to the RCD." - id = "rcd_upgrade_frames" - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_GLASS = 2500, MAT_SILVER = 1500, MAT_TITANIUM = 2000) - build_path = /obj/item/rcd_upgrade/frames - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - -/datum/design/rcd_upgrade/simple_circuits - name = "RCD simple circuits designs upgrade" - desc = "Adds the simple circuits to the RCD." - id = "rcd_upgrade_simple_circuits" - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_GLASS = 2500, MAT_SILVER = 1500, MAT_TITANIUM = 2000) - build_path = /obj/item/rcd_upgrade/simple_circuits - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - -/datum/design/exwelder - name = "Experimental Welding Tool" - desc = "An experimental welder capable of self-fuel generation." - id = "exwelder" - build_type = PROTOLATHE - materials = list(MAT_METAL = 1000, MAT_GLASS = 500, MAT_PLASMA = 1500, MAT_URANIUM = 200) - build_path = /obj/item/weldingtool/experimental - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING - -/datum/design/handdrill - name = "Hand Drill" - desc = "A small electric hand drill with an interchangeable screwdriver and bolt bit" - id = "handdrill" - build_type = PROTOLATHE - materials = list(MAT_METAL = 3500, MAT_SILVER = 1500, MAT_TITANIUM = 2500) - build_path = /obj/item/screwdriver/power - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - -/datum/design/jawsoflife - name = "Jaws of Life" - desc = "A small, compact Jaws of Life with an interchangeable pry jaws and cutting jaws" - id = "jawsoflife" // added one more requirment since the Jaws of Life are a bit OP - build_path = /obj/item/crowbar/power - build_type = PROTOLATHE - materials = list(MAT_METAL = 4500, MAT_SILVER = 2500, MAT_TITANIUM = 3500) - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - -/datum/design/rcd_loaded - name = "Rapid Construction Device" - desc = "A tool that can construct and deconstruct walls, airlocks and floors on the fly." - id = "rcd_loaded" - build_type = PROTOLATHE - materials = list(MAT_METAL = MINERAL_MATERIAL_AMOUNT, MAT_GLASS = MINERAL_MATERIAL_AMOUNT) // costs more than what it did in the autolathe, this one comes loaded. - build_path = /obj/item/construction/rcd/loaded - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - -/datum/design/rpd - name = "Rapid Pipe Dispenser" - desc = "A tool that can construct and deconstruct pipes on the fly." - id = "rpd" - build_type = PROTOLATHE - materials = list(MAT_METAL = 75000, MAT_GLASS = 37500) - build_path = /obj/item/pipe_dispenser - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - -/datum/design/alienwrench - name = "Alien Wrench" - desc = "An advanced wrench obtained through Abductor technology." - id = "alien_wrench" - build_path = /obj/item/wrench/abductor - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - -/datum/design/alienwirecutters - name = "Alien Wirecutters" - desc = "Advanced wirecutters obtained through Abductor technology." - id = "alien_wirecutters" - build_path = /obj/item/wirecutters/abductor - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - -/datum/design/alienscrewdriver - name = "Alien Screwdriver" - desc = "An advanced screwdriver obtained through Abductor technology." - id = "alien_screwdriver" - build_path = /obj/item/screwdriver/abductor - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - -/datum/design/aliencrowbar - name = "Alien Crowbar" - desc = "An advanced crowbar obtained through Abductor technology." - id = "alien_crowbar" - build_path = /obj/item/crowbar/abductor - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - -/datum/design/alienwelder - name = "Alien Welding Tool" - desc = "An advanced welding tool obtained through Abductor technology." - id = "alien_welder" - build_path = /obj/item/weldingtool/abductor - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 5000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - -/datum/design/alienmultitool - name = "Alien Multitool" - desc = "An advanced multitool obtained through Abductor technology." - id = "alien_multitool" - build_path = /obj/item/multitool/abductor - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 5000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) - category = list("Equipment") - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - /datum/design/quantum_keycard name = "Quantum Keycard" desc = "Allows for the construction of a quantum keycard." @@ -550,7 +458,7 @@ departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE ///////////////////////////////////////// -////////////Armour/////////////////////// +/////////////////Armour////////////////// ///////////////////////////////////////// /datum/design/reactive_armour @@ -564,7 +472,71 @@ departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING ///////////////////////////////////////// -////////////Meteor/////////////////////// +/////////////Security//////////////////// +///////////////////////////////////////// + +/datum/design/seclite + name = "Seclite" + desc = "A robust flashlight used by security." + id = "seclite" + build_type = PROTOLATHE + materials = list(MAT_METAL = 2500) + build_path = /obj/item/flashlight/seclite + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_SECURITY + +/datum/design/detective_scanner + name = "Forensic Scanner" + desc = "Used to remotely scan objects and biomass for DNA and fingerprints. Can print a report of the findings." + id = "detective_scanner" + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_GLASS = 1000, MAT_GOLD = 2500, MAT_SILVER = 2000) + build_path = /obj/item/detective_scanner + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_SECURITY + +/datum/design/pepperspray + name = "Pepper Spray" + desc = "Manufactured by UhangInc, used to blind and down an opponent quickly. Printed pepper sprays do not contain reagents." + id = "pepperspray" + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_GLASS = 1000) + build_path = /obj/item/reagent_containers/spray/pepper/empty + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_SECURITY + +/datum/design/bola_energy + name = "Energy Bola" + desc = "A specialized hard-light bola designed to ensnare fleeing criminals and aid in arrests." + id = "bola_energy" + build_type = PROTOLATHE + materials = list(MAT_SILVER = 500, MAT_PLASMA = 500, MAT_TITANIUM = 500) + build_path = /obj/item/restraints/legcuffs/bola/energy + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_SECURITY + +/datum/design/zipties + name = "Zipties" + desc = "Plastic, disposable zipties that can be used to restrain temporarily but are destroyed after use." + id = "zipties" + build_type = PROTOLATHE + materials = list(MAT_PLASTIC = 250) + build_path = /obj/item/restraints/handcuffs/cable/zipties + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_SECURITY + +/datum/design/evidencebag + name = "Evidence Bag" + desc = "An empty evidence bag." + id = "evidencebag" + build_type = PROTOLATHE + materials = list(MAT_PLASTIC = 100) + build_path = /obj/item/evidencebag + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_SECURITY + +///////////////////////////////////////// +/////////////////Meteors///////////////// ///////////////////////////////////////// /datum/design/meteor_defence diff --git a/code/modules/research/designs/smelting_designs.dm b/code/modules/research/designs/smelting_designs.dm index c2cbb5685e..64dcb5f754 100644 --- a/code/modules/research/designs/smelting_designs.dm +++ b/code/modules/research/designs/smelting_designs.dm @@ -68,4 +68,4 @@ materials = list(MAT_METAL = 4000, MAT_PLASMA = 4000) build_path = /obj/item/stack/sheet/mineral/abductor category = list("Stock Parts") - departmental_flags = DEPARTMENTAL_FLAG_CARGO | DEPARTMENTAL_FLAG_SCIENCE + departmental_flags = DEPARTMENTAL_FLAG_CARGO | DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING diff --git a/code/modules/research/designs/tool_designs.dm b/code/modules/research/designs/tool_designs.dm new file mode 100644 index 0000000000..300fe6c68a --- /dev/null +++ b/code/modules/research/designs/tool_designs.dm @@ -0,0 +1,246 @@ +///////////////////////////////////////// +/////////////////Tools/////////////////// +///////////////////////////////////////// + +/datum/design/rcd_upgrade/frames + name = "RCD frames designs upgrade" + desc = "Adds the computer frame and machine frame to the RCD." + id = "rcd_upgrade_frames" + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_GLASS = 2500, MAT_SILVER = 1500, MAT_TITANIUM = 2000) + build_path = /obj/item/rcd_upgrade/frames + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + +/datum/design/rcd_upgrade/simple_circuits + name = "RCD simple circuits designs upgrade" + desc = "Adds the simple circuits to the RCD." + id = "rcd_upgrade_simple_circuits" + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_GLASS = 2500, MAT_SILVER = 1500, MAT_TITANIUM = 2000) + build_path = /obj/item/rcd_upgrade/simple_circuits + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + +/datum/design/rcd_loaded + name = "Rapid Construction Device" + desc = "A tool that can construct and deconstruct walls, airlocks and floors on the fly." + id = "rcd_loaded" + build_type = PROTOLATHE + materials = list(MAT_METAL = MINERAL_MATERIAL_AMOUNT, MAT_GLASS = MINERAL_MATERIAL_AMOUNT) // costs more than what it did in the autolathe, this one comes loaded. + build_path = /obj/item/construction/rcd/loaded + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + +/datum/design/rpd + name = "Rapid Pipe Dispenser" + desc = "A tool that can construct and deconstruct pipes on the fly." + id = "rpd" + build_type = PROTOLATHE + materials = list(MAT_METAL = 75000, MAT_GLASS = 37500) + build_path = /obj/item/pipe_dispenser + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + +/datum/design/handdrill + name = "Hand Drill" + desc = "A small electric hand drill with an interchangeable screwdriver and bolt bit" + id = "handdrill" + build_type = PROTOLATHE + materials = list(MAT_METAL = 3500, MAT_SILVER = 1500, MAT_TITANIUM = 2500) + build_path = /obj/item/screwdriver/power + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + +/datum/design/jawsoflife + name = "Jaws of Life" + desc = "A small, compact Jaws of Life with an interchangeable pry jaws and cutting jaws" + id = "jawsoflife" // added one more requirment since the Jaws of Life are a bit OP + build_path = /obj/item/crowbar/power + build_type = PROTOLATHE + materials = list(MAT_METAL = 4500, MAT_SILVER = 2500, MAT_TITANIUM = 3500) + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + +/datum/design/exwelder + name = "Experimental Welding Tool" + desc = "An experimental welder capable of self-fuel generation." + id = "exwelder" + build_type = PROTOLATHE + materials = list(MAT_METAL = 1000, MAT_GLASS = 500, MAT_PLASMA = 1500, MAT_URANIUM = 200) + build_path = /obj/item/weldingtool/experimental + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING + +///////////////////////////////////////// +//////////////Alien Tools//////////////// +///////////////////////////////////////// + +/datum/design/alienwrench + name = "Alien Wrench" + desc = "An advanced wrench obtained through Abductor technology." + id = "alien_wrench" + build_path = /obj/item/wrench/abductor + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + +/datum/design/alienwirecutters + name = "Alien Wirecutters" + desc = "Advanced wirecutters obtained through Abductor technology." + id = "alien_wirecutters" + build_path = /obj/item/wirecutters/abductor + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + +/datum/design/alienscrewdriver + name = "Alien Screwdriver" + desc = "An advanced screwdriver obtained through Abductor technology." + id = "alien_screwdriver" + build_path = /obj/item/screwdriver/abductor + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + +/datum/design/aliencrowbar + name = "Alien Crowbar" + desc = "An advanced crowbar obtained through Abductor technology." + id = "alien_crowbar" + build_path = /obj/item/crowbar/abductor + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + +/datum/design/alienwelder + name = "Alien Welding Tool" + desc = "An advanced welding tool obtained through Abductor technology." + id = "alien_welder" + build_path = /obj/item/weldingtool/abductor + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 5000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + +/datum/design/alienmultitool + name = "Alien Multitool" + desc = "An advanced multitool obtained through Abductor technology." + id = "alien_multitool" + build_path = /obj/item/multitool/abductor + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 5000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING + +///////////////////////////////////////// +/////////Alien Surgical Tools//////////// +///////////////////////////////////////// + +/datum/design/alienscalpel + name = "Alien Scalpel" + desc = "An advanced scalpel obtained through Abductor technology." + id = "alien_scalpel" + build_path = /obj/item/scalpel/alien + build_type = PROTOLATHE + materials = list(MAT_METAL = 2000, MAT_SILVER = 1500, MAT_PLASMA = 500, MAT_TITANIUM = 1500) + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + +/datum/design/alienhemostat + name = "Alien Hemostat" + desc = "An advanced hemostat obtained through Abductor technology." + id = "alien_hemostat" + build_path = /obj/item/hemostat/alien + build_type = PROTOLATHE + materials = list(MAT_METAL = 2000, MAT_SILVER = 1500, MAT_PLASMA = 500, MAT_TITANIUM = 1500) + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + +/datum/design/alienretractor + name = "Alien Retractor" + desc = "An advanced retractor obtained through Abductor technology." + id = "alien_retractor" + build_path = /obj/item/retractor/alien + build_type = PROTOLATHE + materials = list(MAT_METAL = 2000, MAT_SILVER = 1500, MAT_PLASMA = 500, MAT_TITANIUM = 1500) + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + +/datum/design/aliensaw + name = "Alien Circular Saw" + desc = "An advanced surgical saw obtained through Abductor technology." + id = "alien_saw" + build_path = /obj/item/circular_saw/alien + build_type = PROTOLATHE + materials = list(MAT_METAL = 10000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 1500) + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + +/datum/design/aliendrill + name = "Alien Drill" + desc = "An advanced drill obtained through Abductor technology." + id = "alien_drill" + build_path = /obj/item/surgicaldrill/alien + build_type = PROTOLATHE + materials = list(MAT_METAL = 10000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 1500) + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + +/datum/design/aliencautery + name = "Alien Cautery" + desc = "An advanced cautery obtained through Abductor technology." + id = "alien_cautery" + build_path = /obj/item/cautery/alien + build_type = PROTOLATHE + materials = list(MAT_METAL = 2000, MAT_SILVER = 1500, MAT_PLASMA = 500, MAT_TITANIUM = 1500) + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + + +////////////////////// +//Adv. Surgery Tools// +////////////////////// + +/datum/design/drapes + name = "Plastic Drapes" + desc = "A large surgery drape made of plastic." + id = "drapes" + build_type = PROTOLATHE + materials = list(MAT_PLASTIC = 2500) + build_path = /obj/item/surgical_drapes + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE + +/datum/design/retractor_adv + name = "Advanced Retractor" + desc = "An almagation of rods and gears, able to function as both a surgical clamp and retractor. " + id = "retractor_adv" + build_type = PROTOLATHE + materials = list(MAT_METAL = 500, MAT_GLASS = 500, MAT_SILVER = 1500, MAT_GOLD = 1000) + build_path = /obj/item/retractor/advanced + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE + +/datum/design/surgicaldrill_adv + name = "Surgical Laser Drill" + desc = "It projects a high power laser used for medical applications." + id = "surgicaldrill_adv" + build_type = PROTOLATHE + materials = list(MAT_METAL = 2500, MAT_GLASS = 2500, MAT_SILVER = 6000, MAT_GOLD = 5500, MAT_DIAMOND = 3500) + build_path = /obj/item/surgicaldrill/advanced + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE + +/datum/design/scalpel_adv + name = "Laser Scalpel" + desc = "An advanced scalpel which uses laser technology to cut." + id = "scalpel_adv" + build_type = PROTOLATHE + materials = list(MAT_METAL = 1500, MAT_GLASS = 1500, MAT_SILVER = 4000, MAT_GOLD = 2500) + build_path = /obj/item/scalpel/advanced + category = list("Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE diff --git a/code/modules/research/machinery/protolathe.dm b/code/modules/research/machinery/protolathe.dm index 2467def64e..684f27ccad 100644 --- a/code/modules/research/machinery/protolathe.dm +++ b/code/modules/research/machinery/protolathe.dm @@ -9,6 +9,7 @@ "Bluespace Designs", "Stock Parts", "Equipment", + "Tool Designs", "Mining Designs", "Electronics", "Weapons", @@ -21,4 +22,4 @@ /obj/machinery/rnd/production/protolathe/disconnect_console() linked_console.linked_lathe = null - ..() \ No newline at end of file + ..() diff --git a/code/modules/research/machinery/techfab.dm b/code/modules/research/machinery/techfab.dm index 0e809fa0e1..885f27c2cb 100644 --- a/code/modules/research/machinery/techfab.dm +++ b/code/modules/research/machinery/techfab.dm @@ -9,6 +9,7 @@ "Bluespace Designs", "Stock Parts", "Equipment", + "Tool Designs", "Mining Designs", "Electronics", "Weapons", @@ -31,4 +32,4 @@ production_animation = "protolathe_n" requires_console = FALSE consoleless_interface = TRUE - allowed_buildtypes = PROTOLATHE | IMPRINTER \ No newline at end of file + allowed_buildtypes = PROTOLATHE | IMPRINTER diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm index e6e0821159..4313bb2dc8 100644 --- a/code/modules/research/techweb/all_nodes.dm +++ b/code/modules/research/techweb/all_nodes.dm @@ -8,9 +8,9 @@ display_name = "Basic Research Technology" description = "NT default research technologies." // Default research tech, prevents bricking - design_ids = list("basic_matter_bin", "basic_cell", "basic_scanning", "basic_capacitor", "basic_micro_laser", "micro_mani", + design_ids = list("basic_matter_bin", "basic_cell", "basic_scanning", "basic_capacitor", "basic_micro_laser", "micro_mani", "desttagger", "handlabel", "packagewrap", "destructive_analyzer", "circuit_imprinter", "experimentor", "rdconsole", "design_disk", "tech_disk", "rdserver", "rdservercontrol", "mechfab", - "space_heater", "xlarge_beaker", "sec_beanbag", "sec_rshot", "sec_bshot", "sec_slug", "sec_Islug", "sec_dart", "sec_38", "sec_38lethal", + "space_heater", "beaker", "large_beaker", "bucket", "xlarge_beaker", "sec_beanbag", "sec_rshot", "sec_bshot", "sec_slug", "sec_Islug", "sec_dart", "sec_38", "sec_38lethal", "rglass","plasteel","plastitanium","plasmaglass","plasmareinforcedglass","titaniumglass","plastitaniumglass") /datum/techweb_node/mmi @@ -71,7 +71,7 @@ display_name = "Biological Technology" description = "What makes us tick." //the MC, silly! prereq_ids = list("base") - design_ids = list("medicalkit", "chem_heater", "chem_master", "chem_dispenser", "sleeper", "vr_sleeper", "pandemic", "defibmount", "operating", "soda_dispenser", "beer_dispenser", "healthanalyzer", "blood_bag", "bloodbankgen", "telescopiciv","genescanner") + design_ids = list("medicalkit", "chem_heater", "chem_master", "chem_dispenser", "sleeper", "vr_sleeper", "pandemic", "defibrillator", "defibmount", "operating", "soda_dispenser", "beer_dispenser", "healthanalyzer", "blood_bag", "bloodbankgen", "telescopiciv", "medspray","genescanner") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) export_price = 5000 @@ -80,7 +80,7 @@ display_name = "Advanced Biotechnology" description = "Advanced Biotechnology" prereq_ids = list("biotech") - design_ids = list("piercesyringe", "crewpinpointer", "smoke_machine", "plasmarefiller", "limbgrower", "defibrillator", "meta_beaker", "healthanalyzer_advanced","harvester","holobarrier_med","smartdartgun","medicinalsmartdart", "pHmeter") + design_ids = list("piercesyringe", "crewpinpointer", "smoke_machine", "plasmarefiller", "limbgrower", "meta_beaker", "healthanalyzer_advanced", "harvester", "holobarrier_med", "detective_scanner", "defibrillator_compact", "smartdartgun", "medicinalsmartdart", "pHmeter") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) export_price = 5000 @@ -595,6 +595,15 @@ export_price = 5000 ////////////////////////Tools//////////////////////// +/datum/techweb_node/basic_tools + id = "basic_tools" + display_name = "Basic Tools" + description = "Basic mechanical, electronic, surgical and botanical tools." + prereq_ids = list("base") + design_ids = list("screwdriver", "wrench", "wirecutters", "crowbar", "multitool", "welding_tool", "tscanner", "analyzer", "cable_coil", "pipe_painter", "airlock_painter", "scalpel", "circular_saw", "surgicaldrill", "retractor", "cautery", "hemostat", "cultivator", "plant_analyzer", "shovel", "spade", "hatchet") + research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 500) + export_price = 5000 + /datum/techweb_node/basic_mining id = "basic_mining" display_name = "Mining Technology" @@ -618,7 +627,7 @@ display_name = "Advanced Sanitation Technology" description = "Clean things better, faster, stronger, and harder!" prereq_ids = list("adv_engi") - design_ids = list("advmop", "buffer", "light_replacer") + design_ids = list("advmop", "buffer", "light_replacer", "spraybottle", "beartrap") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1750) // No longer has its bag export_price = 5000 @@ -640,6 +649,15 @@ research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2750) export_price = 5000 +/datum/techweb_node/sec_basic + id = "sec_basic" + display_name = "Basic Security Equipment" + description = "Standard equipment used by security." + design_ids = list("seclite", "pepperspray", "bola_energy", "zipties", "evidencebag") + prereq_ids = list("base") + research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 750) + export_price = 5000 + /////////////////////////weaponry tech///////////////////////// /datum/techweb_node/weaponry id = "weaponry" @@ -1081,7 +1099,7 @@ display_name = "Illegal Technology" description = "Dangerous research used to create dangerous objects." prereq_ids = list("adv_engi", "adv_weaponry", "explosive_weapons") - design_ids = list("decloner", "borg_syndicate_module", "suppressor", "largecrossbow", "donksofttoyvendor", "syndiesleeper") + design_ids = list("decloner", "borg_syndicate_module", "ai_cam_upgrade", "suppressor", "largecrossbow", "donksofttoyvendor", "donksoft_refill", "syndiesleeper") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 10000) export_price = 5000 hidden = TRUE diff --git a/html/changelogs/AutoChangeLog-pr-10454.yml b/html/changelogs/AutoChangeLog-pr-10454.yml new file mode 100644 index 0000000000..d89603959e --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-10454.yml @@ -0,0 +1,4 @@ +author: "Commandersand" +delete-after: True +changes: + - bugfix: "fixed some clothnig sprites" diff --git a/html/changelogs/AutoChangeLog-pr-10530.yml b/html/changelogs/AutoChangeLog-pr-10530.yml new file mode 100644 index 0000000000..16cc66adb9 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-10530.yml @@ -0,0 +1,4 @@ +author: "kappa-sama" +delete-after: True +changes: + - code_imp: "modular citadel loses some files" diff --git a/html/changelogs/AutoChangeLog-pr-10531.yml b/html/changelogs/AutoChangeLog-pr-10531.yml new file mode 100644 index 0000000000..6c1125a687 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-10531.yml @@ -0,0 +1,6 @@ +author: "Trilbyspaceclone" +delete-after: True +changes: + - rscadd: "Seed packs now have RnD points inside them" + - rscadd: "New tips that reflect the now use seed packs have for Rnd / Chems affect on plants" + - code_imp: "Made the research file look nice rather then an eye harming list" diff --git a/icons/mob/suit_digi.dmi b/icons/mob/suit_digi.dmi index 3b1491f0f6..a9898262a8 100644 Binary files a/icons/mob/suit_digi.dmi and b/icons/mob/suit_digi.dmi differ diff --git a/icons/mob/uniform.dmi b/icons/mob/uniform.dmi index 778b718fe6..7cc6b8e762 100644 Binary files a/icons/mob/uniform.dmi and b/icons/mob/uniform.dmi differ diff --git a/icons/mob/uniform_digi.dmi b/icons/mob/uniform_digi.dmi index 9173a3ceaa..5b5c7ceb6e 100644 Binary files a/icons/mob/uniform_digi.dmi and b/icons/mob/uniform_digi.dmi differ diff --git a/icons/obj/clothing/uniforms.dmi b/icons/obj/clothing/uniforms.dmi index e6474e7899..89f9a6fd93 100644 Binary files a/icons/obj/clothing/uniforms.dmi and b/icons/obj/clothing/uniforms.dmi differ diff --git a/modular_citadel/code/game/objects/effects/spawner/spawners.dm b/modular_citadel/code/game/objects/effects/spawner/spawners.dm deleted file mode 100644 index b6fbeef4c9..0000000000 --- a/modular_citadel/code/game/objects/effects/spawner/spawners.dm +++ /dev/null @@ -1,7 +0,0 @@ -/obj/effect/spawner/lootdrop/keg - name = "random keg spawner" - lootcount = 1 - loot = list(/obj/structure/reagent_dispensers/keg/mead = 5, - /obj/structure/reagent_dispensers/keg/aphro = 2, - /obj/structure/reagent_dispensers/keg/aphro/strong = 2, - /obj/structure/reagent_dispensers/keg/gargle = 1) \ No newline at end of file diff --git a/modular_citadel/code/game/objects/items.dm b/modular_citadel/code/game/objects/items.dm deleted file mode 100644 index dba460414e..0000000000 --- a/modular_citadel/code/game/objects/items.dm +++ /dev/null @@ -1,15 +0,0 @@ -/obj/item - var/list/alternate_screams = list() //REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE - -// lazy for screaming. -/obj/item/clothing/head/xenos - alternate_screams = list('sound/voice/hiss6.ogg') - -/obj/item/clothing/head/cardborg - alternate_screams = list('modular_citadel/sound/voice/scream_silicon.ogg') - -/obj/item/clothing/head/ushanka - alternate_screams = list('sound/voice/human/cyka1.ogg', 'sound/voice/human/cheekibreeki.ogg') - -/obj/item/proc/grenade_prime_react(obj/item/grenade/nade) - return \ No newline at end of file diff --git a/modular_citadel/code/game/objects/items/devices/radio/encryptionkey.dm b/modular_citadel/code/game/objects/items/devices/radio/encryptionkey.dm deleted file mode 100644 index 5e3d7318cf..0000000000 --- a/modular_citadel/code/game/objects/items/devices/radio/encryptionkey.dm +++ /dev/null @@ -1,10 +0,0 @@ -/obj/item/encryptionkey/heads/qm - name = "\proper the quartermaster's encryption key" - desc = "An encryption key for a radio headset. Channels are as follows: :u - supply, :c - command." - icon_state = "hop_cypherkey" - channels = list("Supply" = 1, "Command" = 1) - -/obj/item/encryptionkey/heads/hop - desc = "An encryption key for a radio headset. Channels are as follows: :v - service, :c - command." - channels = list("Service" = 1, "Command" = 1) - diff --git a/modular_citadel/code/game/objects/items/devices/radio/headset.dm b/modular_citadel/code/game/objects/items/devices/radio/headset.dm deleted file mode 100644 index 3d1b36f645..0000000000 --- a/modular_citadel/code/game/objects/items/devices/radio/headset.dm +++ /dev/null @@ -1,10 +0,0 @@ -/obj/item/radio/headset/heads/qm - name = "\proper the quartermaster's headset" - desc = "The headset of the king (or queen) of paperwork.\nChannels are as follows: :u - supply, :c - command." - icon_state = "com_headset" - keyslot = new /obj/item/encryptionkey/heads/qm - -/obj/item/radio/headset/heads/hop - desc = "The headset of the guy who will one day be captain.\nChannels are as follows: :v - service, :c - command." - keyslot = new /obj/item/encryptionkey/heads/hop - diff --git a/modular_citadel/code/game/objects/items/devices/radio/shockcollar.dm b/modular_citadel/code/game/objects/items/devices/radio/shockcollar.dm deleted file mode 100644 index 94bf1ba30a..0000000000 --- a/modular_citadel/code/game/objects/items/devices/radio/shockcollar.dm +++ /dev/null @@ -1,77 +0,0 @@ -/obj/item/electropack/shockcollar - name = "shock collar" - desc = "A reinforced metal collar. It seems to have some form of wiring near the front. Strange.." - icon = 'modular_citadel/icons/obj/clothing/cit_neck.dmi' - alternate_worn_icon = 'modular_citadel/icons/mob/citadel/neck.dmi' - icon_state = "shockcollar" - item_state = "shockcollar" - body_parts_covered = NECK - slot_flags = ITEM_SLOT_NECK | ITEM_SLOT_DENYPOCKET //no more pocket shockers - w_class = WEIGHT_CLASS_SMALL - strip_delay = 60 - equip_delay_other = 60 - materials = list(MAT_METAL=5000, MAT_GLASS=2000) - - var/tagname = null - -/datum/design/electropack/shockcollar - name = "Shockcollar" - id = "shockcollar" - build_type = AUTOLATHE - build_path = /obj/item/electropack/shockcollar - materials = list(MAT_METAL=5000, MAT_GLASS=2000) - category = list("hacked", "Misc") - -/obj/item/electropack/shockcollar/attack_hand(mob/user) - if(loc == user && user.get_item_by_slot(SLOT_NECK)) - to_chat(user, "The collar is fastened tight! You'll need help taking this off!") - return - return ..() - -/obj/item/electropack/shockcollar/receive_signal(datum/signal/signal) - if(!signal || signal.data["code"] != code) - return - - if(isliving(loc) && on) - if(shock_cooldown == TRUE) - return - shock_cooldown = TRUE - addtimer(VARSET_CALLBACK(src, shock_cooldown, FALSE), 100) - var/mob/living/L = loc - step(L, pick(GLOB.cardinals)) - - to_chat(L, "You feel a sharp shock from the collar!") - var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread - s.set_up(3, 1, L) - s.start() - - L.Knockdown(100) - - if(master) - master.receive_signal() - return - -/obj/item/electropack/shockcollar/attackby(obj/item/W, mob/user, params) //moves it here because on_click is being bad - if(istype(W, /obj/item/pen)) - var/t = input(user, "Would you like to change the name on the tag?", "Name your new pet", tagname ? tagname : "Spot") as null|text - if(t) - tagname = copytext(sanitize(t), 1, MAX_NAME_LEN) - name = "[initial(name)] - [tagname]" - else - return ..() - -/obj/item/electropack/shockcollar/ui_interact(mob/user) //on_click calls this - var/dat = {" - -Frequency/Code for shock collar:
-Frequency: -[format_frequency(src.frequency)] -Set
- -Code: -[src.code] -Set
-
"} - user << browse(dat, "window=radio") - onclose(user, "radio") - return diff --git a/modular_citadel/code/game/objects/items/stunsword.dm b/modular_citadel/code/game/objects/items/stunsword.dm deleted file mode 100644 index 7a5398f7d2..0000000000 --- a/modular_citadel/code/game/objects/items/stunsword.dm +++ /dev/null @@ -1,41 +0,0 @@ -/obj/item/melee/baton/stunsword - name = "stunsword" - desc = "not actually sharp, this sword is functionally identical to a stunbaton" - icon = 'modular_citadel/icons/obj/stunsword.dmi' - icon_state = "stunsword" - item_state = "sword" - lefthand_file = 'modular_citadel/icons/mob/inhands/stunsword_left.dmi' - righthand_file = 'modular_citadel/icons/mob/inhands/stunsword_right.dmi' - -/obj/item/melee/baton/stunsword/get_belt_overlay() - if(istype(loc, /obj/item/storage/belt/sabre)) - return mutable_appearance('icons/obj/clothing/belt_overlays.dmi', "stunsword") - return ..() - -/obj/item/melee/baton/stunsword/get_worn_belt_overlay(icon_file) - return mutable_appearance(icon_file, "-stunsword") - -/obj/item/ssword_kit - name = "stunsword kit" - desc = "a modkit for making a stunbaton into a stunsword" - icon = 'icons/obj/vending_restock.dmi' - icon_state = "refill_donksoft" - var/product = /obj/item/melee/baton/stunsword //what it makes - var/list/fromitem = list(/obj/item/melee/baton, /obj/item/melee/baton/loaded) //what it needs - afterattack(obj/O, mob/user as mob) - if(istype(O, product)) - to_chat(user,"[O] is already modified!") - else if(O.type in fromitem) //makes sure O is the right thing - var/obj/item/melee/baton/B = O - if(!B.cell) //checks for a powercell in the baton. If there isn't one, continue. If there is, warn the user to take it out - new product(usr.loc) //spawns the product - user.visible_message("[user] modifies [O]!","You modify the [O]!") - qdel(O) //Gets rid of the baton - qdel(src) //gets rid of the kit - - else - to_chat(user,"Remove the powercell first!") //We make this check because the stunsword starts without a battery. - else - to_chat(user, " You can't modify [O] with this kit!") - - diff --git a/modular_citadel/code/init.dm b/modular_citadel/code/init.dm deleted file mode 100644 index a85c3a249c..0000000000 --- a/modular_citadel/code/init.dm +++ /dev/null @@ -1,5 +0,0 @@ -//init file stolen from hippie - -/proc/cit_initialize() - load_mentors() - initialize_global_loadout_items() diff --git a/strings/tips.txt b/strings/tips.txt index e9c1350469..f396b3f542 100644 --- a/strings/tips.txt +++ b/strings/tips.txt @@ -55,7 +55,8 @@ As a Scientist, you can disable anomalies by scanning them with an analyzer, the As a Scientist, researchable stock parts can seriously improve the efficiency and speed of machines around the station. In some cases, it can even unlock new functions. As a Scientist, you can generate research points by letting the tachyon-doppler array record increasingly large explosions. As a Scientist, getting drunk just enough will speed up research. Skol! -As a Scientist, you can get points by placing slime cores into the deconstructive analyzer! This even works with crossbred slime cores. +As a Scientist, you can get points by placing slime cores into the destructive analyzer! This even works with crossbred slime cores. +As a Scientist, work with botanists to get different types of seeds, as each type of seed can be used in the destructive analyzer for a small amount of Rnd type points! As a Roboticist, keep an ear out for anomaly announcements. If you get your hands on an anomaly core, you can build a Phazon mech! As a Roboticist, you can repair your cyborgs with a welding tool. If they have taken burn damage from lasers, you can remove their battery, expose the wiring with a screwdriver and replace their wires with a cable coil. As a Roboticist, you can reset a cyborg's module by cutting and mending the reset wire with a wire cutter. diff --git a/tgstation.dme b/tgstation.dme index 7c7d2812e7..403009a7ee 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -841,9 +841,11 @@ #include "code\game\objects\items\AI_modules.dm" #include "code\game\objects\items\airlock_painter.dm" #include "code\game\objects\items\apc_frame.dm" +#include "code\game\objects\items\balls.dm" #include "code\game\objects\items\blueprints.dm" #include "code\game\objects\items\body_egg.dm" #include "code\game\objects\items\bodybag.dm" +#include "code\game\objects\items\boombox.dm" #include "code\game\objects\items\candle.dm" #include "code\game\objects\items\cardboard_cutouts.dm" #include "code\game\objects\items\cards_ids.dm" @@ -2756,6 +2758,7 @@ #include "code\modules\research\designs\smelting_designs.dm" #include "code\modules\research\designs\stock_parts_designs.dm" #include "code\modules\research\designs\telecomms_designs.dm" +#include "code\modules\research\designs\tool_designs.dm" #include "code\modules\research\designs\weapon_designs.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_construction.dm" #include "code\modules\research\designs\autolathe_desings\autolathe_designs_electronics.dm" @@ -3080,7 +3083,6 @@ #include "interface\interface.dm" #include "interface\menu.dm" #include "interface\stylesheet.dm" -#include "modular_citadel\code\init.dm" #include "modular_citadel\code\__HELPERS\list2list.dm" #include "modular_citadel\code\__HELPERS\lists.dm" #include "modular_citadel\code\__HELPERS\mobs.dm" @@ -3095,15 +3097,7 @@ #include "modular_citadel\code\datums\status_effects\debuffs.dm" #include "modular_citadel\code\game\machinery\wishgranter.dm" #include "modular_citadel\code\game\objects\cit_screenshake.dm" -#include "modular_citadel\code\game\objects\items.dm" -#include "modular_citadel\code\game\objects\effects\spawner\spawners.dm" #include "modular_citadel\code\game\objects\effects\temporary_visuals\souldeath.dm" -#include "modular_citadel\code\game\objects\items\balls.dm" -#include "modular_citadel\code\game\objects\items\boombox.dm" -#include "modular_citadel\code\game\objects\items\stunsword.dm" -#include "modular_citadel\code\game\objects\items\devices\radio\encryptionkey.dm" -#include "modular_citadel\code\game\objects\items\devices\radio\headset.dm" -#include "modular_citadel\code\game\objects\items\devices\radio\shockcollar.dm" #include "modular_citadel\code\modules\admin\admin.dm" #include "modular_citadel\code\modules\admin\chat_commands.dm" #include "modular_citadel\code\modules\admin\holder2.dm"