diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index b2151549626f..177011c5d30e 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -580,12 +580,86 @@ GLOBAL_LIST_EMPTY(bloodmen_list) righthand_file = 'yogstation/icons/mob/inhands/weapons/scimmy_righthand.dmi' icon = 'yogstation/icons/obj/lavaland/artefacts.dmi' icon_state = "rune_scimmy" - force = 28 + force = 20 slot_flags = ITEM_SLOT_BELT | ITEM_SLOT_BACK damtype = BRUTE sharpness = SHARP_EDGED hitsound = 'yogstation/sound/weapons/rs_slash.ogg' attack_verb = list("slashed","pk'd","atk'd") + var/mobs_grinded = 0 + var/max_grind = 20 + +/obj/item/rune_scimmy/examine(mob/living/user) + . = ..() + . += span_notice("This blade fills you with a need to 'grind'. Slay hostile fauna to increase the Scimmy's power and earn loot.") + . += span_notice("The blade has grinded [mobs_grinded] out of [max_grind] fauna to reach maximum power, and will deal [mobs_grinded * 5] bonus damage to fauna.") + +/obj/item/rune_scimmy/afterattack(atom/target, mob/user, proximity, click_parameters) + . = ..() + if(!proximity) + return + if(isliving(target)) + var/mob/living/L = target + if(ismegafauna(L) || istype(L, /mob/living/simple_animal/hostile/asteroid)) //no loot allowed from the little skulls + if(!istype(L, /mob/living/simple_animal/hostile/asteroid/hivelordbrood)) + RegisterSignal(target,COMSIG_MOB_DEATH,.proc/roll_loot, TRUE) + //after quite a bit of grinding, you'll be doing a total of 120 damage to fauna per hit. A lot, but i feel like the grind justifies the payoff. also this doesn't effect crew. so. go nuts. + L.apply_damage(mobs_grinded*5,BRUTE) + +///This proc handles rolling the loot on the loot table and "drops" the loot where the hostile fauna died +/obj/item/rune_scimmy/proc/roll_loot(mob/living/target) + UnregisterSignal(target, COMSIG_MOB_DEATH) + if(mobs_grinded