Files
MW d67b5fa474 Work in progress of adding a embedded java vm for scripting testing /prototyping.
Currently the vm is at a early stage and very limited:
currently only supports static methods (instance methods support is nearly finished though)
currently a class can't have member variables, so currently only local variables in the methods.
Also in this branch, connecting the vm to opensim is not completely finished: it is being uploaded just for viewing purposes.
2007-04-10 15:44:54 +00:00

38 lines
937 B
C#

using System;
using System.Collections.Generic;
using System.Text;
using libsecondlife;
namespace OpenSim.RegionServer.world.scripting.Scripts
{
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;
}
}
}
}