diff options
Diffstat (limited to 'OpenSim.RegionServer/world')
-rw-r--r-- | OpenSim.RegionServer/world/Avatar.cs | 4 | ||||
-rw-r--r-- | OpenSim.RegionServer/world/AvatarUpdate.cs | 19 |
2 files changed, 20 insertions, 3 deletions
diff --git a/OpenSim.RegionServer/world/Avatar.cs b/OpenSim.RegionServer/world/Avatar.cs index 42a2067..b6b8282 100644 --- a/OpenSim.RegionServer/world/Avatar.cs +++ b/OpenSim.RegionServer/world/Avatar.cs | |||
@@ -44,7 +44,7 @@ namespace OpenSim.world | |||
44 | OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Avatar.cs - Loading details from grid (DUMMY)"); | 44 | OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Avatar.cs - Loading details from grid (DUMMY)"); |
45 | ControllingClient = TheClient; | 45 | ControllingClient = TheClient; |
46 | localid = 8880000 + (this.m_world._localNumber++); | 46 | localid = 8880000 + (this.m_world._localNumber++); |
47 | Pos = new LLVector3(100.0f, 100.0f, m_world.Terrain[(int)Pos.X, (int)Pos.Y] + 1.0f); | 47 | Pos = ControllingClient.startpos; |
48 | visualParams = new byte[218]; | 48 | visualParams = new byte[218]; |
49 | for (int i = 0; i < 218; i++) | 49 | for (int i = 0; i < 218; i++) |
50 | { | 50 | { |
@@ -131,7 +131,7 @@ namespace OpenSim.world | |||
131 | mov.Data.RegionHandle = this.m_regionHandle; | 131 | mov.Data.RegionHandle = this.m_regionHandle; |
132 | // TODO - dynamicalise this stuff | 132 | // TODO - dynamicalise this stuff |
133 | mov.Data.Timestamp = 1172750370; | 133 | mov.Data.Timestamp = 1172750370; |
134 | mov.Data.Position = new LLVector3(100f, 100f, 23f); | 134 | mov.Data.Position = this.ControllingClient.startpos; |
135 | mov.Data.LookAt = new LLVector3(0.99f, 0.042f, 0); | 135 | mov.Data.LookAt = new LLVector3(0.99f, 0.042f, 0); |
136 | 136 | ||
137 | ControllingClient.OutPacket(mov); | 137 | ControllingClient.OutPacket(mov); |
diff --git a/OpenSim.RegionServer/world/AvatarUpdate.cs b/OpenSim.RegionServer/world/AvatarUpdate.cs index 453f419..c2f2456 100644 --- a/OpenSim.RegionServer/world/AvatarUpdate.cs +++ b/OpenSim.RegionServer/world/AvatarUpdate.cs | |||
@@ -59,7 +59,24 @@ namespace OpenSim.world | |||
59 | } | 59 | } |
60 | 60 | ||
61 | } | 61 | } |
62 | this.positionLastFrame = pos2; | 62 | this.positionLastFrame = pos2; |
63 | |||
64 | if(this._physActor.Position.X < 0) { | ||
65 | ControllingClient.CrossSimBorder(new LLVector3(this._physActor.Position.X,this._physActor.Position.Y,this._physActor.Position.Z)); | ||
66 | } | ||
67 | |||
68 | if(this._physActor.Position.Y < 0) { | ||
69 | ControllingClient.CrossSimBorder(new LLVector3(this._physActor.Position.X,this._physActor.Position.Y,this._physActor.Position.Z)); | ||
70 | } | ||
71 | |||
72 | if(this._physActor.Position.X > 255) { | ||
73 | ControllingClient.CrossSimBorder(new LLVector3(this._physActor.Position.X,this._physActor.Position.Y,this._physActor.Position.Z)); | ||
74 | } | ||
75 | |||
76 | if(this._physActor.Position.Y > 255) { | ||
77 | ControllingClient.CrossSimBorder(new LLVector3(this._physActor.Position.X,this._physActor.Position.Y,this._physActor.Position.Z)); | ||
78 | } | ||
79 | |||
63 | } | 80 | } |
64 | 81 | ||
65 | public ObjectUpdatePacket CreateUpdatePacket() | 82 | public ObjectUpdatePacket CreateUpdatePacket() |