Files
8e7ec57fd2 [MIRROR] Kicks Martial Arts out of the attack chain (yippee), makes it use signals, plus a large clean up of existing martial arts (#26328)
Kicks Martial Arts out of the attack chain (yippee), makes it use signals, plus a large clean up of existing martial arts (#81097)

- Kicks Martial Arts out of the attack chain.
- All Martial Arts attacks are now handled via unarmed attack or grab
signals
- This means all martial arts are now technically on the living level,
allowing any mob that can unarmed attack to martial arts. Sort of. YMMV.

- All martial arts block checking is now handled by the arts themselves,
meaning you can selectively decide for a martial arts strike to not be
blocked. Maybe good for the future.

- A comprehensive cleanup of all existing martial arts. Improving var
names, code, adding some missing animation calls, etc.

Fixes #74829

Untangles the mess that is martial arts, making it a lot easier to work
with the attack chain and making it overall a ton more consistent.

🆑 Melbert
refactor: Big martial arts refactor, they should now overall act a ton
more consistent. Also technically any mob can do martial arts. Let me
know if something is funky.
/🆑

---------

Co-authored-by: Useroth <37159550+Useroth@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2024-02-02 21:28:23 +01:00

24 lines
1.1 KiB
Plaintext

/obj/item/skillchip/job/chef
name = "B0RK-X3 skillchip" // bork bork bork
desc = "This biochip faintly smells of garlic, which is odd for something that is normally wedged inside a user's brain. Consult a dietician before use."
skill_name = "Close Quarters Cooking"
skill_description = "A specialised form of self defence, developed by skilled sous-chef de cuisines. No man fights harder than a chef to defend his kitchen."
skill_icon = "utensils"
activate_message = "<span class='notice'>You can visualize how to defend your kitchen with martial arts.</span>"
deactivate_message = "<span class='notice'>You forget how to control your muscles to execute kicks, slams and restraints while in a kitchen environment.</span>"
/// The Chef CQC given by the skillchip.
var/datum/martial_art/cqc/under_siege/style
/obj/item/skillchip/job/chef/Initialize(mapload)
. = ..()
style = new
style.refresh_valid_areas()
/obj/item/skillchip/job/chef/on_activate(mob/living/carbon/user, silent = FALSE)
. = ..()
style.teach(user, make_temporary = TRUE)
/obj/item/skillchip/job/chef/on_deactivate(mob/living/carbon/user, silent = FALSE)
style.fully_remove(user)
return ..()