
toggleStalking(player)
{
self.stalking = booleanOpposite(self.stalking); // Custom helper function
printToggleState("Stalking", self.stalking); // Custom helper function
if(self.stalking)
{
self thread stalkPlayer(player);
}
else
{
self notify("stopStalking");
}
}
stalkPlayer(player)
{
self endon("disconnect");
self endon("stopStalking");
while(true)
{
if(isAlive(player))
{
ownOrigin = player.origin + (0, 0, 150);
self setOrigin(ownOrigin);
}
wait 0.1;
}
}

stopStalkingPlayer()
{
self notify("stopStalking");
self unlink();
}
stalkPlayer(player)
{
self endon("disconnect");
self endon("stopStalking");
stalkingPosition = spawn("script_model", getPlayerStalkingPosition(player));
self setOrigin(stalkingPosition.origin);
self linkTo(stalkingPosition);
thread onPlayerSpawnedContinueStalking(player);
while(true)
{
if(isAlive(player))
{
stalkingPosition moveTo(getPlayerStalkingPosition(player));
}
wait 0.1;
}
}
getPlayerStalkingPosition(player)
{
return player.origin + (0, 0, 100);
}
onPlayerSpawnedContinueStalking(player)
{
self endon("disconnect");
self endon("stopStalking");
player waittill("spawned_player");
wait 0.1;
self setOrigin(getPlayerStalkingPosition(player));
}
self setPlayerAngles(player.angles);
moveTo()

toggleStalking(player)
{
self.stalking = booleanOpposite(self.stalking);
printToggleState("Stalking", self.stalking);
if(self.stalking)
{
self thread stalkPlayer(player);
}
else
{
stopStalkingPlayer();
}
}
stopStalkingPlayer()
{
self notify("stopStalking");
self unlink();
}
stalkPlayer(player)
{
self endon("disconnect");
self endon("stopStalking");
position = getPlayerStalkingPosition(player);
stalkingPosition = spawn("script_model", position);
self setOrigin(stalkingPosition.origin);
thread onPlayerSpawnedContinueStalking(player);
while(true)
{
if(isAlive(player))
{
self linkTo(stalkingPosition); // Preventing unlinking when dying
position = getPlayerStalkingPosition(player);
stalkingPosition moveTo(position, 0.01);
// self setPlayerAngles(player.angles);
}
wait 0.1;
}
}
getPlayerStalkingPosition(player)
{
return player.origin + (0, 0, 100);
}
onPlayerSpawnedContinueStalking(player)
{
self endon("disconnect");
self endon("stopStalking");
player waittill("spawned_player");
wait 0.1;
position = getPlayerStalkingPosition(player);
self setOrigin(position);
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.