ArmorStandCorpse.sk

Created by RedstoneGamer54

Just so you know, we don't know the file format for every file. If it's just a bunch of random characters, it's probably a .zip or .jar.

#Armor Stand Corpse by RedstoneGamer54
#A simple script that creates armor stand corpses for victim deaths

#-----------------------------------------------------------------------------------------------------------

options:
	#Set to true/false to toggle corpses
	spawncorpse: true
	#These allow you to change the color of the armor
	chestplatecolor: brown
	leggingscolor: brown
	bootscolor: brown
	#Changes corpse height: Large/Small
	size: Large
	#Sets the max number of corpse per player
	maxcorpse: 3
	#Message prefix/message
	prefix: &3&lArmor Stand Corpses
	permissionmessage: &cYou don't have permission to run this command!

#-----------------------------------------------------------------------------------------------------------

#Don't touch the stuff below this unless you know what you are doing!
function delCorpse(t: text):
	if {_t} != "all":
		kill {corpses::%{_t}%::*}
		delete {corpses::%{_t}%::*}
	else:
		loop indexes of {corpses::*}:
			kill {corpses::%loop-value%::*}
		delete {corpses::*}

function createCorpse(p: player):
	if "{@size}" in lowercase = "large":
		set {_loc} to location of {_p}
		set pitch of {_loc} to 0
		remove 1.25 from {_loc}'s y-coord
		spawn armor stand at {_loc} with nbt "{Invulnerable:1b,NoBasePlate:1b,NoGravity:1b,ShowArms:1b,Pose:{Body:[270f,0f,0f],Head:[283f,0f,0f],LeftLeg:[0f,0f,180f],RightLeg:[0f,0f,180f],LeftArm:[270f,350f,0f],RightArm:[270f,10f,0f]}}"
		set {_armor} to last spawned armor stand
		set helmet of {_armor} to {_p}'s skull
		set chestplate of {_armor} to leather tunic
		dye {_armor}'s chestplate {@chestplatecolor}
		set {_y} to {_armor}'s y-coord
		set tool of {_armor} to {_p}'s tool if {_p}'s tool is set
		set {_loc} to location 0.55 in front of {_loc}
		set y-coord of {_loc} to {_y}
		add 0.67 to {_loc}'s y-coord
		spawn armor stand at {_loc} with nbt "{Invisible:1b,Invulnerable:1b,NoBasePlate:1b,NoGravity:1b,ShowArms:1b,Pose:{LeftLeg:[270f,0f,0f],RightLeg:[270f,0f,0f]}}"
		set {_legs} to last spawned armor stand
		set leggings of {_legs} to leather pants
		set boots of {_legs} to leather boots
		dye {_legs}'s legging {@bootscolor}
		dye {_leg}'s boots {@bootscolor}
		add {_legs} and {_armor} to {corpses::%{_p}%::*}
	else if "{@size}" in lowercase = "small":
		set {_loc} to location of {_p}
		set pitch of {_loc} to 0
		remove 0.55 from {_loc}'s y-coord
		spawn armor stand at {_loc} with nbt "{Invulnerable:1b,NoBasePlate:1b,NoGravity:1b,Small:1b,ShowArms:1b,Pose:{Body:[270f,0f,0f],Head:[283f,0f,0f],LeftLeg:[0f,0f,180f],RightLeg:[0f,0f,180f],LeftArm:[270f,350f,0f],RightArm:[270f,10f,0f]}}"
		set {_armor} to last spawned armor stand
		set helmet of {_armor} to {_p}'s skull
		set chestplate of {_armor} to leather tunic
		set tool of {_armor} to {_p}'s tool if {_p}'s tool is set
		set {_y} to {_armor}'s y-coord
		set {_loc} to location 0.3 in front of {_loc}
		set y-coord of {_loc} to {_y}
		add 0.33 to {_loc}'s y-coord
		spawn armor stand at {_loc} with nbt "{Invisible:1b,Invulnerable:1b,NoBasePlate:1b,Small:1b,NoGravity:1b,ShowArms:1b,Pose:{LeftLeg:[270f,0f,0f],RightLeg:[270f,0f,0f]}}"
		set {_legs} to last spawned armor stand
		set leggings of {_legs} to leather pants
		set boots of {_legs} to leather boots
		add {_legs} and {_armor} to {corpses::%{_p}%::*}

on skript stop:
	delCorpse("all")

on death of player:
	if {@spawncorpse} is true:
		if size of {corpse::%victim%::*} <= 3:
			createCorpse(victim)

command /corpse [<text>] [<offlineplayer>]:
	aliases: corpses
	permission: corpse.manage
	permission message: {@permissionmessage}
	trigger:
		if arg-1 is "delete", "del" or "remove":
			if arg-2 is set:
				send "{@prefix}: &r&bKilling %arg-2%&b's corpses"
				delCorpse("%arg-2%")
			else:
				send "{@prefix}: &r&bKilling all corpses"
				delCorpse("all")
		else if arg-1 is "create" or "make":
			if arg-2 is set:
				send "{@prefix}: &r&bCreated corpse of %arg-2%"
				createCorpse(arg-2)
			else:
				send "{@prefix} &r&bCreated a corpse of you"
				createCorpse(player)
		else if arg-1 is "help":
			send "&3&n&lArmor Stand Corpses Help"
			send "&b/corpse delete [player] - Kills the corpses of the specified player."
			send "&b/corpse delete - Kills all corpses."
			send "&b/corpse create [player] - Creates a corpse of a specified player at their location."
			send "&b/corpse create - Creates a corpse of yourself at your location."