aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTORS.txt3
-rw-r--r--OpenSim/Framework/AvatarAppearance.cs36
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs1
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs14
-rw-r--r--OpenSim/Services/LLLoginService/LLLoginService.cs3
5 files changed, 25 insertions, 32 deletions
diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt
index 2620a20..7a25d3f 100644
--- a/CONTRIBUTORS.txt
+++ b/CONTRIBUTORS.txt
@@ -14,6 +14,7 @@ people that make the day to day of OpenSim happen.
14* Marck 14* Marck
15* Mic Bowman (Intel) 15* Mic Bowman (Intel)
16* BlueWall (James Hughes) 16* BlueWall (James Hughes)
17* Nebadon Izumi (Michael Cerquoni, OSgrid)
17* Snoopy Pfeffer 18* Snoopy Pfeffer
18* Richard Adams (Intel) 19* Richard Adams (Intel)
19 20
@@ -102,6 +103,7 @@ what it is today.
102* lulurun 103* lulurun
103* M.Igarashi 104* M.Igarashi
104* maimedleech 105* maimedleech
106* Mana Janus
105* Mic Bowman 107* Mic Bowman
106* Michelle Argus 108* Michelle Argus
107* Michael Cortez (The Flotsam Project, http://osflotsam.org/) 109* Michael Cortez (The Flotsam Project, http://osflotsam.org/)
@@ -133,6 +135,7 @@ what it is today.
133* Salahzar Stenvaag 135* Salahzar Stenvaag
134* sempuki 136* sempuki
135* SignpostMarv 137* SignpostMarv
138* SpotOn3D
136* Strawberry Fride 139* Strawberry Fride
137* tglion 140* tglion
138* tlaukkan/Tommil (Tommi S. E. Laukkanen, Bubble Cloud) 141* tlaukkan/Tommil (Tommi S. E. Laukkanen, Bubble Cloud)
diff --git a/OpenSim/Framework/AvatarAppearance.cs b/OpenSim/Framework/AvatarAppearance.cs
index f147e14..f0580df 100644
--- a/OpenSim/Framework/AvatarAppearance.cs
+++ b/OpenSim/Framework/AvatarAppearance.cs
@@ -53,7 +53,6 @@ namespace OpenSim.Framework
53 protected AvatarWearable[] m_wearables; 53 protected AvatarWearable[] m_wearables;
54 protected Dictionary<int, List<AvatarAttachment>> m_attachments; 54 protected Dictionary<int, List<AvatarAttachment>> m_attachments;
55 protected float m_avatarHeight = 0; 55 protected float m_avatarHeight = 0;
56 protected float m_hipOffset = 0;
57 56
58 public virtual int Serial 57 public virtual int Serial
59 { 58 {
@@ -89,11 +88,6 @@ namespace OpenSim.Framework
89 set { m_avatarHeight = value; } 88 set { m_avatarHeight = value; }
90 } 89 }
91 90
92 public virtual float HipOffset
93 {
94 get { return m_hipOffset; }
95 }
96
97 public AvatarAppearance() 91 public AvatarAppearance()
98 { 92 {
99// m_log.WarnFormat("[AVATAR APPEARANCE]: create empty appearance"); 93// m_log.WarnFormat("[AVATAR APPEARANCE]: create empty appearance");
@@ -184,7 +178,6 @@ namespace OpenSim.Framework
184 m_visualparams = (byte[])appearance.VisualParams.Clone(); 178 m_visualparams = (byte[])appearance.VisualParams.Clone();
185 179
186 m_avatarHeight = appearance.m_avatarHeight; 180 m_avatarHeight = appearance.m_avatarHeight;
187 m_hipOffset = appearance.m_hipOffset;
188 181
189 // Copy the attachment, force append mode since that ensures consistency 182 // Copy the attachment, force append mode since that ensures consistency
190 m_attachments = new Dictionary<int, List<AvatarAttachment>>(); 183 m_attachments = new Dictionary<int, List<AvatarAttachment>>();
@@ -347,20 +340,18 @@ namespace OpenSim.Framework
347 340
348 public virtual void SetHeight() 341 public virtual void SetHeight()
349 { 342 {
350 m_avatarHeight = 1.23077f // Shortest possible avatar height 343 // Start with shortest possible female avatar height
351 + 0.516945f * (float)m_visualparams[(int)VPElement.SHAPE_HEIGHT] / 255.0f // Body height 344 m_avatarHeight = 1.14597f;
352 + 0.072514f * (float)m_visualparams[(int)VPElement.SHAPE_HEAD_SIZE] / 255.0f // Head size 345 // Add offset for male avatars
353 + 0.3836f * (float)m_visualparams[(int)VPElement.SHAPE_LEG_LENGTH] / 255.0f // Leg length 346 if (m_visualparams[(int)VPElement.SHAPE_MALE] != 0)
354 + 0.08f * (float)m_visualparams[(int)VPElement.SHOES_PLATFORM_HEIGHT] / 255.0f // Shoe platform height 347 m_avatarHeight += 0.0848f;
355 + 0.07f * (float)m_visualparams[(int)VPElement.SHOES_HEEL_HEIGHT] / 255.0f // Shoe heel height 348 // Add offsets for visual params
356 + 0.076f * (float)m_visualparams[(int)VPElement.SHAPE_NECK_LENGTH] / 255.0f; // Neck length 349 m_avatarHeight += 0.516945f * (float)m_visualparams[(int)VPElement.SHAPE_HEIGHT] / 255.0f
357 350 + 0.08117f * (float)m_visualparams[(int)VPElement.SHAPE_HEAD_SIZE] / 255.0f
358 m_hipOffset = (((1.23077f // Half of avatar 351 + 0.3836f * (float)m_visualparams[(int)VPElement.SHAPE_LEG_LENGTH] / 255.0f
359 + 0.516945f * (float)m_visualparams[(int)VPElement.SHAPE_HEIGHT] / 255.0f // Body height 352 + 0.07f * (float)m_visualparams[(int)VPElement.SHOES_PLATFORM_HEIGHT] / 255.0f
360 + 0.3836f * (float)m_visualparams[(int)VPElement.SHAPE_LEG_LENGTH] / 255.0f // Leg length 353 + 0.08f * (float)m_visualparams[(int)VPElement.SHOES_HEEL_HEIGHT] / 255.0f
361 + 0.08f * (float)m_visualparams[(int)VPElement.SHOES_PLATFORM_HEIGHT] / 255.0f // Shoe platform height 354 + 0.076f * (float)m_visualparams[(int)VPElement.SHAPE_NECK_LENGTH] / 255.0f;
362 + 0.07f * (float)m_visualparams[(int)VPElement.SHOES_HEEL_HEIGHT] / 255.0f // Shoe heel height
363 ) / 2) - m_avatarHeight / 2) * 0.31f - 0.0425f;
364 } 355 }
365 356
366 public virtual void SetWearable(int wearableId, AvatarWearable wearable) 357 public virtual void SetWearable(int wearableId, AvatarWearable wearable)
@@ -591,7 +582,6 @@ namespace OpenSim.Framework
591 582
592 data["serial"] = OSD.FromInteger(m_serial); 583 data["serial"] = OSD.FromInteger(m_serial);
593 data["height"] = OSD.FromReal(m_avatarHeight); 584 data["height"] = OSD.FromReal(m_avatarHeight);
594 data["hipoffset"] = OSD.FromReal(m_hipOffset);
595 585
596 // Wearables 586 // Wearables
597 OSDArray wears = new OSDArray(AvatarWearable.MAX_WEARABLES); 587 OSDArray wears = new OSDArray(AvatarWearable.MAX_WEARABLES);
@@ -636,8 +626,6 @@ namespace OpenSim.Framework
636 m_serial = data["serial"].AsInteger(); 626 m_serial = data["serial"].AsInteger();
637 if ((data != null) && (data["height"] != null)) 627 if ((data != null) && (data["height"] != null))
638 m_avatarHeight = (float)data["height"].AsReal(); 628 m_avatarHeight = (float)data["height"].AsReal();
639 if ((data != null) && (data["hipoffset"] != null))
640 m_hipOffset = (float)data["hipoffset"].AsReal();
641 629
642 try 630 try
643 { 631 {
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index 84d0e71..6e20f90 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -3362,7 +3362,6 @@ namespace OpenSim.Region.Framework.Scenes
3362 prim.OffsetPosition = axPos; 3362 prim.OffsetPosition = axPos;
3363 3363
3364 prim.IgnoreUndoUpdate = false; 3364 prim.IgnoreUndoUpdate = false;
3365 prim.IgnoreUndoUpdate = false;
3366 } 3365 }
3367 } 3366 }
3368 3367
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index b95d613..bd94902 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -345,7 +345,10 @@ namespace OpenSim.Region.Framework.Scenes
345 } 345 }
346 346
347 #region Client Camera 347 #region Client Camera
348 // Position of agent's camera in world (region cordinates) 348
349 /// <summary>
350 /// Position of agent's camera in world (region cordinates)
351 /// </summary>
349 protected Vector3 m_lastCameraPosition; 352 protected Vector3 m_lastCameraPosition;
350 353
351 protected Vector3 m_CameraPosition; 354 protected Vector3 m_CameraPosition;
@@ -2082,12 +2085,12 @@ namespace OpenSim.Region.Framework.Scenes
2082 foreach (SceneObjectPart part in partArray) 2085 foreach (SceneObjectPart part in partArray)
2083 { 2086 {
2084 // Is a sit target available? 2087 // Is a sit target available?
2085 Vector3 avSitOffSet = part.SitTargetPosition; 2088 Vector3 avSitOffset = part.SitTargetPosition;
2086 Quaternion avSitOrientation = part.SitTargetOrientation; 2089 Quaternion avSitOrientation = part.SitTargetOrientation;
2087 UUID avOnTargetAlready = part.SitTargetAvatar; 2090 UUID avOnTargetAlready = part.SitTargetAvatar;
2088 2091
2089 bool SitTargetUnOccupied = (!(avOnTargetAlready != UUID.Zero)); 2092 bool SitTargetUnOccupied = (!(avOnTargetAlready != UUID.Zero));
2090 bool SitTargetisSet = (Vector3.Zero != avSitOffSet); //NB Latest SL Spec shows Sit Rotation setting is ignored. 2093 bool SitTargetisSet = (Vector3.Zero != avSitOffset); //NB Latest SL Spec shows Sit Rotation setting is ignored.
2091 2094
2092 if (SitTargetisSet && SitTargetUnOccupied) 2095 if (SitTargetisSet && SitTargetUnOccupied)
2093 { 2096 {
@@ -2110,7 +2113,6 @@ namespace OpenSim.Region.Framework.Scenes
2110 Vector3 cameraAtOffset = Vector3.Zero; 2113 Vector3 cameraAtOffset = Vector3.Zero;
2111 bool forceMouselook = false; 2114 bool forceMouselook = false;
2112 2115
2113 //SceneObjectPart part = m_scene.GetSceneObjectPart(targetID);
2114 SceneObjectPart part = FindNextAvailableSitTarget(targetID); 2116 SceneObjectPart part = FindNextAvailableSitTarget(targetID);
2115 if (part == null) return; 2117 if (part == null) return;
2116 2118
@@ -2596,6 +2598,7 @@ namespace OpenSim.Region.Framework.Scenes
2596 return; 2598 return;
2597 } 2599 }
2598 } 2600 }
2601
2599 ParentID = m_requestedSitTargetID; 2602 ParentID = m_requestedSitTargetID;
2600 2603
2601 //We want our offsets to reference the root prim, not the child we may have sat on 2604 //We want our offsets to reference the root prim, not the child we may have sat on
@@ -2794,9 +2797,6 @@ namespace OpenSim.Region.Framework.Scenes
2794 // server. 2797 // server.
2795 if (remoteClient.IsActive) 2798 if (remoteClient.IsActive)
2796 { 2799 {
2797 Vector3 pos = m_pos;
2798 pos.Z += Appearance.HipOffset;
2799
2800 //m_log.DebugFormat("[SCENE PRESENCE]: " + Name + " sending TerseUpdate to " + remoteClient.Name + " : Pos={0} Rot={1} Vel={2}", m_pos, Rotation, m_velocity); 2800 //m_log.DebugFormat("[SCENE PRESENCE]: " + Name + " sending TerseUpdate to " + remoteClient.Name + " : Pos={0} Rot={1} Vel={2}", m_pos, Rotation, m_velocity);
2801 2801
2802 remoteClient.SendEntityUpdate( 2802 remoteClient.SendEntityUpdate(
diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs
index d8a2054..35b43f4 100644
--- a/OpenSim/Services/LLLoginService/LLLoginService.cs
+++ b/OpenSim/Services/LLLoginService/LLLoginService.cs
@@ -126,6 +126,9 @@ namespace OpenSim.Services.LLLoginService
126 if (accountService == string.Empty || authService == string.Empty) 126 if (accountService == string.Empty || authService == string.Empty)
127 throw new Exception("LoginService is missing service specifications"); 127 throw new Exception("LoginService is missing service specifications");
128 128
129 // replace newlines in welcome message
130 m_WelcomeMessage = m_WelcomeMessage.Replace("\\n", "\n");
131
129 Object[] args = new Object[] { config }; 132 Object[] args = new Object[] { config };
130 m_UserAccountService = ServerUtils.LoadPlugin<IUserAccountService>(accountService, args); 133 m_UserAccountService = ServerUtils.LoadPlugin<IUserAccountService>(accountService, args);
131 m_GridUserService = ServerUtils.LoadPlugin<IGridUserService>(gridUserService, args); 134 m_GridUserService = ServerUtils.LoadPlugin<IGridUserService>(gridUserService, args);