diff --git a/code/datums/cargoprofile.dm b/code/datums/cargoprofile.dm index 9fcb356b9b1..cbb074b8d24 100644 --- a/code/datums/cargoprofile.dm +++ b/code/datums/cargoprofile.dm @@ -258,7 +258,7 @@ whitelist = list(/obj/item/weapon/banhammer,/obj/item/weapon/sord,/obj/item/weapon/butch,/obj/item/weapon/claymore,/obj/item/weapon/holo/esword, /obj/item/weapon/flamethrower,/obj/item/weapon/grenade,/obj/item/weapon/gun,/obj/item/weapon/hatchet,/obj/item/weapon/katana, /obj/item/weapon/kitchenknife,/obj/item/weapon/melee,/obj/item/weapon/nullrod,/obj/item/weapon/pickaxe,/obj/item/weapon/twohanded, - /obj/item/weapon/c4,/obj/item/weapon/scalpel,/obj/item/weapon/shield,/obj/item/weapon/grown/deathnettle) + /obj/item/weapon/c4,/obj/item/weapon/scalpel,/obj/item/weapon/shield,/obj/item/weapon/grown/nettle/death) /datum/cargoprofile/tools name = "Devices & Tools" diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index 4dae0d4dd6a..9190e94cbbd 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -429,6 +429,22 @@ user.put_in_hands(NF) qdel(src) return + if("nettle") + var/obj/item/weapon/grown/nettle/nettle = new /obj/item/weapon/grown/nettle(user.loc) + nettle.force = round((5 + potency / 5), 1) + user << "You straighten up the plant." + user.unEquip(src) + user.put_in_hands(nettle) + qdel(src) + return + if("deathnettle") + var/obj/item/weapon/grown/nettle/death/DN = new /obj/item/weapon/grown/nettle/death(user.loc) + DN.force = round((5 + potency / 2.5), 1) + user << "You straighten up the plant." + user.unEquip(src) + user.put_in_hands(DN) + qdel(src) + return if("cashpod") user << "You crack open the cash pod..." var/value = round(seed.get_trait(TRAIT_POTENCY)) diff --git a/code/modules/hydroponics/grown_inedible.dm b/code/modules/hydroponics/grown_inedible.dm index b6a3b05d966..c2ae0074f2b 100644 --- a/code/modules/hydroponics/grown_inedible.dm +++ b/code/modules/hydroponics/grown_inedible.dm @@ -32,28 +32,77 @@ rtotal += round(potency/reagent_data[2]) reagents.add_reagent(rid,max(1,rtotal)) -/obj/item/weapon/grown/deathnettle // -- Skie - plantname = "deathnettle" - desc = "The \red glowing \black nettle incites \redrage\black in you just from looking at it!" +/obj/item/weapon/grown/nettle //abstract type + name = "nettle" + desc = "It's probably not wise to touch it with bare hands..." icon = 'icons/obj/weapons.dmi' - name = "deathnettle" - icon_state = "deathnettle" + icon_state = "nettle" damtype = "fire" - force = 30 - throwforce = 1 - w_class = 2.0 + force = 15 + hitsound = 'sound/weapons/bladeslice.ogg' + throwforce = 5 + w_class = 1 throw_speed = 1 throw_range = 3 - origin_tech = "combat=3" + origin_tech = "combat=1" attack_verb = list("stung") - New() - ..() - spawn(5) - force = round((5+potency/2.5), 1) - suicide_act(mob/user) - viewers(user) << "\red [user] is eating some of the [src.name]! It looks like \he's trying to commit suicide." - return (BRUTELOSS|TOXLOSS) +/obj/item/weapon/grown/nettle/suicide_act(mob/user) + user.visible_message("[user] is eating some of the [src.name]! It looks like \he's trying to commit suicide.") + return (BRUTELOSS|TOXLOSS) + +/obj/item/weapon/grown/nettle/pickup(mob/living/user) + if(!iscarbon(user)) + return 0 + var/mob/living/carbon/C = user + if(ishuman(user)) + var/mob/living/carbon/human/H = C + if(H.gloves) + return 0 + var/organ = ((user.hand ? "l_":"r_") + "arm") + var/obj/item/organ/external/affecting = H.get_organ(organ) + if(affecting.take_damage(0,force)) + user.UpdateDamageIcon() + else + C.take_organ_damage(0,force) + C << "The nettle burns your bare hand!" + return 1 + +/obj/item/weapon/grown/nettle/afterattack(atom/A as mob|obj, mob/user,proximity) + if(!proximity) return + if(force > 0) + force -= rand(1, (force / 3) + 1) // When you whack someone with it, leaves fall off + else + usr << "All the leaves have fallen off the nettle from violent whacking." + usr.unEquip(src) + qdel(src) + + +/obj/item/weapon/grown/nettle/death + name = "deathnettle" + desc = "The glowing \black nettle incites rage\black in you just from looking at it!" + icon_state = "deathnettle" + force = 30 + throwforce = 15 + origin_tech = "combat=3" + +/obj/item/weapon/grown/nettle/death/pickup(mob/living/carbon/user) + if(..()) + if(prob(50)) + user.Paralyse(5) + user << "You are stunned by the Deathnettle when you try picking it up!" + +/obj/item/weapon/grown/nettle/death/attack(mob/living/carbon/M, mob/user) + if(!..()) return + if(istype(M, /mob/living)) + M << "You are stunned by the powerful acid of the Deathnettle!" + add_logs(M, user, "attacked", src) + + M.eye_blurry += force/7 + if(prob(20)) + M.Paralyse(force / 6) + M.Weaken(force / 15) + M.drop_item() /obj/item/weapon/corncob name = "corn cob" diff --git a/code/modules/hydroponics/seed_datums.dm b/code/modules/hydroponics/seed_datums.dm index 34dac891dce..58ee1a8a666 100644 --- a/code/modules/hydroponics/seed_datums.dm +++ b/code/modules/hydroponics/seed_datums.dm @@ -132,6 +132,7 @@ chems = list("plantmatter" = list(1,50), "sacid" = list(0,1)) kitchen_tag = "nettle" preset_icon = "nettle" + final_form = 0 /datum/seed/nettle/New() ..()