Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Nyks
2021-04-10 20:52:17 +03:00
45 changed files with 1792 additions and 3621 deletions
+4 -14
View File
@@ -5,7 +5,7 @@
I = new path()
if(!I) // Something has gone horribly wrong, or right.
log_debug("[name] created an Autolathe design without an assigned path. This is expected for only the Material Sheet generation.")
log_debug("[name] created an Autolathe design without an assigned path.")
return
if(I.matter && !resources)
@@ -80,22 +80,12 @@
if(istype(M, /datum/material/alienalloy))
continue
var/obj/item/stack/material/Mat = new M.stack_type()
if(Mat.name in items_by_name)
qdel(Mat)
var/obj/item/stack/material/S = M.stack_type
if(initial(S.name) in items_by_name)
continue
var/datum/category_item/autolathe/materials/WorkDat = new(src)
var/datum/category_item/autolathe/materials/WorkDat = new(src, M)
WorkDat.name = "[Mat.name]"
WorkDat.resources = Mat.matter.Copy()
WorkDat.is_stack = TRUE
WorkDat.no_scale = TRUE
WorkDat.max_stack = Mat.max_amount
WorkDat.path = M.stack_type
qdel(Mat)
items |= WorkDat
items_by_name[WorkDat.name] = WorkDat
+19 -34
View File
@@ -1,38 +1,23 @@
/datum/category_item/autolathe/materials/metal
name = "steel sheets"
path =/obj/item/stack/material/steel
/datum/category_item/autolathe/materials
is_stack = TRUE
no_scale = TRUE //prevents material duplication exploits
no_scale = TRUE // Prevents material duplaction exploits
/datum/category_item/autolathe/materials/glass
name = "glass sheets"
path =/obj/item/stack/material/glass
is_stack = TRUE
no_scale = TRUE //prevents material duplication exploits
/datum/category_item/autolathe/materials/New(var/loc, var/mat)
if(istype(mat, /obj/item/stack/material))
var/obj/item/stack/material/M = mat
name = M.name
resources = M.matter.Copy()
max_stack = M.max_amount
path = M.type
else if(istype(mat, /datum/material))
var/datum/material/M = mat
var/obj/item/stack/material/S = M.stack_type
name = initial(S.name)
resources = M.get_matter()
max_stack = initial(S.max_amount)
path = S
. = ..()
/datum/category_item/autolathe/materials/rglass
name = "reinforced glass sheets"
path =/obj/item/stack/material/glass/reinforced
is_stack = TRUE
no_scale = TRUE //prevents material duplication exploits
/datum/category_item/autolathe/materials/rods
/datum/category_item/autolathe/materials/rods // Not strictly a material, so they need their own define
name = "metal rods"
path =/obj/item/stack/rods
is_stack = TRUE
no_scale = TRUE //prevents material duplication exploits
/datum/category_item/autolathe/materials/plasteel
name = "plasteel sheets"
path =/obj/item/stack/material/plasteel
is_stack = TRUE
no_scale = TRUE //prevents material duplication exploits
resources = list(MAT_PLASTEEL = 2000)
/datum/category_item/autolathe/materials/plastic
name = "plastic sheets"
path =/obj/item/stack/material/plastic
is_stack = TRUE
no_scale = TRUE //prevents material duplication exploits
resources = list(MAT_PLASTIC = 2000)
path =/obj/item/stack/rods
+8 -7
View File
@@ -310,26 +310,27 @@ var/global/list/additional_antag_types = list()
for(var/mob/M in player_list)
if(M.client)
clients++
var/M_area_type = (get_turf(M))?.loc?.type
if(ishuman(M))
if(M.stat != DEAD)
surviving_humans++
if(M.loc && M.loc.loc && M.loc.loc.type in escape_locations)
if(M_area_type in escape_locations)
escaped_humans++
if(M.stat != DEAD)
surviving_total++
if(M.loc && M.loc.loc && M.loc.loc.type in escape_locations)
if(M_area_type in escape_locations)
escaped_total++
if(M.loc && M.loc.loc && M.loc.loc.type == /area/shuttle/escape/centcom)
if(M_area_type == /area/shuttle/escape/centcom)
escaped_on_shuttle++
if(M.loc && M.loc.loc && M.loc.loc.type == /area/shuttle/escape_pod1/centcom)
if(M_area_type == /area/shuttle/escape_pod1/centcom)
escaped_on_pod_1++
if(M.loc && M.loc.loc && M.loc.loc.type == /area/shuttle/escape_pod2/centcom)
if(M_area_type == /area/shuttle/escape_pod2/centcom)
escaped_on_pod_2++
if(M.loc && M.loc.loc && M.loc.loc.type == /area/shuttle/escape_pod3/centcom)
if(M_area_type == /area/shuttle/escape_pod3/centcom)
escaped_on_pod_3++
if(M.loc && M.loc.loc && M.loc.loc.type == /area/shuttle/escape_pod5/centcom)
if(M_area_type == /area/shuttle/escape_pod5/centcom)
escaped_on_pod_5++
if(isobserver(M))
+4 -1
View File
@@ -632,7 +632,7 @@
/obj/machinery/suit_cycler/exploration
name = "Explorer suit cycler"
model_text = "Exploration"
departments = list("Exploration","Old Exploration","No Change")
departments = list("Exploration","Expedition Medic","Old Exploration","No Change")
/obj/machinery/suit_cycler/exploration/Initialize()
species -= SPECIES_TESHARI
@@ -1113,6 +1113,9 @@
if("Exploration")
parent_helmet = /obj/item/clothing/head/helmet/space/void/exploration
parent_suit = /obj/item/clothing/suit/space/void/exploration
if("Expedition Medic")
parent_helmet = /obj/item/clothing/head/helmet/space/void/expedition_medical
parent_suit = /obj/item/clothing/suit/space/void/expedition_medical
if("Old Exploration")
parent_helmet = /obj/item/clothing/head/helmet/space/void/exploration/alt
parent_suit = /obj/item/clothing/suit/space/void/exploration/alt
+3 -2
View File
@@ -4,8 +4,9 @@
// Old Exploration is too WIP to use right now
/obj/machinery/suit_cycler/exploration
req_access = list(access_explorer)
departments = list("Exploration","No Change")
req_access = null
req_one_access = list(access_explorer,access_medical_equip)
departments = list("Exploration","Expedition Medic","No Change")
/obj/machinery/suit_cycler/pilot
req_access = list(access_pilot)
+3 -2
View File
@@ -590,8 +590,9 @@
desc = "An old sweet water vending machine,how did this end up here?"
icon_state = "sovietsoda"
product_ads = "For Tsar and Country.;Have you fulfilled your nutrition quota today?;Very nice!;We are simple people, for this is all we eat.;If there is a person, there is a problem. If there is no person, then there is no problem."
products = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/space_up = 30) // TODO Russian soda can
contraband = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/cola = 20) // TODO Russian cola can
products = list(/obj/item/weapon/reagent_containers/food/drinks/cans/boda = 30, //ADDITION 04/03/2021
/obj/item/weapon/reagent_containers/food/drinks/cans/kompot = 20) //ADDITION 04/03/2021
contraband = list(/obj/item/weapon/reagent_containers/food/drinks/cans/kvass = 20) //ADDITION 04/03/2021
idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan.
vending_sound = "machines/vending/vending_cans.ogg"
@@ -329,13 +329,33 @@
/obj/item/clothing/suit/space/void/exploration
name = "exploration voidsuit"
desc = "A lightweight, radiation-resistant voidsuit, featuring the Explorer emblem on its chest plate. Designed for exploring unknown planetary environments."
desc = "A hazard and radiation resistant voidsuit, featuring the Explorer emblem on its chest plate. Designed for exploring unknown planetary environments."
icon_state = "void_explorer"
item_state_slots = list(slot_r_hand_str = "skrell_suit_black", slot_l_hand_str = "skrell_suit_black")
armor = list(melee = 40, bullet = 15, laser = 25,energy = 35, bomb = 30, bio = 100, rad = 70)
allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank,/obj/item/device/suit_cooling_unit,/obj/item/stack/flag,/obj/item/device/healthanalyzer,/obj/item/device/gps,/obj/item/device/radio/beacon, \
/obj/item/weapon/shovel,/obj/item/ammo_magazine,/obj/item/weapon/gun)
//SAR
/obj/item/clothing/head/helmet/space/void/expedition_medical
name = "exploration medic\'s voidsuit helmet"
desc = "A radiation-resistant helmet made especially for exploring unknown planetary environments. Has a reinforced high-vis bubble style visor."
icon_state = "helm_exp_medic"
item_state = "helm_exp_medic"
item_state_slots = list(slot_r_hand_str = "syndicate-helm-black", slot_l_hand_str = "syndicate-helm-black")
armor = list(melee = 25, bullet = 10, laser = 20,energy = 30, bomb = 25, bio = 100, rad = 70)
light_overlay = "helmet_light_dual" //explorer_light
/obj/item/clothing/suit/space/void/expedition_medical
name = "exploration medic\'s voidsuit"
desc = "A hazard and radiation resistant voidsuit, featuring the Explorer emblem and a green cross on its chest plate. Seems to be a little lighter and more flexible than the regular explorer issue."
icon_state = "void_exp_medic"
slowdown = 0.75
item_state_slots = list(slot_r_hand_str = "skrell_suit_black", slot_l_hand_str = "skrell_suit_black")
armor = list(melee = 25, bullet = 10, laser = 20,energy = 30, bomb = 25, bio = 100, rad = 70)
allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank,/obj/item/device/suit_cooling_unit,/obj/item/stack/flag,/obj/item/device/healthanalyzer,/obj/item/device/gps,/obj/item/device/radio/beacon, \
/obj/item/weapon/shovel,/obj/item/ammo_magazine,/obj/item/weapon/gun,/obj/item/weapon/storage/firstaid,/obj/item/stack/medical)
/obj/item/clothing/head/helmet/space/void/exploration/alt
desc = "A radiation-resistant helmet retrofitted for exploring unknown planetary environments."
icon_state = "helm_explorer2"
+33
View File
@@ -171,3 +171,36 @@
. = ..()
reagents.add_reagent("rootbeer", 30)
//ADDITIONS BELOW THIS LINE MADE ON 04/03/2021
/obj/item/weapon/reagent_containers/food/drinks/cans/kvass
name = "\improper Kvass"
desc = "A true Slavic soda."
description_fluff = "A classic slavic beverage which many Space Russians still enjoy to this day. Fun fact, it is actually considered a weak beer by non-russians."
icon_state = "kvass"
center_of_mass = list("x"=16, "y"=10)
/obj/item/weapon/reagent_containers/food/drinks/cans/kvass/Initialize()
. = ..()
reagents.add_reagent("kvass", 30)
/obj/item/weapon/reagent_containers/food/drinks/cans/kompot
name = "\improper Kompot"
desc = "A taste of russia in the summertime - canned for you consumption."
description_fluff = "A sweet and fruity beverage that was traditionally used to preserve frutis in harsh Russian winters that is now available for widespread comsumption."
icon_state = "kompot"
center_of_mass = list("x"=16, "y"=10)
/obj/item/weapon/reagent_containers/food/drinks/cans/kompot/Initialize()
. = ..()
reagents.add_reagent("kompot", 30)
/obj/item/weapon/reagent_containers/food/drinks/cans/boda
name = "\improper Boda"
desc = "State regulated soda beverage. Enjoy comrades."
icon_state = "boda"
center_of_mass = list("x"=16, "y"=8)
/obj/item/weapon/reagent_containers/food/drinks/cans/boda/Initialize()
. = ..()
reagents.add_reagent("sodawater", 30)
+2 -1
View File
@@ -53,9 +53,10 @@ var/list/name_to_material
/proc/populate_material_list(force_remake=0)
if(name_to_material && !force_remake) return // Already set up!
name_to_material = list()
for(var/type in typesof(/datum/material) - /datum/material)
for(var/type in subtypesof(/datum/material))
var/datum/material/new_mineral = new type
if(!new_mineral.name)
qdel(new_mineral)
continue
name_to_material[lowertext(new_mineral.name)] = new_mineral
return 1
@@ -492,6 +492,7 @@ This function restores all organs.
switch(damagetype)
if(BRUTE)
damageoverlaytemp = 20
if(nif && nif.flag_check(NIF_C_BRUTEARMOR,NIF_FLAGS_COMBAT)){damage *= 0.7}
damage = damage*species.brute_mod
for(var/datum/modifier/M in modifiers)
@@ -504,6 +505,7 @@ This function restores all organs.
UpdateDamageIcon()
if(BURN)
damageoverlaytemp = 20
if(nif && nif.flag_check(NIF_C_BURNARMOR,NIF_FLAGS_COMBAT)){damage *= 0.7}
damage = damage*species.burn_mod
for(var/datum/modifier/M in modifiers)
@@ -7,7 +7,6 @@
illegal = TRUE
wear = 3
access = 999 //Prevents anyone from buying it without an emag.
activates = FALSE //It's armor.
combat_flags = (NIF_C_BRUTEARMOR) // Default on when installed, clear when uninstalled
/datum/nifsoft/burn_armor
@@ -19,7 +18,6 @@
illegal = TRUE
wear = 3
access = 999 //Prevents anyone from buying it without an emag.
activates = FALSE //It's armor.
combat_flags = (NIF_C_BURNARMOR) // Default on when installed, clear when uninstalled
/datum/nifsoft/painkillers
@@ -1700,7 +1700,7 @@
glass_name = "Rewriter"
glass_desc = "The secret of the sanctuary of the Libarian..."
allergen_type = FRUIT|COFFEE //Made with space mountain wind (Fruit)
allergen_type = FRUIT|COFFEE //Made with space mountain wind (Fruit)
/datum/reagent/drink/rewriter/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
..()
@@ -2720,7 +2720,7 @@
glass_name = "Banana Honk"
glass_desc = "A drink from Banana Heaven."
allergen_type = FRUIT|DAIRY //Made from banana juice(fruit) and cream(dairy)
allergen_type = FRUIT|DAIRY //Made from banana juice(fruit) and cream(dairy)
/datum/reagent/ethanol/barefoot
name = "Barefoot"
@@ -4156,3 +4156,28 @@
reagent_state = LIQUID
nutriment_factor = 40 //very filling
color = "#d169b2"
//ADDITIONS BELOW THIS LINE MADE ON 04/03/2021
/datum/reagent/drink/soda/kompot
name = "Kompot"
id = "kompot"
description = "A traditional Eastern European beverage once used to preserve fruit in the 1980s"
taste_description = "refreshuingly sweet and fruity"
color = "#ed9415" // rgb: 237, 148, 21
adj_drowsy = -1
adj_temp = -6
glass_name = "kompot"
glass_desc = "A glass of refreshing kompot."
glass_special = list(DRINK_FIZZ)
/datum/reagent/ethanol/kvass
name = "Kvass"
id = "kvass"
description = "A traditional fermented Slavic and Baltic beverage commonly made from rye bread."
taste_description = "a warm summer day at babushka's cabin"
color = "#b78315" // rgb: 183, 131, 21
strength = 95 //It's just soda to Russians
nutriment_factor = 2
glass_name = "kvass"
glass_desc = "A hearty glass of Slavic brew."
Binary file not shown.

Before

Width:  |  Height:  |  Size: 359 KiB

After

Width:  |  Height:  |  Size: 358 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 215 KiB

After

Width:  |  Height:  |  Size: 215 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 187 KiB

After

Width:  |  Height:  |  Size: 190 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 121 KiB

After

Width:  |  Height:  |  Size: 124 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 134 KiB

After

Width:  |  Height:  |  Size: 146 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 89 KiB

After

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 121 KiB

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 113 KiB

After

Width:  |  Height:  |  Size: 114 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 KiB

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 138 KiB

After

Width:  |  Height:  |  Size: 141 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 113 KiB

After

Width:  |  Height:  |  Size: 113 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

After

Width:  |  Height:  |  Size: 89 KiB

File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff