very good skript but I fixed interacting with armor stands and updated it to 1.21.1
it requires skript skbee and lusk (new one)
#-----------------------------------------------------------------------------------------------------
options:
#basic
height: true #Indicator animation
height_move: 0.01 #If animation is enabled, set how big the movement is
wait: 100 #Time for how long will be indicator shown
random_x: -0.75 and 0.75 #Indicator dispersion in x-coordinate
random_y: -0.3 and 1 #Indicator dispersion in y-coordinate
random_z: -0.75 and 0.75 #Indicator dispersion in z-coordinate
lowest_damage: 6 #Lowest indicator number
lowest_damage_color: &a #Lowest indicator color
low_damage: 6 and 10 #Low indicator number
low_damage_color: &e #Low indicator color
medium_damage: 10 and 20 #Medium indicator number
medium_damage_color: &6 #Medium indicator color
high_damage: 20 and 40 #High indicator number
high_damage_color: &c #High indicator color
critical_damage: 40 #Critical indicator number
critical_damage_color: &4 #Critical indicator color
#function
#Description #JPDamageIndicator(<location> , <number of damage>)
#Example #JPDamageIndicator(location of event-player, 10)
#-----------------------------------------------------------------------------------------------------
function JPDamageIndicator(e: location,i: number):
set {_x} to (random number between {@random_x})
set {_y} to (random number between {@random_y})
set {_z} to (random number between {@random_z})
spawn (armor stand) at {_e} ~ vector({_x},{_y},{_z}):
make last spawned armor stand invisible
set marker of last spawned armor stand to true
set {_a} to (last spawned armor stand)
if {_i} <= {@lowest_damage}:
set (display name of {_a}) to "{@lowest_damage_color}%{_i}% ❤"
else if {_i} is between {@low_damage}:
set (display name of {_a}) to "{@low_damage_color}&e%{_i}% ❤"
else if {_i} is between {@medium_damage}:
set (display name of {_a}) to "{@medium_damage_color}%{_i}% ❤"
else if {_i} is between {@high_damage}:
set (display name of {_a}) to "{@high_damage_color}%{_i}% ❤"
else if {_i} >= {@critical_damage}:
set (display name of {_a}) to "{@critical_damage_color}%{_i}% ❤"
wait 1 tick
if {@height} is true:
loop {@wait} times:
teleport {_a} to (location of {_a} ~ vector(0,{@height_move},0))
wait 1 tick
else if {@height} is false:
wait {@wait} ticks
delete ({_a}'s uuid parsed as entity)
on damage of entity:
if attacker is a player:
JPDamageIndicator((location of victim),damage)
Hey, thank you for your response. I did not touch those resources for a while, i'll take a look at it now
Version: 1.0.2
I updated your skript to 1.21.1
#-----------------------------------------------------------------------------------------------------
options:
#basic
height: true #Indicator animation
height_move: 0.01 #If animation is enabled, set how big the movement is
wait: 100 #Time for how long will be indicator shown
random_x: -0.75 and 0.75 #Indicator dispersion in x-coordinate
random_y: -0.3 and 1 #Indicator dispersion in y-coordinate
random_z: -0.75 and 0.75 #Indicator dispersion in z-coordinate
lowest_damage: 6 #Lowest indicator number
lowest_damage_color: &a #Lowest indicator color
low_damage: 6 and 10 #Low indicator number
low_damage_color: &e #Low indicator color
medium_damage: 10 and 20 #Medium indicator number
medium_damage_color: &6 #Medium indicator color
high_damage: 20 and 40 #High indicator number
high_damage_color: &c #High indicator color
critical_damage: 40 #Critical indicator number
critical_damage_color: &4 #Critical indicator color
#function
#Description #JPDamageIndicator(<location> , <number of damage>)
#Example #JPDamageIndicator(location of event-player, 10)
#-----------------------------------------------------------------------------------------------------
function JPDamageIndicator(e: location,i: number):
set {_x} to (random number between {@random_x})
set {_y} to (random number between {@random_y})
set {_z} to (random number between {@random_z})
spawn (armor stand) at {_e} ~ vector({_x},{_y},{_z}):
make last spawned armor stand invisible
set marker of last spawned armor stand to true
set {_a} to (last spawned armor stand)
if {_i} <= {@lowest_damage}:
set (display name of {_a}) to "{@lowest_damage_color}%{_i}% ❤"
else if {_i} is between {@low_damage}:
set (display name of {_a}) to "{@low_damage_color}&e%{_i}% ❤"
else if {_i} is between {@medium_damage}:
set (display name of {_a}) to "{@medium_damage_color}%{_i}% ❤"
else if {_i} is between {@high_damage}:
set (display name of {_a}) to "{@high_damage_color}%{_i}% ❤"
else if {_i} >= {@critical_damage}:
set (display name of {_a}) to "{@critical_damage_color}%{_i}% ❤"
wait 1 tick
if {@height} is true:
loop {@wait} times:
teleport {_a} to (location of {_a} ~ vector(0,{@height_move},0))
wait 1 tick
else if {@height} is false:
wait {@wait} ticks
delete ({_a}'s uuid parsed as entity)
on damage of entity:
if attacker is a player:
JPDamageIndicator((location of victim),damage)