diff options
Diffstat (limited to 'OpenSim/Framework/General/EstateSettings.cs')
-rw-r--r-- | OpenSim/Framework/General/EstateSettings.cs | 737 |
1 files changed, 737 insertions, 0 deletions
diff --git a/OpenSim/Framework/General/EstateSettings.cs b/OpenSim/Framework/General/EstateSettings.cs new file mode 100644 index 0000000..3e99424 --- /dev/null +++ b/OpenSim/Framework/General/EstateSettings.cs | |||
@@ -0,0 +1,737 @@ | |||
1 | /* | ||
2 | * Copyright (c) Contributors, http://opensimulator.org/ | ||
3 | * See CONTRIBUTORS.TXT for a full list of copyright holders. | ||
4 | * | ||
5 | * Redistribution and use in source and binary forms, with or without | ||
6 | * modification, are permitted provided that the following conditions are met: | ||
7 | * * Redistributions of source code must retain the above copyright | ||
8 | * notice, this list of conditions and the following disclaimer. | ||
9 | * * Redistributions in binary form must reproduce the above copyright | ||
10 | * notice, this list of conditions and the following disclaimer in the | ||
11 | * documentation and/or other materials provided with the distribution. | ||
12 | * * Neither the name of the OpenSim Project nor the | ||
13 | * names of its contributors may be used to endorse or promote products | ||
14 | * derived from this software without specific prior written permission. | ||
15 | * | ||
16 | * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY | ||
17 | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | ||
18 | * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | ||
19 | * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY | ||
20 | * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
21 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | ||
22 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | ||
23 | * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
24 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | ||
25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
26 | * | ||
27 | */ | ||
28 | using System.IO; | ||
29 | using libsecondlife; | ||
30 | using OpenSim.Framework; | ||
31 | using System.Globalization; | ||
32 | |||
33 | namespace OpenSim.Framework | ||
34 | { | ||
35 | public class EstateSettings | ||
36 | { | ||
37 | |||
38 | //Settings to this island | ||
39 | private float m_billableFactor; | ||
40 | public float billableFactor | ||
41 | { | ||
42 | get | ||
43 | { | ||
44 | return m_billableFactor; | ||
45 | } | ||
46 | set | ||
47 | { | ||
48 | m_billableFactor = value; | ||
49 | configMember.forceSetConfigurationOption("billable_factor", m_billableFactor.ToString()); | ||
50 | } | ||
51 | } | ||
52 | |||
53 | |||
54 | private uint m_estateID; | ||
55 | public uint estateID | ||
56 | { | ||
57 | get | ||
58 | { | ||
59 | return m_estateID; | ||
60 | } | ||
61 | set | ||
62 | { | ||
63 | m_estateID = value; | ||
64 | configMember.forceSetConfigurationOption("estate_id", m_estateID.ToString()); | ||
65 | } | ||
66 | } | ||
67 | |||
68 | |||
69 | private uint m_parentEstateID; | ||
70 | public uint parentEstateID | ||
71 | { | ||
72 | get | ||
73 | { | ||
74 | return m_parentEstateID; | ||
75 | } | ||
76 | set | ||
77 | { | ||
78 | m_parentEstateID = value; | ||
79 | configMember.forceSetConfigurationOption("parent_estate_id", m_parentEstateID.ToString()); | ||
80 | } | ||
81 | } | ||
82 | |||
83 | private byte m_maxAgents; | ||
84 | public byte maxAgents | ||
85 | { | ||
86 | get | ||
87 | { | ||
88 | return m_maxAgents; | ||
89 | } | ||
90 | set | ||
91 | { | ||
92 | m_maxAgents = value; | ||
93 | configMember.forceSetConfigurationOption("max_agents", m_maxAgents.ToString()); | ||
94 | } | ||
95 | } | ||
96 | |||
97 | private float m_objectBonusFactor; | ||
98 | public float objectBonusFactor | ||
99 | { | ||
100 | get | ||
101 | { | ||
102 | return m_objectBonusFactor; | ||
103 | } | ||
104 | set | ||
105 | { | ||
106 | m_objectBonusFactor = value; | ||
107 | configMember.forceSetConfigurationOption("object_bonus_factor", m_objectBonusFactor.ToString()); | ||
108 | } | ||
109 | } | ||
110 | |||
111 | private int m_redirectGridX; | ||
112 | public int redirectGridX | ||
113 | { | ||
114 | get | ||
115 | { | ||
116 | return m_redirectGridX; | ||
117 | } | ||
118 | set | ||
119 | { | ||
120 | m_redirectGridX = value; | ||
121 | configMember.forceSetConfigurationOption("redirect_grid_x", m_redirectGridX.ToString()); | ||
122 | } | ||
123 | } | ||
124 | |||
125 | private int m_redirectGridY; | ||
126 | public int redirectGridY | ||
127 | { | ||
128 | get | ||
129 | { | ||
130 | return m_redirectGridY; | ||
131 | } | ||
132 | set | ||
133 | { | ||
134 | m_redirectGridY = value; | ||
135 | configMember.forceSetConfigurationOption("redirect_grid_y", m_redirectGridY.ToString()); | ||
136 | } | ||
137 | } | ||
138 | |||
139 | private Simulator.RegionFlags m_regionFlags; | ||
140 | public Simulator.RegionFlags regionFlags | ||
141 | { | ||
142 | get | ||
143 | { | ||
144 | return m_regionFlags; | ||
145 | } | ||
146 | set | ||
147 | { | ||
148 | m_regionFlags = value; | ||
149 | configMember.forceSetConfigurationOption("region_flags", m_regionFlags.ToString()); | ||
150 | } | ||
151 | } | ||
152 | |||
153 | |||
154 | private Simulator.SimAccess m_simAccess; | ||
155 | public Simulator.SimAccess simAccess | ||
156 | { | ||
157 | get | ||
158 | { | ||
159 | return m_simAccess; | ||
160 | } | ||
161 | set | ||
162 | { | ||
163 | m_simAccess = value; | ||
164 | configMember.forceSetConfigurationOption("sim_access", m_simAccess.ToString()); | ||
165 | } | ||
166 | } | ||
167 | |||
168 | private float m_sunHour; | ||
169 | public float sunHour | ||
170 | { | ||
171 | get | ||
172 | { | ||
173 | return m_sunHour; | ||
174 | } | ||
175 | set | ||
176 | { | ||
177 | m_sunHour = value; | ||
178 | configMember.forceSetConfigurationOption("sun_hour", m_sunHour.ToString()); | ||
179 | } | ||
180 | } | ||
181 | |||
182 | private float m_terrainRaiseLimit; | ||
183 | public float terrainRaiseLimit | ||
184 | { | ||
185 | get | ||
186 | { | ||
187 | return m_terrainRaiseLimit; | ||
188 | } | ||
189 | set | ||
190 | { | ||
191 | m_terrainRaiseLimit = value; | ||
192 | configMember.forceSetConfigurationOption("terrain_raise_limit", m_terrainRaiseLimit.ToString()); | ||
193 | } | ||
194 | } | ||
195 | |||
196 | private float m_terrainLowerLimit; | ||
197 | public float terrainLowerLimit | ||
198 | { | ||
199 | get | ||
200 | { | ||
201 | return m_terrainLowerLimit; | ||
202 | } | ||
203 | set | ||
204 | { | ||
205 | m_terrainLowerLimit = value; | ||
206 | configMember.forceSetConfigurationOption("terrain_lower_limit", m_terrainLowerLimit.ToString()); | ||
207 | } | ||
208 | } | ||
209 | |||
210 | private bool m_useFixedSun; | ||
211 | public bool useFixedSun | ||
212 | { | ||
213 | get | ||
214 | { | ||
215 | return m_useFixedSun; | ||
216 | } | ||
217 | set | ||
218 | { | ||
219 | m_useFixedSun = value; | ||
220 | configMember.forceSetConfigurationOption("use_fixed_sun", m_useFixedSun.ToString()); | ||
221 | } | ||
222 | } | ||
223 | |||
224 | |||
225 | private int m_pricePerMeter; | ||
226 | public int pricePerMeter | ||
227 | { | ||
228 | get | ||
229 | { | ||
230 | return m_pricePerMeter; | ||
231 | } | ||
232 | set | ||
233 | { | ||
234 | m_pricePerMeter = value; | ||
235 | configMember.forceSetConfigurationOption("price_per_meter", m_pricePerMeter.ToString()); | ||
236 | } | ||
237 | } | ||
238 | |||
239 | |||
240 | private ushort m_regionWaterHeight; | ||
241 | public ushort regionWaterHeight | ||
242 | { | ||
243 | get | ||
244 | { | ||
245 | return m_regionWaterHeight; | ||
246 | } | ||
247 | set | ||
248 | { | ||
249 | m_regionWaterHeight = value; | ||
250 | configMember.forceSetConfigurationOption("region_water_height", m_regionWaterHeight.ToString()); | ||
251 | } | ||
252 | } | ||
253 | |||
254 | |||
255 | private bool m_regionAllowTerraform; | ||
256 | public bool regionAllowTerraform | ||
257 | { | ||
258 | get | ||
259 | { | ||
260 | return m_regionAllowTerraform; | ||
261 | } | ||
262 | set | ||
263 | { | ||
264 | m_regionAllowTerraform = value; | ||
265 | configMember.forceSetConfigurationOption("region_allow_terraform", m_regionAllowTerraform.ToString()); | ||
266 | } | ||
267 | } | ||
268 | |||
269 | |||
270 | // Region Information | ||
271 | // Low resolution 'base' textures. No longer used. | ||
272 | private LLUUID m_terrainBase0; | ||
273 | public LLUUID terrainBase0 | ||
274 | { | ||
275 | get | ||
276 | { | ||
277 | return m_terrainBase0; | ||
278 | } | ||
279 | set | ||
280 | { | ||
281 | m_terrainBase0 = value; | ||
282 | configMember.forceSetConfigurationOption("terrain_base_0", m_terrainBase0.ToString()); | ||
283 | } | ||
284 | } | ||
285 | |||
286 | private LLUUID m_terrainBase1; | ||
287 | public LLUUID terrainBase1 | ||
288 | { | ||
289 | get | ||
290 | { | ||
291 | return m_terrainBase1; | ||
292 | } | ||
293 | set | ||
294 | { | ||
295 | m_terrainBase1 = value; | ||
296 | configMember.forceSetConfigurationOption("terrain_base_1", m_terrainBase1.ToString()); | ||
297 | } | ||
298 | } | ||
299 | |||
300 | private LLUUID m_terrainBase2; | ||
301 | public LLUUID terrainBase2 | ||
302 | { | ||
303 | get | ||
304 | { | ||
305 | return m_terrainBase2; | ||
306 | } | ||
307 | set | ||
308 | { | ||
309 | m_terrainBase2 = value; | ||
310 | configMember.forceSetConfigurationOption("terrain_base_2", m_terrainBase2.ToString()); | ||
311 | } | ||
312 | } | ||
313 | |||
314 | private LLUUID m_terrainBase3; | ||
315 | public LLUUID terrainBase3 | ||
316 | { | ||
317 | get | ||
318 | { | ||
319 | return m_terrainBase3; | ||
320 | } | ||
321 | set | ||
322 | { | ||
323 | m_terrainBase3 = value; | ||
324 | configMember.forceSetConfigurationOption("terrain_base_3", m_terrainBase3.ToString()); | ||
325 | } | ||
326 | } | ||
327 | |||
328 | |||
329 | // Higher resolution terrain textures | ||
330 | private LLUUID m_terrainDetail0; | ||
331 | public LLUUID terrainDetail0 | ||
332 | { | ||
333 | get | ||
334 | { | ||
335 | return m_terrainDetail0; | ||
336 | } | ||
337 | set | ||
338 | { | ||
339 | |||
340 | m_terrainDetail0 = value; | ||
341 | configMember.forceSetConfigurationOption("terrain_detail_0", m_terrainDetail0.ToString()); | ||
342 | } | ||
343 | } | ||
344 | |||
345 | private LLUUID m_terrainDetail1; | ||
346 | public LLUUID terrainDetail1 | ||
347 | { | ||
348 | get | ||
349 | { | ||
350 | return m_terrainDetail1; | ||
351 | } | ||
352 | set | ||
353 | { | ||
354 | m_terrainDetail1 = value; | ||
355 | configMember.forceSetConfigurationOption("terrain_detail_1", m_terrainDetail1.ToString()); | ||
356 | } | ||
357 | } | ||
358 | private LLUUID m_terrainDetail2; | ||
359 | public LLUUID terrainDetail2 | ||
360 | { | ||
361 | get | ||
362 | { | ||
363 | return m_terrainDetail2; | ||
364 | } | ||
365 | set | ||
366 | { | ||
367 | m_terrainDetail2 = value; | ||
368 | configMember.forceSetConfigurationOption("terrain_detail_2", m_terrainDetail2.ToString()); | ||
369 | } | ||
370 | } | ||
371 | private LLUUID m_terrainDetail3; | ||
372 | public LLUUID terrainDetail3 | ||
373 | { | ||
374 | get | ||
375 | { | ||
376 | return m_terrainDetail3; | ||
377 | } | ||
378 | set | ||
379 | { | ||
380 | m_terrainDetail3 = value; | ||
381 | configMember.forceSetConfigurationOption("terrain_detail_3", m_terrainDetail3.ToString()); | ||
382 | } | ||
383 | } | ||
384 | |||
385 | // First quad - each point is bilinearly interpolated at each meter of terrain | ||
386 | private float m_terrainStartHeight0; | ||
387 | public float terrainStartHeight0 | ||
388 | { | ||
389 | get | ||
390 | { | ||
391 | return m_terrainStartHeight0; | ||
392 | } | ||
393 | set | ||
394 | { | ||
395 | m_terrainStartHeight0 = value; | ||
396 | configMember.forceSetConfigurationOption("terrain_start_height_0", m_terrainStartHeight0.ToString()); | ||
397 | } | ||
398 | } | ||
399 | |||
400 | |||
401 | private float m_terrainStartHeight1; | ||
402 | public float terrainStartHeight1 | ||
403 | { | ||
404 | get | ||
405 | { | ||
406 | return m_terrainStartHeight1; | ||
407 | } | ||
408 | set | ||
409 | { | ||
410 | m_terrainStartHeight1 = value; | ||
411 | configMember.forceSetConfigurationOption("terrain_start_height_1", m_terrainStartHeight1.ToString()); | ||
412 | } | ||
413 | } | ||
414 | |||
415 | private float m_terrainStartHeight2; | ||
416 | public float terrainStartHeight2 | ||
417 | { | ||
418 | get | ||
419 | { | ||
420 | return m_terrainStartHeight2; | ||
421 | } | ||
422 | set | ||
423 | { | ||
424 | m_terrainStartHeight2 = value; | ||
425 | configMember.forceSetConfigurationOption("terrain_start_height_2", m_terrainStartHeight2.ToString()); | ||
426 | } | ||
427 | } | ||
428 | |||
429 | private float m_terrainStartHeight3; | ||
430 | public float terrainStartHeight3 | ||
431 | { | ||
432 | get | ||
433 | { | ||
434 | return m_terrainStartHeight3; | ||
435 | } | ||
436 | set | ||
437 | { | ||
438 | m_terrainStartHeight3 = value; | ||
439 | configMember.forceSetConfigurationOption("terrain_start_height_3", m_terrainStartHeight3.ToString()); | ||
440 | } | ||
441 | } | ||
442 | // Second quad - also bilinearly interpolated. | ||
443 | // Terrain texturing is done that: | ||
444 | // 0..3 (0 = base0, 3 = base3) = (terrain[x,y] - start[x,y]) / range[x,y] | ||
445 | private float m_terrainHeightRange0; | ||
446 | public float terrainHeightRange0 | ||
447 | { | ||
448 | get | ||
449 | { | ||
450 | return m_terrainHeightRange0; | ||
451 | } | ||
452 | set | ||
453 | { | ||
454 | m_terrainHeightRange0 = value; | ||
455 | configMember.forceSetConfigurationOption("terrain_height_range_0", m_terrainHeightRange0.ToString()); | ||
456 | } | ||
457 | } | ||
458 | |||
459 | private float m_terrainHeightRange1; | ||
460 | public float terrainHeightRange1 | ||
461 | { | ||
462 | get | ||
463 | { | ||
464 | return m_terrainHeightRange1; | ||
465 | } | ||
466 | set | ||
467 | { | ||
468 | m_terrainHeightRange1 = value; | ||
469 | configMember.forceSetConfigurationOption("terrain_height_range_1", m_terrainHeightRange1.ToString()); | ||
470 | } | ||
471 | } | ||
472 | |||
473 | private float m_terrainHeightRange2; | ||
474 | public float terrainHeightRange2 | ||
475 | { | ||
476 | get | ||
477 | { | ||
478 | return m_terrainHeightRange2; | ||
479 | } | ||
480 | set | ||
481 | { | ||
482 | m_terrainHeightRange2 = value; | ||
483 | configMember.forceSetConfigurationOption("terrain_height_range_2", m_terrainHeightRange2.ToString()); | ||
484 | } | ||
485 | } | ||
486 | |||
487 | private float m_terrainHeightRange3; | ||
488 | public float terrainHeightRange3 | ||
489 | { | ||
490 | get | ||
491 | { | ||
492 | return m_terrainHeightRange3; | ||
493 | } | ||
494 | set | ||
495 | { | ||
496 | m_terrainHeightRange3 = value; | ||
497 | configMember.forceSetConfigurationOption("terrain_height_range_3", m_terrainHeightRange3.ToString()); | ||
498 | } | ||
499 | } | ||
500 | // Terrain Default (Must be in F32 Format!) | ||
501 | private string m_terrainFile; | ||
502 | public string terrainFile | ||
503 | { | ||
504 | get | ||
505 | { | ||
506 | return m_terrainFile; | ||
507 | } | ||
508 | set | ||
509 | { | ||
510 | m_terrainFile = value; | ||
511 | configMember.forceSetConfigurationOption("terrain_file", m_terrainFile.ToString()); | ||
512 | } | ||
513 | } | ||
514 | |||
515 | private double m_terrainMultiplier; | ||
516 | public double terrainMultiplier | ||
517 | { | ||
518 | get | ||
519 | { | ||
520 | return m_terrainMultiplier; | ||
521 | } | ||
522 | set | ||
523 | { | ||
524 | m_terrainMultiplier = value; | ||
525 | configMember.forceSetConfigurationOption("terrain_multiplier", m_terrainMultiplier.ToString()); | ||
526 | } | ||
527 | } | ||
528 | |||
529 | private float m_waterHeight; | ||
530 | public float waterHeight | ||
531 | { | ||
532 | get | ||
533 | { | ||
534 | return m_waterHeight; | ||
535 | } | ||
536 | set | ||
537 | { | ||
538 | m_waterHeight = value; | ||
539 | configMember.forceSetConfigurationOption("water_height", m_waterHeight.ToString()); | ||
540 | } | ||
541 | } | ||
542 | |||
543 | private LLUUID m_terrainImageID; | ||
544 | public LLUUID terrainImageID | ||
545 | { | ||
546 | get | ||
547 | { | ||
548 | return m_terrainImageID; | ||
549 | } | ||
550 | set | ||
551 | { | ||
552 | m_terrainImageID = value; | ||
553 | configMember.forceSetConfigurationOption("terrain_image_id", m_terrainImageID.ToString()); | ||
554 | } | ||
555 | } | ||
556 | private ConfigurationMember configMember; | ||
557 | public EstateSettings() | ||
558 | { | ||
559 | // Temporary hack to prevent multiple loadings. | ||
560 | if (configMember == null) | ||
561 | { | ||
562 | configMember = new ConfigurationMember(Path.Combine(Util.configDir(), "estate_settings.xml"), "ESTATE SETTINGS", this.loadConfigurationOptions, this.handleIncomingConfiguration); | ||
563 | configMember.performConfigurationRetrieve(); | ||
564 | } | ||
565 | } | ||
566 | |||
567 | public void loadConfigurationOptions() | ||
568 | { | ||
569 | configMember.addConfigurationOption("billable_factor", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "","0.0",true); | ||
570 | configMember.addConfigurationOption("estate_id", ConfigurationOption.ConfigurationTypes.TYPE_UINT32, "","0",true); | ||
571 | configMember.addConfigurationOption("parent_estate_id", ConfigurationOption.ConfigurationTypes.TYPE_UINT32, "", "0", true); | ||
572 | configMember.addConfigurationOption("max_agents", ConfigurationOption.ConfigurationTypes.TYPE_BYTE, "", "40", true); | ||
573 | |||
574 | configMember.addConfigurationOption("object_bonus_factor", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "", "1.0", true); | ||
575 | configMember.addConfigurationOption("redirect_grid_x", ConfigurationOption.ConfigurationTypes.TYPE_INT32, "", "0", true); | ||
576 | configMember.addConfigurationOption("redirect_grid_y", ConfigurationOption.ConfigurationTypes.TYPE_INT32, "", "0", true); | ||
577 | configMember.addConfigurationOption("region_flags", ConfigurationOption.ConfigurationTypes.TYPE_UINT32, "", "0", true); | ||
578 | configMember.addConfigurationOption("sim_access", ConfigurationOption.ConfigurationTypes.TYPE_BYTE, "", "21", true); | ||
579 | configMember.addConfigurationOption("sun_hour", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "", "0", true); | ||
580 | configMember.addConfigurationOption("terrain_raise_limit", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "", "0", true); | ||
581 | configMember.addConfigurationOption("terrain_lower_limit", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "", "0", true); | ||
582 | configMember.addConfigurationOption("use_fixed_sun", ConfigurationOption.ConfigurationTypes.TYPE_BOOLEAN, "", "false", true); | ||
583 | configMember.addConfigurationOption("price_per_meter", ConfigurationOption.ConfigurationTypes.TYPE_UINT32, "", "1", true); | ||
584 | configMember.addConfigurationOption("region_water_height", ConfigurationOption.ConfigurationTypes.TYPE_UINT16, "", "20", true); | ||
585 | configMember.addConfigurationOption("region_allow_terraform", ConfigurationOption.ConfigurationTypes.TYPE_BOOLEAN, "", "true", true); | ||
586 | |||
587 | configMember.addConfigurationOption("terrain_base_0", ConfigurationOption.ConfigurationTypes.TYPE_LLUUID, "", "b8d3965a-ad78-bf43-699b-bff8eca6c975", true); | ||
588 | configMember.addConfigurationOption("terrain_base_1", ConfigurationOption.ConfigurationTypes.TYPE_LLUUID, "", "abb783e6-3e93-26c0-248a-247666855da3", true); | ||
589 | configMember.addConfigurationOption("terrain_base_2", ConfigurationOption.ConfigurationTypes.TYPE_LLUUID, "", "179cdabd-398a-9b6b-1391-4dc333ba321f", true); | ||
590 | configMember.addConfigurationOption("terrain_base_3", ConfigurationOption.ConfigurationTypes.TYPE_LLUUID, "", "beb169c7-11ea-fff2-efe5-0f24dc881df2", true); | ||
591 | |||
592 | configMember.addConfigurationOption("terrain_detail_0", ConfigurationOption.ConfigurationTypes.TYPE_LLUUID, "", "00000000-0000-0000-0000-000000000000", true); | ||
593 | configMember.addConfigurationOption("terrain_detail_1", ConfigurationOption.ConfigurationTypes.TYPE_LLUUID, "", "00000000-0000-0000-0000-000000000000", true); | ||
594 | configMember.addConfigurationOption("terrain_detail_2", ConfigurationOption.ConfigurationTypes.TYPE_LLUUID, "", "00000000-0000-0000-0000-000000000000", true); | ||
595 | configMember.addConfigurationOption("terrain_detail_3", ConfigurationOption.ConfigurationTypes.TYPE_LLUUID, "", "00000000-0000-0000-0000-000000000000", true); | ||
596 | |||
597 | configMember.addConfigurationOption("terrain_start_height_0", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "", "10.0", true); | ||
598 | configMember.addConfigurationOption("terrain_start_height_1", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "", "10.0", true); | ||
599 | configMember.addConfigurationOption("terrain_start_height_2", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "", "10.0", true); | ||
600 | configMember.addConfigurationOption("terrain_start_height_3", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "", "10.0", true); | ||
601 | |||
602 | configMember.addConfigurationOption("terrain_height_range_0", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "", "60.0", true); | ||
603 | configMember.addConfigurationOption("terrain_height_range_1", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "", "60.0", true); | ||
604 | configMember.addConfigurationOption("terrain_height_range_2", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "", "60.0", true); | ||
605 | configMember.addConfigurationOption("terrain_height_range_3", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "", "60.0", true); | ||
606 | |||
607 | configMember.addConfigurationOption("terrain_file", ConfigurationOption.ConfigurationTypes.TYPE_STRING_NOT_EMPTY, "", "default.r32", true); | ||
608 | configMember.addConfigurationOption("terrain_multiplier", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, "", "60.0", true); | ||
609 | configMember.addConfigurationOption("water_height", ConfigurationOption.ConfigurationTypes.TYPE_DOUBLE, "", "20.0", true); | ||
610 | configMember.addConfigurationOption("terrain_image_id", ConfigurationOption.ConfigurationTypes.TYPE_LLUUID, "", "00000000-0000-0000-0000-000000000000", true); | ||
611 | } | ||
612 | |||
613 | public bool handleIncomingConfiguration(string configuration_key, object configuration_result) | ||
614 | { | ||
615 | switch (configuration_key) | ||
616 | { | ||
617 | case "billable_factor": | ||
618 | this.m_billableFactor = (float)configuration_result; | ||
619 | break; | ||
620 | case "estate_id": | ||
621 | this.m_estateID = (uint)configuration_result; | ||
622 | break; | ||
623 | case "parent_estate_id": | ||
624 | this.m_parentEstateID = (uint)configuration_result; | ||
625 | break; | ||
626 | case "max_agents": | ||
627 | this.m_maxAgents = (byte)configuration_result; | ||
628 | break; | ||
629 | |||
630 | case "object_bonus_factor": | ||
631 | this.m_objectBonusFactor = (float)configuration_result; | ||
632 | break; | ||
633 | case "redirect_grid_x": | ||
634 | this.m_redirectGridX = (int)configuration_result; | ||
635 | break; | ||
636 | case "redirect_grid_y": | ||
637 | this.m_redirectGridY = (int)configuration_result; | ||
638 | break; | ||
639 | case "region_flags": | ||
640 | this.m_regionFlags = (Simulator.RegionFlags)((uint)configuration_result); | ||
641 | break; | ||
642 | case "sim_access": | ||
643 | this.m_simAccess = (Simulator.SimAccess)((byte)configuration_result); | ||
644 | break; | ||
645 | case "sun_hour": | ||
646 | this.m_sunHour = (float)configuration_result; | ||
647 | break; | ||
648 | case "terrain_raise_limit": | ||
649 | this.m_terrainRaiseLimit = (float)configuration_result; | ||
650 | break; | ||
651 | case "terrain_lower_limit": | ||
652 | this.m_terrainLowerLimit = (float)configuration_result; | ||
653 | break; | ||
654 | case "use_fixed_sun": | ||
655 | this.m_useFixedSun = (bool)configuration_result; | ||
656 | break; | ||
657 | case "price_per_meter": | ||
658 | this.m_pricePerMeter = System.Convert.ToInt32(configuration_result); | ||
659 | break; | ||
660 | case "region_water_height": | ||
661 | this.m_regionWaterHeight = (ushort)configuration_result; | ||
662 | break; | ||
663 | case "region_allow_terraform": | ||
664 | this.m_regionAllowTerraform = (bool)configuration_result; | ||
665 | break; | ||
666 | |||
667 | case "terrain_base_0": | ||
668 | this.m_terrainBase0 = (LLUUID)configuration_result; | ||
669 | break; | ||
670 | case "terrain_base_1": | ||
671 | this.m_terrainBase1 = (LLUUID)configuration_result; | ||
672 | break; | ||
673 | case "terrain_base_2": | ||
674 | this.m_terrainBase2 = (LLUUID)configuration_result; | ||
675 | break; | ||
676 | case "terrain_base_3": | ||
677 | this.m_terrainBase3 = (LLUUID)configuration_result; | ||
678 | break; | ||
679 | |||
680 | case "terrain_detail_0": | ||
681 | this.m_terrainDetail0 = (LLUUID)configuration_result; | ||
682 | break; | ||
683 | case "terrain_detail_1": | ||
684 | this.m_terrainDetail1 = (LLUUID)configuration_result; | ||
685 | break; | ||
686 | case "terrain_detail_2": | ||
687 | this.m_terrainDetail2 = (LLUUID)configuration_result; | ||
688 | break; | ||
689 | case "terrain_detail_3": | ||
690 | this.m_terrainDetail3 = (LLUUID)configuration_result; | ||
691 | break; | ||
692 | |||
693 | case "terrain_start_height_0": | ||
694 | this.m_terrainStartHeight0 = (float)configuration_result; | ||
695 | break; | ||
696 | case "terrain_start_height_1": | ||
697 | this.m_terrainStartHeight1 = (float)configuration_result; | ||
698 | break; | ||
699 | case "terrain_start_height_2": | ||
700 | this.m_terrainStartHeight2 = (float)configuration_result; | ||
701 | break; | ||
702 | case "terrain_start_height_3": | ||
703 | this.m_terrainStartHeight3 = (float)configuration_result; | ||
704 | break; | ||
705 | |||
706 | case "terrain_height_range_0": | ||
707 | this.m_terrainHeightRange0 = (float)configuration_result; | ||
708 | break; | ||
709 | case "terrain_height_range_1": | ||
710 | this.m_terrainHeightRange1 = (float)configuration_result; | ||
711 | break; | ||
712 | case "terrain_height_range_2": | ||
713 | this.m_terrainHeightRange2 = (float)configuration_result; | ||
714 | break; | ||
715 | case "terrain_height_range_3": | ||
716 | this.m_terrainHeightRange3 = (float)configuration_result; | ||
717 | break; | ||
718 | |||
719 | case "terrain_file": | ||
720 | this.m_terrainFile = (string)configuration_result; | ||
721 | break; | ||
722 | case "terrain_multiplier": | ||
723 | this.m_terrainMultiplier = System.Convert.ToDouble(configuration_result); | ||
724 | break; | ||
725 | case "water_height": | ||
726 | double tmpVal = (double) configuration_result; | ||
727 | this.m_waterHeight = (float) tmpVal; | ||
728 | break; | ||
729 | case "terrain_image_id": | ||
730 | this.m_terrainImageID = (LLUUID)configuration_result; | ||
731 | break; | ||
732 | } | ||
733 | |||
734 | return true; | ||
735 | } | ||
736 | } | ||
737 | } | ||