<commit_before>//In here: Hatch and Ascendance
var/list/possibleShadowlingNames = list("U'ruan", "Y`shej", "Nex", "Hel-uae", "Noaey'gief", "Mii`mahza", "Amerziox", "Gyrg-mylin", "Kanet'pruunance", "Vigistaezian") //Unpronouncable 2: electric boogalo
/obj/effect/proc_holder/spell/self/shadowling_hatch
	name = "Hatch"
	desc = "Casts off your disguise."
	panel = "Shadowling Evolution"
	charge_max = 3000
	human_req = 1
	clothes_req = 0
	action_icon_state = "hatch"

/obj/effect/proc_holder/spell/self/shadowling_hatch/cast(list/targets,mob/user = usr)
	if(user.stat || !ishuman(user) || !user || !is_shadow(user || isinspace(user)))
		return
	var/mob/living/carbon/human/H = user
	var/hatch_or_no = alert(H,"Are you sure you want to hatch? You cannot undo this!",,"Yes","No")
	switch(hatch_or_no)
		if("No")
			H << "<span class='warning'>You decide against hatching for now."
			charge_counter = charge_max
			return
		if("Yes")
			H.stunned = INFINITY //This is bad but hulks can't be stunned with the actual procs. I'm sorry.
			H.visible_message("<span class='warning'>[H]'s things suddenly slip off. They hunch over and vomit up a copious amount of purple goo which begins to shape around them!</span>", \
							"<span class='shadowling'>You remove any equipment which would hinder your hatching and begin regurgitating the resin which will protect you.</span>")

			for(var/obj/item/I in H) //drops all items
				H.unEquip(I)
			H.status_flags |= GODMODE //Can't die while hatching
			sleep(50)
			var/turf/simulated/floor/F
			var/turf/shadowturf = get_turf(user)
			for(F in orange(1, user))
				new /obj/structure/alien/resin/wall/shadowling(F)
			for(var/obj/structure/alien/resin/wall/shadowling/R in shadowturf) //extremely hacky
				qdel(R)
				new /obj/structure/alien/weeds/node(shadowturf) //Dim lighting in the chrysalis -- removes itself afterwards
			var/temp_flags = H.status_flags

			H.visible_message("<span class='warning'>A chrysalis forms around [H], sealing them inside.</span>", \
							"<span class='shadowling'>You create your chrysalis and begin to contort within.</span>")<commit_msg>Fixes shadowlings being literally invincible<commit_after>//In here: Hatch and Ascendance
var/list/possibleShadowlingNames = list("U'ruan", "Y`shej", "Nex", "Hel-uae", "Noaey'gief", "Mii`mahza", "Amerziox", "Gyrg-mylin", "Kanet'pruunance", "Vigistaezian") //Unpronouncable 2: electric boogalo
/obj/effect/proc_holder/spell/self/shadowling_hatch
	name = "Hatch"
	desc = "Casts off your disguise."
	panel = "Shadowling Evolution"
	charge_max = 3000
	human_req = 1
	clothes_req = 0
	action_icon_state = "hatch"

/obj/effect/proc_holder/spell/self/shadowling_hatch/cast(list/targets,mob/user = usr)
	if(user.stat || !ishuman(user) || !user || !is_shadow(user || isinspace(user)))
		return
	var/mob/living/carbon/human/H = user
	var/hatch_or_no = alert(H,"Are you sure you want to hatch? You cannot undo this!",,"Yes","No")
	switch(hatch_or_no)
		if("No")
			H << "<span class='warning'>You decide against hatching for now."
			charge_counter = charge_max
			return
		if("Yes")
			H.stunned = INFINITY //This is bad but hulks can't be stunned with the actual procs. I'm sorry.
			H.visible_message("<span class='warning'>[H]'s things suddenly slip off. They hunch over and vomit up a copious amount of purple goo which begins to shape around them!</span>", \
							"<span class='shadowling'>You remove any equipment which would hinder your hatching and begin regurgitating the resin which will protect you.</span>")

			var/temp_flags = H.status_flags
			H.status_flags |= GODMODE //Can't die while hatching

			for(var/obj/item/I in H) //drops all items
				H.unEquip(I)

			sleep(50)
			var/turf/simulated/floor/F
			var/turf/shadowturf = get_turf(user)
			for(F in orange(1, user))
				new /obj/structure/alien/resin/wall/shadowling(F)
			for(var/obj/structure/alien/resin/wall/shadowling/R in shadowturf) //extremely hacky
				qdel(R)
				new /obj/structure/alien/weeds/node(shadowturf) //Dim lighting in the chrysalis -- removes itself afterwards

			H.visible_message("<span class='warning'>A chrysalis forms around [H], sealing them inside.</span>", \
							"<span class='shadowling'>You create your chrysalis and begin to contort within.</span>")
{'fraction_non_alphanumeric': 0.13305223705785899, 'fraction_numerical': 0.004684937924572499, 'mean_word_length': 4.304347826086956, 'pattern_counts': {'":': 0, '<': 25, '<?xml version=': 0, '>': 21, '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': '3954911', 'n_tokens_mistral': 1655, 'n_tokens_neox': 1480, 'n_words': 393}