2007-04-03 20:08:30 +00:00
|
|
|
using System;
|
|
|
|
using System.Collections.Generic;
|
|
|
|
using System.Text;
|
|
|
|
using libsecondlife;
|
|
|
|
|
2007-05-16 20:36:35 +00:00
|
|
|
namespace OpenSim.RegionServer.world.scripting
|
2007-04-03 20:08:30 +00:00
|
|
|
{
|
|
|
|
public class FollowRandomAvatar : Script
|
|
|
|
{
|
|
|
|
public FollowRandomAvatar()
|
|
|
|
: base(LLUUID.Random())
|
|
|
|
{
|
|
|
|
OnFrame += MyOnFrame;
|
|
|
|
}
|
|
|
|
|
|
|
|
private void MyOnFrame(IScriptContext context)
|
|
|
|
{
|
|
|
|
LLVector3 pos = context.Entity.Pos;
|
|
|
|
|
|
|
|
IScriptReadonlyEntity avatar;
|
|
|
|
|
|
|
|
if (context.TryGetRandomAvatar(out avatar))
|
|
|
|
{
|
|
|
|
LLVector3 avatarPos = avatar.Pos;
|
|
|
|
|
|
|
|
float x = pos.X + ((float)avatarPos.X.CompareTo(pos.X)) / 2;
|
|
|
|
float y = pos.Y + ((float)avatarPos.Y.CompareTo(pos.Y)) / 2;
|
|
|
|
|
|
|
|
LLVector3 newPos = new LLVector3(x, y, pos.Z);
|
|
|
|
|
|
|
|
context.Entity.Pos = newPos;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|