From 433c441fd827ebfefd868a83bbcc99ddf907e2d0 Mon Sep 17 00:00:00 2001 From: Terilia Date: Sat, 19 Jan 2019 17:59:22 +0000 Subject: [PATCH 1/8] Cak submission && "Sprinkles" fix --- .../food_and_drinks/food/foods/baked_goods.dm | 2 +- .../recipes/tablecraft/recipes_table.dm | 8 ++ .../living/simple_animal/animal_defense.dm | 2 +- .../mob/living/simple_animal/friendly/cat.dm | 91 ++++++++++++++++++ .../mob/living/simple_animal/simple_animal.dm | 1 + icons/mob/pets.dmi | Bin 65704 -> 67279 bytes 6 files changed, 102 insertions(+), 2 deletions(-) diff --git a/code/modules/food_and_drinks/food/foods/baked_goods.dm b/code/modules/food_and_drinks/food/foods/baked_goods.dm index 1aedaf3f4c7..1115b42014e 100644 --- a/code/modules/food_and_drinks/food/foods/baked_goods.dm +++ b/code/modules/food_and_drinks/food/foods/baked_goods.dm @@ -345,7 +345,7 @@ /obj/item/reagent_containers/food/snacks/donut/sprinkles name = "frosted donut" icon_state = "donut2" - list_reagents = list("nutriment" = 3, "sugar" = 2, "spinkles" = 2) + list_reagents = list("nutriment" = 3, "sugar" = 2, "sprinkles" = 2) filling_color = "#FF69B4" randomized_sprinkles = 0 diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm index 8d91fd14258..9bfb1eb4260 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm @@ -252,4 +252,12 @@ ) tools = list(/obj/item/kitchen/sushimat) result = /obj/item/reagent_containers/food/snacks/sliceable/Tai_maki + category = CAT_FOOD + +/datum/crafting_recipe/food/cak + name = "Living cat/cake hybrid" + reqs = list( + /obj/item/organ/internal/heart = 1, + ) + result = /mob/living/simple_animal/pet/cat/cak category = CAT_FOOD \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/animal_defense.dm b/code/modules/mob/living/simple_animal/animal_defense.dm index 309a13468a3..636df89885d 100644 --- a/code/modules/mob/living/simple_animal/animal_defense.dm +++ b/code/modules/mob/living/simple_animal/animal_defense.dm @@ -13,7 +13,7 @@ if(INTENT_HARM, INTENT_DISARM) M.do_attack_animation(src, ATTACK_EFFECT_PUNCH) visible_message("[M] [response_harm] [src]!") - playsound(loc, "punch", 25, 1, -1) + playsound(loc, attacked_sound, 25, 1, -1) attack_threshold_check(harm_intent_damage) add_attack_logs(M, src, "Melee attacked with fists") updatehealth() diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index e1d61c5aa55..676dbccc628 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -177,3 +177,94 @@ minbodytemp = 0 melee_damage_lower = 5 melee_damage_upper = 15 + +/mob/living/simple_animal/pet/cat/cak + name = "Keeki" + desc = "It's a cat made out of cake. It looks like a brain would fit into its head." + icon_state = "cak" + icon_living = "cak" + icon_resting = "cak_rest" + icon_dead = "cak_dead" + health = 50 + maxHealth = 50 + harm_intent_damage = 10 + butcher_results = list( + /obj/item/organ/internal/heart = 1, + /obj/item/reagent_containers/food/snacks/birthdaycakeslice = 3, + /obj/item/reagent_containers/food/snacks/meat = 2 + ) + response_harm = "takes a bite out of" + attacked_sound = "sound/items/eatfood.ogg" + deathmessage = "loses its false life and collapses!" + death_sound = "bodyfall" + var/obj/item/organ/internal/brain/brain = null + +/mob/living/simple_animal/pet/cat/cak/Life() + ..() + if(stat) + return + if(health < maxHealth) + adjustBruteLoss(-4) + for(var/obj/item/reagent_containers/food/snacks/donut/D in range(1, src)) + if(D.icon_state != "donut2") + D.name = "frosted donut" + D.icon_state = "donut2" + D.reagents.add_reagent("sprinkles", 2) + D.filling_color = "#FF69B4" + +/mob/living/simple_animal/pet/cat/cak/attackby(obj/item/O, mob/living/user, params) + if(istype(O, /obj/item/organ/internal/brain)) + var/obj/item/organ/internal/brain/B = O + if(brain) //There's already a brain in it. + to_chat(user, "There's already a brain in [src]!") + return + if(!B.brainmob.key) + var/ghost_can_reenter = 0 + if(B.brainmob.mind) + for(var/mob/dead/observer/G in GLOB.player_list) + if(G.can_reenter_corpse && G.mind == B.brainmob.mind) + ghost_can_reenter = 1 + break + for(var/mob/living/simple_animal/S in GLOB.player_list) + if(S in GLOB.respawnable_list) + ghost_can_reenter = 1 + break + if(!ghost_can_reenter) + to_chat(user, "[B] is completely unresponsive; there's no point.") + return + + to_chat(user, "You install [B] in [src]!") + + user.drop_item() + B.forceMove(src) + brain = B + transfer_personality(B) + + return 1 + + + if(istype(O, /obj/item/kitchen/knife)) + to_chat(user, "You cut out the brain from [src].") + eject_brain() + return 1 + + else if(user.a_intent == INTENT_HARM && user.reagents) + user.reagents.add_reagent("nutriment", 0.4) + user.reagents.add_reagent("vitamin", 0.4) + +/mob/living/simple_animal/pet/cat/cak/proc/transfer_personality(obj/item/organ/internal/brain/B) + mind = B.brainmob.mind + mind.key = B.brainmob.key + ckey = B.brainmob.ckey + name = "Keeki" + desc = "It's a cat made out of cake. It looks like a real brain is in it's head." + rename_self("cake cat") + +/mob/living/simple_animal/pet/cat/cak/proc/eject_brain() + var/turf/T = get_turf(src) + brain.forceMove(T) + desc = "It's a cat made out of cake. It looks like a brain would fit into its head." + if(mind) + mind.transfer_to(brain.brainmob) + brain = null + name = "Keeki" \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index a5e7bad699f..27e544e56d6 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -76,6 +76,7 @@ var/sentience_type = SENTIENCE_ORGANIC // Sentience type, for slime potions var/list/loot = list() //list of things spawned at mob's loc when it dies var/del_on_death = 0 //causes mob to be deleted on death, useful for mobs that spawn lootable corpses + var/attacked_sound = "punch" var/deathmessage = "" var/death_sound = null //The sound played on death diff --git a/icons/mob/pets.dmi b/icons/mob/pets.dmi index 4f46db21354aff38d94a9d29cd6e19d2be5b4cd3..3c3cbddaf931daf1ea5c9417d87896ac92f28290 100644 GIT binary patch delta 22463 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 sMvqgNC(Z@v_dZZ*KqV51L=p`C0hPnO$M-tkeE Date: Sat, 19 Jan 2019 17:59:22 +0000 Subject: [PATCH 2/8] Cak submission && "Sprinkles" fix --- .../food_and_drinks/food/foods/baked_goods.dm | 2 +- .../recipes/tablecraft/recipes_table.dm | 8 ++ .../living/simple_animal/animal_defense.dm | 2 +- .../mob/living/simple_animal/friendly/cat.dm | 91 ++++++++++++++++++ .../mob/living/simple_animal/simple_animal.dm | 1 + icons/mob/pets.dmi | Bin 65704 -> 67279 bytes 6 files changed, 102 insertions(+), 2 deletions(-) diff --git a/code/modules/food_and_drinks/food/foods/baked_goods.dm b/code/modules/food_and_drinks/food/foods/baked_goods.dm index 1aedaf3f4c7..1115b42014e 100644 --- a/code/modules/food_and_drinks/food/foods/baked_goods.dm +++ b/code/modules/food_and_drinks/food/foods/baked_goods.dm @@ -345,7 +345,7 @@ /obj/item/reagent_containers/food/snacks/donut/sprinkles name = "frosted donut" icon_state = "donut2" - list_reagents = list("nutriment" = 3, "sugar" = 2, "spinkles" = 2) + list_reagents = list("nutriment" = 3, "sugar" = 2, "sprinkles" = 2) filling_color = "#FF69B4" randomized_sprinkles = 0 diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm index 8d91fd14258..9bfb1eb4260 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm @@ -252,4 +252,12 @@ ) tools = list(/obj/item/kitchen/sushimat) result = /obj/item/reagent_containers/food/snacks/sliceable/Tai_maki + category = CAT_FOOD + +/datum/crafting_recipe/food/cak + name = "Living cat/cake hybrid" + reqs = list( + /obj/item/organ/internal/heart = 1, + ) + result = /mob/living/simple_animal/pet/cat/cak category = CAT_FOOD \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/animal_defense.dm b/code/modules/mob/living/simple_animal/animal_defense.dm index 309a13468a3..636df89885d 100644 --- a/code/modules/mob/living/simple_animal/animal_defense.dm +++ b/code/modules/mob/living/simple_animal/animal_defense.dm @@ -13,7 +13,7 @@ if(INTENT_HARM, INTENT_DISARM) M.do_attack_animation(src, ATTACK_EFFECT_PUNCH) visible_message("[M] [response_harm] [src]!") - playsound(loc, "punch", 25, 1, -1) + playsound(loc, attacked_sound, 25, 1, -1) attack_threshold_check(harm_intent_damage) add_attack_logs(M, src, "Melee attacked with fists") updatehealth() diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index e1d61c5aa55..676dbccc628 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -177,3 +177,94 @@ minbodytemp = 0 melee_damage_lower = 5 melee_damage_upper = 15 + +/mob/living/simple_animal/pet/cat/cak + name = "Keeki" + desc = "It's a cat made out of cake. It looks like a brain would fit into its head." + icon_state = "cak" + icon_living = "cak" + icon_resting = "cak_rest" + icon_dead = "cak_dead" + health = 50 + maxHealth = 50 + harm_intent_damage = 10 + butcher_results = list( + /obj/item/organ/internal/heart = 1, + /obj/item/reagent_containers/food/snacks/birthdaycakeslice = 3, + /obj/item/reagent_containers/food/snacks/meat = 2 + ) + response_harm = "takes a bite out of" + attacked_sound = "sound/items/eatfood.ogg" + deathmessage = "loses its false life and collapses!" + death_sound = "bodyfall" + var/obj/item/organ/internal/brain/brain = null + +/mob/living/simple_animal/pet/cat/cak/Life() + ..() + if(stat) + return + if(health < maxHealth) + adjustBruteLoss(-4) + for(var/obj/item/reagent_containers/food/snacks/donut/D in range(1, src)) + if(D.icon_state != "donut2") + D.name = "frosted donut" + D.icon_state = "donut2" + D.reagents.add_reagent("sprinkles", 2) + D.filling_color = "#FF69B4" + +/mob/living/simple_animal/pet/cat/cak/attackby(obj/item/O, mob/living/user, params) + if(istype(O, /obj/item/organ/internal/brain)) + var/obj/item/organ/internal/brain/B = O + if(brain) //There's already a brain in it. + to_chat(user, "There's already a brain in [src]!") + return + if(!B.brainmob.key) + var/ghost_can_reenter = 0 + if(B.brainmob.mind) + for(var/mob/dead/observer/G in GLOB.player_list) + if(G.can_reenter_corpse && G.mind == B.brainmob.mind) + ghost_can_reenter = 1 + break + for(var/mob/living/simple_animal/S in GLOB.player_list) + if(S in GLOB.respawnable_list) + ghost_can_reenter = 1 + break + if(!ghost_can_reenter) + to_chat(user, "[B] is completely unresponsive; there's no point.") + return + + to_chat(user, "You install [B] in [src]!") + + user.drop_item() + B.forceMove(src) + brain = B + transfer_personality(B) + + return 1 + + + if(istype(O, /obj/item/kitchen/knife)) + to_chat(user, "You cut out the brain from [src].") + eject_brain() + return 1 + + else if(user.a_intent == INTENT_HARM && user.reagents) + user.reagents.add_reagent("nutriment", 0.4) + user.reagents.add_reagent("vitamin", 0.4) + +/mob/living/simple_animal/pet/cat/cak/proc/transfer_personality(obj/item/organ/internal/brain/B) + mind = B.brainmob.mind + mind.key = B.brainmob.key + ckey = B.brainmob.ckey + name = "Keeki" + desc = "It's a cat made out of cake. It looks like a real brain is in it's head." + rename_self("cake cat") + +/mob/living/simple_animal/pet/cat/cak/proc/eject_brain() + var/turf/T = get_turf(src) + brain.forceMove(T) + desc = "It's a cat made out of cake. It looks like a brain would fit into its head." + if(mind) + mind.transfer_to(brain.brainmob) + brain = null + name = "Keeki" \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index a5e7bad699f..27e544e56d6 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -76,6 +76,7 @@ var/sentience_type = SENTIENCE_ORGANIC // Sentience type, for slime potions var/list/loot = list() //list of things spawned at mob's loc when it dies var/del_on_death = 0 //causes mob to be deleted on death, useful for mobs that spawn lootable corpses + var/attacked_sound = "punch" var/deathmessage = "" var/death_sound = null //The sound played on death diff --git a/icons/mob/pets.dmi b/icons/mob/pets.dmi index 4f46db21354aff38d94a9d29cd6e19d2be5b4cd3..3c3cbddaf931daf1ea5c9417d87896ac92f28290 100644 GIT binary patch delta 22463 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 sMvqgNC(Z@v_dZZ*KqV51L=p`C0hPnO$M-tkeE Date: Sat, 19 Jan 2019 18:15:22 +0000 Subject: [PATCH 3/8] Restoring original recipe and some minor changes. --- .../food_and_drinks/recipes/tablecraft/recipes_table.dm | 5 +++++ code/modules/mob/living/simple_animal/friendly/cat.dm | 8 +++----- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm index 9bfb1eb4260..0195a2bca45 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm @@ -258,6 +258,11 @@ name = "Living cat/cake hybrid" reqs = list( /obj/item/organ/internal/heart = 1, + /obj/item/reagent_containers/food/snacks/sliceable/birthdaycake = 1, + /obj/item/reagent_containers/food/snacks/meat/slab = 3, + /datum/reagent/blood = 30, + /datum/reagent/consumable/sprinkles = 5, + /datum/reagent/teslium = 1 ) result = /mob/living/simple_animal/pet/cat/cak category = CAT_FOOD \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index 676dbccc628..612dd19e909 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -180,7 +180,7 @@ /mob/living/simple_animal/pet/cat/cak name = "Keeki" - desc = "It's a cat made out of cake. It looks like a brain would fit into its head." + desc = "It's a cat made out of cake. It looks like a brain would fit into it's head." icon_state = "cak" icon_living = "cak" icon_resting = "cak_rest" @@ -256,15 +256,13 @@ mind = B.brainmob.mind mind.key = B.brainmob.key ckey = B.brainmob.ckey - name = "Keeki" desc = "It's a cat made out of cake. It looks like a real brain is in it's head." rename_self("cake cat") /mob/living/simple_animal/pet/cat/cak/proc/eject_brain() var/turf/T = get_turf(src) brain.forceMove(T) - desc = "It's a cat made out of cake. It looks like a brain would fit into its head." + desc = "It's a cat made out of cake. It looks like a brain would fit into it's head." if(mind) mind.transfer_to(brain.brainmob) - brain = null - name = "Keeki" \ No newline at end of file + brain = null \ No newline at end of file From 8002d744d98668a000758dbec26cce484936440e Mon Sep 17 00:00:00 2001 From: Terilia Date: Sat, 19 Jan 2019 18:19:30 +0000 Subject: [PATCH 4/8] Adjusting the recipe name one final time. --- .../modules/food_and_drinks/recipes/tablecraft/recipes_table.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm index 0195a2bca45..44734a877ed 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm @@ -255,7 +255,7 @@ category = CAT_FOOD /datum/crafting_recipe/food/cak - name = "Living cat/cake hybrid" + name = "Cake Cat" reqs = list( /obj/item/organ/internal/heart = 1, /obj/item/reagent_containers/food/snacks/sliceable/birthdaycake = 1, From 39d9708bd92d62312fee38d62c11ca4da7493324 Mon Sep 17 00:00:00 2001 From: Terilia Date: Sat, 19 Jan 2019 19:12:07 +0000 Subject: [PATCH 5/8] Adjusted the creation, reverted back to CheckParts, adjusted various desc's. Note that the mind transfer is currently broken. --- .../recipes/tablecraft/recipes_table.dm | 5 +- .../mob/living/simple_animal/friendly/cat.dm | 76 +++++-------------- 2 files changed, 23 insertions(+), 58 deletions(-) diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm index 44734a877ed..4268dce02e6 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm @@ -255,14 +255,15 @@ category = CAT_FOOD /datum/crafting_recipe/food/cak - name = "Cake Cat" + name = "Living cat/cake hybrid" reqs = list( + /obj/item/organ/internal/brain = 1, /obj/item/organ/internal/heart = 1, /obj/item/reagent_containers/food/snacks/sliceable/birthdaycake = 1, /obj/item/reagent_containers/food/snacks/meat/slab = 3, /datum/reagent/blood = 30, /datum/reagent/consumable/sprinkles = 5, - /datum/reagent/teslium = 1 + /datum/reagent/teslium = 1, ) result = /mob/living/simple_animal/pet/cat/cak category = CAT_FOOD \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index 612dd19e909..892a57e0385 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -180,7 +180,7 @@ /mob/living/simple_animal/pet/cat/cak name = "Keeki" - desc = "It's a cat made out of cake. It looks like a brain would fit into it's head." + desc = "It's a cat made out of cake." icon_state = "cak" icon_living = "cak" icon_resting = "cak_rest" @@ -191,13 +191,12 @@ butcher_results = list( /obj/item/organ/internal/heart = 1, /obj/item/reagent_containers/food/snacks/birthdaycakeslice = 3, - /obj/item/reagent_containers/food/snacks/meat = 2 + /obj/item/reagent_containers/food/snacks/meat/slab = 2 ) response_harm = "takes a bite out of" attacked_sound = "sound/items/eatfood.ogg" deathmessage = "loses its false life and collapses!" death_sound = "bodyfall" - var/obj/item/organ/internal/brain/brain = null /mob/living/simple_animal/pet/cat/cak/Life() ..() @@ -212,57 +211,22 @@ D.reagents.add_reagent("sprinkles", 2) D.filling_color = "#FF69B4" -/mob/living/simple_animal/pet/cat/cak/attackby(obj/item/O, mob/living/user, params) - if(istype(O, /obj/item/organ/internal/brain)) - var/obj/item/organ/internal/brain/B = O - if(brain) //There's already a brain in it. - to_chat(user, "There's already a brain in [src]!") - return - if(!B.brainmob.key) - var/ghost_can_reenter = 0 - if(B.brainmob.mind) - for(var/mob/dead/observer/G in GLOB.player_list) - if(G.can_reenter_corpse && G.mind == B.brainmob.mind) - ghost_can_reenter = 1 - break - for(var/mob/living/simple_animal/S in GLOB.player_list) - if(S in GLOB.respawnable_list) - ghost_can_reenter = 1 - break - if(!ghost_can_reenter) - to_chat(user, "[B] is completely unresponsive; there's no point.") - return +/mob/living/simple_animal/pet/cat/cak/attack_hand(mob/living/L) + ..() + if(L.a_intent == "harm" && L.reagents && !stat) + L.reagents.add_reagent("nutriment", 0.4) + L.reagents.add_reagent("vitamin", 0.4) - to_chat(user, "You install [B] in [src]!") - - user.drop_item() - B.forceMove(src) - brain = B - transfer_personality(B) - - return 1 - - - if(istype(O, /obj/item/kitchen/knife)) - to_chat(user, "You cut out the brain from [src].") - eject_brain() - return 1 - - else if(user.a_intent == INTENT_HARM && user.reagents) - user.reagents.add_reagent("nutriment", 0.4) - user.reagents.add_reagent("vitamin", 0.4) - -/mob/living/simple_animal/pet/cat/cak/proc/transfer_personality(obj/item/organ/internal/brain/B) - mind = B.brainmob.mind - mind.key = B.brainmob.key - ckey = B.brainmob.ckey - desc = "It's a cat made out of cake. It looks like a real brain is in it's head." - rename_self("cake cat") - -/mob/living/simple_animal/pet/cat/cak/proc/eject_brain() - var/turf/T = get_turf(src) - brain.forceMove(T) - desc = "It's a cat made out of cake. It looks like a brain would fit into it's head." - if(mind) - mind.transfer_to(brain.brainmob) - brain = null \ No newline at end of file +/mob/living/simple_animal/pet/cat/cak/CheckParts(list/parts) + ..() + var/obj/item/organ/internal/brain/B = locate(/obj/item/organ/internal/brain) in contents + if(!B || !B.brainmob || !B.brainmob.mind) + return + B.brainmob.mind.transfer_to(src) + to_chat(src, "You are a cak! You're a harmless cat/cake hybrid that everyone loves. People can take bites out of you if they're hungry, but you regenerate health \ + so quickly that it generally doesn't matter. You're remarkably resilient to any damage besides this and it's hard for you to really die at all. You should go around and bring happiness and \ + free cake to the station!") + var/new_name = stripped_input(src, "Enter your name, or press \"Cancel\" to stick with Keeki.", "Name Change") + if(new_name) + to_chat(src, "Your name is now \"new_name\"!") + name = new_name \ No newline at end of file From 02db476100510e6731371090b3f337a78caf32aa Mon Sep 17 00:00:00 2001 From: Terilia Date: Sat, 19 Jan 2019 19:22:24 +0000 Subject: [PATCH 6/8] butcher list update. Looks like I forgot the brain. --- code/modules/mob/living/simple_animal/friendly/cat.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index 892a57e0385..0e6cc15d6d9 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -189,6 +189,7 @@ maxHealth = 50 harm_intent_damage = 10 butcher_results = list( + /obj/item/organ/internal/brain = 1, /obj/item/organ/internal/heart = 1, /obj/item/reagent_containers/food/snacks/birthdaycakeslice = 3, /obj/item/reagent_containers/food/snacks/meat/slab = 2 From 830c519ef8e52ca0c0ba05e507102cd5a2bd347d Mon Sep 17 00:00:00 2001 From: xerdies Date: Sun, 20 Jan 2019 09:38:21 +0000 Subject: [PATCH 7/8] implemented Fox and Ty's requested changes. --- .../food_and_drinks/recipes/tablecraft/recipes_table.dm | 9 +++++++-- code/modules/mob/living/simple_animal/friendly/cat.dm | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm index 4268dce02e6..267ae917c60 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_table.dm @@ -254,6 +254,12 @@ result = /obj/item/reagent_containers/food/snacks/sliceable/Tai_maki category = CAT_FOOD +/datum/crafting_recipe/food + category = CAT_FOOD + +/datum/crafting_recipe/food/New() + parts |= reqs + /datum/crafting_recipe/food/cak name = "Living cat/cake hybrid" reqs = list( @@ -265,5 +271,4 @@ /datum/reagent/consumable/sprinkles = 5, /datum/reagent/teslium = 1, ) - result = /mob/living/simple_animal/pet/cat/cak - category = CAT_FOOD \ No newline at end of file + result = /mob/living/simple_animal/pet/cat/cak \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index 0e6cc15d6d9..eef673b9876 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -214,7 +214,7 @@ /mob/living/simple_animal/pet/cat/cak/attack_hand(mob/living/L) ..() - if(L.a_intent == "harm" && L.reagents && !stat) + if(L.a_intent == INTENT_HARM && L.reagents && !stat) L.reagents.add_reagent("nutriment", 0.4) L.reagents.add_reagent("vitamin", 0.4) From 419acccc9979acfcf177e574d9c06e73408fcad5 Mon Sep 17 00:00:00 2001 From: Terilia Date: Sun, 20 Jan 2019 16:52:36 +0000 Subject: [PATCH 8/8] Updated the cat. If you reference a variable, you need to define it right, woops! --- code/modules/mob/living/simple_animal/friendly/cat.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index eef673b9876..c37b54938ac 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -229,5 +229,5 @@ free cake to the station!") var/new_name = stripped_input(src, "Enter your name, or press \"Cancel\" to stick with Keeki.", "Name Change") if(new_name) - to_chat(src, "Your name is now \"new_name\"!") + to_chat(src, "Your name is now \"[new_name]\"!") name = new_name \ No newline at end of file