diff options
add support for particle blending LSL functions
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index e6ff75f..86e8200 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -6270,6 +6270,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6270 | ps.BurstRate = 0.1f; | 6270 | ps.BurstRate = 0.1f; |
6271 | ps.PartMaxAge = 10.0f; | 6271 | ps.PartMaxAge = 10.0f; |
6272 | ps.BurstPartCount = 1; | 6272 | ps.BurstPartCount = 1; |
6273 | ps.BlendFuncSource = ScriptBaseClass.PSYS_PART_BF_SOURCE_ALPHA; | ||
6274 | ps.BlendFuncDest = ScriptBaseClass.PSYS_PART_BF_ONE_MINUS_SOURCE_ALPHA; | ||
6275 | |||
6273 | return ps; | 6276 | return ps; |
6274 | } | 6277 | } |
6275 | 6278 | ||
@@ -6304,6 +6307,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6304 | LSL_Vector tempv = new LSL_Vector(); | 6307 | LSL_Vector tempv = new LSL_Vector(); |
6305 | 6308 | ||
6306 | float tempf = 0; | 6309 | float tempf = 0; |
6310 | int tmpi = 0; | ||
6307 | 6311 | ||
6308 | for (int i = 0; i < rules.Length; i += 2) | 6312 | for (int i = 0; i < rules.Length; i += 2) |
6309 | { | 6313 | { |
@@ -6362,7 +6366,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6362 | break; | 6366 | break; |
6363 | 6367 | ||
6364 | case (int)ScriptBaseClass.PSYS_SRC_PATTERN: | 6368 | case (int)ScriptBaseClass.PSYS_SRC_PATTERN: |
6365 | int tmpi = (int)rules.GetLSLIntegerItem(i + 1); | 6369 | tmpi = (int)rules.GetLSLIntegerItem(i + 1); |
6366 | prules.Pattern = (Primitive.ParticleSystem.SourcePattern)tmpi; | 6370 | prules.Pattern = (Primitive.ParticleSystem.SourcePattern)tmpi; |
6367 | break; | 6371 | break; |
6368 | 6372 | ||
@@ -6382,6 +6386,16 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6382 | prules.PartFlags &= 0xFFFFFFFD; // Make sure new angle format is off. | 6386 | prules.PartFlags &= 0xFFFFFFFD; // Make sure new angle format is off. |
6383 | break; | 6387 | break; |
6384 | 6388 | ||
6389 | case (int)ScriptBaseClass.PSYS_PART_BLEND_FUNC_SOURCE: | ||
6390 | tmpi = (int)rules.GetLSLIntegerItem(i + 1); | ||
6391 | prules.BlendFuncSource = (byte)tmpi; | ||
6392 | break; | ||
6393 | |||
6394 | case (int)ScriptBaseClass.PSYS_PART_BLEND_FUNC_DEST: | ||
6395 | tmpi = (int)rules.GetLSLIntegerItem(i + 1); | ||
6396 | prules.BlendFuncDest = (byte)tmpi; | ||
6397 | break; | ||
6398 | |||
6385 | case (int)ScriptBaseClass.PSYS_SRC_TEXTURE: | 6399 | case (int)ScriptBaseClass.PSYS_SRC_TEXTURE: |
6386 | prules.Texture = ScriptUtils.GetAssetIdFromKeyOrItemName(m_host, rules.GetLSLStringItem(i + 1)); | 6400 | prules.Texture = ScriptUtils.GetAssetIdFromKeyOrItemName(m_host, rules.GetLSLStringItem(i + 1)); |
6387 | break; | 6401 | break; |