anchor.diff:  		push_over()
   	return BULLET_ACT_HIT
   
  +/**
  +  * change_appearance: Changes a skin of the cardboard cutout based on a user's choice
  +  *
  +  * Arguments:
  +  * * crayon The crayon used to change and recolor the cardboard cutout
  +  * * user The mob choosing a skin of the cardboard cutout
  +  */
   /obj/item/cardboard_cutout/proc/change_appearance(obj/item/toy/crayon/crayon, mob/living/user)
  -	if(!crayon || !user)
  -		return
  -	if(pushed_over)
  -		to_chat(user, "<span class='warning'>Right [src] first!</span>")
  -		return
  -	if(crayon.check_empty(user))
  -		return
  -	if(crayon.is_capped)
  -		to_chat(user, "<span class='warning'>Take the cap off first!</span>")
  -		return
  -	var/new_appearance = input(user, "Choose a new appearance for [src].", "26th Century Deception") as null|anything in sortList(possible_appearances)
  -	if(!new_appearance || !crayon || !user.canUseTopic(src, BE_CLOSE))
  -		return
  +	var/new_appearance = show_radial_menu(user, src, possible_appearances, custom_check = CALLBACK(src, .proc/check_menu, user, crayon), radius = 36, require_near = TRUE)
  +	if(!new_appearance)
  +		return FALSE
   	if(!do_after(user, 10, FALSE, src, TRUE))
  -		return
  +		return FALSE
  +	if(!check_menu(user, crayon))
  +		return FALSE
   	user.visible_message("<span class='notice'>[user] gives [src] a new look.</span>", "<span class='notice'>Voila! You give [src] a new look.</span>")
   	crayon.use_charges(1)
   	crayon.check_empty(user)
  
positive.code: 			name = "Private Security Officer"
  			desc = "A cardboard cutout of a private security officer."
  			icon_state = "cutout_ntsec"
  	return 1
  
  /obj/item/cardboard_cutout/setDir(newdir)
  	newdir = SOUTH
  
negative.code: 	icon_state = "cutout_basic"
  	w_class = WEIGHT_CLASS_BULKY
  	resistance_flags = FLAMMABLE
  	/// Possible restyles for the cutout, add an entry in change_appearance() if you add to here
  	var/list/possible_appearances = list()
  	/// If the cutout is pushed over and has to be righted
  	var/pushed_over = FALSE
  	/// If the cutout actually appears as what it portray and not a discolored version
  	var/deceptive = FALSE
  
  /obj/item/cardboard_cutout/Initialize()
  	. = ..()
  	possible_appearances = sortList(list(
  		"Assistant" = image(icon = src.icon, icon_state = "cutout_greytide"),
  		"Clown" = image(icon = src.icon, icon_state = "cutout_clown"),
  		"Mime" = image(icon = src.icon, icon_state = "cutout_mime"),
  		"Traitor" = image(icon = src.icon, icon_state = "cutout_traitor"),
  		"Nuke Op" = image(icon = src.icon, icon_state = "cutout_fluke"),
  		"Cultist" = image(icon = src.icon, icon_state = "cutout_cultist"),
  		"Clockwork Cultist" = image(icon = src.icon, icon_state = "cutout_servant"),
  		"Revolutionary" = image(icon = src.icon, icon_state = "cutout_viva"),
  		"Wizard" = image(icon = src.icon, icon_state = "cutout_wizard"),
  		"Shadowling" = image(icon = src.icon, icon_state = "cutout_shadowling"),
  		"Xenomorph" = image(icon = src.icon, icon_state = "cutout_fukken_xeno"),
  		"Xenomorph Maid" = image(icon = src.icon, icon_state = "cutout_lusty"),
  		"Swarmer" = image(icon = src.icon, icon_state = "cutout_swarmer"),
  		"Ash Walker" = image(icon = src.icon, icon_state = "cutout_free_antag"),
  		"Deathsquad Officer" = image(icon = src.icon, icon_state = "cutout_deathsquad"),
  		"Ian" = image(icon = src.icon, icon_state = "cutout_ian"),
  		"Slaughter Demon" = image(icon = 'icons/mob/mob.dmi', icon_state = "daemon"),
  		"Laughter Demon" = image(icon = 'icons/mob/mob.dmi', icon_state = "bowmon"),
  		"Private Security Officer" = image(icon = src.icon, icon_state = "cutout_ntsec")
  	))
  
  //ATTACK HAND IGNORING PARENT RETURN VALUE
  /obj/item/cardboard_cutout/attack_hand(mob/living/user)
  