diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm index b54f4c45..84a25ca0 100644 --- a/code/modules/food_and_drinks/drinks/drinks.dm +++ b/code/modules/food_and_drinks/drinks/drinks.dm @@ -599,6 +599,7 @@ spillable = FALSE isGlass = FALSE custom_price = 45 + var/pierced = FALSE obj_flags = CAN_BE_HIT /obj/item/reagent_containers/food/drinks/soda_cans/random/Initialize() @@ -639,7 +640,24 @@ crushed_can.icon_state = icon_state qdel(src) return TRUE + var/chugged = reagents.total_volume . = ..() + if(is_drainable() && pierced && chugged) + M.changeNext_move(CLICK_CD_RAPID) + if(iscarbon(M)) + var/mob/living/carbon/broh = M + broh.adjustOxyLoss(2) + broh.losebreath++ + switch(broh.losebreath) + if(-INFINITY to 0) + if(1 to 2) + if(prob(30)) + user.visible_message("[broh]'s eyes water as [broh.p_they()] chug the can of [src]!") + if(3 to 6) + if(prob(20)) + user.visible_message("[broh] makes \an [pick(list("uncomfortable", "gross", "troubling"))] gurgling noise as [broh.p_they()] chug the can of [src]!") + if(9 to INFINITY) + broh.vomit(2, stun=FALSE) /obj/item/reagent_containers/food/drinks/soda_cans/bullet_act(obj/projectile/P) . = ..() @@ -662,6 +680,24 @@ open_soda(user) return ..() +/obj/item/reagent_containers/food/drinks/soda_cans/attacked_by(obj/item/I, mob/living/user) + if(I.sharpness && !pierced && user && user.a_intent != INTENT_HARM) + user.visible_message("[user] pierces [src] with [I].", "You pierce \the [src] with [I].") + playsound(src, "can_open", 50, TRUE) + pierced = TRUE + return + else if(I.force) + user.visible_message("[user] crushes [src] with [I]! Party foul!", "You crush \the [src] with [I]! Party foul!") + playsound(src, "can_open", 50, TRUE) + var/obj/item/trash/can/crushed_can = new /obj/item/trash/can(src.loc) + crushed_can.icon_state = icon_state + var/atom/throw_target = get_edge_target_turf(crushed_can, pick(GLOB.alldirs)) + crushed_can.throw_at(throw_target, rand(1,3), 7) + qdel(src) + return + + . = ..() + /obj/item/reagent_containers/food/drinks/soda_cans/cola name = "Space Cola" desc = "Cola. in space." diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm index 7f40f463..fed19c92 100644 --- a/code/modules/mining/machine_vending.dm +++ b/code/modules/mining/machine_vending.dm @@ -44,7 +44,7 @@ new /datum/data/mining_equipment("Diamond Pickaxe", /obj/item/pickaxe/diamond, 2000), new /datum/data/mining_equipment("Super Resonator", /obj/item/resonator/upgraded, 2500), new /datum/data/mining_equipment("Jump Boots", /obj/item/clothing/shoes/bhop, 2500), - new /datum/data/mining_equipment("Survival Hypospray", /obj/item/reagent_containers/hypospray/combat/survival, 3000), + new /datum/data/mining_equipment("Survival Hypospray", /obj/item/reagent_containers/hypospray/combat/survival, 3500), new /datum/data/mining_equipment("Luxury Shelter Capsule", /obj/item/survivalcapsule/luxury, 3000), new /datum/data/mining_equipment("Luxury Bar Capsule", /obj/item/survivalcapsule/luxuryelite, 10000), new /datum/data/mining_equipment("Nanotrasen Minebot", /mob/living/simple_animal/hostile/mining_drone, 800), diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index de6f9b27..32163877 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -99,10 +99,11 @@ /obj/item/reagent_containers/hypospray/combat/survival name = "survival hypospray" desc = "A modified air-needle autoinjector, used by shaft miners to quickly heal injuries in combat." - amount_per_transfer_from_this = 10 + amount_per_transfer_from_this = 60 + possible_transfer_amounts = list(5,10,20,50,60,100) volume = 100 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF - list_reagents = list(/datum/reagent/medicine/omnizine = 5) + resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF + list_reagents = list(/datum/reagent/medicine/salbutamol = 10, /datum/reagent/medicine/leporazine = 15, /datum/reagent/medicine/epinephrine = 10, /datum/reagent/medicine/lavaland_extract = 2, /datum/reagent/medicine/omnizine = 5, /datum/reagent/medicine/oxandrolone = 8, /datum/reagent/medicine/sal_acid = 8, /datum/reagent/medicine/morphine = 2) //MediPens