Merge pull request #6520 from Citadel-Station-13/upstream-merge-37313

[MIRROR] Makes the experimentor only output one copy of something.
This commit is contained in:
deathride58
2018-04-27 09:37:33 +00:00
committed by GitHub
+2 -6
View File
@@ -32,7 +32,6 @@
var/badThingCoeff = 0
var/resetTime = 15
var/cloneMode = FALSE
var/cloneCount = 0
var/list/item_reactions = list()
var/list/valid_items = list() //valid items for special reactions like transforming
var/list/critical_items = list() //items that can cause critical reactions
@@ -207,13 +206,11 @@
/obj/machinery/rnd/experimentor/proc/ejectItem(delete=FALSE)
if(loaded_item)
if(cloneMode && cloneCount > 0)
if(cloneMode)
visible_message("<span class='notice'>A duplicate [loaded_item] pops out!</span>")
var/type_to_make = loaded_item.type
new type_to_make(get_turf(pick(oview(1,src))))
--cloneCount
if(cloneCount == 0)
cloneMode = FALSE
cloneMode = FALSE
return
var/turf/dropturf = get_turf(pick(view(1,src)))
if(!dropturf) //Failsafe to prevent the object being lost in the void forever.
@@ -276,7 +273,6 @@
if(prob(EFFECT_PROB_LOW) && criticalReaction)
visible_message("[exp_on] has activated an unknown subroutine!")
cloneMode = TRUE
cloneCount = badThingCoeff
investigate_log("Experimentor has made a clone of [exp_on]", INVESTIGATE_EXPERIMENTOR)
ejectItem()
else if(prob(EFFECT_PROB_VERYLOW-badThingCoeff))