# THIS CODE IS EUPHORIAX PROPERTY.
RESPECT THE RIGHTS OF THIS CODE
# SHARING THIS CODE COULD COME WITH A LEGAL CONSEQUENCES
using { /[Link]/Devices }
using { /[Link]/Simulation }
using { /[Link]/Temporary/Diagnostics }
using { /[Link]/Characters }
using { /[Link]/Temporary/SpatialMath }
teleport_device := class(creative_device):
@editable
TeleportSignalRemoteManager: signal_remote_manager_device =
signal_remote_manager_device{}
@editable
HudMessageDevice: hud_message_device = hud_message_device{}
# Runs when the device is started in a running game
OnBegin<override>()<suspends >:void=
[Link](TeleportEvent)
Print("[OnBegin]Begin Event Initialized.")
TeleportEvent(Agent:agent):void=
spawn:
TeleportActivated(Agent)
TeleportActivated(Agent:agent)<suspends>:void=
AllPlayers := GetPlayspace().GetPlayers()
if (InitialCharacter : fort_character = [Link][]):
Viewpoint := [Link]()
ClosestCharacter := GetClosestPlayerToViewpoint(AllPlayers, Viewpoint,
InitialCharacter)
EnemyPos := [Link]()
if:
[Link][[Link],
[Link]]
[Link](Agent)
GetClosestPlayerToViewpoint(AllPlayers: []player, Viewpoint:vector3,
InitialCharacter: fort_character): fort_character =
var ClosestCharacter : fort_character = InitialCharacter
var ClosestDistance: float = 1000000000.0
for (Player : AllPlayers):
if (FNCharacter : fort_character = [Link][]):
if (FNCharacter <> InitialCharacter):
PlayerLocation := [Link]().Translation
EDistance := Distance(Viewpoint, PlayerLocation)
if (EDistance < ClosestDistance):
set ClosestCharacter = FNCharacter
set ClosestDistance = EDistance
Print("[GetClosestPlayerToViewpoint]Closest Agent Found.")
return ClosestCharacter
# THIS CODE IS EUPHORIAX PROPERTY. RESPECT THE RIGHTS OF THIS CODE
# SHARING THIS CODE COULD COME WITH A LEGAL CONSEQUENCES