예제 #1
0
        public void SpawnEnnemy(Animation animation, GameTime gameTime)
        {
            var ennemy2 = new Ennemy("Ennemy1", 1000);

            ennemy2.SetScene(this);
            ennemy2.SetColor(Color.Red);
            ennemy2.SetSize(24, 24);
            ennemy2.SetSpeedMax(100);
            ennemy2.SetPosition(100, 100);
            ForegroundLayer.AddSprite(ennemy2.Sprite);

            var animation21 = new MoveAnimation(new Vector2(100, 100), new Vector2(100, 600));
            var animation22 = new MoveAnimation(new Vector2(100, 600), new Vector2(600, 600));
            var animation23 = new MoveAnimation(new Vector2(600, 600), new Vector2(600, 100));
            var animation24 = new MoveAnimation(new Vector2(600, 100), new Vector2(900, 100));
            var animation25 = new MoveAnimation(new Vector2(900, 100), new Vector2(900, 600));

            var animSequence2 = new AnimationSequence();

            animSequence2.AddAnimation(animation21);
            animSequence2.AddAnimation(animation22);
            animSequence2.AddAnimation(animation23);
            animSequence2.AddAnimation(animation24);
            animSequence2.AddAnimation(animation25);

            ennemy2.AttachAnimation(animSequence2);

            this.AnimationManager.AddAnimation(animSequence2);

            _ennemies.Add(ennemy2);
        }
예제 #2
0
        private void LoadForegroundLayer()
        {
            var tower1 = new Tower("Tower1", 10, 200);

            tower1.SetScene(this);
            tower1.SetColor(Color.Orange);
            tower1.SetSize(64, 64);
            tower1.SetPosition((int)(ForegroundLayer.Width * 0.5), (int)(ForegroundLayer.Height * 0.5));
            ForegroundLayer.AddSprite(tower1.Sprite);

            _towers.Add(tower1);

            var tower2 = new Tower("Tower1", 20, 300);

            tower2.SetScene(this);
            tower2.SetColor(Color.Orange);
            tower2.SetSize(64, 64);
            tower2.SetPosition((int)(ForegroundLayer.Width * 0.7), (int)(ForegroundLayer.Height * 0.7));
            ForegroundLayer.AddSprite(tower2.Sprite);

            _towers.Add(tower2);

            var tower3 = new FreezeTower("Tower1", 15, 300);

            tower3.SetScene(this);
            tower3.SetColor(Color.Cyan);
            tower3.SetSize(64, 64);
            tower3.SetPosition((int)(ForegroundLayer.Width * 0.3), (int)(ForegroundLayer.Height * 0.3));
            ForegroundLayer.AddSprite(tower3.Sprite);

            _towers.Add(tower3);

            //=======================

            //var ennemy1 = new Ennemy("Ennemy1", 1000);
            //ennemy1.SetScene(this);
            //ennemy1.SetColor(Color.Red);
            //ennemy1.SetSize(24, 24);
            //ennemy1.SetSpeedMax(100);
            //ennemy1.SetPosition(100, 100);
            //ForegroundLayer.AddSprite(ennemy1.Sprite);

            //var animation1 = new MoveAnimation(new Vector2(100, 100), new Vector2(100, 600));
            //var animation2 = new MoveAnimation(new Vector2(100, 600), new Vector2(600, 600));
            //var animation3 = new MoveAnimation(new Vector2(600, 600), new Vector2(600, 100));
            //var animation4 = new MoveAnimation(new Vector2(600, 100), new Vector2(900, 100));
            //var animation5 = new MoveAnimation(new Vector2(900, 100), new Vector2(900, 600));

            //var animSequence = new AnimationSequence();
            //animSequence.AddAnimation(animation1);
            //animSequence.AddAnimation(animation2);
            //animSequence.AddAnimation(animation3);
            //animSequence.AddAnimation(animation4);
            //animSequence.AddAnimation(animation5);

            //ennemy1.AttachAnimation(animSequence);

            //this.AnimationManager.AddAnimation(animSequence);

            //_ennemies.Add(ennemy1);

            //var test = (AnimationSequence)animSequence.Clone();

            ////=====

            //var ennemy2 = new Ennemy("Ennemy1", 1000);
            //ennemy2.SetScene(this);
            //ennemy2.SetColor(Color.Red);
            //ennemy2.SetSize(24, 24);
            //ennemy2.SetSpeedMax(100);
            //ennemy2.SetPosition(100, 90);
            //ForegroundLayer.AddSprite(ennemy2.Sprite);

            //var animation21 = new MoveAnimation(new Vector2(100, 100), new Vector2(100, 600));
            //var animation22 = new MoveAnimation(new Vector2(100, 600), new Vector2(600, 600));
            //var animation23 = new MoveAnimation(new Vector2(600, 600), new Vector2(600, 100));
            //var animation24 = new MoveAnimation(new Vector2(600, 100), new Vector2(900, 100));
            //var animation25 = new MoveAnimation(new Vector2(900, 100), new Vector2(900, 600));

            //var animSequence2 = new AnimationSequence();
            //animSequence2.AddAnimation(animation21);
            //animSequence2.AddAnimation(animation22);
            //animSequence2.AddAnimation(animation23);
            //animSequence2.AddAnimation(animation24);
            //animSequence2.AddAnimation(animation25);

            //ennemy2.AttachAnimation(animSequence2);

            //this.AnimationManager.AddAnimation(animSequence2);

            //_ennemies.Add(ennemy2);


            var spawn = new Animation();

            spawn.SetCallback(SpawnEnnemy);
            spawn.SetRepeat(true);
            spawn.SetTimeAnimation(2);

            this.AnimationManager.AddAnimation(spawn);
        }