Example #1
0
 private GaussianPlantMaker(Resource res, int num)
     : base(res)
 {
     this.neg     = res.GetLayer <NegLayer>();
     this.num     = num;
     this.strands = Parts.Where(x => x.Id != -1).ToArray();
 }
Example #2
0
        private GrowingPlantMaker(Resource res, int stages, int variants, int num, bool rev)
            : base(res)
        {
            this.num     = num;
            this.neg     = res.GetLayer <NegLayer>();
            this.strands = new SpritePart[stages, variants];

            foreach (var part in Parts.Where(x => x.Id != -1))
            {
                int stage   = rev ? part.Id / variants : part.Id % stages;
                int variant = rev ? part.Id % variants : part.Id / stages;
                strands[stage, variant] = part;
            }
        }
Example #3
0
        public void NegDataTest()
        {
            var input = new NegLayer
            {
                Center = new Point2D(12, 21),
                Hitbox = new Rect(1, 2, 3, 4),
                Sz     = new Point2D(5, 6),
                Ep     = new Point2D[8][]
            };

            input.Ep[2] = new[] { new Point2D(45, 54), new Point2D(46, 64) };
            input.Ep[6] = new[] { new Point2D(47, 74), new Point2D(48, 84) };

            var serializer = new NegLayerHandler();
            var output     = (NegLayer)serializer.Reserialize(input);

            Assert.That(output.Center, Is.EqualTo(input.Center));
            Assert.That(output.Hitbox, Is.EqualTo(input.Hitbox));
            Assert.That(output.Sz, Is.EqualTo(input.Sz));
            for (int i = 0; i < 8; i++)
            {
                Assert.That(output.Ep[i], Is.EqualTo(input.Ep[i]));
            }
        }