mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-31 07:57:47 +01:00
Make Gutlunches and Gubbucks reproduce properly
This commit is contained in:
@@ -16,8 +16,8 @@
|
||||
turns_per_move = 5
|
||||
see_in_dark = 6
|
||||
mob_size = MOB_SIZE_SMALL
|
||||
simplespecies = /mob/living/simple_animal/pet/cat
|
||||
childtype = /mob/living/simple_animal/pet/cat/kitten
|
||||
animal_species = /mob/living/simple_animal/pet/cat
|
||||
childtype = list(/mob/living/simple_animal/pet/cat/kitten)
|
||||
butcher_results = list(/obj/item/reagent_containers/food/snacks/meat = 3)
|
||||
response_help = "pets"
|
||||
response_disarm = "gently pushes aside"
|
||||
|
||||
@@ -22,8 +22,8 @@
|
||||
response_disarm = "bops"
|
||||
response_harm = "kicks"
|
||||
see_in_dark = 5
|
||||
childtype = /mob/living/simple_animal/pet/corgi/puppy
|
||||
simplespecies = /mob/living/simple_animal/pet/corgi
|
||||
childtype = list(/mob/living/simple_animal/pet/corgi)
|
||||
animal_species = /mob/living/simple_animal/pet/corgi
|
||||
gold_core_spawnable = CHEM_MOB_SPAWN_FRIENDLY
|
||||
var/shaved = 0
|
||||
var/obj/item/inventory_head
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
loot = list(/obj/effect/decal/cleanable/blood/gibs)
|
||||
deathmessage = "is pulped into bugmash."
|
||||
|
||||
simplespecies = /mob/living/simple_animal/hostile/asteroid/gutlunch
|
||||
animal_species = /mob/living/simple_animal/hostile/asteroid/gutlunch
|
||||
childtype = list(/mob/living/simple_animal/hostile/asteroid/gutlunch/gubbuck = 45, /mob/living/simple_animal/hostile/asteroid/gutlunch/guthen = 55)
|
||||
|
||||
wanted_objects = list(/obj/effect/decal/cleanable/blood/gibs)
|
||||
|
||||
@@ -62,10 +62,9 @@
|
||||
var/can_collar = 0 // can add collar to mob or not
|
||||
|
||||
//Hot simple_animal baby making vars
|
||||
|
||||
var/childtype = null
|
||||
var/scan_ready = 1
|
||||
var/simplespecies //Sorry, no spider+corgi buttbabies.
|
||||
var/list/childtype = null
|
||||
var/next_scan_time = 0
|
||||
var/animal_species //Sorry, no spider+corgi buttbabies.
|
||||
|
||||
var/gold_core_spawnable = CHEM_MOB_SPAWN_INVALID //if CHEM_MOB_SPAWN_HOSTILE can be spawned by plasma with gold core, CHEM_MOB_SPAWN_FRIENDLY are 'friendlies' spawned with blood
|
||||
|
||||
@@ -446,27 +445,32 @@
|
||||
|
||||
|
||||
/mob/living/simple_animal/proc/make_babies() // <3 <3 <3
|
||||
if(gender != FEMALE || stat || !scan_ready || !childtype || !simplespecies)
|
||||
return
|
||||
scan_ready = 0
|
||||
spawn(400)
|
||||
scan_ready = 1
|
||||
var/alone = 1
|
||||
if(gender != FEMALE || stat || next_scan_time > world.time || !childtype || !animal_species || !SSticker.IsRoundInProgress())
|
||||
return FALSE
|
||||
next_scan_time = world.time + 400
|
||||
|
||||
var/alone = TRUE
|
||||
var/mob/living/simple_animal/partner
|
||||
var/children = 0
|
||||
|
||||
for(var/mob/M in oview(7, src))
|
||||
if(istype(M, childtype)) //Check for children FIRST.
|
||||
if(M.stat != CONSCIOUS) //Check if it's conscious FIRST.
|
||||
continue
|
||||
else if(istype(M, childtype)) //Check for children SECOND.
|
||||
children++
|
||||
else if(istype(M, simplespecies))
|
||||
if(M.client)
|
||||
else if(istype(M, animal_species))
|
||||
if(M.ckey)
|
||||
continue
|
||||
else if(!istype(M, childtype) && M.gender == MALE) //Better safe than sorry ;_;
|
||||
partner = M
|
||||
else if(istype(M, /mob/))
|
||||
alone = 0
|
||||
continue
|
||||
else if(isliving(M) && !faction_check_mob(M)) //shyness check. we're not shy in front of things that share a faction with us.
|
||||
return //we never mate when not alone, so just abort early
|
||||
|
||||
if(alone && partner && children < 3)
|
||||
return new childtype(loc)
|
||||
var/childspawn = pickweight(childtype)
|
||||
var/turf/target = get_turf(loc)
|
||||
if(target)
|
||||
return new childspawn(target)
|
||||
|
||||
/mob/living/simple_animal/say_quote(var/message)
|
||||
var/verb = "says"
|
||||
|
||||
Reference in New Issue
Block a user