コード例 #1
0
        public void TestSetAndClearMaterialsForFaceClearsEntry()
        {
            var sop = SceneUtil.RandomSOP("Root", 1);
            sop.OwnerMask = (uint)(PermissionMask.Copy | PermissionMask.Transfer | PermissionMask.Modify);
            var group = new SceneObjectGroup(sop);
            var lslSystemApi = new LSLSystemAPI(engine, sop, 0, UUID.Zero);

            // Check that its Zeroed
            var emptyResult = new LSLList(new List<object> { UUID.Zero.ToString(), new Vector3(1, 1, 0), new Vector3(0, 0, 0), 0 });
            var rules = new LSLList(new List<object> { ScriptBaseClass.PRIM_NORMAL, 0 });
            LSLList asList = lslSystemApi.llGetPrimitiveParams(rules);
            Assert.That(asList.ToString(), Is.EqualTo(emptyResult.ToString()));

            // Set a value and check it
            var textureId = UUID.Random();
            var faceZeroData = new LSLList(new List<object> { textureId.ToString(), new Vector3(1, 1, 0), new Vector3(0, 0, 0), 0 });
            var setMaterialsRequest = rules.Append(faceZeroData);
            lslSystemApi.llSetLinkPrimitiveParamsFast(0, setMaterialsRequest);
            LSLList setMaterialsResult = lslSystemApi.llGetLinkPrimitiveParams(0, rules);
            Assert.That(setMaterialsResult.ToString(), Is.EqualTo(faceZeroData.ToString()));

            // Clear it and Check thats its zeroed
            var clearMaterialsRequest = rules.Append(emptyResult);
            lslSystemApi.llSetLinkPrimitiveParamsFast(0, clearMaterialsRequest);
            LSLList clearMaterialsResult = lslSystemApi.llGetLinkPrimitiveParams(0, clearMaterialsRequest);
            Assert.That(clearMaterialsResult.ToString(), Is.EqualTo(emptyResult.ToString()));
        }
コード例 #2
0
ファイル: JsonTests.cs プロジェクト: kf6kjg/halcyon
 public void Setup()
 {
     var iniDoc = new IniDocument();
     var configSource = new IniConfigSource(iniDoc);
     configSource.AddConfig("InWorldz.Phlox");
     var world = SceneHelper.CreateScene(9000, 1000, 1000);
     var engine = new MockScriptEngine(world, configSource);
     lslSystemApi = new LSLSystemAPI(engine, null, 0, UUID.Zero);
 }
コード例 #3
0
 public void TestGetMaterialsForFace()
 {
     var sop = SceneUtil.RandomSOP("Root", 1);
     var group = new SceneObjectGroup(sop);
     var lslSystemApi = new LSLSystemAPI(engine, sop, 0, UUID.Zero);
     var expectedResult = new LSLList(new List<object> { UUID.Zero.ToString(), new Vector3(1, 1, 0), new Vector3(0, 0, 0), 0 });
     var rules = new LSLList(new List<object> { ScriptBaseClass.PRIM_NORMAL, 0 });
     LSLList asList = lslSystemApi.llGetPrimitiveParams(rules);
     Assert.That(asList.ToString(), Is.EqualTo(expectedResult.ToString()));
 }
コード例 #4
0
        public void Error(string message)
        {
            _hasErrors = true;
            _log.Error("[Phlox]: " + message);

            foreach (SceneObjectPart part in parts)
            {
                LSLSystemAPI.ChatFromObject(ScriptBaseClass.DEBUG_CHANNEL, message, ChatTypeEnum.Shout, part.ParentGroup.Scene, part, UUID.Zero);
            }
        }
コード例 #5
0
        public void Setup()
        {
            var iniDoc       = new IniDocument();
            var configSource = new IniConfigSource(iniDoc);

            configSource.AddConfig("InWorldz.Phlox");
            world = SceneHelper.CreateScene(9000, 1000, 1000);
            var engine = new MockScriptEngine(world, configSource);

            lslSystemApi = new LSLSystemAPI(engine, null, 0, UUID.Zero);
        }
コード例 #6
0
        public void TestSetAndGetMaterialsForFaceForNoModSOP()
        {
            var sop = SceneUtil.RandomSOP("Root", 1);
            sop.OwnerMask = (uint)(PermissionMask.Copy | PermissionMask.Transfer);
            var group = new SceneObjectGroup(sop);
            var lslSystemApi = new LSLSystemAPI(engine, sop, 0, UUID.Zero);

            var textureId = UUID.Random();
            var faceZeroData = new LSLList(new List<object> { textureId.ToString(), new Vector3(1, 1, 0), new Vector3(0, 0, 0), 0 });
            var rules = new LSLList(new List<object> { ScriptBaseClass.PRIM_NORMAL, 0 });
            var request = rules.Append(faceZeroData);

            lslSystemApi.llSetLinkPrimitiveParamsFast(0, request);
            LSLList result = lslSystemApi.llGetLinkPrimitiveParams(0, rules);
            Assert.That(result.ToString(), !Is.EqualTo(faceZeroData.ToString()));
        }