diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/OpenSim.Region/Scenes/ScenePresence.cs | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/OpenSim/OpenSim.Region/Scenes/ScenePresence.cs b/OpenSim/OpenSim.Region/Scenes/ScenePresence.cs index 1255606..fe82130 100644 --- a/OpenSim/OpenSim.Region/Scenes/ScenePresence.cs +++ b/OpenSim/OpenSim.Region/Scenes/ScenePresence.cs | |||
@@ -43,6 +43,7 @@ namespace OpenSim.Region.Scenes | |||
43 | { | 43 | { |
44 | public static bool PhysicsEngineFlying = false; | 44 | public static bool PhysicsEngineFlying = false; |
45 | public static AvatarAnimations Animations; | 45 | public static AvatarAnimations Animations; |
46 | public static byte[] DefaultTexture; | ||
46 | public string firstname; | 47 | public string firstname; |
47 | public string lastname; | 48 | public string lastname; |
48 | public IClientAPI ControllingClient; | 49 | public IClientAPI ControllingClient; |
@@ -324,7 +325,7 @@ namespace OpenSim.Region.Scenes | |||
324 | /// <param name="remoteAvatar"></param> | 325 | /// <param name="remoteAvatar"></param> |
325 | public void SendFullUpdateToOtherClient(ScenePresence remoteAvatar) | 326 | public void SendFullUpdateToOtherClient(ScenePresence remoteAvatar) |
326 | { | 327 | { |
327 | remoteAvatar.ControllingClient.SendAvatarData(m_regionInfo.RegionHandle, this.firstname, this.lastname, this.uuid, this.LocalId, this.Pos); | 328 | remoteAvatar.ControllingClient.SendAvatarData(m_regionInfo.RegionHandle, this.firstname, this.lastname, this.uuid, this.LocalId, this.Pos, DefaultTexture); |
328 | } | 329 | } |
329 | 330 | ||
330 | /// <summary> | 331 | /// <summary> |
@@ -332,7 +333,7 @@ namespace OpenSim.Region.Scenes | |||
332 | /// </summary> | 333 | /// </summary> |
333 | public void SendInitialData() | 334 | public void SendInitialData() |
334 | { | 335 | { |
335 | this.ControllingClient.SendAvatarData(m_regionInfo.RegionHandle, this.firstname, this.lastname, this.uuid, this.LocalId, this.Pos); | 336 | this.ControllingClient.SendAvatarData(m_regionInfo.RegionHandle, this.firstname, this.lastname, this.uuid, this.LocalId, this.Pos, DefaultTexture); |
336 | if (this.newAvatar) | 337 | if (this.newAvatar) |
337 | { | 338 | { |
338 | this.m_world.InformClientOfNeighbours(this.ControllingClient); | 339 | this.m_world.InformClientOfNeighbours(this.ControllingClient); |
@@ -439,10 +440,12 @@ namespace OpenSim.Region.Scenes | |||
439 | RegionInfo neighbourRegion = this.m_world.RequestNeighbouringRegionInfo(neighbourHandle); | 440 | RegionInfo neighbourRegion = this.m_world.RequestNeighbouringRegionInfo(neighbourHandle); |
440 | if (neighbourRegion != null) | 441 | if (neighbourRegion != null) |
441 | { | 442 | { |
442 | this.m_world.InformNeighbourOfCrossing(neighbourHandle, this.ControllingClient.AgentId, newpos); | 443 | bool res = this.m_world.InformNeighbourOfCrossing(neighbourHandle, this.ControllingClient.AgentId, newpos); |
443 | this.MakeChildAgent(); | 444 | if (res) |
444 | this.ControllingClient.CrossRegion(neighbourHandle, newpos, vel, System.Net.IPAddress.Parse(neighbourRegion.IPListenAddr), (ushort)neighbourRegion.IPListenPort); | 445 | { |
445 | 446 | this.MakeChildAgent(); | |
447 | this.ControllingClient.CrossRegion(neighbourHandle, newpos, vel, System.Net.IPAddress.Parse(neighbourRegion.IPListenAddr), (ushort)neighbourRegion.IPListenPort); | ||
448 | } | ||
446 | } | 449 | } |
447 | } | 450 | } |
448 | #endregion | 451 | #endregion |
@@ -481,6 +484,18 @@ namespace OpenSim.Region.Scenes | |||
481 | } | 484 | } |
482 | } | 485 | } |
483 | 486 | ||
487 | public static void LoadTextureFile(string name) | ||
488 | { | ||
489 | FileInfo fInfo = new FileInfo(name); | ||
490 | long numBytes = fInfo.Length; | ||
491 | FileStream fStream = new FileStream(name, FileMode.Open, FileAccess.Read); | ||
492 | BinaryReader br = new BinaryReader(fStream); | ||
493 | byte[] data1 = br.ReadBytes((int)numBytes); | ||
494 | br.Close(); | ||
495 | fStream.Close(); | ||
496 | DefaultTexture = data1; | ||
497 | } | ||
498 | |||
484 | public class NewForce | 499 | public class NewForce |
485 | { | 500 | { |
486 | public float X; | 501 | public float X; |