mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 18:32:03 +00:00
@@ -41,9 +41,7 @@
|
||||
Retaliate()
|
||||
|
||||
if(enemies.len && prob(10))
|
||||
enemies = list()
|
||||
LoseTarget()
|
||||
src.visible_message("<span class='notice'>[src] calms down.</span>")
|
||||
Calm()
|
||||
|
||||
if(stat == CONSCIOUS)
|
||||
if(udder && prob(5))
|
||||
@@ -62,6 +60,11 @@
|
||||
if(locate(/obj/effect/plantsegment) in step)
|
||||
Move(step)
|
||||
|
||||
/mob/living/simple_animal/hostile/retaliate/goat/proc/Calm()
|
||||
enemies.Cut()
|
||||
LoseTarget()
|
||||
src.visible_message("<span class='notice'>[src] calms down.</span>")
|
||||
|
||||
/mob/living/simple_animal/hostile/retaliate/goat/Retaliate()
|
||||
if(!stat)
|
||||
..()
|
||||
@@ -77,14 +80,25 @@
|
||||
say("Nom")
|
||||
|
||||
/mob/living/simple_animal/hostile/retaliate/goat/attackby(var/obj/item/O as obj, var/mob/user as mob)
|
||||
if(stat == CONSCIOUS && istype(O, /obj/item/weapon/reagent_containers/glass))
|
||||
user.visible_message("<span class='notice'>[user] milks [src] using \the [O].</span>")
|
||||
var/obj/item/weapon/reagent_containers/glass/G = O
|
||||
var/transfered = udder.trans_id_to(G, MILK, rand(5,10))
|
||||
if(G.reagents.total_volume >= G.volume)
|
||||
to_chat(user, "<span class='warning'>[O] is full.</span>")
|
||||
if(!transfered)
|
||||
to_chat(user, "<span class='warning'>The udder is dry. Wait a bit longer...</span>")
|
||||
if(stat == CONSCIOUS)
|
||||
if(istype(O, /obj/item/weapon/reagent_containers/glass))
|
||||
user.visible_message("<span class='notice'>[user] milks [src] using \the [O].</span>")
|
||||
var/obj/item/weapon/reagent_containers/glass/G = O
|
||||
var/transfered = udder.trans_id_to(G, MILK, rand(5,10))
|
||||
if(G.reagents.total_volume >= G.volume)
|
||||
to_chat(user, "<span class='warning'>[O] is full.</span>")
|
||||
if(!transfered)
|
||||
to_chat(user, "<span class='warning'>The udder is dry. Wait a bit longer...</span>")
|
||||
else if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/grown/cabbage))
|
||||
Calm()
|
||||
playsound(src, 'sound/items/eatfood.ogg', rand(10,50), 1)
|
||||
visible_message("<span class='notice'>[user] feeds \the [O] to [src].</span>")
|
||||
var/image/heart = image('icons/mob/animal.dmi',src,"heart-ani2")
|
||||
heart.plane = ABOVE_HUMAN_PLANE
|
||||
flick_overlay(heart, list(user.client), 20)
|
||||
qdel(O)
|
||||
else
|
||||
..()
|
||||
else
|
||||
..()
|
||||
//cow
|
||||
|
||||
@@ -7268,7 +7268,11 @@ var/global/list/tonio_doesnt_remove=list("tonio", "blood")
|
||||
var/mob/living/simple_animal/hostile/H = M
|
||||
switch(H.stance)
|
||||
if(HOSTILE_STANCE_ATTACK,HOSTILE_STANCE_ATTACKING)
|
||||
return
|
||||
if(istype(M,/mob/living/simple_animal/hostile/retaliate/goat))
|
||||
var/mob/living/simple_animal/hostile/retaliate/goat/G = M
|
||||
G.Calm()
|
||||
else
|
||||
return
|
||||
M.start_walk_to(get_turf(data["source"]),1,6)
|
||||
|
||||
/datum/reagent/incense/booze
|
||||
|
||||
Reference in New Issue
Block a user