diff --git a/code/modules/mob/holder.dm b/code/modules/mob/holder.dm index 110220c0f80..864e48771a7 100644 --- a/code/modules/mob/holder.dm +++ b/code/modules/mob/holder.dm @@ -63,14 +63,17 @@ //Mob procs and vars for scooping up /mob/living/var/holder_type -/mob/living/proc/get_scooped(mob/living/carbon/grabber) - if(!holder_type) return +/mob/living/proc/get_scooped(mob/living/carbon/grabber, has_variant = FALSE) + if(!holder_type) + return var/obj/item/holder/H = new holder_type(loc) - src.forceMove(H) + forceMove(H) H.name = name - if(istype(H, /obj/item/holder/mouse)) H.icon_state = icon_state - if(desc) H.desc = desc + if(has_variant) + H.icon_state = icon_state + if(desc) + H.desc = desc H.attack_hand(grabber) to_chat(grabber, "You scoop up \the [src].") @@ -110,3 +113,9 @@ desc = "Awww a cute bunny" icon = 'icons/mob/animal.dmi' icon_state = "m_bunny" + +/obj/item/holder/chicken + name = "chicken" + desc = "Hopefully the eggs are good this season." + icon = 'icons/mob/animal.dmi' + icon_state = "chicken_brown" diff --git a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm index 92e2b09a7a4..93c464f10c8 100644 --- a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm +++ b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm @@ -272,6 +272,7 @@ GLOBAL_VAR_INIT(chicken_count, 0) var/icon_prefix = "chicken" pass_flags = PASSTABLE | PASSMOB mob_size = MOB_SIZE_SMALL + holder_type = /obj/item/holder/chicken can_hide = 1 can_collar = 1 var/list/feedMessages = list("It clucks happily.","It clucks happily.") @@ -312,6 +313,11 @@ GLOBAL_VAR_INIT(chicken_count, 0) else ..() +/mob/living/simple_animal/chicken/attack_hand(mob/living/carbon/human/M) + if(M.a_intent == INTENT_HELP) + get_scooped(M, TRUE) + ..() + /mob/living/simple_animal/chicken/Life(seconds, times_fired) . = ..() if((. && prob(3) && eggsleft > 0) && egg_type) diff --git a/code/modules/mob/living/simple_animal/friendly/mouse.dm b/code/modules/mob/living/simple_animal/friendly/mouse.dm index 1643b09a3dc..e17ce00c171 100644 --- a/code/modules/mob/living/simple_animal/friendly/mouse.dm +++ b/code/modules/mob/living/simple_animal/friendly/mouse.dm @@ -83,7 +83,7 @@ /mob/living/simple_animal/mouse/attack_hand(mob/living/carbon/human/M as mob) if(M.a_intent == INTENT_HELP) - get_scooped(M) + get_scooped(M, TRUE) ..() /mob/living/simple_animal/mouse/start_pulling(atom/movable/AM, state, force = pull_force, show_message = FALSE)//Prevents mouse from pulling things diff --git a/icons/mob/inhands/items_lefthand.dmi b/icons/mob/inhands/items_lefthand.dmi index d33b7e04f59..17ff5c2499f 100644 Binary files a/icons/mob/inhands/items_lefthand.dmi and b/icons/mob/inhands/items_lefthand.dmi differ diff --git a/icons/mob/inhands/items_righthand.dmi b/icons/mob/inhands/items_righthand.dmi index 578d21a8ee3..47b1feea512 100644 Binary files a/icons/mob/inhands/items_righthand.dmi and b/icons/mob/inhands/items_righthand.dmi differ