Merge branch 'Kbraidtweaks' of https://github.com/KBraid/YWPolarisVore into Kbraidtweaks

This commit is contained in:
Braiden
2020-08-04 17:50:03 -05:00
33 changed files with 5645 additions and 3768 deletions

View File

@@ -381,7 +381,7 @@
/obj/item/clothing/accessory/cowledvest
name = "cowled vest"
desc = "A body warmer for the 26th century."
desc = "A body warmer for the 24th century." //VOREStation Edit
icon_state = "cowled_vest"
/obj/item/clothing/accessory/asymmetric
@@ -397,4 +397,4 @@
/obj/item/clothing/accessory/asymmetric/green
name = "green asymmetrical jacket"
desc = "Insultingly avant-garde in aqua."
icon_state = "asym_green"
icon_state = "asym_green"

View File

@@ -738,7 +738,8 @@ I said no!
)
result = /obj/item/weapon/reagent_containers/food/snacks/porkbowl
/datum/recipe/tortilla
/datum/recipe/microwavetortilla
reagents = list("flour" = 5, "water" = 5)
items = list(
/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough
)

View File

@@ -81,6 +81,13 @@
/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough
)
result = /obj/item/weapon/reagent_containers/food/snacks/flatbread
/datum/recipe/tortilla
reagents = list("flour" = 5)
items = list(
/obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough
)
result = /obj/item/weapon/reagent_containers/food/snacks/tortilla
/datum/recipe/meatbread
appliance = OVEN

View File

@@ -683,6 +683,9 @@
if(isnull(gene_chem[i])) gene_chem[i] = 0
if(chems[rid].len < i) //YW Edit: allows plants whose reagents have not been defined uniformly to splice properly
continue
if(chems[rid][i])
chems[rid][i] = max(1,round((gene_chem[i] + chems[rid][i])/2))
else

View File

@@ -40,11 +40,11 @@
playsound(src, 'sound/voice/growl.ogg', 50, 1, -1, preference = /datum/client_preference/emote_noises)
if("woof")
m_type = 2
message = "lets out an woof."
message = "lets out a woof."
playsound(src, 'sound/voice/woof.ogg', 50, 1, -1, preference = /datum/client_preference/emote_noises)
if("woof2")
m_type = 2
message = "lets out an woof."
message = "lets out a woof."
playsound(src, 'sound/voice/woof2.ogg', 50, 1, -1, preference = /datum/client_preference/emote_noises)
if("nya")
message = "lets out a nya."
@@ -188,7 +188,7 @@
message = "does a flip!"
m_type = 1
if("vhelp") //Help for Virgo-specific emotes.
to_chat(src, "vwag, vflap, mlem, blep, awoo, awoo2, growl, nya, peep, chirp, hoot, weh, merp, myarp, bark, bork, mrow, hypno, hiss, rattle, squeak, geck, baa, baa2, mar, wurble, snort, meow, moo, croak, nsay, nme, flip")
to_chat(src, "vwag, vflap, mlem, blep, awoo, awoo2, growl, nya, peep, chirp, hoot, weh, merp, myarp, bark, bork, mrow, mrowl, hypno, hiss, rattle, squeak, geck, baa, baa2, mar, wurble, snort, meow, moo, croak, nsay, nme, flip")
return TRUE
if(message)

View File

@@ -688,10 +688,13 @@
if(bodytemperature >= species.heat_level_2)
if(bodytemperature >= species.heat_level_3)
burn_dam = HEAT_DAMAGE_LEVEL_3
throw_alert("temp", /obj/screen/alert/hot, 3)
else
burn_dam = HEAT_DAMAGE_LEVEL_2
throw_alert("temp", /obj/screen/alert/hot, 2)
else
burn_dam = HEAT_DAMAGE_LEVEL_1
throw_alert("temp", /obj/screen/alert/hot, 1)
take_overall_damage(burn=burn_dam, used_weapon = "High Body Temperature")
@@ -714,6 +717,8 @@
cold_dam = COLD_DAMAGE_LEVEL_1
take_overall_damage(burn=cold_dam, used_weapon = "Low Body Temperature")
else clear_alert("temp")
// Account for massive pressure differences. Done by Polymorph
// Made it possible to actually have something that can protect against high pressure... Done by Errorage. Polymorph now has an axe sticking from his head for his previous hardcoded nonsense!

View File

@@ -1221,6 +1221,12 @@
for(var/obj/effect/decal/cleanable/blood/B in T)
qdel(B)
//VOREstation edit. Floor polishing.
if(istype(T, /turf/simulated))
var/turf/simulated/S = T
S.dirt = -50
//VOREstation edit end
/datum/reagent/sterilizine/touch_mob(var/mob/living/L, var/amount)
if(istype(L))
if(istype(L, /mob/living/simple_mob/slime))

View File

@@ -578,7 +578,7 @@
name = "Plant-B-Gone"
id = "plantbgone"
result = "plantbgone"
required_reagents = list("toxin" = 1, "water" = 4)
required_reagents = list("pacid" = 1, "diethylamine" = 4) //YW Edit
result_amount = 5
/datum/chemical_reaction/foaming_agent

View File

@@ -203,7 +203,7 @@
// if(params["id"] == "del_rec" && active_record)
// var/obj/item/weapon/card/id/C = usr.get_active_hand()
// if(!istype(C) && !istype(C, /obj/item/device/pda))
// set_temp("ID not in hand.", "bad")
// set_temp("ID not in hand.", "danger")
// return
// if(check_access(C))
// records.Remove(active_record)
@@ -211,7 +211,7 @@
// set_temp("Record deleted.", "success")
// menu = MENU_RECORDS
// else
// set_temp("Access denied.", "bad")
// set_temp("Access denied.", "danger")
return
switch(action)
@@ -223,21 +223,21 @@
if(istype(active_br))
if(isnull(active_br.ckey))
qdel(active_br)
set_temp("Error: Record corrupt.", "bad")
set_temp("Error: Record corrupt.", "danger")
else
var/can_grow_active = 1
if(!synthetic_capable && active_br.synthetic) //Disqualified due to being synthetic in an organic only.
can_grow_active = 0
set_temp("Error: Cannot grow [active_br.mydna.name] due to lack of synthfabs.", "bad")
set_temp("Error: Cannot grow [active_br.mydna.name] due to lack of synthfabs.", "danger")
else if(!organic_capable && !active_br.synthetic) //Disqualified for the opposite.
can_grow_active = 0
set_temp("Error: Cannot grow [active_br.mydna.name] due to lack of cloners.", "bad")
set_temp("Error: Cannot grow [active_br.mydna.name] due to lack of cloners.", "danger")
else if(!synthetic_capable && !organic_capable) //What have you done??
can_grow_active = 0
set_temp("Error: Cannot grow [active_br.mydna.name] due to lack of synthfabs and cloners.", "bad")
set_temp("Error: Cannot grow [active_br.mydna.name] due to lack of synthfabs and cloners.", "danger")
else if(active_br.toocomplex)
can_grow_active = 0
set_temp("Error: Cannot grow [active_br.mydna.name] due to species complexity.", "bad")
set_temp("Error: Cannot grow [active_br.mydna.name] due to species complexity.", "danger")
var/list/payload = list(
activerecord = "\ref[active_br]",
realname = sanitize(active_br.mydna.name),
@@ -251,7 +251,7 @@
tgui_modal_message(src, action, "", null, payload)
else
active_br = null
set_temp("Error: Record missing.", "bad")
set_temp("Error: Record missing.", "danger")
if("view_m_rec")
var/ref = params["ref"]
if(!length(ref))
@@ -260,18 +260,21 @@
if(istype(active_mr))
if(isnull(active_mr.ckey))
qdel(active_mr)
set_temp("Error: Record corrupt.", "bad")
set_temp("Error: Record corrupt.", "danger")
else
var/can_sleeve_active = 1
if(!LAZYLEN(sleevers))
can_sleeve_active = 0
set_temp("Error: Cannot sleeve due to no sleevers.", "bad")
set_temp("Error: Cannot sleeve due to no sleevers.", "danger")
return
if(!selected_sleever)
can_sleeve_active = 0
set_temp("Error: Cannot sleeve due to no selected sleever.", "bad")
set_temp("Error: Cannot sleeve due to no selected sleever.", "danger")
return
if(selected_sleever && !selected_sleever.occupant)
can_sleeve_active = 0
set_temp("Error: Cannot sleeve due to lack of sleever occupant.", "bad")
set_temp("Error: Cannot sleeve due to lack of sleever occupant.", "danger")
return
var/list/payload = list(
activerecord = "\ref[active_mr]",
realname = sanitize(active_mr.mindname),
@@ -282,7 +285,7 @@
tgui_modal_message(src, action, "", null, payload)
else
active_mr = null
set_temp("Error: Record missing.", "bad")
set_temp("Error: Record missing.", "danger")
if("coredump")
if(disk)
SStranscore.core_dump(disk)
@@ -298,107 +301,117 @@
if(istype(active_br))
//Tried to grow a synth but no synth pods.
if(active_br.synthetic && !spods.len)
set_temp("Error: No SynthFabs detected.", "bad")
set_temp("Error: No SynthFabs detected.", "danger")
//Tried to grow an organic but no growpods.
else if(!active_br.synthetic && !pods.len)
set_temp("Error: No growpods detected.", "Bad")
set_temp("Error: No growpods detected.", "danger")
//We have the machines. We can rebuild them. Probably.
else
//We're cloning a synth.
if(active_br.synthetic)
var/obj/machinery/transhuman/synthprinter/spod = selected_printer
if(!istype(spod))
set_temp("Error: No SynthFab selected.", "bad")
set_temp("Error: No SynthFab selected.", "danger")
return
//Already doing someone.
if(spod.busy)
set_temp("Error: SynthFab is currently busy.", "bad")
set_temp("Error: SynthFab is currently busy.", "danger")
return
//Not enough steel or glass
else if(spod.stored_material[DEFAULT_WALL_MATERIAL] < spod.body_cost)
set_temp("Error: Not enough [DEFAULT_WALL_MATERIAL] in SynthFab.", "bad")
set_temp("Error: Not enough [DEFAULT_WALL_MATERIAL] in SynthFab.", "danger")
return
else if(spod.stored_material["glass"] < spod.body_cost)
set_temp("Error: Not enough glass in SynthFab.", "bad")
set_temp("Error: Not enough glass in SynthFab.", "danger")
return
//Gross pod (broke mid-cloning or something).
else if(spod.broken)
set_temp("Error: SynthFab malfunction.", "bad")
set_temp("Error: SynthFab malfunction.", "danger")
return
//Do the cloning!
else if(spod.print(active_br))
set_temp("Initiating printing cycle...", "good")
set_temp("Initiating printing cycle...", "success")
menu = 1
else
set_temp("Initiating printing cycle... Error: Post-initialisation failed. Printing cycle aborted.", "bad")
set_temp("Initiating printing cycle... Error: Post-initialisation failed. Printing cycle aborted.", "danger")
return
//We're cloning an organic.
else
var/obj/machinery/clonepod/transhuman/pod = selected_pod
if(!istype(pod))
set_temp("Error: No clonepod selected.", "bad")
set_temp("Error: No clonepod selected.", "danger")
tgui_modal_clear(src)
return
//Already doing someone.
if(pod.occupant)
set_temp("Error: Growpod is currently occupied.", "bad")
set_temp("Error: Growpod is currently occupied.", "danger")
tgui_modal_clear(src)
return
//Not enough materials.
else if(pod.get_biomass() < CLONE_BIOMASS)
set_temp("Error: Not enough biomass.", "bad")
set_temp("Error: Not enough biomass.", "danger")
tgui_modal_clear(src)
return
//Gross pod (broke mid-cloning or something).
else if(pod.mess)
set_temp("Error: Growpod malfunction.", "bad")
set_temp("Error: Growpod malfunction.", "danger")
tgui_modal_clear(src)
return
//Disabled in config.
else if(!config.revival_cloning)
set_temp("Error: Unable to initiate growing cycle.", "bad")
set_temp("Error: Unable to initiate growing cycle.", "danger")
tgui_modal_clear(src)
return
//Do the cloning!
else if(pod.growclone(active_br))
set_temp("Initiating growing cycle...", "good")
menu = 1
set_temp("Initiating growing cycle...", "success")
tgui_modal_clear(src)
else
set_temp("Initiating growing cycle... Error: Post-initialisation failed. Growing cycle aborted.", "bad")
set_temp("Initiating growing cycle... Error: Post-initialisation failed. Growing cycle aborted.", "danger")
tgui_modal_clear(src)
return
//The body record is broken somehow.
else
set_temp("Error: Data corruption.", "bad")
set_temp("Error: Data corruption.", "danger")
tgui_modal_clear(src)
return
if("sleeve")
if(istype(active_mr))
if(!sleevers.len)
set_temp("Error: No sleevers detected.", "bad")
set_temp("Error: No sleevers detected.", "danger")
else
var/mode = text2num(params["mode"])
var/override
var/obj/machinery/transhuman/resleever/sleever = selected_sleever
if(!istype(sleever))
set_temp("Error: No resleeving pod selected.", "bad")
set_temp("Error: No resleeving pod selected.", "danger")
tgui_modal_clear(src)
return
switch(mode)
if(1) //Body resleeving
//No body to sleeve into.
if(!sleever.occupant)
set_temp("Error: Resleeving pod is not occupied.", "bad")
set_temp("Error: Resleeving pod is not occupied.", "danger")
tgui_modal_clear(src)
return
//OOC body lock thing.
if(sleever.occupant.resleeve_lock && active_mr.ckey != sleever.occupant.resleeve_lock)
set_temp("Error: Mind incompatible with body.", "bad")
set_temp("Error: Mind incompatible with body.", "danger")
tgui_modal_clear(src)
return
var/list/subtargets = list()
@@ -410,12 +423,14 @@
var/oc_sanity = sleever.occupant
override = input(usr,"Multiple bodies detected. Select target for resleeving of [active_mr.mindname] manually. Sleeving of primary body is unsafe with sub-contents, and is not listed.", "Resleeving Target") as null|anything in subtargets
if(!override || oc_sanity != sleever.occupant || !(override in sleever.occupant))
set_temp("Error: Target selection aborted.", "bad")
set_temp("Error: Target selection aborted.", "danger")
tgui_modal_clear(src)
return
if(2) //Card resleeving
if(sleever.sleevecards <= 0)
set_temp("Error: No available cards in resleever.", "bad")
set_temp("Error: No available cards in resleever.", "danger")
tgui_modal_clear(src)
return
//Body to sleeve into, but mind is in another living body.
@@ -424,16 +439,15 @@
//They declined to be moved.
if(answer == "No")
set_temp("Initiating resleeving... Error: Post-initialisation failed. Resleeving cycle aborted.", "bad")
menu = MENU_MAIN
set_temp("Initiating resleeving... Error: Post-initialisation failed. Resleeving cycle aborted.", "danger")
tgui_modal_clear(src)
return TRUE
//They were dead, or otherwise available.
if(!temp)
sleever.putmind(active_mr,mode,override)
set_temp("Initiating resleeving...")
menu = 1
return
sleever.putmind(active_mr,mode,override)
set_temp("Initiating resleeving...")
tgui_modal_clear(src)
if("refresh")
SStgui.update_uis(src)
if("selectpod")