Rage of the Space Bear & The Bearserker Pelt (#23050)

* Adds Bearserk combos

* Adds main Bearserk file

* Adds Berserker Bear Pelt to uplink items

Blacklisted from Nuclear and SST because Nukies always use modsuits, and SST won't be very stealthy if it's rocking the martial arts bear pelt.

* Update bearserk.dm

Minor tweak

* Update uplink_traitor.dm

Another minor tweak

* Update bear_jaws.dm

* Update paw_slam.dm

* Update smokey.dm

* Update uplink_traitor.dm

* Update bear_jaws.dm

* More Balance Tweaks

* Whoopsies forgot a thing

* Improved flavour text for Uplink

Please give a warm welcome to a new cult (that only exists in flavour); Children of Ursa Major!

* More Changes

* Updated flavour text for Bear Jaws

* Updated flavour text for Bear Jaws

* Added a bit of Smoh'Kie to Smokey

* Minor alteration

* Minor flavour text tweak

Made with love and copious amounts of vodka

* I had an even better pun idea

* Made cost identical to Carp

* Ticked the files

* Swapped the weights of Bearserk and Carp

* Moved some resistances to a status buff

* Fixed inexplicably formed code bugs

* More inexplicable code fuckery *scream

* Part 1 of Swapping weights of Bearserk and Carp

* Second part

* Added Suggestion

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Added Suggestion

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Added Suggestion

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Added Suggestion

I do agree the IsWeakened is rather redundant

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Added Suggestion

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Added Suggestion

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Added Suggestion

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Added Suggestion

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Added Suggestion

* Added Suggestion

* Added Suggestion

* Added Suggestion

However, considering the && are causing check fails, this may be reverted

* Added Suggestion

* Added Suggestion, may be reverted if issues arise

* Added Suggestion

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Added Suggestion

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Removed Antag Checks on Equipping and Unequipping the Pelt

As per Contrabang's suggestion

* Added a Suggestion and sound for Bearserker Rage

* Added Suggestion

I like consistency, so thank you

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Added placeholder status icon

* Added Suggestion

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>

* Added Suggestion

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>

* Added Suggestion

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>

---------

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
This commit is contained in:
TheKillfish
2024-01-09 13:05:44 +00:00
committed by GitHub
co-authored by Contrabang DGamerL
parent e633651f9b
commit b6f9130a26
8 changed files with 189 additions and 0 deletions
+73
View File
@@ -0,0 +1,73 @@
/datum/martial_art/bearserk
weight = 9 // Higher weight than Krav-Maga, brute force overrules
name = "Rage of the Space Bear"
has_explaination_verb = TRUE
combos = list(/datum/martial_combo/bearserk/bear_jaws, /datum/martial_combo/bearserk/paw_slam, /datum/martial_combo/bearserk/smokey)
/datum/martial_art/bearserk/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
MARTIAL_ARTS_ACT_CHECK
A.do_attack_animation(D, ATTACK_EFFECT_PUNCH)
var/atk_verb = pick("punches", "claws", "hits", "mauls")
playsound(get_turf(D), 'sound/weapons/punch1.ogg', 25, TRUE, -1)
D.visible_message("<span class='danger'>[A] [atk_verb] [D]!</span>", "<span class='userdanger'>[A] [atk_verb] you!</span>")
D.apply_damage(10, BRUTE, A.zone_selected)
if(isliving(D) && D.stat != DEAD)
A.adjustStaminaLoss(-10)
add_attack_logs(A, D, "Melee attacked with martial-art [src] : Punched", ATKLOG_ALL)
return TRUE
/datum/martial_art/bearserk/explaination_header(user)
to_chat(usr, "<b><i>Quelling the ursine rage for a moment, you ponder on how a Space Bear fights...</i></b>")
/datum/martial_art/bearserk/explaination_footer(user)
to_chat(user, "<b>All combos recover stamina and grant a stamina resistance buff, so get aggressive!.</b>")
/datum/martial_art/bearserk/teach(mob/living/carbon/human/H, make_temporary=0)
..()
if(HAS_TRAIT(H, TRAIT_PACIFISM))
to_chat(H, "<span class='warning'>You feel otherworldly rage flicker briefly in your mind, before you reject such violent thoughts and calm down. \
At the very least, the weighty pelt still protects your body.</span>")
return
to_chat(H, "<span class='userdanger'>Like a berserker of old, you harness the Rage of the Space Bear!</span>")
to_chat(H, "<span class='warning'>The occultic, ursine might and anger of Foh'Sie and Smoh'Kie flows through your body, making you far more dangerous in unarmed combat. \
You can learn more about this newfound strength in the Recall Teachings verb in the martial arts tab.</span>")
/datum/martial_art/bearserk/remove(mob/living/carbon/human/H)
..()
to_chat(H, "<span class='sciradio'>The ancient fury of bears leaves your mind...</span>")
// The Pelt
/obj/item/clothing/head/bearpelt/bearserk
armor = list(MELEE = 30, BULLET = 20, LASER = 20, ENERGY = 20, BOMB = 20, RAD = 0, FIRE = 10, ACID = 10)
body_parts_covered = UPPER_TORSO|HEAD|ARMS
var/datum/martial_art/bearserk/style
/obj/item/clothing/head/bearpelt/bearserk/Initialize()
. = ..()
style = new()
/obj/item/clothing/head/bearpelt/bearserk/equipped(mob/user, slot)
..()
if(!ishuman(user))
return
var/mob/living/carbon/human/H = user
if(slot == SLOT_HUD_HEAD)
style.teach(H, TRUE)
H.faction |= "russian" // Russian Hardbass Begins
H.physiology.stun_mod *= 0.80
/obj/item/clothing/head/bearpelt/bearserk/dropped(mob/user, datum/reagent/R)
..()
if(!ishuman(user))
return
var/mob/living/carbon/human/H = user
if(H.get_item_by_slot(SLOT_HUD_HEAD) == src)
H.faction -= "russian" // Hardbass stops
H.physiology.stun_mod /= 0.80
/obj/item/clothing/head/bearpelt/bearserk/examine(mob/user)
. = ..()
if(isAntag(user))
. += "<span class='warning'>Wearing this armored pelt grants you the strength of the space bear. \
It also makes wild bears and Russians neutral towards you.</span>"
@@ -0,0 +1,26 @@
/datum/martial_combo/bearserk/bear_jaws
name = "Bear Jaws"
steps = list(MARTIAL_COMBO_STEP_HARM, MARTIAL_COMBO_STEP_GRAB)
explaination_text = "Bite your opponent like a true lunatic, with even more savagery against knocked down targets."
/datum/martial_combo/bearserk/bear_jaws/perform_combo(mob/living/carbon/human/user, mob/living/target, datum/martial_art/MA)
user.do_attack_animation(target, ATTACK_EFFECT_BITE)
playsound(get_turf(target), 'sound/weapons/bite.ogg', 25, vary = TRUE, extrarange = -1)
if(IS_HORIZONTAL(target))
target.visible_message("<span class='warning'>[user] leaps onto [target] and bites them!</span>",
"<span class='userdanger'>[user] leaps onto you and bites you like a real savage!</span>")
target.apply_damage(20, BRUTE, user.zone_selected, sharp = TRUE)
if(isliving(target) && target.stat != DEAD)
user.adjustStaminaLoss(-30)
user.apply_status_effect(STATUS_EFFECT_BEARSERKER_RAGE)
add_attack_logs(user, target, "Melee attacked with martial-art [MA] : Bear Jaws", ATKLOG_ALL)
return MARTIAL_COMBO_DONE
var/atk_verb = pick("bites", "gnaws", "tears at")
target.visible_message("<span class='danger'>[user] [atk_verb] [target]!</span>",
"<span class='userdanger'>[user] [atk_verb] you!</span>")
target.apply_damage(10, BRUTE, user.zone_selected, sharp = TRUE)
if(isliving(target) && target.stat != DEAD)
user.adjustStaminaLoss(-15)
user.apply_status_effect(STATUS_EFFECT_BEARSERKER_RAGE)
add_attack_logs(user, target, "Melee attacked with martial-art [MA] : Bear Jaws", ATKLOG_ALL)
return MARTIAL_COMBO_DONE
@@ -0,0 +1,30 @@
/datum/martial_combo/bearserk/paw_slam
name = "Paw Slam"
steps = list(MARTIAL_COMBO_STEP_DISARM, MARTIAL_COMBO_STEP_HARM)
explaination_text = "Slap an opponent with a mighty paw, knocking them down. Beats down harder on already knocked down opponents."
/datum/martial_combo/bearserk/paw_slam/perform_combo(mob/living/carbon/human/user, mob/living/target, datum/martial_art/MA)
if(IS_HORIZONTAL(target))
user.do_attack_animation(target, ATTACK_EFFECT_PUNCH)
target.visible_message("<span class='warning'>[user] pounds down on [target] with both fists!</span>", \
"<span class='userdanger'>[user] pounds down on you with both fists!</span>")
playsound(get_turf(target), 'sound/weapons/punch1.ogg', 25, vary = TRUE, extrarange = -1)
target.apply_damage(20, BRUTE, user.zone_selected)
target.Slowed(2 SECONDS)
if(isliving(target) && target.stat != DEAD)
user.adjustStaminaLoss(-15)
user.apply_status_effect(STATUS_EFFECT_BEARSERKER_RAGE)
add_attack_logs(user, target, "Melee attacked with martial-art [src] : Paw Slam", ATKLOG_ALL)
return MARTIAL_COMBO_DONE
user.do_attack_animation(target, ATTACK_EFFECT_DISARM)
target.visible_message("<span class='warning'>[user] strikes [target] to the ground with a mighty slap!</span>", \
"<span class='userdanger'>[user] slaps you so hard, you fall over!</span>")
playsound(get_turf(user), 'sound/weapons/slap.ogg', 25, vary = TRUE, extrarange = -1)
target.apply_damage(10, BRUTE, user.zone_selected)
target.KnockDown(4 SECONDS)
target.Slowed(6 SECONDS)
if(isliving(target) && target.stat != DEAD)
user.adjustStaminaLoss(-15)
user.apply_status_effect(STATUS_EFFECT_BEARSERKER_RAGE)
add_attack_logs(user, target, "Melee attacked with martial-art [src] : Paw Slam", ATKLOG_ALL)
return MARTIAL_COMBO_DONE
@@ -0,0 +1,17 @@
/datum/martial_combo/bearserk/smokey
name = "Smokey"
steps = list(MARTIAL_COMBO_STEP_DISARM, MARTIAL_COMBO_STEP_DISARM)
explaination_text = "Mentally channel the occultic fury of Smoh'Kie to set your opponent aflame!"
/datum/martial_combo/bearserk/smokey/perform_combo(mob/living/carbon/human/user, mob/living/target, datum/martial_art/MA)
if(!isliving(target))
return
user.do_attack_animation(target, ATTACK_EFFECT_PUNCH)
target.visible_message("<span class='warning'>[user] sets [target] on fire with otherwordly powers!</span>", \
"<span class='userdanger'>As [user] punches you with a searing fist, these words echo in your mind; \"remember... only YOU can prevent forest fires!\"</span>")
target.apply_damage(10, BURN, user.zone_selected)
playsound(get_turf(user), 'sound/weapons/punch1.ogg', 25, vary = TRUE, extrarange = -1)
target.adjust_fire_stacks(1.5)
target.IgniteMob()
add_attack_logs(user, target, "Melee attacked with martial-art [src] : Smokey", ATKLOG_ALL)
return MARTIAL_COMBO_DONE