Merge pull request #164 from deertools/515-compatiblity

[PLEASE TEST-MERGE THIS OR SOMETHING BEFORE FULLY MERING] Updates us to 515
This commit is contained in:
evilew
2024-03-27 18:01:15 +01:00
committed by GitHub
507 changed files with 1250 additions and 1192 deletions
+15 -15
View File
@@ -309,21 +309,21 @@
var/datum/reagent/R = addiction
if(C && R)
R.addiction_stage++
switch(R.addiction_stage)
if(1 to R.addiction_stage1_end)
need_mob_update += R.addiction_act_stage1(C)
if(R.addiction_stage1_end to R.addiction_stage2_end)
need_mob_update += R.addiction_act_stage2(C)
if(R.addiction_stage2_end to R.addiction_stage3_end)
need_mob_update += R.addiction_act_stage3(C)
if(R.addiction_stage3_end to R.addiction_stage4_end)
need_mob_update += R.addiction_act_stage4(C)
if(R.addiction_stage4_end to INFINITY)
to_chat(C, "<span class='notice'>You feel like you've gotten over your need for [R.name].</span>")
SEND_SIGNAL(C, COMSIG_CLEAR_MOOD_EVENT, "[R.type]_addiction")
cached_addictions.Remove(R)
else
SEND_SIGNAL(C, COMSIG_CLEAR_MOOD_EVENT, "[R.type]_overdose")
var/stage = R.addiction_stage
if(stage in 1 to R.addiction_stage1_end)
need_mob_update += R.addiction_act_stage1(C)
else if(stage in R.addiction_stage1_end to R.addiction_stage2_end)
need_mob_update += R.addiction_act_stage2(C)
else if(stage in R.addiction_stage2_end to R.addiction_stage3_end)
need_mob_update += R.addiction_act_stage3(C)
else if(stage in R.addiction_stage3_end to R.addiction_stage4_end)
need_mob_update += R.addiction_act_stage4(C)
else if(stage in R.addiction_stage4_end to INFINITY)
to_chat(C, "<span class='notice'>You feel like you've gotten over your need for [R.name].</span>")
SEND_SIGNAL(C, COMSIG_CLEAR_MOOD_EVENT, "[R.type]_addiction")
cached_addictions.Remove(R)
else
SEND_SIGNAL(C, COMSIG_CLEAR_MOOD_EVENT, "[R.type]_overdose")
addiction_tick++
if(C && need_mob_update) //some of the metabolized reagents had effects on the mob that requires some updates.
C.updatehealth()
@@ -191,7 +191,7 @@
update_icon()
var/turf/source_turf = get_turf(src)
log_virus("A culture bottle was printed for the virus [A.admin_details()] at [loc_name(source_turf)] by [key_name(usr)]")
addtimer(CALLBACK(src, .proc/reset_replicator_cooldown), 50)
addtimer(CALLBACK(src,PROC_REF(reset_replicator_cooldown)), 50)
. = TRUE
if("create_vaccine_bottle")
var/id = params["index"]
@@ -201,7 +201,7 @@
B.reagents.add_reagent(/datum/reagent/vaccine, 15, list(id))
wait = TRUE
update_icon()
addtimer(CALLBACK(src, .proc/reset_replicator_cooldown), 200)
addtimer(CALLBACK(src,PROC_REF(reset_replicator_cooldown)), 200)
. = TRUE
/obj/machinery/computer/pandemic/attackby(obj/item/I, mob/user, params)
@@ -229,7 +229,7 @@
var/offset = prob(50) ? -2 : 2
var/old_pixel_x = pixel_x
animate(src, pixel_x = pixel_x + offset, time = 0.2, loop = -1) //start shaking
addtimer(CALLBACK(src, .proc/stop_shaking, old_pixel_x), duration)
addtimer(CALLBACK(src,PROC_REF(stop_shaking), old_pixel_x), duration)
/obj/machinery/reagentgrinder/proc/stop_shaking(old_px)
animate(src)
@@ -243,7 +243,7 @@
playsound(src, 'sound/machines/blender.ogg', 50, 1)
else
playsound(src, 'sound/machines/juicer.ogg', 20, 1)
addtimer(CALLBACK(src, .proc/stop_operating), time / speed)
addtimer(CALLBACK(src,PROC_REF(stop_operating)), time / speed)
/obj/machinery/reagentgrinder/proc/stop_operating()
operating = FALSE
@@ -2243,11 +2243,10 @@ datum/reagent/consumable/ethanol/creme_de_coconut
glass_name = "glass of [name]"
glass_desc = description
for(var/taste in tastes)
switch(tastes[taste])
if(minimum_percent*2 to INFINITY)
primary_tastes += taste
if(minimum_percent to minimum_percent*2)
secondary_tastes += taste
if(tastes[taste] > (minimum_percent * 2))
primary_tastes += taste
else if(tastes[taste] > minimum_percent)
secondary_tastes += taste
var/minimum_name_percent = 0.35
name = ""
@@ -638,7 +638,7 @@
to_chat(H, "<span class='warning'><b>You crumple in agony as your flesh wildly morphs into new forms!</b></span>")
H.visible_message("<b>[H]</b> falls to the ground and screams as [H.p_their()] skin bubbles and froths!") //'froths' sounds painful when used with SKIN.
H.Knockdown(60)
addtimer(CALLBACK(src, .proc/mutate, H), 30)
addtimer(CALLBACK(src,PROC_REF(mutate), H), 30)
return
/datum/reagent/mutationtoxin/proc/mutate(mob/living/carbon/human/H)
@@ -112,11 +112,11 @@
var/obj/item/slime_extract/M = holder.my_atom
deltimer(M.qdel_timer)
..()
M.qdel_timer = addtimer(CALLBACK(src, .proc/delete_extract, holder), 55, TIMER_STOPPABLE)
M.qdel_timer = addtimer(CALLBACK(src,PROC_REF(delete_extract), holder), 55, TIMER_STOPPABLE)
/datum/chemical_reaction/slime/slimemobspawn/proc/summon_mobs(datum/reagents/holder, turf/T)
T.visible_message("<span class='danger'>The slime extract begins to vibrate violently!</span>")
addtimer(CALLBACK(src, .proc/chemical_mob_spawn, holder, 5, "Gold Slime", HOSTILE_SPAWN), 50)
addtimer(CALLBACK(src,PROC_REF(chemical_mob_spawn), holder, 5, "Gold Slime", HOSTILE_SPAWN), 50)
/datum/chemical_reaction/slime/slimemobspawn/lesser
name = "Slime Crit Lesser"
@@ -125,7 +125,7 @@
/datum/chemical_reaction/slime/slimemobspawn/lesser/summon_mobs(datum/reagents/holder, turf/T)
T.visible_message("<span class='danger'>The slime extract begins to vibrate violently!</span>")
addtimer(CALLBACK(src, .proc/chemical_mob_spawn, holder, 3, "Lesser Gold Slime", HOSTILE_SPAWN, "neutral"), 50)
addtimer(CALLBACK(src,PROC_REF(chemical_mob_spawn), holder, 3, "Lesser Gold Slime", HOSTILE_SPAWN, "neutral"), 50)
/datum/chemical_reaction/slime/slimemobspawn/friendly
name = "Slime Crit Friendly"
@@ -134,7 +134,7 @@
/datum/chemical_reaction/slime/slimemobspawn/friendly/summon_mobs(datum/reagents/holder, turf/T)
T.visible_message("<span class='danger'>The slime extract begins to vibrate adorably!</span>")
addtimer(CALLBACK(src, .proc/chemical_mob_spawn, holder, 1, "Friendly Gold Slime", FRIENDLY_SPAWN, "neutral"), 50)
addtimer(CALLBACK(src,PROC_REF(chemical_mob_spawn), holder, 1, "Friendly Gold Slime", FRIENDLY_SPAWN, "neutral"), 50)
//Silver
/datum/chemical_reaction/slime/slimebork
@@ -217,11 +217,11 @@
/datum/chemical_reaction/slime/slimefreeze/on_reaction(datum/reagents/holder)
var/turf/T = get_turf(holder.my_atom)
T.visible_message("<span class='danger'>The slime extract starts to feel extremely cold!</span>")
addtimer(CALLBACK(src, .proc/freeze, holder), 50)
addtimer(CALLBACK(src,PROC_REF(freeze), holder), 50)
var/obj/item/slime_extract/M = holder.my_atom
deltimer(M.qdel_timer)
..()
M.qdel_timer = addtimer(CALLBACK(src, .proc/delete_extract, holder), 55, TIMER_STOPPABLE)
M.qdel_timer = addtimer(CALLBACK(src,PROC_REF(delete_extract), holder), 55, TIMER_STOPPABLE)
/datum/chemical_reaction/slime/slimefreeze/proc/freeze(datum/reagents/holder)
if(holder && holder.my_atom)
@@ -261,11 +261,11 @@
/datum/chemical_reaction/slime/slimefire/on_reaction(datum/reagents/holder)
var/turf/T = get_turf(holder.my_atom)
T.visible_message("<span class='danger'>The slime extract begins to vibrate adorably!</span>")
addtimer(CALLBACK(src, .proc/slime_burn, holder), 50)
addtimer(CALLBACK(src,PROC_REF(slime_burn), holder), 50)
var/obj/item/slime_extract/M = holder.my_atom
deltimer(M.qdel_timer)
..()
M.qdel_timer = addtimer(CALLBACK(src, .proc/delete_extract, holder), 55, TIMER_STOPPABLE)
M.qdel_timer = addtimer(CALLBACK(src,PROC_REF(delete_extract), holder), 55, TIMER_STOPPABLE)
/datum/chemical_reaction/slime/slimefire/proc/slime_burn(datum/reagents/holder)
if(holder && holder.my_atom)
@@ -442,11 +442,11 @@
message_admins("Slime Explosion reaction started at [ADMIN_VERBOSEJMP(T)]. Last Fingerprint: [touch_msg]")
log_game("Slime Explosion reaction started at [AREACOORD(T)]. Last Fingerprint: [lastkey ? lastkey : "N/A"].")
T.visible_message("<span class='danger'>The slime extract begins to vibrate violently !</span>")
addtimer(CALLBACK(src, .proc/boom, holder), 50)
addtimer(CALLBACK(src,PROC_REF(boom), holder), 50)
var/obj/item/slime_extract/M = holder.my_atom
deltimer(M.qdel_timer)
..()
M.qdel_timer = addtimer(CALLBACK(src, .proc/delete_extract, holder), 55, TIMER_STOPPABLE)
M.qdel_timer = addtimer(CALLBACK(src,PROC_REF(delete_extract), holder), 55, TIMER_STOPPABLE)
/datum/chemical_reaction/slime/slimeexplosion/proc/boom(datum/reagents/holder)
if(holder && holder.my_atom)
@@ -105,7 +105,7 @@
reagents.maximum_volume = 0 //Makes them useless afterwards
reagent_flags = NONE
update_icon()
addtimer(CALLBACK(src, .proc/cyborg_recharge, user), 80)
addtimer(CALLBACK(src,PROC_REF(cyborg_recharge), user), 80)
/obj/item/reagent_containers/hypospray/medipen/proc/cyborg_recharge(mob/living/silicon/robot/user)
if(!reagents.total_volume && iscyborg(user))
@@ -48,7 +48,7 @@
var/makes_me_think = pick(strings("redpill.json", "redpill_questions"))
if(icon_state == "pill4" && prob(10)) //you take the red pill - you stay in Wonderland, and I show you how deep the rabbit hole goes
addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, M, "<span class='notice'>[makes_me_think]</span>"), 50)
addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(to_chat), M, "<span class='notice'>[makes_me_think]</span>"), 50)
log_combat(user, M, "fed", reagents.log_list())
if(reagents.total_volume)