[MIRROR] Nerfs monkey spam (#6084)
* Merge pull request #36380 from vuonojenmustaturska/sauerbraten Nerfs monkey spam * Nerfs monkey spam
This commit is contained in:
committed by
Poojawa
parent
33f24d9e2d
commit
80d5cc2884
@@ -6,6 +6,8 @@ SUBSYSTEM_DEF(mobs)
|
|||||||
|
|
||||||
var/list/currentrun = list()
|
var/list/currentrun = list()
|
||||||
var/static/list/clients_by_zlevel[][]
|
var/static/list/clients_by_zlevel[][]
|
||||||
|
var/static/list/cubemonkeys = list()
|
||||||
|
var/cubemonkeycap = 20
|
||||||
|
|
||||||
/datum/controller/subsystem/mobs/stat_entry()
|
/datum/controller/subsystem/mobs/stat_entry()
|
||||||
..("P:[GLOB.mob_living_list.len]")
|
..("P:[GLOB.mob_living_list.len]")
|
||||||
|
|||||||
@@ -185,10 +185,13 @@
|
|||||||
foodtype = MEAT | SUGAR
|
foodtype = MEAT | SUGAR
|
||||||
|
|
||||||
/obj/item/reagent_containers/food/snacks/monkeycube/proc/Expand()
|
/obj/item/reagent_containers/food/snacks/monkeycube/proc/Expand()
|
||||||
visible_message("<span class='notice'>[src] expands!</span>")
|
|
||||||
var/mob/spammer = get_mob_by_key(fingerprintslast)
|
var/mob/spammer = get_mob_by_key(fingerprintslast)
|
||||||
var/mob/living/carbon/monkey/bananas = new(drop_location())
|
var/mob/living/carbon/monkey/bananas = new(drop_location(), TRUE, spammer)
|
||||||
bananas.log_message("Spawned via [src] at [COORD(src)], Last attached mob: [key_name(spammer)].", INDIVIDUAL_ATTACK_LOG)
|
if (!QDELETED(bananas))
|
||||||
|
visible_message("<span class='notice'>[src] expands!</span>")
|
||||||
|
bananas.log_message("Spawned via [src] at [COORD(src)], Last attached mob: [key_name(spammer)].", INDIVIDUAL_ATTACK_LOG)
|
||||||
|
else if (!spammer) // Visible message in case there are no fingerprints
|
||||||
|
visible_message("<span class='notice'>[src] fails to expand!</span>")
|
||||||
qdel(src)
|
qdel(src)
|
||||||
|
|
||||||
/obj/item/reagent_containers/food/snacks/enchiladas
|
/obj/item/reagent_containers/food/snacks/enchiladas
|
||||||
@@ -286,4 +289,4 @@
|
|||||||
name = "double rat-kebab"
|
name = "double rat-kebab"
|
||||||
icon_state = "doubleratkebab"
|
icon_state = "doubleratkebab"
|
||||||
tastes = list("rat meat" = 2, "metal" = 1)
|
tastes = list("rat meat" = 2, "metal" = 1)
|
||||||
bonus_reagents = list("nutriment" = 6, "vitamin" = 2)
|
bonus_reagents = list("nutriment" = 6, "vitamin" = 2)
|
||||||
|
|||||||
@@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
/mob/living/carbon/monkey/Initialize()
|
/mob/living/carbon/monkey/Initialize(mapload, cubespawned=FALSE, mob/spawner)
|
||||||
verbs += /mob/living/proc/mob_sleep
|
verbs += /mob/living/proc/mob_sleep
|
||||||
verbs += /mob/living/proc/lay_down
|
verbs += /mob/living/proc/lay_down
|
||||||
|
|
||||||
@@ -31,9 +31,20 @@
|
|||||||
|
|
||||||
. = ..()
|
. = ..()
|
||||||
|
|
||||||
|
if (cubespawned)
|
||||||
|
if (LAZYLEN(SSmobs.cubemonkeys) > SSmobs.cubemonkeycap)
|
||||||
|
if (spawner)
|
||||||
|
to_chat(spawner, "<span class='warning'>Bluespace harmonics prevent the spawning of more than [SSmobs.cubemonkeycap] monkeys on the station at one time!</span>")
|
||||||
|
return INITIALIZE_HINT_QDEL
|
||||||
|
SSmobs.cubemonkeys += src
|
||||||
|
|
||||||
create_dna(src)
|
create_dna(src)
|
||||||
dna.initialize_dna(random_blood_type())
|
dna.initialize_dna(random_blood_type())
|
||||||
|
|
||||||
|
/mob/living/carbon/monkey/Destroy()
|
||||||
|
SSmobs.cubemonkeys -= src
|
||||||
|
return ..()
|
||||||
|
|
||||||
/mob/living/carbon/monkey/create_internal_organs()
|
/mob/living/carbon/monkey/create_internal_organs()
|
||||||
internal_organs += new /obj/item/organ/appendix
|
internal_organs += new /obj/item/organ/appendix
|
||||||
internal_organs += new /obj/item/organ/lungs
|
internal_organs += new /obj/item/organ/lungs
|
||||||
|
|||||||
@@ -168,10 +168,11 @@
|
|||||||
|
|
||||||
if(GLOB.cameranet.checkTurfVis(remote_eye.loc))
|
if(GLOB.cameranet.checkTurfVis(remote_eye.loc))
|
||||||
if(X.monkeys >= 1)
|
if(X.monkeys >= 1)
|
||||||
var/mob/living/carbon/monkey/food = new /mob/living/carbon/monkey(remote_eye.loc)
|
var/mob/living/carbon/monkey/food = new /mob/living/carbon/monkey(remote_eye.loc, TRUE, owner)
|
||||||
food.LAssailant = C
|
if (!QDELETED(food))
|
||||||
X.monkeys --
|
food.LAssailant = C
|
||||||
to_chat(owner, "[X] now has [X.monkeys] monkeys left.")
|
X.monkeys --
|
||||||
|
to_chat(owner, "[X] now has [X.monkeys] monkeys left.")
|
||||||
else
|
else
|
||||||
to_chat(owner, "<span class='notice'>Target is not near a camera. Cannot proceed.</span>")
|
to_chat(owner, "<span class='notice'>Target is not near a camera. Cannot proceed.</span>")
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user