mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-30 08:37:43 +01:00
## About The Pull Request Please read the contents of my HackMD to see what my PR does, as well as further elaboration on the reagents and why it's good for the game overall. https://hackmd.io/@MGO/B1YX80nMT ## Contents Introducing new inverse reagents for existing narcotics and other reagents! This push includes... **Naloxone** : New medicine! Requires equal parts Morphine, Hydrogen Peroxide, Bromine and Ethanol to be made. Opioid antagonist that purges drowsiness and narcotics from the patient, restores breath loss and accelerates addiction recovery. Consumption Rate at 0.2u.  **Permonid** : Inverse of Krokodil. Highly potent sedative that provides the best painkilling effects, but is also extremely addictive. Speeds up surgery times by 30%. Consumption Rate at 0.1u.  **Monkey Dust** : Inverse of Bath Salts. Oop aak chee aak eek chee. Eek aak oop chee oop aak aak!! (Consumption Rate at 0.2u.) https://github.com/user-attachments/assets/cbd5ea48-9c0f-49ca-ba59-59cd65599641 (You can also combine 50u Monkey Powder with 10u Monkey Dust to make an angry monkey!)  **Epoetin Alfa** : Inverse of Aranesp. Synthetic medication that induces blood regeneration, heals liver damage and synthesizes Sanguirite when the patient is bleeding. Causes several side effects if taken for too long. Consumption Rate at 0.25u.  (Overdose in action.) https://github.com/user-attachments/assets/27a51a11-0e42-4000-9c96-ba10cbd9e18b **Sadness** : Inverse of Happiness. Causes severe depressive behavior in users, and actively purges other antidepressants. Being hugged by a friendly person that gives good hugs will purge all Sadness unless the user has the Bad Touch trait. Consumption Rate at 0.1u. https://github.com/user-attachments/assets/874b0549-1d96-4f4f-ad95-65f780a68436  **Maldium** : Inverse of Baldium. Potent psychotropic that causes intense anger within users. On end consumption, user will experience a burst of burn damage that scales with the amount of time the user was enraged. Consumption Rate at 0.4u. https://github.com/user-attachments/assets/31a4700e-32b5-4855-a266-45bfde62f718 **Dulling Reagent** : Inverse of Colorful Reagent. Extremely drab coloring pigment that is favored by corporations who wish to maximize suffering. Forces Colorblindness trauma in consumers. Consumption Rate at 0.4u, lowered to 0.04u if overdosing. https://github.com/user-attachments/assets/3db461d1-26aa-4c77-ad3d-44794230b391 **Newtonium** : Inverse of Gravitum. Experimental reagent that induces heavy gravokinetic effects on users. Consumption Rate at 1u. https://github.com/user-attachments/assets/b20e5200-9beb-40a2-8d37-c0d44f0fb4ef ## Why It's Good For The Game This is an effort to add more variety to the existing inverse reagent system within chemistry. Not only should this variety serve to provide additional options for a Chemist to experiment with, they should also broaden the possibilities for already existing strategies. ## Changelog :cl:MGO add: Introduces new inverse reagents for Krokodil, Bath Salts, Aranesp, Happiness, Baldium, Colorful Reagent and Gravitum! add: An alternate reaction output has been added for Monkey Powder. Instead of 1u Water, add 10u Monkey Dust to make an angry monkey! add: Adds a medicine: Naloxone! Requires equal parts Morphine, Hydrogen Peroxide, Bromine and Ethanol to be made. Purges opioid-class reagents, can also help with mitigating drowsiness and breath loss. Also purges good moodlets associated with opiates and replaces them with negative moodlets, so don't expect your patient to be happy about losing their high! /🆑
85 lines
3.5 KiB
Plaintext
85 lines
3.5 KiB
Plaintext
/datum/martial_art/jungle_arts
|
|
name = "Jungle Arts"
|
|
id = MARTIALART_JUNGLEARTS
|
|
pacifist_style = TRUE
|
|
|
|
/datum/martial_art/jungle_arts/disarm_act(mob/living/attacker, mob/living/defender)
|
|
return jungle_attack(attacker, defender)
|
|
|
|
/datum/martial_art/jungle_arts/grab_act(mob/living/attacker, mob/living/defender)
|
|
return jungle_attack(attacker, defender, TRUE)
|
|
|
|
/datum/martial_art/jungle_arts/harm_act(mob/living/attacker, mob/living/defender)
|
|
return jungle_attack(attacker, defender)
|
|
|
|
/datum/martial_art/jungle_arts/proc/jungle_attack(mob/living/attacker, mob/living/defender, grab_attack)
|
|
var/atk_verb
|
|
switch(rand(1,6))
|
|
if(1)
|
|
atk_verb = "dragged"
|
|
var/obj/item/organ/tail/tail = attacker.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL)
|
|
if(isnull(tail) && defender.stat != CONSCIOUS || defender.IsParalyzed())
|
|
return MARTIAL_ATTACK_INVALID
|
|
|
|
attacker.do_attack_animation(defender, ATTACK_EFFECT_CLAW)
|
|
attacker.emote("spin")
|
|
defender.visible_message(
|
|
span_danger("[attacker]'s tail [atk_verb] [defender] down to the ground!"),
|
|
span_userdanger("Your body twists as you're [atk_verb] to the ground by [attacker]'s tail!"),
|
|
span_hear("You hear a snap, followed by a thud!"),
|
|
null,
|
|
attacker,
|
|
)
|
|
to_chat(attacker, span_danger("You latch your tail to [defender], [atk_verb] them to the ground!"))
|
|
defender.apply_damage(rand(5, 10), attacker.get_attack_type())
|
|
playsound(attacker, 'sound/items/weapons/whip.ogg', 50, TRUE, -1)
|
|
defender.Knockdown(2 SECONDS)
|
|
if(HAS_TRAIT(attacker, TRAIT_PACIFISM))
|
|
attacker.add_mood_event("bypassed_pacifism", /datum/mood_event/pacifism_bypassed)
|
|
|
|
if(6)
|
|
var/obj/item/organ/tail/tail = attacker.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL)
|
|
if(isnull(tail))
|
|
return MARTIAL_ATTACK_INVALID
|
|
|
|
atk_verb = pick("whipped", "flogged", "lashed")
|
|
attacker.do_attack_animation(defender, ATTACK_EFFECT_CLAW)
|
|
defender.visible_message(
|
|
span_danger("[attacker]'s tail [atk_verb] [defender] in one quick motion!"),
|
|
span_userdanger("You feel a sharp sting as you're [atk_verb] by [attacker]!"),
|
|
span_hear("You hear a sharp whipping noise!"),
|
|
null,
|
|
attacker,
|
|
)
|
|
to_chat(attacker, span_danger("In one motion, you [atk_verb] [defender] quickly!"))
|
|
defender.apply_damage(rand(10, 15), attacker.get_attack_type())
|
|
playsound(attacker, 'sound/items/weapons/whip.ogg', 50, TRUE, -1)
|
|
defender.drop_all_held_items()
|
|
if(HAS_TRAIT(attacker, TRAIT_PACIFISM))
|
|
attacker.add_mood_event("bypassed_pacifism", /datum/mood_event/pacifism_bypassed)
|
|
|
|
else
|
|
atk_verb = pick("chomp", "gnaw", "chew")
|
|
if(defender.check_block(attacker, 0, "[attacker]'s [atk_verb]", UNARMED_ATTACK))
|
|
return MARTIAL_ATTACK_FAIL
|
|
|
|
attacker.do_attack_animation(defender, ATTACK_EFFECT_BITE)
|
|
defender.visible_message(
|
|
span_danger("[attacker] [atk_verb]s [defender] violently!"),
|
|
span_userdanger("You're viciously [atk_verb]ed by [attacker]!"),
|
|
span_hear("You hear a violent gnawing sound!"),
|
|
null,
|
|
attacker,
|
|
)
|
|
to_chat(attacker, span_danger("You [atk_verb] [defender] with vicious force!"))
|
|
defender.apply_damage(rand(10, 20), damagetype = BRUTE, sharpness = SHARP_POINTY, wound_bonus = 50)
|
|
playsound(attacker, 'sound/items/weapons/bite.ogg', 50, TRUE, -1)
|
|
if(HAS_TRAIT(attacker, TRAIT_PACIFISM))
|
|
attacker.add_mood_event("bypassed_pacifism", /datum/mood_event/pacifism_bypassed)
|
|
|
|
if(atk_verb)
|
|
log_combat(attacker, defender, "[atk_verb] (Jungle Arts)")
|
|
return MARTIAL_ATTACK_SUCCESS
|
|
|
|
return MARTIAL_ATTACK_FAIL
|