aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes/AllNewSceneObjectGroup2.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/AllNewSceneObjectGroup2.cs')
-rw-r--r--OpenSim/Region/Environment/Scenes/AllNewSceneObjectGroup2.cs76
1 files changed, 74 insertions, 2 deletions
diff --git a/OpenSim/Region/Environment/Scenes/AllNewSceneObjectGroup2.cs b/OpenSim/Region/Environment/Scenes/AllNewSceneObjectGroup2.cs
index b0fe12a..9d9c97b 100644
--- a/OpenSim/Region/Environment/Scenes/AllNewSceneObjectGroup2.cs
+++ b/OpenSim/Region/Environment/Scenes/AllNewSceneObjectGroup2.cs
@@ -47,6 +47,14 @@ namespace OpenSim.Region.Environment.Scenes
47 /// <summary> 47 /// <summary>
48 /// 48 ///
49 /// </summary> 49 /// </summary>
50 public AllNewSceneObjectGroup2()
51 {
52
53 }
54
55 /// <summary>
56 ///
57 /// </summary>
50 public AllNewSceneObjectGroup2(Scene world, ulong regionHandle, LLUUID ownerID, uint localID, LLVector3 pos, PrimitiveBaseShape shape) 58 public AllNewSceneObjectGroup2(Scene world, ulong regionHandle, LLUUID ownerID, uint localID, LLVector3 pos, PrimitiveBaseShape shape)
51 { 59 {
52 m_regionHandle = regionHandle; 60 m_regionHandle = regionHandle;
@@ -62,7 +70,70 @@ namespace OpenSim.Region.Environment.Scenes
62 /// <summary> 70 /// <summary>
63 /// 71 ///
64 /// </summary> 72 /// </summary>
65 public void FlagGroupForFullUpdate() 73 /// <returns></returns>
74 public new AllNewSceneObjectGroup2 Copy()
75 {
76 AllNewSceneObjectGroup2 dupe = (AllNewSceneObjectGroup2) this.MemberwiseClone();
77 dupe.Pos = new LLVector3(Pos.X, Pos.Y, Pos.Z);
78 dupe.CopyRootPart(this.m_rootPart);
79
80 foreach (AllNewSceneObjectPart2 part in this.m_parts.Values)
81 {
82 if (part.UUID != this.m_rootPart.UUID)
83 {
84 dupe.CopyPart(part);
85 }
86 }
87 return dupe;
88 }
89
90 public void CopyRootPart(AllNewSceneObjectPart2 part)
91 {
92
93 }
94
95 public void CopyPart(AllNewSceneObjectPart2 part)
96 {
97
98 }
99
100 /// <summary>
101 ///
102 /// </summary>
103 public override void Update()
104 {
105 foreach (AllNewSceneObjectPart2 part in this.m_parts.Values)
106 {
107 part.SendScheduledUpdates();
108 }
109 }
110
111 /// <summary>
112 ///
113 /// </summary>
114 public void ScheduleGroupForFullUpdate()
115 {
116 foreach (AllNewSceneObjectPart2 part in this.m_parts.Values)
117 {
118 part.ScheduleFullUpdate();
119 }
120 }
121
122 /// <summary>
123 ///
124 /// </summary>
125 public void ScheduleGroupForTerseUpdate()
126 {
127 foreach (AllNewSceneObjectPart2 part in this.m_parts.Values)
128 {
129 part.ScheduleTerseUpdate();
130 }
131 }
132
133 /// <summary>
134 ///
135 /// </summary>
136 public void ScheduleGroupFullUpdate()
66 { 137 {
67 foreach (AllNewSceneObjectPart2 part in this.m_parts.Values) 138 foreach (AllNewSceneObjectPart2 part in this.m_parts.Values)
68 { 139 {
@@ -73,7 +144,7 @@ namespace OpenSim.Region.Environment.Scenes
73 /// <summary> 144 /// <summary>
74 /// 145 ///
75 /// </summary> 146 /// </summary>
76 public void FlagGroupForTerseUpdate() 147 public void SendGroupTerseUpdate()
77 { 148 {
78 foreach (AllNewSceneObjectPart2 part in this.m_parts.Values) 149 foreach (AllNewSceneObjectPart2 part in this.m_parts.Values)
79 { 150 {
@@ -177,6 +248,7 @@ namespace OpenSim.Region.Environment.Scenes
177 public void GrapMovement(LLVector3 offset, LLVector3 pos, IClientAPI remoteClient) 248 public void GrapMovement(LLVector3 offset, LLVector3 pos, IClientAPI remoteClient)
178 { 249 {
179 this.Pos = pos; 250 this.Pos = pos;
251 this.m_rootPart.SendTerseUpdateToALLClients();
180 } 252 }
181 253
182 /// <summary> 254 /// <summary>