<commit_before>/datum/emote/living/carbon
	mob_type_allowed_typecache = list(/mob/living/carbon)

/datum/emote/living/carbon/airguitar
	key = "airguitar"
	message = "is strumming the air and headbanging like a safari chimp."
	restraint_check = TRUE

/datum/emote/living/carbon/blink
	key = "blink"
	key_third_person = "blinks"
	message = "blinks."

/datum/emote/living/carbon/blink_r
	key = "blink_r"
	message = "blinks rapidly."

/datum/emote/living/carbon/clap
	key = "clap"
	key_third_person = "claps"
	message = "claps."
	muzzle_ignore = TRUE
	restraint_check = TRUE
	emote_type = EMOTE_AUDIBLE

/datum/emote/living/carbon/clap/run_emote(mob/living/user, params)
	. = ..()
	if (.)
		if (ishuman(user))
			// Need hands to clap
			if (!user.get_bodypart("l_arm") || !user.get_bodypart("r_arm"))
				return
			var/clap = pick('sound/misc/clap1.ogg',
				            'sound/misc/clap2.ogg',
				            'sound/misc/clap3.ogg',
				            'sound/misc/clap4.ogg')
			playsound(user, clap, 50, 1, -1)

/datum/emote/living/carbon/gnarl
	key = "gnarl"
	key_third_person = "gnarls"
	message = "gnarls and shows its teeth..."
	mob_type_allowed_typecache = list(/mob/living/carbon/monkey, /mob/living/carbon/alien)
<commit_msg>Cleans up clap bodypart check<commit_after>/datum/emote/living/carbon
	mob_type_allowed_typecache = list(/mob/living/carbon)

/datum/emote/living/carbon/airguitar
	key = "airguitar"
	message = "is strumming the air and headbanging like a safari chimp."
	restraint_check = TRUE

/datum/emote/living/carbon/blink
	key = "blink"
	key_third_person = "blinks"
	message = "blinks."

/datum/emote/living/carbon/blink_r
	key = "blink_r"
	message = "blinks rapidly."

/datum/emote/living/carbon/clap
	key = "clap"
	key_third_person = "claps"
	message = "claps."
	muzzle_ignore = TRUE
	restraint_check = TRUE
	emote_type = EMOTE_AUDIBLE

/datum/emote/living/carbon/clap/run_emote(mob/living/user, params)
	. = ..()
	if (.)
		if (ishuman(user))
			// Need hands to clap
			if (!user.get_bodypart(BODY_ZONE_L_ARM) || !user.get_bodypart(BODY_ZONE_R_ARM))
				return
			var/clap = pick('sound/misc/clap1.ogg',
				            'sound/misc/clap2.ogg',
				            'sound/misc/clap3.ogg',
				            'sound/misc/clap4.ogg')
			playsound(user, clap, 50, 1, -1)

/datum/emote/living/carbon/gnarl
	key = "gnarl"
	key_third_person = "gnarls"
	message = "gnarls and shows its teeth..."
	mob_type_allowed_typecache = list(/mob/living/carbon/monkey, /mob/living/carbon/alien)

{'fraction_non_alphanumeric': 0.13975903614457832, 'fraction_numerical': 0.00642570281124498, 'mean_word_length': 3.4402852049910875, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '808587', 'n_tokens_mistral': 1108, 'n_tokens_neox': 991, 'n_words': 168}