loop all players:
set {_messActionBarSuppl.%loop-player%} to ""
delete {_ActualActionBar}
set {_middle} to position {_x}, {_y}, {_z} in world "%{_world}%"
set {_zcdqx} to loop-player
set {_zpdqx} to {_middle}
set {_dist} to distance between location of {_zcdqx} and {_zpdqx}
if {_dist} < 1.5:
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a⬤ &7(%{_dist}% blocs)"
else if {_middle} is set:
# Calibration of locations
set {_zodqx} to {_zcdqx}.getLocation()
set {_zadqx} to {_zpdqx}#Clone
#
{_zodqx}.setY(0)
{_zadqx}.setY(0)
#
set {_zbdqx} to {_zodqx}.getDirection()
{_zbdqx}.setY(0) #Vector calibration (removing pitch information)
set {_zadqx} to {_zadqx}.toVector().subtract({_zodqx}.toVector())
set {_zxdqx} to atan2({_zadqx}.getZ(), {_zadqx}.getX())
set {_zydqx} to atan2({_zbdqx}.getZ(), {_zbdqx}.getX())
set {_abdqx} to {_zxdqx} - {_zydqx}
set {_angle} to {_abdqx}
if {_angle} > 202.5:
set {_angle} to ({_zxdqx} - {_zydqx} - 90)
set {_invert} to true
else if {_angle} < -202.5:
set {_angle} to ({_zxdqx} - {_zydqx} + 90)
set {_invert} to true
else:
set {_angle} to {_zxdqx} - {_zydqx}
if {_angle} is between -22.5 and 22.5: #Nord
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a⬆ &7(%{_dist}% blocs)"
else if {_angle} is between -67.5 and -22.5: #Nord-Ouest
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a⬈ &7(%{_dist}% blocs)"
else if {_angle} is between -112.5 and -67.5: #Ouest
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a➞ &7(%{_dist}% blocs)"
else if {_angle} is between -157.5 and -112.5: #Sud-Ouest
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a⬊ &7(%{_dist}% blocs)"
if {_zxdqx} < 0:
if {_zydqx} > 0:
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a⬋ &7(%{_dist}% blocs)"
else if {_angle} is between 22.5 and 67.5: #Nord-Est
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a⬉ &7(%{_dist}% blocs)"
else if {_angle} is between 67.5 and 112.5: #Est
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a⬅ &7(%{_dist}% blocs)"
else if {_angle} is between 112.5 and 157.5: # Sud-Est
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a⬋ &7(%{_dist}% blocs)"
else: # Sud
if {_angle} > 202.5:
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a➞ &7(%{_dist}% blocs)"
else if {_angle} < -202.5:
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a⬅ &7(%{_dist}% blocs)"
else:
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a⬇ &7(%{_dist}% blocs)"
if {_zxdqx} < 0:
if {_zydqx} > 0:
if {_angle} < -150:
if {_angle} > -190:
#set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a⬅ &7(%{_dist}% blocs)" # Gauche
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a⬇ &7(%{_dist}% blocs)" # Bas
if {_angle} < -190:
if {_angle} > -200:
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &a⬇ &7(%{_dist}% blocs)" # Bas
if {_dist} is not set:
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &4✘"
else:
set {_messActionBarCenter.%loop-player%} to "&cCentre &7: &4✘"
set action bar of loop-player to "%{_messActionBarCenter.%loop-player%}%"
Voila un algo qui m'a été fait par Rush²Fer
J'ai du retoucher deux trois trucs car il y avait des problèmes d'angles avec l'arctangente du coup ça fonctionne presque bien mais c'est toujours ça ^^
Cadeau