From 96c09a66c4d6019bd9e06cba141591b0faeb4a70 Mon Sep 17 00:00:00 2001 From: MW Date: Sun, 10 Jun 2007 12:37:51 +0000 Subject: More rearranging. --- .../World/scripting/Scripts/FollowRandomAvatar.cs | 37 ++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 OpenSim/OpenSim.Region/World/scripting/Scripts/FollowRandomAvatar.cs (limited to 'OpenSim/OpenSim.Region/World/scripting/Scripts/FollowRandomAvatar.cs') diff --git a/OpenSim/OpenSim.Region/World/scripting/Scripts/FollowRandomAvatar.cs b/OpenSim/OpenSim.Region/World/scripting/Scripts/FollowRandomAvatar.cs new file mode 100644 index 0000000..9c0146b --- /dev/null +++ b/OpenSim/OpenSim.Region/World/scripting/Scripts/FollowRandomAvatar.cs @@ -0,0 +1,37 @@ +using System; +using System.Collections.Generic; +using System.Text; +using libsecondlife; + +namespace OpenSim.Region.Scripting +{ + 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; + } + } + } + + +} -- cgit v1.1