Merge pull request #590 from ArchieBeepBoop/radiationfixes

Radiation runtime fix, collector balance tweak, Machinery Alt Click, jukeboxes finally work, turrets no longer target megafauna, etc
This commit is contained in:
QuoteFox
2020-10-16 12:32:49 +01:00
committed by GitHub
22 changed files with 189 additions and 119 deletions
@@ -15,6 +15,8 @@
continue
if(H.stat == DEAD)
continue
if(H.z != SSmapping.station_start) //Let's not fucking give Appendicitis to ghost roles or people not on station, shall we?
continue
if(!H.getorgan(/obj/item/organ/appendix)) //Don't give the disease to some who lacks it, only for it to be auto-cured
continue
if(!(MOB_ORGANIC in H.mob_biotypes)) //biotype sleeper bugs strike again, once again making appendicitis pick a target that can't take it
@@ -28,4 +30,4 @@
var/datum/disease/D = new /datum/disease/appendicitis()
H.ForceContractDisease(D, FALSE, TRUE)
break
break
@@ -69,7 +69,8 @@
emitterhealth = CLAMP((emitterhealth - amount), -50, emittermaxhealth)
if(emitterhealth < 0)
fold_in(force = TRUE)
to_chat(src, "<span class='userdanger'>The impact degrades your holochassis!</span>")
if(amount > 0)
to_chat(src, "<span class='userdanger'>The impact degrades your holochassis!</span>")
return amount
/mob/living/silicon/pai/adjustBruteLoss(amount, updating_health = TRUE, forced = FALSE)
@@ -87,8 +88,11 @@
/mob/living/silicon/pai/adjustCloneLoss(amount, updating_health = TRUE, forced = FALSE)
return FALSE
/mob/living/silicon/pai/adjustStaminaLoss(amount)
take_holo_damage(amount & 0.25)
/mob/living/silicon/pai/adjustStaminaLoss(amount, updating_health, forced = FALSE)
if(forced)
take_holo_damage(amount)
else
take_holo_damage(amount * 0.25)
/mob/living/silicon/pai/adjustOrganLoss(slot, amount, maximum = 500) //I kept this in, unlike tg
Knockdown(amount * 0.2)
@@ -20,6 +20,7 @@
alpha = 50
attacktext = "touches the mind of"
speak_emote = list("echos")
rad_flags = RAD_NO_CONTAMINATE
movement_type = FLYING
var/pseudo_death = FALSE
var/posses_safe = FALSE
+1 -1
View File
@@ -1,5 +1,5 @@
// stored_power += (pulse_strength-RAD_COLLECTOR_EFFICIENCY)*RAD_COLLECTOR_COEFFICIENT
#define RAD_COLLECTOR_EFFICIENCY 80 // radiation needs to be over this amount to get power
#define RAD_COLLECTOR_EFFICIENCY 60 // radiation needs to be over this amount to get power
#define RAD_COLLECTOR_COEFFICIENT 100
#define RAD_COLLECTOR_STORED_OUT 0.04 // (this*100)% of stored power outputted per tick. Doesn't actualy change output total, lower numbers just means collectors output for longer in absence of a source
#define RAD_COLLECTOR_MINING_CONVERSION_RATE 0.00001 //This is gonna need a lot of tweaking to get right. This is the number used to calculate the conversion of watts to research points per process()
@@ -32,7 +32,15 @@
id = "sleeper"
build_path = /obj/item/circuitboard/machine/sleeper
departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_ENGINEERING
category = list ("Medical Machinery")
category = list("Medical Machinery")
/datum/design/board/syndiesleeper
name = "Machine Design (Syndicate Sleeper Board)"
desc = "The circuit board for a Syndicate sleeper, with controls inside."
id = "syndiesleeper"
build_path = /obj/item/circuitboard/machine/sleeper/syndie
departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_ENGINEERING
category = list("Medical Machinery")
/datum/design/board/cryotube
name = "Machine Design (Cryotube Board)"
+1 -1
View File
@@ -1053,7 +1053,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", "advanced_camera")
design_ids = list("decloner", "borg_syndicate_module", "suppressor", "largecrossbow", "donksofttoyvendor", "advanced_camera", "syndiesleeper")
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 10000)
export_price = 5000
hidden = TRUE
+1 -1
View File
@@ -148,7 +148,7 @@
/obj/effect/mob_spawn/human/lavaland_syndicate/comms/space/Initialize()
. = ..()
if(prob(90)) //only has a 10% chance of existing, otherwise it'll just be a NPC syndie.
if(prob(50)) //only has a 10% chance of existing, otherwise it'll just be a NPC syndie.
new /mob/living/simple_animal/hostile/syndicate/ranged(get_turf(src))
return INITIALIZE_HINT_QDEL