aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorJeff Ames2008-08-16 17:26:25 +0000
committerJeff Ames2008-08-16 17:26:25 +0000
commit6fa26f5b41ab1a455783342c200fe68aeae515aa (patch)
tree6295bd30044aff271f616b178586acfbb5feeeec /OpenSim
parent* Adds Slightly better terrain shading to maptile generation. (diff)
downloadopensim-SC_OLD-6fa26f5b41ab1a455783342c200fe68aeae515aa.zip
opensim-SC_OLD-6fa26f5b41ab1a455783342c200fe68aeae515aa.tar.gz
opensim-SC_OLD-6fa26f5b41ab1a455783342c200fe68aeae515aa.tar.bz2
opensim-SC_OLD-6fa26f5b41ab1a455783342c200fe68aeae515aa.tar.xz
Update svn properties, minor formatting cleanup.
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs4
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs2
-rw-r--r--OpenSim/Region/Communications/OGS1/OGS1GridServices.cs2
-rw-r--r--OpenSim/Region/Communications/OGS1/OGS1UserServices.cs2
-rw-r--r--OpenSim/Region/Environment/Modules/Avatar/Profiles/AvatarProfilesModule.cs2
-rw-r--r--OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs6
-rw-r--r--OpenSim/Region/Environment/Modules/World/Permissions/PermissionsModule.cs6
-rw-r--r--OpenSim/Region/Environment/Scenes/ScenePresence.cs2
-rw-r--r--OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs46
-rw-r--r--OpenSim/Region/ScriptEngine/Common/LSL_Types.cs182
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs150
11 files changed, 202 insertions, 202 deletions
diff --git a/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs b/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs
index f96b15e..1360aa3 100644
--- a/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs
+++ b/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs
@@ -65,7 +65,7 @@ namespace OpenSim.Framework.Communications.Cache
65 /// <param name="userID"></param> 65 /// <param name="userID"></param>
66 public void AddNewUser(LLUUID userID) 66 public void AddNewUser(LLUUID userID)
67 { 67 {
68 if(userID == LLUUID.Zero) 68 if (userID == LLUUID.Zero)
69 return; 69 return;
70 m_log.DebugFormat("[USER CACHE]: Adding user profile for {0}", userID); 70 m_log.DebugFormat("[USER CACHE]: Adding user profile for {0}", userID);
71 GetUserDetails(userID); 71 GetUserDetails(userID);
@@ -132,7 +132,7 @@ namespace OpenSim.Framework.Communications.Cache
132 /// <returns>null if no user details are found</returns> 132 /// <returns>null if no user details are found</returns>
133 public CachedUserInfo GetUserDetails(LLUUID userID) 133 public CachedUserInfo GetUserDetails(LLUUID userID)
134 { 134 {
135 if(userID == LLUUID.Zero) 135 if (userID == LLUUID.Zero)
136 return null; 136 return null;
137 137
138 lock (m_userProfiles) 138 lock (m_userProfiles)
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index 8e35881..69c1dac 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -2695,7 +2695,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2695 returnblock[0].Parameter = Helpers.StringToField(estateName); 2695 returnblock[0].Parameter = Helpers.StringToField(estateName);
2696 // TODO: remove this cruft once MasterAvatar is fully deprecated 2696 // TODO: remove this cruft once MasterAvatar is fully deprecated
2697 // 2697 //
2698 if(m_scene.RegionInfo.EstateSettings.EstateOwner != LLUUID.Zero) 2698 if (m_scene.RegionInfo.EstateSettings.EstateOwner != LLUUID.Zero)
2699 returnblock[1].Parameter = Helpers.StringToField(m_scene.RegionInfo.EstateSettings.EstateOwner.ToString()); 2699 returnblock[1].Parameter = Helpers.StringToField(m_scene.RegionInfo.EstateSettings.EstateOwner.ToString());
2700 else 2700 else
2701 returnblock[1].Parameter = Helpers.StringToField(m_scene.RegionInfo.MasterAvatarAssignedUUID.ToString()); 2701 returnblock[1].Parameter = Helpers.StringToField(m_scene.RegionInfo.MasterAvatarAssignedUUID.ToString());
diff --git a/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs b/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs
index f1e420e..65b8763 100644
--- a/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs
+++ b/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs
@@ -123,7 +123,7 @@ namespace OpenSim.Region.Communications.OGS1
123 GridParams["server_uri"] = regionInfo.ServerURI; 123 GridParams["server_uri"] = regionInfo.ServerURI;
124 GridParams["region_secret"] = regionInfo.regionSecret; 124 GridParams["region_secret"] = regionInfo.regionSecret;
125 125
126 if(regionInfo.MasterAvatarAssignedUUID != LLUUID.Zero) 126 if (regionInfo.MasterAvatarAssignedUUID != LLUUID.Zero)
127 GridParams["master_avatar_uuid"] = regionInfo.MasterAvatarAssignedUUID.ToString(); 127 GridParams["master_avatar_uuid"] = regionInfo.MasterAvatarAssignedUUID.ToString();
128 else 128 else
129 GridParams["master_avatar_uuid"] = regionInfo.EstateSettings.EstateOwner.ToString(); 129 GridParams["master_avatar_uuid"] = regionInfo.EstateSettings.EstateOwner.ToString();
diff --git a/OpenSim/Region/Communications/OGS1/OGS1UserServices.cs b/OpenSim/Region/Communications/OGS1/OGS1UserServices.cs
index 3d42dfd..06a28d0 100644
--- a/OpenSim/Region/Communications/OGS1/OGS1UserServices.cs
+++ b/OpenSim/Region/Communications/OGS1/OGS1UserServices.cs
@@ -96,7 +96,7 @@ namespace OpenSim.Region.Communications.OGS1
96 userData.CustomType = (string) data["custom_type"]; 96 userData.CustomType = (string) data["custom_type"];
97 else 97 else
98 userData.CustomType = ""; 98 userData.CustomType = "";
99 if(userData.CustomType == null) 99 if (userData.CustomType == null)
100 userData.CustomType = ""; 100 userData.CustomType = "";
101 101
102 if (data.Contains("partner")) 102 if (data.Contains("partner"))
diff --git a/OpenSim/Region/Environment/Modules/Avatar/Profiles/AvatarProfilesModule.cs b/OpenSim/Region/Environment/Modules/Avatar/Profiles/AvatarProfilesModule.cs
index 1d1d503..20b1c1c 100644
--- a/OpenSim/Region/Environment/Modules/Avatar/Profiles/AvatarProfilesModule.cs
+++ b/OpenSim/Region/Environment/Modules/Avatar/Profiles/AvatarProfilesModule.cs
@@ -97,7 +97,7 @@ namespace OpenSim.Region.Environment.Modules.Avatar.Profiles
97 if (null != profile) 97 if (null != profile)
98 { 98 {
99 Byte[] charterMember; 99 Byte[] charterMember;
100 if(profile.CustomType == "") 100 if (profile.CustomType == "")
101 { 101 {
102 charterMember = new Byte[1]; 102 charterMember = new Byte[1];
103 charterMember[0] = (Byte)((profile.UserFlags & 0xf00) >> 8); 103 charterMember[0] = (Byte)((profile.UserFlags & 0xf00) >> 8);
diff --git a/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs b/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
index d5cb0eb..92eda80 100644
--- a/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
+++ b/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
@@ -162,7 +162,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
162 ILandObject fullSimParcel = new LandObject(LLUUID.Zero, false, m_scene); 162 ILandObject fullSimParcel = new LandObject(LLUUID.Zero, false, m_scene);
163 163
164 fullSimParcel.setLandBitmap(fullSimParcel.getSquareLandBitmap(0, 0, (int)Constants.RegionSize, (int)Constants.RegionSize)); 164 fullSimParcel.setLandBitmap(fullSimParcel.getSquareLandBitmap(0, 0, (int)Constants.RegionSize, (int)Constants.RegionSize));
165 if(m_scene.RegionInfo.EstateSettings.EstateOwner != LLUUID.Zero) 165 if (m_scene.RegionInfo.EstateSettings.EstateOwner != LLUUID.Zero)
166 fullSimParcel.landData.OwnerID = m_scene.RegionInfo.EstateSettings.EstateOwner; 166 fullSimParcel.landData.OwnerID = m_scene.RegionInfo.EstateSettings.EstateOwner;
167 else 167 else
168 fullSimParcel.landData.OwnerID = m_scene.RegionInfo.MasterAvatarAssignedUUID; 168 fullSimParcel.landData.OwnerID = m_scene.RegionInfo.MasterAvatarAssignedUUID;
@@ -934,7 +934,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
934 { 934 {
935 if (m_scene.ExternalChecks.ExternalChecksCanAbandonParcel(remote_client.AgentId, landList[local_id])) 935 if (m_scene.ExternalChecks.ExternalChecksCanAbandonParcel(remote_client.AgentId, landList[local_id]))
936 { 936 {
937 if(m_scene.RegionInfo.EstateSettings.EstateOwner != LLUUID.Zero) 937 if (m_scene.RegionInfo.EstateSettings.EstateOwner != LLUUID.Zero)
938 landList[local_id].landData.OwnerID = m_scene.RegionInfo.EstateSettings.EstateOwner; 938 landList[local_id].landData.OwnerID = m_scene.RegionInfo.EstateSettings.EstateOwner;
939 else 939 else
940 landList[local_id].landData.OwnerID = m_scene.RegionInfo.MasterAvatarAssignedUUID; 940 landList[local_id].landData.OwnerID = m_scene.RegionInfo.MasterAvatarAssignedUUID;
@@ -951,7 +951,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
951 { 951 {
952 if (m_scene.ExternalChecks.ExternalChecksCanReclaimParcel(remote_client.AgentId, landList[local_id])) 952 if (m_scene.ExternalChecks.ExternalChecksCanReclaimParcel(remote_client.AgentId, landList[local_id]))
953 { 953 {
954 if(m_scene.RegionInfo.EstateSettings.EstateOwner != LLUUID.Zero) 954 if (m_scene.RegionInfo.EstateSettings.EstateOwner != LLUUID.Zero)
955 landList[local_id].landData.OwnerID = m_scene.RegionInfo.EstateSettings.EstateOwner; 955 landList[local_id].landData.OwnerID = m_scene.RegionInfo.EstateSettings.EstateOwner;
956 else 956 else
957 landList[local_id].landData.OwnerID = m_scene.RegionInfo.MasterAvatarAssignedUUID; 957 landList[local_id].landData.OwnerID = m_scene.RegionInfo.MasterAvatarAssignedUUID;
diff --git a/OpenSim/Region/Environment/Modules/World/Permissions/PermissionsModule.cs b/OpenSim/Region/Environment/Modules/World/Permissions/PermissionsModule.cs
index b3da36c..2394a30 100644
--- a/OpenSim/Region/Environment/Modules/World/Permissions/PermissionsModule.cs
+++ b/OpenSim/Region/Environment/Modules/World/Permissions/PermissionsModule.cs
@@ -246,12 +246,12 @@ namespace OpenSim.Region.Environment.Modules.World.Permissions
246 if (m_scene.RegionInfo.EstateSettings.EstateOwner == user) 246 if (m_scene.RegionInfo.EstateSettings.EstateOwner == user)
247 return true; 247 return true;
248 } 248 }
249 if(m_allowGridGods) 249 if (m_allowGridGods)
250 { 250 {
251 CachedUserInfo profile = m_scene.CommsManager.UserProfileCacheService.GetUserDetails(user); 251 CachedUserInfo profile = m_scene.CommsManager.UserProfileCacheService.GetUserDetails(user);
252 if(profile != null && profile.UserProfile != null) 252 if (profile != null && profile.UserProfile != null)
253 { 253 {
254 if(profile.UserProfile.GodLevel >= 200) 254 if (profile.UserProfile.GodLevel >= 200)
255 return true; 255 return true;
256 } 256 }
257 } 257 }
diff --git a/OpenSim/Region/Environment/Scenes/ScenePresence.cs b/OpenSim/Region/Environment/Scenes/ScenePresence.cs
index 8dcfc03..cad2496 100644
--- a/OpenSim/Region/Environment/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Environment/Scenes/ScenePresence.cs
@@ -2030,7 +2030,7 @@ namespace OpenSim.Region.Environment.Scenes
2030 // who is granted god powers, but has no god level set. 2030 // who is granted god powers, but has no god level set.
2031 // 2031 //
2032 CachedUserInfo profile = m_scene.CommsManager.UserProfileCacheService.GetUserDetails(agentID); 2032 CachedUserInfo profile = m_scene.CommsManager.UserProfileCacheService.GetUserDetails(agentID);
2033 if(profile.UserProfile.GodLevel > 0) 2033 if (profile.UserProfile.GodLevel > 0)
2034 m_godlevel = profile.UserProfile.GodLevel; 2034 m_godlevel = profile.UserProfile.GodLevel;
2035 else 2035 else
2036 m_godlevel = 200; 2036 m_godlevel = 200;
diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
index d7cd027..25c0d9a 100644
--- a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
+++ b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
@@ -5704,12 +5704,12 @@ namespace OpenSim.Region.ScriptEngine.Common
5704 5704
5705 LSL_Types.list l = new LSL_Types.list(); 5705 LSL_Types.list l = new LSL_Types.list();
5706 ScenePresence av = World.GetScenePresence(id); 5706 ScenePresence av = World.GetScenePresence(id);
5707 if( av == null ) 5707 if (av == null)
5708 return l; 5708 return l;
5709 LLUUID[] anims; 5709 LLUUID[] anims;
5710 anims = av.GetAnimationArray(); 5710 anims = av.GetAnimationArray();
5711 foreach( LLUUID foo in anims ) 5711 foreach (LLUUID foo in anims)
5712 l.Add( foo.ToString() ); 5712 l.Add(foo.ToString());
5713 return l; 5713 return l;
5714 } 5714 }
5715 5715
@@ -6813,20 +6813,20 @@ namespace OpenSim.Region.ScriptEngine.Common
6813 public void llParcelMediaCommandList(LSL_Types.list commandList) 6813 public void llParcelMediaCommandList(LSL_Types.list commandList)
6814 { 6814 {
6815 //TO DO: Implement the missing commands 6815 //TO DO: Implement the missing commands
6816 //PARCEL_MEDIA_COMMAND_STOP Stop the media stream and go back to the first frame. 6816 //PARCEL_MEDIA_COMMAND_STOP Stop the media stream and go back to the first frame.
6817 //PARCEL_MEDIA_COMMAND_PAUSE Pause the media stream (stop playing but stay on current frame). 6817 //PARCEL_MEDIA_COMMAND_PAUSE Pause the media stream (stop playing but stay on current frame).
6818 //PARCEL_MEDIA_COMMAND_PLAY Start the media stream playing from the current frame and stop when the end is reached. 6818 //PARCEL_MEDIA_COMMAND_PLAY Start the media stream playing from the current frame and stop when the end is reached.
6819 //PARCEL_MEDIA_COMMAND_LOOP Start the media stream playing from the current frame. When the end is reached, loop to the beginning and continue. 6819 //PARCEL_MEDIA_COMMAND_LOOP Start the media stream playing from the current frame. When the end is reached, loop to the beginning and continue.
6820 //PARCEL_MEDIA_COMMAND_TEXTURE key uuid Use this to get or set the parcel's media texture. 6820 //PARCEL_MEDIA_COMMAND_TEXTURE key uuid Use this to get or set the parcel's media texture.
6821 //PARCEL_MEDIA_COMMAND_URL string url Used to get or set the parcel's media url. 6821 //PARCEL_MEDIA_COMMAND_URL string url Used to get or set the parcel's media url.
6822 //PARCEL_MEDIA_COMMAND_TIME float time Move a media stream to a specific time. 6822 //PARCEL_MEDIA_COMMAND_TIME float time Move a media stream to a specific time.
6823 //PARCEL_MEDIA_COMMAND_AGENT key uuid Applies the media command to the specified agent only. 6823 //PARCEL_MEDIA_COMMAND_AGENT key uuid Applies the media command to the specified agent only.
6824 //PARCEL_MEDIA_COMMAND_UNLOAD Completely unloads the movie and restores the original texture. 6824 //PARCEL_MEDIA_COMMAND_UNLOAD Completely unloads the movie and restores the original texture.
6825 //PARCEL_MEDIA_COMMAND_AUTO_ALIGN integer boolean Sets the parcel option 'Auto scale content'. 6825 //PARCEL_MEDIA_COMMAND_AUTO_ALIGN integer boolean Sets the parcel option 'Auto scale content'.
6826 //PARCEL_MEDIA_COMMAND_TYPE string mime_type Use this to get or set the parcel media MIME type (e.g. "text/html"). (1.19.1 RC0 or later) 6826 //PARCEL_MEDIA_COMMAND_TYPE string mime_type Use this to get or set the parcel media MIME type (e.g. "text/html"). (1.19.1 RC0 or later)
6827 //PARCEL_MEDIA_COMMAND_SIZE integer x, integer y Use this to get or set the parcel media pixel resolution. (1.19.1 RC0 or later) 6827 //PARCEL_MEDIA_COMMAND_SIZE integer x, integer y Use this to get or set the parcel media pixel resolution. (1.19.1 RC0 or later)
6828 //PARCEL_MEDIA_COMMAND_DESC string desc Use this to get or set the parcel media description. (1.19.1 RC0 or later) 6828 //PARCEL_MEDIA_COMMAND_DESC string desc Use this to get or set the parcel media description. (1.19.1 RC0 or later)
6829 //PARCEL_MEDIA_COMMAND_LOOP_SET float loop Use this to get or set the parcel's media loop duration. (1.19.1 RC0 or later) 6829 //PARCEL_MEDIA_COMMAND_LOOP_SET float loop Use this to get or set the parcel's media loop duration. (1.19.1 RC0 or later)
6830 m_host.AddScriptLPS(1); 6830 m_host.AddScriptLPS(1);
6831 for (int i = 0; i < commandList.Data.Length; i++) 6831 for (int i = 0; i < commandList.Data.Length; i++)
6832 { 6832 {
@@ -6904,12 +6904,12 @@ namespace OpenSim.Region.ScriptEngine.Common
6904 m_host.AddScriptLPS(1); 6904 m_host.AddScriptLPS(1);
6905 LSL_Types.list list = new LSL_Types.list(); 6905 LSL_Types.list list = new LSL_Types.list();
6906 //TO DO: make the implementation for the missing commands 6906 //TO DO: make the implementation for the missing commands
6907 //PARCEL_MEDIA_COMMAND_TEXTURE key uuid Use this to get or set the parcel's media texture. 6907 //PARCEL_MEDIA_COMMAND_TEXTURE key uuid Use this to get or set the parcel's media texture.
6908 //PARCEL_MEDIA_COMMAND_URL string url Used to get or set the parcel's media url. 6908 //PARCEL_MEDIA_COMMAND_URL string url Used to get or set the parcel's media url.
6909 //PARCEL_MEDIA_COMMAND_TYPE string mime_type Use this to get or set the parcel media MIME type (e.g. "text/html"). (1.19.1 RC0 or later) 6909 //PARCEL_MEDIA_COMMAND_TYPE string mime_type Use this to get or set the parcel media MIME type (e.g. "text/html"). (1.19.1 RC0 or later)
6910 //PARCEL_MEDIA_COMMAND_SIZE integer x, integer y Use this to get or set the parcel media pixel resolution. (1.19.1 RC0 or later) 6910 //PARCEL_MEDIA_COMMAND_SIZE integer x, integer y Use this to get or set the parcel media pixel resolution. (1.19.1 RC0 or later)
6911 //PARCEL_MEDIA_COMMAND_DESC string desc Use this to get or set the parcel media description. (1.19.1 RC0 or later) 6911 //PARCEL_MEDIA_COMMAND_DESC string desc Use this to get or set the parcel media description. (1.19.1 RC0 or later)
6912 //PARCEL_MEDIA_COMMAND_LOOP_SET float loop Use this to get or set the parcel's media loop duration. (1.19.1 RC0 or later) 6912 //PARCEL_MEDIA_COMMAND_LOOP_SET float loop Use this to get or set the parcel's media loop duration. (1.19.1 RC0 or later)
6913 for (int i = 0; i < aList.Data.Length; i++) 6913 for (int i = 0; i < aList.Data.Length; i++)
6914 { 6914 {
6915 6915
diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_Types.cs b/OpenSim/Region/ScriptEngine/Common/LSL_Types.cs
index 3b2594d..e98dec6 100644
--- a/OpenSim/Region/ScriptEngine/Common/LSL_Types.cs
+++ b/OpenSim/Region/ScriptEngine/Common/LSL_Types.cs
@@ -634,97 +634,97 @@ namespace OpenSim.Region.ScriptEngine.Common
634 } 634 }
635 } 635 }
636 636
637 private class AlphanumComparatorFast : IComparer 637 private class AlphanumComparatorFast : IComparer
638 { 638 {
639 public int Compare(object x, object y) 639 public int Compare(object x, object y)
640 { 640 {
641 string s1 = x as string; 641 string s1 = x as string;
642 if (s1 == null) 642 if (s1 == null)
643 { 643 {
644 return 0; 644 return 0;
645 } 645 }
646 string s2 = y as string; 646 string s2 = y as string;
647 if (s2 == null) 647 if (s2 == null)
648 { 648 {
649 return 0; 649 return 0;
650 } 650 }
651 651
652 int len1 = s1.Length; 652 int len1 = s1.Length;
653 int len2 = s2.Length; 653 int len2 = s2.Length;
654 int marker1 = 0; 654 int marker1 = 0;
655 int marker2 = 0; 655 int marker2 = 0;
656 656
657 // Walk through two the strings with two markers. 657 // Walk through two the strings with two markers.
658 while (marker1 < len1 && marker2 < len2) 658 while (marker1 < len1 && marker2 < len2)
659 { 659 {
660 char ch1 = s1[marker1]; 660 char ch1 = s1[marker1];
661 char ch2 = s2[marker2]; 661 char ch2 = s2[marker2];
662 662
663 // Some buffers we can build up characters in for each chunk. 663 // Some buffers we can build up characters in for each chunk.
664 char[] space1 = new char[len1]; 664 char[] space1 = new char[len1];
665 int loc1 = 0; 665 int loc1 = 0;
666 char[] space2 = new char[len2]; 666 char[] space2 = new char[len2];
667 int loc2 = 0; 667 int loc2 = 0;
668 668
669 // Walk through all following characters that are digits or 669 // Walk through all following characters that are digits or
670 // characters in BOTH strings starting at the appropriate marker. 670 // characters in BOTH strings starting at the appropriate marker.
671 // Collect char arrays. 671 // Collect char arrays.
672 do 672 do
673 { 673 {
674 space1[loc1++] = ch1; 674 space1[loc1++] = ch1;
675 marker1++; 675 marker1++;
676 676
677 if (marker1 < len1) 677 if (marker1 < len1)
678 { 678 {
679 ch1 = s1[marker1]; 679 ch1 = s1[marker1];
680 } 680 }
681 else 681 else
682 { 682 {
683 break; 683 break;
684 } 684 }
685 } while (char.IsDigit(ch1) == char.IsDigit(space1[0])); 685 } while (char.IsDigit(ch1) == char.IsDigit(space1[0]));
686 686
687 do 687 do
688 { 688 {
689 space2[loc2++] = ch2; 689 space2[loc2++] = ch2;
690 marker2++; 690 marker2++;
691 691
692 if (marker2 < len2) 692 if (marker2 < len2)
693 { 693 {
694 ch2 = s2[marker2]; 694 ch2 = s2[marker2];
695 } 695 }
696 else 696 else
697 { 697 {
698 break; 698 break;
699 } 699 }
700 } while (char.IsDigit(ch2) == char.IsDigit(space2[0])); 700 } while (char.IsDigit(ch2) == char.IsDigit(space2[0]));
701 701
702 // If we have collected numbers, compare them numerically. 702 // If we have collected numbers, compare them numerically.
703 // Otherwise, if we have strings, compare them alphabetically. 703 // Otherwise, if we have strings, compare them alphabetically.
704 string str1 = new string(space1); 704 string str1 = new string(space1);
705 string str2 = new string(space2); 705 string str2 = new string(space2);
706 706
707 int result; 707 int result;
708 708
709 if (char.IsDigit(space1[0]) && char.IsDigit(space2[0])) 709 if (char.IsDigit(space1[0]) && char.IsDigit(space2[0]))
710 { 710 {
711 int thisNumericChunk = int.Parse(str1); 711 int thisNumericChunk = int.Parse(str1);
712 int thatNumericChunk = int.Parse(str2); 712 int thatNumericChunk = int.Parse(str2);
713 result = thisNumericChunk.CompareTo(thatNumericChunk); 713 result = thisNumericChunk.CompareTo(thatNumericChunk);
714 } 714 }
715 else 715 else
716 { 716 {
717 result = str1.CompareTo(str2); 717 result = str1.CompareTo(str2);
718 } 718 }
719 719
720 if (result != 0) 720 if (result != 0)
721 { 721 {
722 return result; 722 return result;
723 } 723 }
724 } 724 }
725 return len1 - len2; 725 return len1 - len2;
726 } 726 }
727 } 727 }
728 728
729 public list Sort(int stride, int ascending) 729 public list Sort(int stride, int ascending)
730 { 730 {
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 9a3fc5c..410921a 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -1019,7 +1019,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1019 LLObject.TextureEntry tex = part.Shape.Textures; 1019 LLObject.TextureEntry tex = part.Shape.Textures;
1020 if (face > -1) 1020 if (face > -1)
1021 { 1021 {
1022 tex.CreateFace((uint) face); 1022 tex.CreateFace((uint) face);
1023 tex.FaceTextures[face].Glow = glow; 1023 tex.FaceTextures[face].Glow = glow;
1024 part.UpdateTexture(tex); 1024 part.UpdateTexture(tex);
1025 return; 1025 return;
@@ -1032,63 +1032,63 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1032 { 1032 {
1033 tex.FaceTextures[i].Glow = glow; 1033 tex.FaceTextures[i].Glow = glow;
1034 } 1034 }
1035 tex.DefaultTexture.Glow = glow; 1035 tex.DefaultTexture.Glow = glow;
1036 } 1036 }
1037 part.UpdateTexture(tex); 1037 part.UpdateTexture(tex);
1038 return; 1038 return;
1039 } 1039 }
1040 } 1040 }
1041 1041
1042 public void SetShiny(SceneObjectPart part, int face, int shiny, Bumpiness bump) 1042 public void SetShiny(SceneObjectPart part, int face, int shiny, Bumpiness bump)
1043 { 1043 {
1044 1044
1045 Shininess sval = new Shininess(); 1045 Shininess sval = new Shininess();
1046 1046
1047 switch (shiny) 1047 switch (shiny)
1048 { 1048 {
1049 case 0: 1049 case 0:
1050 sval = Shininess.None; 1050 sval = Shininess.None;
1051 break; 1051 break;
1052 case 1: 1052 case 1:
1053 sval = Shininess.Low; 1053 sval = Shininess.Low;
1054 break; 1054 break;
1055 case 2: 1055 case 2:
1056 sval = Shininess.Medium; 1056 sval = Shininess.Medium;
1057 break; 1057 break;
1058 case 3: 1058 case 3:
1059 sval = Shininess.High; 1059 sval = Shininess.High;
1060 break; 1060 break;
1061 default: 1061 default:
1062 sval = Shininess.None; 1062 sval = Shininess.None;
1063 break; 1063 break;
1064 } 1064 }
1065 1065
1066 LLObject.TextureEntry tex = part.Shape.Textures; 1066 LLObject.TextureEntry tex = part.Shape.Textures;
1067 if (face > -1) 1067 if (face > -1)
1068 { 1068 {
1069 tex.CreateFace((uint) face); 1069 tex.CreateFace((uint) face);
1070 tex.FaceTextures[face].Shiny = sval; 1070 tex.FaceTextures[face].Shiny = sval;
1071 tex.FaceTextures[face].Bump = bump; 1071 tex.FaceTextures[face].Bump = bump;
1072 part.UpdateTexture(tex); 1072 part.UpdateTexture(tex);
1073 return; 1073 return;
1074 } 1074 }
1075 else if (face == -1) 1075 else if (face == -1)
1076 { 1076 {
1077 for (uint i = 0; i < 32; i++) 1077 for (uint i = 0; i < 32; i++)
1078 { 1078 {
1079 if (tex.FaceTextures[i] != null) 1079 if (tex.FaceTextures[i] != null)
1080 { 1080 {
1081 tex.FaceTextures[i].Shiny = sval; 1081 tex.FaceTextures[i].Shiny = sval;
1082 tex.FaceTextures[i].Bump = bump;; 1082 tex.FaceTextures[i].Bump = bump;;
1083 } 1083 }
1084 tex.DefaultTexture.Shiny = sval; 1084 tex.DefaultTexture.Shiny = sval;
1085 tex.DefaultTexture.Bump = bump; 1085 tex.DefaultTexture.Bump = bump;
1086 } 1086 }
1087 part.UpdateTexture(tex); 1087 part.UpdateTexture(tex);
1088 return; 1088 return;
1089 } 1089 }
1090 } 1090 }
1091 1091
1092 public double llGetAlpha(int face) 1092 public double llGetAlpha(int face)
1093 { 1093 {
1094 m_host.AddScriptLPS(1); 1094 m_host.AddScriptLPS(1);
@@ -5484,21 +5484,21 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
5484 return; 5484 return;
5485 face = Convert.ToInt32(rules.Data[idx++]); 5485 face = Convert.ToInt32(rules.Data[idx++]);
5486 float glow = (float)Convert.ToDouble(rules.Data[idx++]); 5486 float glow = (float)Convert.ToDouble(rules.Data[idx++]);
5487 5487
5488 SetGlow(part, face, glow); 5488 SetGlow(part, face, glow);
5489 5489
5490 break; 5490 break;
5491 case (int)ScriptBaseClass.PRIM_BUMP_SHINY: 5491 case (int)ScriptBaseClass.PRIM_BUMP_SHINY:
5492 if (remain < 3) 5492 if (remain < 3)
5493 return; 5493 return;
5494 face = Convert.ToInt32(rules.Data[idx++]); 5494 face = Convert.ToInt32(rules.Data[idx++]);
5495 int shiny = Convert.ToInt32(rules.Data[idx++]); 5495 int shiny = Convert.ToInt32(rules.Data[idx++]);
5496 Bumpiness bump = (Bumpiness)Convert.ToByte(rules.Data[idx++]); 5496 Bumpiness bump = (Bumpiness)Convert.ToByte(rules.Data[idx++]);
5497 5497
5498 SetShiny(part, face, shiny, bump); 5498 SetShiny(part, face, shiny, bump);
5499 5499
5500 break; 5500 break;
5501 } 5501 }
5502 } 5502 }
5503 } 5503 }
5504 5504
@@ -5568,12 +5568,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
5568 5568
5569 LSL_Types.list l = new LSL_Types.list(); 5569 LSL_Types.list l = new LSL_Types.list();
5570 ScenePresence av = World.GetScenePresence(id); 5570 ScenePresence av = World.GetScenePresence(id);
5571 if( av == null ) 5571 if (av == null)
5572 return l; 5572 return l;
5573 LLUUID[] anims; 5573 LLUUID[] anims;
5574 anims = av.GetAnimationArray(); 5574 anims = av.GetAnimationArray();
5575 foreach( LLUUID foo in anims ) 5575 foreach (LLUUID foo in anims)
5576 l.Add( foo.ToString() ); 5576 l.Add(foo.ToString());
5577 return l; 5577 return l;
5578 } 5578 }
5579 5579
@@ -6662,20 +6662,20 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6662 public void llParcelMediaCommandList(LSL_Types.list commandList) 6662 public void llParcelMediaCommandList(LSL_Types.list commandList)
6663 { 6663 {
6664 //TO DO: Implement the missing commands 6664 //TO DO: Implement the missing commands
6665 //PARCEL_MEDIA_COMMAND_STOP Stop the media stream and go back to the first frame. 6665 //PARCEL_MEDIA_COMMAND_STOP Stop the media stream and go back to the first frame.
6666 //PARCEL_MEDIA_COMMAND_PAUSE Pause the media stream (stop playing but stay on current frame). 6666 //PARCEL_MEDIA_COMMAND_PAUSE Pause the media stream (stop playing but stay on current frame).
6667 //PARCEL_MEDIA_COMMAND_PLAY Start the media stream playing from the current frame and stop when the end is reached. 6667 //PARCEL_MEDIA_COMMAND_PLAY Start the media stream playing from the current frame and stop when the end is reached.
6668 //PARCEL_MEDIA_COMMAND_LOOP Start the media stream playing from the current frame. When the end is reached, loop to the beginning and continue. 6668 //PARCEL_MEDIA_COMMAND_LOOP Start the media stream playing from the current frame. When the end is reached, loop to the beginning and continue.
6669 //PARCEL_MEDIA_COMMAND_TEXTURE key uuid Use this to get or set the parcel's media texture. 6669 //PARCEL_MEDIA_COMMAND_TEXTURE key uuid Use this to get or set the parcel's media texture.
6670 //PARCEL_MEDIA_COMMAND_URL string url Used to get or set the parcel's media url. 6670 //PARCEL_MEDIA_COMMAND_URL string url Used to get or set the parcel's media url.
6671 //PARCEL_MEDIA_COMMAND_TIME float time Move a media stream to a specific time. 6671 //PARCEL_MEDIA_COMMAND_TIME float time Move a media stream to a specific time.
6672 //PARCEL_MEDIA_COMMAND_AGENT key uuid Applies the media command to the specified agent only. 6672 //PARCEL_MEDIA_COMMAND_AGENT key uuid Applies the media command to the specified agent only.
6673 //PARCEL_MEDIA_COMMAND_UNLOAD Completely unloads the movie and restores the original texture. 6673 //PARCEL_MEDIA_COMMAND_UNLOAD Completely unloads the movie and restores the original texture.
6674 //PARCEL_MEDIA_COMMAND_AUTO_ALIGN integer boolean Sets the parcel option 'Auto scale content'. 6674 //PARCEL_MEDIA_COMMAND_AUTO_ALIGN integer boolean Sets the parcel option 'Auto scale content'.
6675 //PARCEL_MEDIA_COMMAND_TYPE string mime_type Use this to get or set the parcel media MIME type (e.g. "text/html"). (1.19.1 RC0 or later) 6675 //PARCEL_MEDIA_COMMAND_TYPE string mime_type Use this to get or set the parcel media MIME type (e.g. "text/html"). (1.19.1 RC0 or later)
6676 //PARCEL_MEDIA_COMMAND_SIZE integer x, integer y Use this to get or set the parcel media pixel resolution. (1.19.1 RC0 or later) 6676 //PARCEL_MEDIA_COMMAND_SIZE integer x, integer y Use this to get or set the parcel media pixel resolution. (1.19.1 RC0 or later)
6677 //PARCEL_MEDIA_COMMAND_DESC string desc Use this to get or set the parcel media description. (1.19.1 RC0 or later) 6677 //PARCEL_MEDIA_COMMAND_DESC string desc Use this to get or set the parcel media description. (1.19.1 RC0 or later)
6678 //PARCEL_MEDIA_COMMAND_LOOP_SET float loop Use this to get or set the parcel's media loop duration. (1.19.1 RC0 or later) 6678 //PARCEL_MEDIA_COMMAND_LOOP_SET float loop Use this to get or set the parcel's media loop duration. (1.19.1 RC0 or later)
6679 m_host.AddScriptLPS(1); 6679 m_host.AddScriptLPS(1);
6680 for (int i = 0; i < commandList.Data.Length; i++) 6680 for (int i = 0; i < commandList.Data.Length; i++)
6681 { 6681 {
@@ -6753,12 +6753,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6753 m_host.AddScriptLPS(1); 6753 m_host.AddScriptLPS(1);
6754 LSL_Types.list list = new LSL_Types.list(); 6754 LSL_Types.list list = new LSL_Types.list();
6755 //TO DO: make the implementation for the missing commands 6755 //TO DO: make the implementation for the missing commands
6756 //PARCEL_MEDIA_COMMAND_TEXTURE key uuid Use this to get or set the parcel's media texture. 6756 //PARCEL_MEDIA_COMMAND_TEXTURE key uuid Use this to get or set the parcel's media texture.
6757 //PARCEL_MEDIA_COMMAND_URL string url Used to get or set the parcel's media url. 6757 //PARCEL_MEDIA_COMMAND_URL string url Used to get or set the parcel's media url.
6758 //PARCEL_MEDIA_COMMAND_TYPE string mime_type Use this to get or set the parcel media MIME type (e.g. "text/html"). (1.19.1 RC0 or later) 6758 //PARCEL_MEDIA_COMMAND_TYPE string mime_type Use this to get or set the parcel media MIME type (e.g. "text/html"). (1.19.1 RC0 or later)
6759 //PARCEL_MEDIA_COMMAND_SIZE integer x, integer y Use this to get or set the parcel media pixel resolution. (1.19.1 RC0 or later) 6759 //PARCEL_MEDIA_COMMAND_SIZE integer x, integer y Use this to get or set the parcel media pixel resolution. (1.19.1 RC0 or later)
6760 //PARCEL_MEDIA_COMMAND_DESC string desc Use this to get or set the parcel media description. (1.19.1 RC0 or later) 6760 //PARCEL_MEDIA_COMMAND_DESC string desc Use this to get or set the parcel media description. (1.19.1 RC0 or later)
6761 //PARCEL_MEDIA_COMMAND_LOOP_SET float loop Use this to get or set the parcel's media loop duration. (1.19.1 RC0 or later) 6761 //PARCEL_MEDIA_COMMAND_LOOP_SET float loop Use this to get or set the parcel's media loop duration. (1.19.1 RC0 or later)
6762 for (int i = 0; i < aList.Data.Length; i++) 6762 for (int i = 0; i < aList.Data.Length; i++)
6763 { 6763 {
6764 6764