Esempio n. 1
0
        public Archer(Texture2D tex, Texture2D HUDPic, Vector2 pos, GameWindow window, GamePlayScreen gps, int hp, int mana, int speed, int damage, PlayerIndex playerIndex)
            : base(tex, HUDPic, pos, window, gps, hp, mana, speed, damage, playerIndex)
        {
            projTex = TextureManager.arrowBasic;
            this.particleEnginePowerShoot = new ParticleEngine(TextureManager.steamTextures, pos, Color.Yellow);
            this.particleEngineDash       = new ParticleEngine(TextureManager.steamTextures, pos, Color.Yellow);


            #region leapa-kod
            //Kod för att leapa, inte riktigt färdig! Men kan byggas på för att få rätt resultat
            //if (prevThumbStickRightValue.X != 0 || prevThumbStickRightValue.Y != 0)
            //{
            //    jump += prevThumbStickRightValue;
            //    jump.Normalize();
            //    pos += jump * 100;
            //}
            #endregion

            isTransparent       = false;
            isReloading         = false;
            lifeTransparent     = 2000;
            projectileTimerLife = 200;
            offsetBullet        = new Vector2(12, 30);
            frameSize           = new Point(45, 45);
            availableBPress     = true;
            //                                                      name, int, str, agil, vit, luck, hp, mp, lvl
            statusWindow        = new StatusWindow(TextureManager.turretBullet, pos, "hej", 0, 0, 0, 0, 0, hp, mana, 100, playerIndex);
            rainTargetActive    = false;
            rightTriggerPressed = false;
        }
        public Player(Texture2D tex, Texture2D HUDPic, Vector2 pos, GameWindow window, GamePlayScreen gps, int hp, int mana, int speed, int damage, PlayerIndex playerIndex)
            : base(tex, pos)
        {
            this.HUDPic   = HUDPic;
            this.window   = window;
            this.gps      = gps;
            this.hp       = hp;
            this.mana     = mana;
            this.speed    = speed;
            this.damage   = damage;
            this.oldSpeed = speed;
            this.graphics = graphics;
            this.rumble   = new Rumble(playerIndex);
            notMoved      = true;
            //projectileTimerLife = 2000;
            shootOneAtTime    = true;
            showButtonCounter = true;
            isShooting        = true;
            isArcherMoving    = true;
            isWarriorMoving   = true;

            this.center         = new Vector2(pos.X + frameSize.X / 2, pos.Y + frameSize.Y / 2);
            particleEngineSteam = new ParticleEngine(TextureManager.steamTextures, pos, Color.White);

            this.playerIndex = playerIndex;
        }
        public Missile(Texture2D tex, Vector2 pos, float radius, float rotation)
            : base(tex, pos)
        {
            this.radius   = radius;
            this.rotation = rotation;

            center = new Vector2(pos.X + tex.Width / 2, pos.Y + tex.Height / 2);
            origin = new Vector2(tex.Width / 2, tex.Height / 2);
            speed  = 400;
            particleEngineSteam = new ParticleEngine(TextureManager.steamTextures, pos, Color.White);
        }
        public Dispenser(Texture2D tex, Vector2 pos, float radius)
            : base(tex, pos)
        {
            spriteWidth  = 40; //måste titta vad den har för värden!
            spriteHeight = 40; //måste titta vad den har för värden!
            this.radius  = radius;

            center = new Vector2(pos.X + spriteWidth / 2, pos.Y + spriteHeight / 2);
            origin = new Vector2(spriteWidth / 2, spriteHeight / 2);

            particleEngineSteam = new ParticleEngine(TextureManager.steamTextures, pos, Color.White);
        }
 public Warrior(Texture2D tex, Texture2D HUDPic, Vector2 pos, GameWindow window, GamePlayScreen gps, int hp, int mana, int speed, int damage, PlayerIndex playerIndex)
     : base(tex, HUDPic, pos, window, gps, hp, mana, speed, damage, playerIndex)
 {
     //                                                      name, int, str, agil, vit, luck, hp, mp, lvl
     statusWindow = new StatusWindow(TextureManager.turretBullet, pos, "hej", 0, 0, 0, 0, 0, hp, mana, 1, playerIndex);
     this.particleEngineCharge = new ParticleEngine(TextureManager.steamTextures, pos, Color.Green);
     frameSize       = new Point(50, 50);
     isAttacking     = false;
     isShielding     = false;
     isCharging      = false;
     isAPress        = false;
     availableAPress = true;
 }
        public Wizard(Texture2D tex, Texture2D HUDPic, Vector2 pos, GameWindow window, GamePlayScreen gps, int hp, int mana, int speed, int damage, PlayerIndex playerIndex)
            : base(tex, HUDPic, pos, window, gps, hp, mana, speed, damage, playerIndex)
        {
            this.timeWindRuch        = 1000;
            this.particleEngineWater = new ParticleEngine(TextureManager.steamTextures, pos, Color.Blue);
            this.particleEngineFire  = new ParticleEngine(TextureManager.steamTextures, pos, Color.Red);
            this.particleEngineRocks = new ParticleEngine(TextureManager.steamTextures, pos, Color.Gray);
            this.damage = 10;

            //                                                      name, int, str, agil, vit, luck, hp, mp, lvl
            statusWindow = new StatusWindow(TextureManager.turretBullet, pos, "Sir Anton", 20, 0, 0, 0, 0, hp, mana, 100, playerIndex);

            projTex             = TextureManager.bulletWiz;
            projectileTimerLife = 500;
            offsetBullet        = new Vector2(-8, 20);
            frameSize           = new Point(45, 45);
        }