aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/OpenSim.Reg/World.PacketHandlers.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/OpenSim.Reg/World.PacketHandlers.cs')
-rw-r--r--OpenSim/OpenSim.Reg/World.PacketHandlers.cs219
1 files changed, 219 insertions, 0 deletions
diff --git a/OpenSim/OpenSim.Reg/World.PacketHandlers.cs b/OpenSim/OpenSim.Reg/World.PacketHandlers.cs
new file mode 100644
index 0000000..c88e920
--- /dev/null
+++ b/OpenSim/OpenSim.Reg/World.PacketHandlers.cs
@@ -0,0 +1,219 @@
1using System;
2using System.Collections.Generic;
3using System.Text;
4using libsecondlife;
5using libsecondlife.Packets;
6using OpenSim.Physics.Manager;
7using OpenSim.Framework.Interfaces;
8using OpenSim.Framework.Types;
9using OpenSim.Framework.Inventory;
10using OpenSim.Framework.Utilities;
11
12namespace OpenSim.Region
13{
14 public partial class World
15 {
16 /// <summary>
17 ///
18 /// </summary>
19 /// <param name="action"></param>
20 /// <param name="north"></param>
21 /// <param name="west"></param>
22 public void ModifyTerrain(byte action, float north, float west)
23 {
24 switch (action)
25 {
26 case 1:
27 // raise terrain
28 Terrain.raise(north, west, 10.0, 0.001);
29 RegenerateTerrain(true, (int)north, (int)west);
30 break;
31 case 2:
32 //lower terrain
33 Terrain.lower(north, west, 10.0, 0.001);
34 RegenerateTerrain(true, (int)north, (int)west);
35 break;
36 }
37 return;
38 }
39
40 /// <summary>
41 ///
42 /// </summary>
43 /// <param name="message"></param>
44 /// <param name="type"></param>
45 /// <param name="fromPos"></param>
46 /// <param name="fromName"></param>
47 /// <param name="fromAgentID"></param>
48 public void SimChat(byte[] message, byte type, LLVector3 fromPos, string fromName, LLUUID fromAgentID)
49 {
50 Console.WriteLine("Chat message");
51 Avatar avatar = null;
52 foreach (IClientAPI client in m_clientThreads.Values)
53 {
54 int dis = -1000;
55 if (this.Avatars.ContainsKey(client.AgentId))
56 {
57
58 avatar = this.Avatars[client.AgentId];
59 // int dis = Util.fast_distance2d((int)(client.ClientAvatar.Pos.X - simClient.ClientAvatar.Pos.X), (int)(client.ClientAvatar.Pos.Y - simClient.ClientAvatar.Pos.Y));
60 dis= (int)avatar.Pos.GetDistanceTo(fromPos);
61 Console.WriteLine("found avatar at " +dis);
62
63 }
64
65 switch (type)
66 {
67 case 0: // Whisper
68 if ((dis < 10) && (dis > -10))
69 {
70 //should change so the message is sent through the avatar rather than direct to the ClientView
71 client.SendChatMessage(message, type, fromPos, fromName, fromAgentID);
72 }
73 break;
74 case 1: // Say
75 if ((dis < 30) && (dis > -30))
76 {
77 Console.WriteLine("sending chat");
78 client.SendChatMessage(message, type, fromPos, fromName, fromAgentID);
79 }
80 break;
81 case 2: // Shout
82 if ((dis < 100) && (dis > -100))
83 {
84 client.SendChatMessage(message, type, fromPos, fromName, fromAgentID);
85 }
86 break;
87
88 case 0xff: // Broadcast
89 client.SendChatMessage(message, type, fromPos, fromName, fromAgentID);
90 break;
91 }
92
93 }
94 }
95
96 /// <summary>
97 ///
98 /// </summary>
99 /// <param name="primAsset"></param>
100 /// <param name="pos"></param>
101 public void RezObject(AssetBase primAsset, LLVector3 pos)
102 {
103
104 }
105
106 /// <summary>
107 ///
108 /// </summary>
109 /// <param name="packet"></param>
110 /// <param name="simClient"></param>
111 public void DeRezObject(Packet packet, IClientAPI simClient)
112 {
113
114 }
115
116 /// <summary>
117 ///
118 /// </summary>
119 /// <param name="remoteClient"></param>
120 public void SendAvatarsToClient(IClientAPI remoteClient)
121 {
122
123 }
124
125 /// <summary>
126 ///
127 /// </summary>
128 /// <param name="parentPrim"></param>
129 /// <param name="childPrims"></param>
130 public void LinkObjects(uint parentPrim, List<uint> childPrims)
131 {
132
133
134 }
135
136 /// <summary>
137 ///
138 /// </summary>
139 /// <param name="primLocalID"></param>
140 /// <param name="shapeBlock"></param>
141 public void UpdatePrimShape(uint primLocalID, ObjectShapePacket.ObjectDataBlock shapeBlock)
142 {
143
144 }
145
146 /// <summary>
147 ///
148 /// </summary>
149 /// <param name="primLocalID"></param>
150 /// <param name="remoteClient"></param>
151 public void SelectPrim(uint primLocalID, IClientAPI remoteClient)
152 {
153
154 }
155
156 /// <summary>
157 ///
158 /// </summary>
159 /// <param name="localID"></param>
160 /// <param name="packet"></param>
161 /// <param name="remoteClient"></param>
162 public void UpdatePrimFlags(uint localID, Packet packet, IClientAPI remoteClient)
163 {
164
165 }
166
167 /// <summary>
168 ///
169 /// </summary>
170 /// <param name="localID"></param>
171 /// <param name="texture"></param>
172 /// <param name="remoteClient"></param>
173 public void UpdatePrimTexture(uint localID, byte[] texture, IClientAPI remoteClient)
174 {
175
176 }
177
178 /// <summary>
179 ///
180 /// </summary>
181 /// <param name="localID"></param>
182 /// <param name="pos"></param>
183 /// <param name="remoteClient"></param>
184 public void UpdatePrimPosition(uint localID, LLVector3 pos, IClientAPI remoteClient)
185 {
186
187 }
188
189 /// <summary>
190 ///
191 /// </summary>
192 /// <param name="localID"></param>
193 /// <param name="rot"></param>
194 /// <param name="remoteClient"></param>
195 public void UpdatePrimRotation(uint localID, LLQuaternion rot, IClientAPI remoteClient)
196 {
197
198 }
199
200 /// <summary>
201 ///
202 /// </summary>
203 /// <param name="localID"></param>
204 /// <param name="scale"></param>
205 /// <param name="remoteClient"></param>
206 public void UpdatePrimScale(uint localID, LLVector3 scale, IClientAPI remoteClient)
207 {
208 }
209
210 /// <summary>
211 /// Sends prims to a client
212 /// </summary>
213 /// <param name="RemoteClient">Client to send to</param>
214 public void GetInitialPrims(IClientAPI RemoteClient)
215 {
216
217 }
218 }
219}