Ejemplo n.º 1
0
        public void test_DataAccessLayer_With_Unknow_Type()
        {
            //setUp
            DAL      repo = DAL.Factory(new FileLocalRepository());
            Identity v    = new Unknow();

            //Assert
            Assert.Throws <InvalidOperationException>(() => { repo.get <Unknow>(0); });
            Assert.Throws <InvalidOperationException>(() => { repo.put(v); });
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Load existing unknown
        /// </summary>
        /// <param name="buffer"></param>
        public void Load(byte[] buffer)
        {
            try
            {
                using (MemoryReader mem = new MemoryReader(buffer))
                {
                    var nfpCount = mem.ReadInt32();

                    for (int i = 0; i < nfpCount; i++)
                    {
                        var nfp = new Unknow();
                        nfp.Id = mem.ReadInt32();
                        var polygonCount = mem.ReadInt32();

                        for (int p = 0; p < polygonCount; p++)
                        {
                            var polygon  = new Polygon();
                            var pointNum = mem.ReadInt32();

                            for (int t = 0; t < pointNum; t++)
                            {
                                var vector = new Vector
                                {
                                    X = mem.ReadSingle() / Global.AttrLenght,
                                    Y = mem.ReadSingle() / Global.AttrLenght,
                                    Z = mem.ReadSingle()
                                };

                                polygon.Add(vector.Rotate180FlipY());
                            }

                            nfp.Polygons.Add(polygon);
                        }

                        var DescriptionCount = mem.ReadInt32();
                        nfp.Description = Encoding.Default.GetString(mem.ReadBytes(DescriptionCount));

                        Records.Add(nfp);
                    }
                }

                Render();
                Parent.Log(Levels.Success, "Ok\n");
            }
            catch (Exception exception)
            {
                Dispose();
                Parent.Log(Levels.Error, "Failed\n");
                Parent.Log(Levels.Fatal, $"Nfp::Load<Exception> -> {exception}\n");
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Add new regions
        /// </summary>
        /// <param name="record"></param>
        public void Add(Unknow record)
        {
            Records.Add(record);

            Added?.Invoke(this, new AddedArgs(record, typeof(Unknow)));
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Update a record
        /// </summary>
        /// <param name="index"></param>
        /// <param name="record"></param>
        public void UpdateRespawn(int index, Unknow record)
        {
            Records[index] = record;

            Updated?.Invoke(this, new UpdatedArgs(index, record, typeof(Unknow)));
        }