Example #1
0
        public ReiMu(TextureManager texturemanager)
        {
            this.texturemanager = texturemanager;
            name = "ReiMu";
            Texture texture = texturemanager.Get("Player2");

            sprite         = new Sprite();
            sprite.Texture = texture;
            sprite.SetWidth(32);
            sprite.SetHeight(48);
            sprite.SetColor(new Color(1, 1, 1, 0.2f));

            multiSprite = new MultiSprite(sprite);

            RecTangleF[] rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(0 + i * 4 * per_256, 0, 4 * per_256 + i * 4 * per_256, 6 * per_256);
            }
            multiSprite.RegeditState(0, rects);      //将此rectangleF注册到0号state

            rects = new RecTangleF[3];
            for (int i = 0; i < 3; i++)
            {
                rects[i] = new RecTangleF(i * 4 * per_256, 6 * per_256,
                                          4 * per_256 + i * 4 * per_256, 12 * per_256);
            }
            multiSprite.RegeditState(1, rects);      //将此rectangleF注册到1号state (过渡移动)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(12 * per_256 + i * 4 * per_256, 6 * per_256,
                                          12 * per_256 + 4 * per_256 + i * 4 * per_256, 12 * per_256);
            }
            multiSprite.RegeditState(2, rects);      //将此rectangleF注册到2号state (移动)

            rects = new RecTangleF[3];
            for (int i = 0; i < 3; i++)
            {
                rects[i] = new RecTangleF(4 * per_256 + i * 4 * per_256, 6 * per_256,
                                          i * 4 * per_256, 12 * per_256);
            }
            multiSprite.RegeditState(3, rects);      //将此rectangleF注册到3号state (过渡移动,右)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(12 * per_256 + 4 * per_256 + i * 4 * per_256, 6 * per_256,
                                          12 * per_256 + i * 4 * per_256, 12 * per_256);
            }
            multiSprite.RegeditState(4, rects);      //将此rectangleF注册到4号state (移动)

            multiSprite.RegeditCollection(1, 2);     //将1号动画连接到2号动画上
            multiSprite.RegeditCollection(3, 4);     //将3号动画连接到4号动画上
            multiSprite.State = 0;                   //将状态切换为3号state

            InitComponents();
        }
Example #2
0
        public Yukari(TextureManager texturemanager)
        {
            name = "YuKaRi";
            Texture texture = texturemanager.Get("Player2");

            sprite         = new Sprite();
            sprite.Texture = texture;
            sprite.SetWidth(32);
            sprite.SetHeight(48);

            multiSprite = new MultiSprite(sprite);

            RecTangleF[] rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(4 * 4 * per_256 + i * 4 * per_256, 0,
                                          4 * 4 * per_256 + 4 * per_256 + i * 4 * per_256, 6 * per_256);
            }
            multiSprite.RegeditState(0, rects);      //将此rectangleF注册到0号state

            rects = new RecTangleF[3];
            for (int i = 0; i < 3; i++)
            {
                rects[i] = new RecTangleF(i * 4 * per_256, 12 * per_256,
                                          4 * per_256 + i * 4 * per_256, 18 * per_256);
            }
            multiSprite.RegeditState(1, rects);      //将此rectangleF注册到1号state (过渡移动)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(12 * per_256 + i * 4 * per_256, 12 * per_256,
                                          12 * per_256 + 4 * per_256 + i * 4 * per_256, 18 * per_256);
            }
            multiSprite.RegeditState(2, rects);      //将此rectangleF注册到2号state (移动)

            rects = new RecTangleF[3];
            for (int i = 0; i < 3; i++)
            {
                rects[i] = new RecTangleF(4 * per_256 + i * 4 * per_256, 12 * per_256,
                                          i * 4 * per_256, 18 * per_256);
            }
            multiSprite.RegeditState(3, rects);      //将此rectangleF注册到3号state (过渡移动,右)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(12 * per_256 + 4 * per_256 + i * 4 * per_256, 12 * per_256,
                                          12 * per_256 + i * 4 * per_256, 18 * per_256);
            }
            multiSprite.RegeditState(4, rects);      //将此rectangleF注册到4号state (移动)

            multiSprite.RegeditCollection(1, 2);     //将1号动画连接到2号动画上
            multiSprite.RegeditCollection(3, 4);     //将3号动画连接到4号动画上
            multiSprite.State = 0;                   //将状态切换为0号state
        }
Example #3
0
        public Wriggle(TextureManager texturemanager)
        {
            name = "Wriggle";
            Texture texture = texturemanager.Get("Wriggle");

            sprite         = new Sprite();
            sprite.Texture = texture;
            sprite.SetWidth(32);
            sprite.SetHeight(42);
            sprite.SetColor(new Color(1, 1, 1, 0.2f));

            multiSprite = new MultiSprite(sprite);

            float offset = 0.01f;

            RecTangleF[] rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(i * 8 * per_256, per_256, (i + 1) * 8 * per_256 - offset, 13 * per_256);
            }
            multiSprite.RegeditState(0, rects);      //将此rectangleF注册到0号state

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(i * 8 * per_256, per_256, (i + 1) * 8 * per_256 - offset, 13 * per_256);
            }
            multiSprite.RegeditState(1, rects);      //将此rectangleF注册到1号state (过渡移动)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(i * 8 * per_256, per_256, (i + 1) * 8 * per_256 - offset, 13 * per_256);
            }
            multiSprite.RegeditState(2, rects);      //将此rectangleF注册到2号state (移动)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(i * 8 * per_256, per_256, (i + 1) * 8 * per_256 - offset, 13 * per_256);
            }
            multiSprite.RegeditState(3, rects);      //将此rectangleF注册到3号state (过渡移动,右)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(i * 8 * per_256, per_256, (i + 1) * 8 * per_256 - offset, 13 * per_256);
            }
            multiSprite.RegeditState(4, rects);      //将此rectangleF注册到4号state (移动)

            multiSprite.RegeditCollection(1, 2);     //将1号动画连接到2号动画上
            multiSprite.RegeditCollection(3, 4);     //将3号动画连接到4号动画上
            multiSprite.State = 0;                   //将状态切换为3号state

            InitComponents();
        }
Example #4
0
        public DarkBlueLittleSprite(TextureManager texturemanager)
        {
            name = "DarkBlueLittleSprite";
            Texture texture = texturemanager.Get("enemy");

            sprite         = new Sprite();
            sprite.Texture = texture;
            sprite.SetWidth(32);
            sprite.SetHeight(32);
            multiSprite = new MultiSprite(sprite);

            RecTangleF[] rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(i * 4 * per_512, 0,
                                          (i + 1) * 4 * per_512, 4 * per_512);
            }
            multiSprite.RegeditState(0, rects);      //将此rectangleF注册到0号state ,表示正面状态

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(i * 4 * per_512, 4 * per_512,
                                          (i + 1) * 4 * per_512, 8 * per_512);
            }
            multiSprite.RegeditState(1, rects);      //将此rectangleF注册到1号state ,表示右侧渐动的状态

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(i * 4 * per_512, 8 * per_512,
                                          (i + 1) * 4 * per_512, 12 * per_512);
            }
            multiSprite.RegeditState(2, rects);      //将此rectangleF注册到2号state ,表示右侧移动状态

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF((i + 1) * 4 * per_512, 4 * per_512,
                                          i * 4 * per_512, 8 * per_512);
            }
            multiSprite.RegeditState(3, rects);      //将此rectangleF注册到3号state ,表示左侧渐动的状态

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF((i + 1) * 4 * per_512, 8 * per_512,
                                          i * 4 * per_512, 12 * per_512);
            }
            multiSprite.RegeditState(4, rects);      //将此rectangleF注册到4号state ,表示左侧移动状态
            multiSprite.RegeditCollection(1, 2);     //将1号动画连接到2号动画上
            multiSprite.RegeditCollection(3, 4);     //将3号动画连接到4号动画上
            multiSprite.State          = 0;          //将状态切换为0号state
            multiSprite.changeinterval = 0.1f;
        }
Example #5
0
        public RedButterfly(TextureManager texturemanager, float orix, float oriy, float speed = 180)
        {
            this.speed   = speed;
            max_distance = speed * max_percent;
            min_distance = speed * min_percent;
            sprites      = new Sprite[bodycount];
            positions    = new Vector2D[bodycount];
            multiSprites = new MultiSprite[2];
            speeds       = new float[bodycount];
            Texture texture = texturemanager.Get("enemys1");
            float   percent = 1;

            for (int i = 0; i < bodycount; i++)
            {
                percent            = (float)i / (bodycount - 1);
                speeds[i]          = speed - percent * speed * divide_percent;
                percent            = 1 - percent;
                percent           *= percent;
                sprites[i]         = new Sprite();
                sprites[i].Texture = texture;
                sprites[i].SetWidth(percent * 32);
                sprites[i].SetHeight(percent * 32);
                sprites[i].SetUVs(0, 0, 0, 0);
                sprites[i].SetPosition(orix, oriy);
                positions[i] = new Vector2D(orix, oriy);
            }
            sprite         = new Sprite();
            sprite.Texture = texture;
            sprite.SetWidth(32);
            sprite.SetHeight(32);
            sprite.SetPosition(orix, oriy);
            multiSprites[1] = new MultiSprite(sprites);        //身体(球),导入整个数组进入
            multiSprites[1].changeinterval = 0.15f;
            multiSprites[0] = new MultiSprite(sprite);         //头部(蝴蝶)
            multiSprites[0].changeinterval = 0.05f;
            multiSprite = multiSprites[0];

            RecTangleF[] rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(16 * per_512 + i * per_512 * 4, 20 * per_512,
                                          16 * per_512 + (i + 1) * 4 * per_512, 24 * per_512);
            }
            multiSprites[0].RegeditState(0, rects);
            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(32 * per_512 + i * per_512 * 4, 20 * per_512,
                                          32 * per_512 + (i + 1) * 4 * per_512, 24 * per_512);
            }
            multiSprites[1].RegeditState(0, rects);
            effect = new StartEffect_Red(Stage1State._textureManager);
        }
Example #6
0
        public DrakBlueSprite(TextureManager texturemanager)
        {
            Texture texture = texturemanager.Get("enemys1");

            sprite         = new Sprite();
            sprite.Texture = texture;
            sprite.SetWidth(32);
            sprite.SetHeight(32);
            multiSprite = new MultiSprite(sprite);
            multiSprite.changeinterval = 0.15f;
            RecTangleF[] rects = new RecTangleF[2];
            for (int i = 0; i < 2; i++)
            {
                rects[i] = new RecTangleF(i * per_512 * 4, 0, (i + 1) * 4 * per_512, 4 * per_512);
            }
            multiSprite.RegeditState(0, rects);
        }
Example #7
0
 public BlueButterfly(TextureManager texturemanager)
 {
     Texture texture = texturemanager.Get("enemys1");
     sprite = new Sprite();
     sprite.Texture = texture;
     sprite.SetWidth(32);
     sprite.SetHeight(32);
     multiSprite = new MultiSprite(sprite);
     multiSprite.changeinterval = 0.15f;
     RecTangleF[] rects = new RecTangleF[4];
     for (int i = 0; i < 4; i++)
     {
         rects[i] = new RecTangleF(16 * per_512 + i * per_512 * 4, 16 * per_512,
             16 * per_512 + (i + 1) * 4 * per_512, 20 * per_512);
     }
     multiSprite.RegeditState(0, rects);
     effect = new StartEffect_Red(Stage1State._textureManager);
 }
Example #8
0
        public DarkBlueLittleSprite(TextureManager texturemanager)
        {
            name = "DarkBlueLittleSprite";
            Texture texture = texturemanager.Get("enemy");
            sprite = new Sprite();
            sprite.Texture = texture;
            sprite.SetWidth(32);
            sprite.SetHeight(32);
            multiSprite = new MultiSprite(sprite);

            RecTangleF[] rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(i * 4 * per_512 , 0,
                    (i + 1) * 4 * per_512, 4 * per_512);
            multiSprite.RegeditState(0, rects);      //将此rectangleF注册到0号state ,表示正面状态

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(i * 4 * per_512, 4 * per_512,
                    (i + 1) * 4 * per_512, 8 * per_512);
            multiSprite.RegeditState(1, rects);      //将此rectangleF注册到1号state ,表示右侧渐动的状态

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(i * 4 * per_512, 8 * per_512,
                    (i + 1) * 4 * per_512, 12 * per_512);
            multiSprite.RegeditState(2, rects);      //将此rectangleF注册到2号state ,表示右侧移动状态

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF((i + 1) * 4 * per_512, 4 * per_512,
                    i * 4 * per_512, 8 * per_512);
            multiSprite.RegeditState(3, rects);      //将此rectangleF注册到3号state ,表示左侧渐动的状态

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF((i + 1) * 4 * per_512, 8 * per_512,
                    i * 4 * per_512, 12 * per_512);
            multiSprite.RegeditState(4, rects);      //将此rectangleF注册到4号state ,表示左侧移动状态
            multiSprite.RegeditCollection(1, 2);     //将1号动画连接到2号动画上
            multiSprite.RegeditCollection(3, 4);     //将3号动画连接到4号动画上
            multiSprite.State = 0;                   //将状态切换为0号state
            multiSprite.changeinterval = 0.1f;
        }
Example #9
0
        public BlueButterfly(TextureManager texturemanager)
        {
            Texture texture = texturemanager.Get("enemys1");

            sprite         = new Sprite();
            sprite.Texture = texture;
            sprite.SetWidth(32);
            sprite.SetHeight(32);
            multiSprite = new MultiSprite(sprite);
            multiSprite.changeinterval = 0.15f;
            RecTangleF[] rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(16 * per_512 + i * per_512 * 4, 16 * per_512,
                                          16 * per_512 + (i + 1) * 4 * per_512, 20 * per_512);
            }
            multiSprite.RegeditState(0, rects);
            effect = new StartEffect_Red(Stage1State._textureManager);
        }
Example #10
0
        public Yukari(TextureManager texturemanager)
        {
            name = "YuKaRi";
            Texture texture = texturemanager.Get("Player2");
            sprite = new Sprite();
            sprite.Texture = texture;
            sprite.SetWidth(32);
            sprite.SetHeight(48);

            multiSprite = new MultiSprite(sprite);

            RecTangleF[] rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(4 * 4 * per_256 + i * 4 * per_256, 0,
                    4 * 4 * per_256 + 4 * per_256 + i * 4 * per_256, 6 * per_256);
            multiSprite.RegeditState(0, rects);      //将此rectangleF注册到0号state

            rects = new RecTangleF[3];
            for (int i = 0; i < 3; i++)
                rects[i] = new RecTangleF(i * 4 * per_256, 12 * per_256,
                    4 * per_256 + i * 4 * per_256, 18 * per_256);
            multiSprite.RegeditState(1, rects);      //将此rectangleF注册到1号state (过渡移动)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(12 * per_256 + i * 4 * per_256, 12 * per_256,
                   12 * per_256 + 4 * per_256 + i * 4 * per_256, 18 * per_256);
            multiSprite.RegeditState(2, rects);      //将此rectangleF注册到2号state (移动)

            rects = new RecTangleF[3];
            for (int i = 0; i < 3; i++)
                rects[i] = new RecTangleF(4 * per_256 + i * 4 * per_256, 12 * per_256,
                   i * 4 * per_256, 18 * per_256);
            multiSprite.RegeditState(3, rects);      //将此rectangleF注册到3号state (过渡移动,右)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(12 * per_256 + 4 * per_256 + i * 4 * per_256, 12 * per_256,
                12 * per_256 + i * 4 * per_256, 18 * per_256);
            multiSprite.RegeditState(4, rects);      //将此rectangleF注册到4号state (移动)

            multiSprite.RegeditCollection(1, 2);     //将1号动画连接到2号动画上
            multiSprite.RegeditCollection(3, 4);     //将3号动画连接到4号动画上
            multiSprite.State = 0;                   //将状态切换为0号state
        }
Example #11
0
        public Wriggle(TextureManager texturemanager)
        {
            name = "Wriggle";
            Texture texture = texturemanager.Get("Wriggle");
            sprite = new Sprite();
            sprite.Texture = texture;
            sprite.SetWidth(32);
            sprite.SetHeight(42);
            sprite.SetColor(new Color(1, 1, 1, 0.2f));

            multiSprite = new MultiSprite(sprite);

            float offset = 0.01f;

            RecTangleF[] rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(i * 8 * per_256, per_256, (i + 1) * 8 * per_256 - offset, 13 * per_256);
            multiSprite.RegeditState(0, rects);      //将此rectangleF注册到0号state

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(i * 8 * per_256, per_256, (i + 1) * 8 * per_256 - offset, 13 * per_256);
            multiSprite.RegeditState(1, rects);      //将此rectangleF注册到1号state (过渡移动)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(i * 8 * per_256, per_256, (i + 1) * 8 * per_256 - offset, 13 * per_256);
            multiSprite.RegeditState(2, rects);      //将此rectangleF注册到2号state (移动)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(i * 8 * per_256, per_256, (i + 1) * 8 * per_256 - offset, 13 * per_256);
            multiSprite.RegeditState(3, rects);      //将此rectangleF注册到3号state (过渡移动,右)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(i * 8 * per_256, per_256, (i + 1) * 8 * per_256 - offset, 13 * per_256);
            multiSprite.RegeditState(4, rects);      //将此rectangleF注册到4号state (移动)

            multiSprite.RegeditCollection(1, 2);     //将1号动画连接到2号动画上
            multiSprite.RegeditCollection(3, 4);     //将3号动画连接到4号动画上
            multiSprite.State = 0;                   //将状态切换为3号state

            InitComponents();
        }
Example #12
0
        public ReiMu(TextureManager texturemanager)
        {
            this.texturemanager = texturemanager;
            name = "ReiMu";
            Texture texture = texturemanager.Get("Player2");
            sprite = new Sprite();
            sprite.Texture = texture;
            sprite.SetWidth(32);
            sprite.SetHeight(48);
            sprite.SetColor(new Color(1, 1, 1, 0.2f));

            multiSprite = new MultiSprite(sprite);

            RecTangleF[] rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(0 + i * 4 * per_256, 0, 4 * per_256 + i * 4 * per_256, 6 * per_256);
            multiSprite.RegeditState(0, rects);      //将此rectangleF注册到0号state

            rects = new RecTangleF[3];
            for (int i = 0; i < 3; i++)
                rects[i] = new RecTangleF(i * 4 * per_256, 6 * per_256,
                    4 * per_256 + i * 4 * per_256, 12 * per_256);
            multiSprite.RegeditState(1, rects);      //将此rectangleF注册到1号state (过渡移动)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(12 * per_256 + i * 4 * per_256, 6 * per_256,
                   12 * per_256 + 4 * per_256 + i * 4 * per_256, 12 * per_256);
            multiSprite.RegeditState(2, rects);      //将此rectangleF注册到2号state (移动)

            rects = new RecTangleF[3];
            for (int i = 0; i < 3; i++)
                rects[i] = new RecTangleF(4 * per_256 + i * 4 * per_256, 6 * per_256,
                   i * 4 * per_256, 12 * per_256);
            multiSprite.RegeditState(3, rects);      //将此rectangleF注册到3号state (过渡移动,右)

            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
                rects[i] = new RecTangleF(12 * per_256 + 4 * per_256 + i * 4 * per_256, 6 * per_256,
                12 * per_256 + i * 4 * per_256, 12 * per_256);
            multiSprite.RegeditState(4, rects);      //将此rectangleF注册到4号state (移动)

            multiSprite.RegeditCollection(1, 2);     //将1号动画连接到2号动画上
            multiSprite.RegeditCollection(3, 4);     //将3号动画连接到4号动画上
            multiSprite.State = 0;                   //将状态切换为3号state

            InitComponents();
        }
Example #13
0
        public RedButterfly(TextureManager texturemanager , float orix , float oriy, float speed =180)
        {
            this.speed = speed;
            max_distance = speed * max_percent;
            min_distance = speed * min_percent;
            sprites = new Sprite[bodycount];
            positions = new Vector2D[bodycount];
            multiSprites = new MultiSprite[2];
            speeds = new float[bodycount];
            Texture texture = texturemanager.Get("enemys1");
            float percent = 1;
            for (int i = 0; i < bodycount; i++)
            {
                percent = (float)i / (bodycount-1);
                speeds[i] = speed - percent * speed * divide_percent;
                 percent = 1 - percent;
                percent *= percent;
                sprites[i] = new Sprite();
                sprites[i].Texture = texture;
                sprites[i].SetWidth(percent *32);
                sprites[i].SetHeight(percent * 32);
                sprites[i].SetUVs(0, 0, 0, 0);
                sprites[i].SetPosition(orix, oriy);
                positions[i] = new Vector2D(orix, oriy);
            }
            sprite = new Sprite();
            sprite.Texture = texture;
            sprite.SetWidth(32);
            sprite.SetHeight(32);
            sprite.SetPosition(orix, oriy);
            multiSprites[1] = new MultiSprite(sprites);        //身体(球),导入整个数组进入
            multiSprites[1].changeinterval = 0.15f;
            multiSprites[0] = new MultiSprite(sprite);         //头部(蝴蝶)
            multiSprites[0].changeinterval = 0.05f;
            multiSprite = multiSprites[0];

            RecTangleF[] rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(16*per_512+ i * per_512 * 4, 20*per_512,
                    16 * per_512 + (i + 1) * 4 * per_512, 24 * per_512);
            }
            multiSprites[0].RegeditState(0, rects);
            rects = new RecTangleF[4];
            for (int i = 0; i < 4; i++)
            {
                rects[i] = new RecTangleF(32 * per_512 + i * per_512 * 4, 20 * per_512,
                    32 * per_512 + (i + 1) * 4 * per_512, 24 * per_512);
            }
            multiSprites[1].RegeditState(0, rects);
            effect = new StartEffect_Red(Stage1State._textureManager);
        }
Example #14
0
 public DrakBlueSprite(TextureManager texturemanager)
 {
     Texture texture = texturemanager.Get("enemys1");
     sprite = new Sprite();
     sprite.Texture = texture;
     sprite.SetWidth(32);
     sprite.SetHeight(32);
     multiSprite = new MultiSprite(sprite);
     multiSprite.changeinterval = 0.15f;
     RecTangleF[] rects = new RecTangleF[2];
     for (int i = 0; i < 2; i++)
     {
         rects[i] = new RecTangleF(i * per_512 * 4, 0, (i + 1) * 4 * per_512, 4 * per_512);
     }
     multiSprite.RegeditState(0, rects);
 }