mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 02:34:00 +00:00
@@ -217,13 +217,24 @@ Implants;
|
||||
man.client.prefs.nanotrasen_relation == "Skeptical" && prob(20))
|
||||
suspects += man
|
||||
// Antags
|
||||
else if(special_role == "traitor" && prob(20) || \
|
||||
special_role == "Changeling" && prob(40) || \
|
||||
special_role == "Cultist" && prob(10) || \
|
||||
special_role == "Head Revolutionary" && prob(10))
|
||||
else if(special_role == "traitor" && prob(40) || \
|
||||
special_role == "Changeling" && prob(50) || \
|
||||
special_role == "Cultist" && prob(30) || \
|
||||
special_role == "Head Revolutionary" && prob(30))
|
||||
suspects += man
|
||||
|
||||
// If they're a traitor or likewise, give them extra TC in exchange.
|
||||
var/obj/item/device/uplink/hidden/suplink = man.mind.find_syndicate_uplink()
|
||||
if(suplink)
|
||||
var/extra = 4
|
||||
suplink.uses += extra
|
||||
man << "\red We have received notice that enemy intelligence suspects you to be linked with us. We have thus invested significant resources to increase your uplink's capacity."
|
||||
else
|
||||
// Give them a warning!
|
||||
man << "\red They are on to you!"
|
||||
|
||||
// Some poor people who were just in the wrong place at the wrong time..
|
||||
else if(prob(5))
|
||||
else if(prob(10))
|
||||
suspects += man
|
||||
for(var/mob/M in suspects)
|
||||
switch(rand(1, 100))
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#define XENOARCH_MAX_ENERGY_TRANSFER 4000
|
||||
|
||||
//How many joules of electrical energy produce how many joules of heat energy?
|
||||
#define XENOARCH_HEAT_COEFFICIENT 10
|
||||
#define XENOARCH_HEAT_COEFFICIENT 3
|
||||
|
||||
|
||||
/obj/machinery/anomaly
|
||||
@@ -29,6 +29,7 @@
|
||||
var/temperature = 273 //measured in kelvin, if this exceeds 1200, the machine is damaged and requires repairs
|
||||
//if this exceeds 600 and safety is enabled it will shutdown
|
||||
//temp greater than 600 also requires a safety prompt to initiate scanning
|
||||
var/max_temp = 450
|
||||
|
||||
/obj/machinery/anomaly/New()
|
||||
..()
|
||||
@@ -66,35 +67,37 @@
|
||||
|
||||
auto_use_power()
|
||||
|
||||
//Add 200 joules when idle, or 3000 when active. This is about 0.6 degrees per tick.
|
||||
//Add 3000 joules when active. This is about 0.6 degrees per tick.
|
||||
//May need adjustment
|
||||
var/heat_added = ( use_power == 1 ? active_power_usage : idle_power_usage )*XENOARCH_HEAT_COEFFICIENT
|
||||
if(use_power == 1)
|
||||
var/heat_added = active_power_usage *XENOARCH_HEAT_COEFFICIENT
|
||||
|
||||
temperature += heat_added/XENOARCH_HEAT_CAPACITY
|
||||
if(temperature < max_temp)
|
||||
temperature += heat_added/XENOARCH_HEAT_CAPACITY
|
||||
|
||||
var/temperature_difference = abs(environmental_temp-temperature)
|
||||
var/datum/gas_mixture/removed = loc.remove_air(env.total_moles*0.25)
|
||||
var/heat_capacity = removed.heat_capacity()
|
||||
var/temperature_difference = abs(environmental_temp-temperature)
|
||||
var/datum/gas_mixture/removed = loc.remove_air(env.total_moles*0.25)
|
||||
var/heat_capacity = removed.heat_capacity()
|
||||
|
||||
heat_added = max(temperature_difference*heat_capacity, XENOARCH_MAX_ENERGY_TRANSFER)
|
||||
heat_added = max(temperature_difference*heat_capacity, XENOARCH_MAX_ENERGY_TRANSFER)
|
||||
|
||||
if(temperature > environmental_temp)
|
||||
//cool down to match the air
|
||||
temperature = max(TCMB, temperature - heat_added/XENOARCH_HEAT_CAPACITY)
|
||||
removed.temperature = max(TCMB, removed.temperature + heat_added/heat_capacity)
|
||||
if(temperature > environmental_temp)
|
||||
//cool down to match the air
|
||||
temperature = max(TCMB, temperature - heat_added/XENOARCH_HEAT_CAPACITY)
|
||||
removed.temperature = max(TCMB, removed.temperature + heat_added/heat_capacity)
|
||||
|
||||
if(temperature_difference > 10 && prob(5))
|
||||
src.visible_message("\blue \icon[src] hisses softly.", 2)
|
||||
if(temperature_difference > 10 && prob(5))
|
||||
src.visible_message("\blue \icon[src] hisses softly.", 2)
|
||||
|
||||
else
|
||||
//heat up to match the air
|
||||
temperature = max(TCMB, temperature + heat_added/XENOARCH_HEAT_CAPACITY)
|
||||
removed.temperature = max(TCMB, removed.temperature - heat_added/heat_capacity)
|
||||
else
|
||||
//heat up to match the air
|
||||
temperature = max(TCMB, temperature + heat_added/XENOARCH_HEAT_CAPACITY)
|
||||
removed.temperature = max(TCMB, removed.temperature - heat_added/heat_capacity)
|
||||
|
||||
if(temperature_difference > 10 && prob(5))
|
||||
src.visible_message("\blue \icon[src] plinks quietly.", 2)
|
||||
if(temperature_difference > 10 && prob(5))
|
||||
src.visible_message("\blue \icon[src] plinks quietly.", 2)
|
||||
|
||||
env.merge(removed)
|
||||
env.merge(removed)
|
||||
|
||||
|
||||
//this proc should be overriden by each individual machine
|
||||
|
||||
@@ -22,4 +22,6 @@
|
||||
"/obj/item/weapon/folder",
|
||||
"/obj/item/weapon/clipboard",
|
||||
"/obj/item/weapon/anodevice",
|
||||
"/obj/item/clothing/glasses",
|
||||
"/obj/item/weapon/wrench",
|
||||
"/obj/item/weapon/anobattery")
|
||||
|
||||
Reference in New Issue
Block a user