Exemplo n.º 1
0
        public void Draw(SpriteBatch spriteBatch)
        {
            foreach (var effect in activeBursts)
            {
                for (var i = 0; i < BurstEffect.MaxBursts; i++)
                {
                    if (effect.isColor1[i])
                    {
                        spriteBatch.Draw(SpriteLoader.IosMainSheet, effect.BurstPositions[i],
                                         new Rectangle(864, 640, 3, 3), effect.ColorUsed.Color1,
                                         0f, Vector2.Zero, 1f, SpriteEffects.None, 0.90f);
                    }
                    else
                    {
                        spriteBatch.Draw(SpriteLoader.IosMainSheet, effect.BurstPositions[i],
                                         new Rectangle(864, 640, 2, 2), effect.ColorUsed.Color2,
                                         0f, Vector2.Zero, 1f, SpriteEffects.None, 0.90f);
                    }
                }
            }

            foreach (var effect in activeSprays)
            {
                if (effect.Active)
                {
                    for (var i = 0; i < effect.SprayBitsPositions.Length; i++)
                    {
                        if (effect.IsBigger[i])
                        {
                            spriteBatch.Draw(SpriteLoader.IosMainSheet, effect.SprayBitsPositions[i], new Rectangle(864, 640, 4, 4), effect.SprayColor[i], 0f, Vector2.Zero, 1f, SpriteEffects.None, 0.90f);
                        }
                        else
                        {
                            spriteBatch.Draw(SpriteLoader.IosMainSheet, effect.SprayBitsPositions[i], new Rectangle(864, 640, 2, 3), effect.SprayColor[i], 0f, Vector2.Zero, 1f, SpriteEffects.None, 0.90f);
                        }
                    }
                }
            }

            foreach (var effect in ActiveAbsorbs)
            {
                for (var i = 0; i < effect.ShardPositions.Length; i++)
                {
                    if (effect.useColor1[i])
                    {
                        spriteBatch.Draw(SpriteLoader.IosMainSheet, effect.ShardPositions[i], new Rectangle(864, 640, 4, 4), Absorb.color1, 0f, Vector2.Zero, 1f, SpriteEffects.None, 0.90f);
                    }
                    else
                    {
                        spriteBatch.Draw(SpriteLoader.IosMainSheet, effect.ShardPositions[i], new Rectangle(864, 640, 2, 2), Absorb.color2, 0f, Vector2.Zero, 1f, SpriteEffects.None, 0.90f);
                    }
                }
            }

            foreach (var effect in ActiveBlocks)
            {
                spriteBatch.Draw(SpriteLoader.IosMainSheet, effect.DrawPosition, GamePlayScreen.GetRockSource(effect.ChoosenBlock), Color.White, 0f, Vector2.Zero, 1f, SpriteEffects.None, 0.88f);
            }

            foreach (var effect in ActiveScores)
            {
                for (var i = 0; i < effect.GlyphRectangles.Length; i++)
                {
                    spriteBatch.Draw(SpriteLoader.IosMainSheet, new Vector2(effect.GlyphPostion.X + (i * 16), effect.GlyphPostion.Y), effect.GlyphRectangles[i], effect.FontColor, 0f,
                                     Vector2.Zero, 1f, SpriteEffects.None, 0.96f);
                }
            }
        }