Merge pull request #11937 from KorPhaeron/profligateslikeyoubelongonthecross

Hanging any mob from the kitchen spike
This commit is contained in:
Razharas
2015-09-24 02:14:06 +03:00
9 changed files with 128 additions and 117 deletions
@@ -2,6 +2,7 @@
name = "alien"
icon_state = "alien_s"
pass_flags = PASSTABLE
butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno = 5, /obj/item/stack/sheet/animalhide/xeno = 1)
var/obj/item/r_store = null
var/obj/item/l_store = null
var/caste = ""
@@ -8,6 +8,7 @@
pass_flags = PASSTABLE
languages = MONKEY
ventcrawler = 1
butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab/monkey = 5, /obj/item/stack/sheet/animalhide/monkey = 1)
type_of_meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/monkey
gib_type = /obj/effect/decal/cleanable/blood/gibs
unique_name = 1
+11
View File
@@ -895,3 +895,14 @@ Sorry Giacom. Please don't be mad :(
//used in datum/reagents/reaction() proc
/mob/living/proc/get_permeability_protection()
return 0
/mob/living/proc/harvest(mob/living/user)
if(qdeleted(src))
return
if(butcher_results)
for(var/path in butcher_results)
for(var/i = 1; i <= butcher_results[path];i++)
new path(src.loc)
butcher_results.Remove(path) //In case you want to have things like simple_animals drop their butcher results on gib, so it won't double up below.
visible_message("<span class='notice'>[user] butchers [src].</span>")
gib()
@@ -53,3 +53,5 @@
var/last_bumped = 0
var/unique_name = 0 //if a mob's name should be appended with an id when created e.g. Mob (666)
var/list/butcher_results = null
@@ -14,7 +14,7 @@
taunt_chance = 25
turns_per_move = 5
see_in_dark = 6
butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab/bear = 5)
butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab/bear = 5, /obj/item/clothing/head/bearpelt = 1)
response_help = "pets"
response_disarm = "gently pushes aside"
response_harm = "hits"
@@ -18,7 +18,6 @@
var/turns_per_move = 1
var/turns_since_move = 0
var/list/butcher_results = null
var/stop_automated_movement = 0 //Use this to temporarely stop random movement or to if you write special movement code for animals.
var/wander = 1 // Does the mob wander around when idle?
var/stop_automated_movement_when_pulled = 1 //When set to 1 this stops the animal from moving when someone is pulling it.
@@ -364,16 +363,6 @@
if(O.flags & NOBLUDGEON)
return
if((butcher_results) && (stat == DEAD))
user.changeNext_move(CLICK_CD_MELEE)
var/sharpness = is_sharp(O)
if(sharpness)
user << "<span class='notice'>You begin to butcher [src]...</span>"
playsound(loc, 'sound/weapons/slice.ogg', 50, 1, -1)
if(do_mob(user, src, 80/sharpness))
harvest(user)
return
..()
/mob/living/simple_animal/movement_delay()
@@ -468,11 +457,6 @@
if(alone && partner && children < 3)
new childtype(loc)
// Harvest an animal's delicious byproducts
/mob/living/simple_animal/proc/harvest(mob/living/user)
visible_message("<span class='notice'>[user] butchers [src].</span>")
gib()
/mob/living/simple_animal/stripPanelUnequip(obj/item/what, mob/who, where, child_override)
if(!child_override)
src << "<span class='warning'>You don't have the dexterity to do this!</span>"