Пример #1
0
        public Demon(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite = PackTexture.Demon;
            Tiles = new Vector2( 385 / 5, 840 / 11);
            ProjectileSprite = PackTexture.projectiles[2];

            // Statistiques
            Vie = VieMax = 200;
            Vitesse = 0.10f;
            Vitesse_Attaque = 1f;
            Portee = 10f; // 2 = Corps à corps
            Dommages = 10;
            Puissance = 2;
            Defense = 5;
            IsRanged = true;
            XPUnite = 200;
            Inventory = new List<Item> { new PotionDeMana(this, Vector2.Zero) };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.DemonAttack);
            effetUniteDeath = new EffetSonore(PackSon.DemonDeath);
            statsLevelUpdate();
        }
Пример #2
0
        public Invisibilite(Unite u, bool useMana = true)
            : base(u)
        {
            idSort   = 3;
            Cooldown = 5;
            Ticks    = 300;
            if (useMana)
            {
                CoutMana = 30;
            }
            else
            {
                CoutMana = 0;
            }
            Tiles = new Vector2(320 / 5, 320 / 5);

            NeedUnPoint    = false;
            SpriteBouton   = PackTexture.boutons[2];
            SpriteEffect   = PackTexture.sorts[0];
            sonSort        = new EffetSonore(PackSon.InvisibiliteCible);
            uniteFollowing = new List <Unite>();

            description1 = new Text("DescriptionInvisibilite1");
            description2 = new Text("DescriptionInvisibilite2");
        }
Пример #3
0
        public Voleur(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Physique
            Scale = 0.4f;
            // Graphique
            Sprite        = PackTexture.Assassin;
            Tiles         = new Vector2(1757 / 5, 3150 / 11);
            Portrait      = PackTexture.VoleurPortrait;
            packAnimation = new PackAnimation();
            // Statistiques
            Vie             = VieMax = 350;
            Vitesse         = 0.12f;
            Vitesse_Attaque = 0.4f;
            Portee          = 1f; // 1 = Corps à corps
            Dommages        = 75;
            Puissance       = 10;
            Defense         = 3;
            DefenseMagique  = 3;
            XPUnite         = 200;

            spells = new List <Spell> {
                new Explosion(this), new Soin(this), new Invisibilite(this), new FurieSanguinaire(this), new Polymorphe(this), new Tempete(this)
            };

            Inventory = new List <Item> {
                new PotionDeVie(this, Vector2.Zero)
            };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.Epee);
            effetUniteDeath   = new EffetSonore(PackSon.CavalierDeath);
            statsLevelUpdate();
        }
Пример #4
0
        public Guerrier(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite = PackTexture.Guerrier;
            Tiles = new Vector2(530 / 5, 930 / 11);

            // Statistiques
            Vie = VieMax = 400;
            Vitesse = 0.10f;
            Vitesse_Attaque = 0.5f;
            Portee = 1f; // 1 = Corps à corps
            Dommages = 50;
            Puissance = 10;
            Defense = 5;
            DefenseMagique = 3;
            XPUnite = 200;

            spells = new List<Spell> { new Explosion(this), new Soin(this), new Invisibilite(this), new FurieSanguinaire(this), new Polymorphe(this), new Tempete(this) };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.Epee);
            effetUniteDeath = new EffetSonore(PackSon.GruntDeath);
            statsLevelUpdate();
        }
Пример #5
0
        public Ogre(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite           = PackTexture.Ogre;
            Tiles            = new Vector2(370 / 5, 800 / 11);
            ProjectileSprite = PackTexture.projectiles[2];

            // Statistiques
            Vie             = VieMax = 200;
            Vitesse         = 0.10f;
            Vitesse_Attaque = 1f;
            Portee          = 10f; // 2 = Corps à corps
            Dommages        = 20;
            Puissance       = 2;
            Defense         = 5;
            IsRanged        = true;
            XPUnite         = 200;
            Inventory       = new List <Item> {
                new PotionDeMana(this, Vector2.Zero)
            };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.DemonAttack);
            effetUniteDeath   = new EffetSonore(PackSon.OgreDeath);
            statsLevelUpdate();
        }
Пример #6
0
        public Soin(Unite u, bool useMana = true)
            : base(u)
        {
            idSort   = 6;
            Cooldown = 1;
            Ticks    = 1;
            if (useMana)
            {
                CoutMana = 15;
            }
            else
            {
                CoutMana = 0;
            }
            Animation      = PackAnimation.Soin();
            AnimationReset = PackAnimation.Soin();
            Tiles          = new Vector2(180 / 5, 35);

            NeedUnPoint  = false;
            SpriteBouton = PackTexture.boutons[1];
            SpriteEffect = PackTexture.sorts[1];
            sonSort      = new EffetSonore(PackSon.Soin);

            description1 = new Text("DescriptionSoin1");
            description2 = new Text("DescriptionSoin2");
        }
Пример #7
0
        public Voleur(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Physique
            Scale = 0.4f;
            // Graphique
            Sprite = PackTexture.Assassin;
            Tiles = new Vector2(1757 / 5, 3150 / 11);
            Portrait = PackTexture.VoleurPortrait;
            packAnimation = new PackAnimation();
            // Statistiques
            Vie = VieMax = 350;
            Vitesse = 0.12f;
            Vitesse_Attaque = 0.4f;
            Portee = 1f; // 1 = Corps à corps
            Dommages = 75;
            Puissance = 10;
            Defense = 3;
            DefenseMagique = 3;
            XPUnite = 200;

            spells = new List<Spell> { new Explosion(this), new Soin(this), new Invisibilite(this), new FurieSanguinaire(this), new Polymorphe(this), new Tempete(this) };

            Inventory = new List<Item> { new PotionDeVie(this, Vector2.Zero) };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.Epee);
            effetUniteDeath = new EffetSonore(PackSon.CavalierDeath);
            statsLevelUpdate();
        }
Пример #8
0
        public Guerrier(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite = PackTexture.Guerrier;
            Tiles  = new Vector2(530 / 5, 930 / 11);

            // Statistiques
            Vie             = VieMax = 400;
            Vitesse         = 0.10f;
            Vitesse_Attaque = 0.5f;
            Portee          = 1f; // 1 = Corps à corps
            Dommages        = 50;
            Puissance       = 10;
            Defense         = 5;
            DefenseMagique  = 3;
            XPUnite         = 200;

            spells = new List <Spell> {
                new Explosion(this), new Soin(this), new Invisibilite(this), new FurieSanguinaire(this), new Polymorphe(this), new Tempete(this)
            };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.Epee);
            effetUniteDeath   = new EffetSonore(PackSon.GruntDeath);
            statsLevelUpdate();
        }
Пример #9
0
        public Chasseur(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite = PackTexture.Chasseur;
            Tiles = new Vector2( 1757 / 5, 3131 / 11);
            Portrait = PackTexture.ChasseurPortrait;
            packAnimation = new PackAnimation();
            ProjectileSprite = PackTexture.projectiles[0];
            Scale = 0.3f;
            // Statistiques
            Vie = VieMax = 350;
            Vitesse = 0.10f;
            Vitesse_Attaque = 0.6f;
            Portee = 15f; // 2 = Corps à corps
            Dommages = 80;
            Puissance = 10;
            Defense = 2;
            IsRanged = true;
            XPUnite = 200;

            spells = new List<Spell> { new Explosion(this), new Soin(this), new Invisibilite(this), new FurieSanguinaire(this), new Polymorphe(this), new Tempete(this) };

            Inventory = new List<Item> { new PotionDeVie(this, Vector2.Zero) };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.ArcherAttack);
            effetUniteDeath = new EffetSonore(PackSon.GruntDeath);
            statsLevelUpdate();
        }
Пример #10
0
        public Archer(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite = PackTexture.Archer;
            Tiles = new Vector2( 295 / 5, 660 / 9);
            Portrait = PackTexture.ArcherPortrait;
            packAnimation = new AnimationArcher();
            ProjectileSprite = PackTexture.projectiles[0];

            // Statistiques
            Vie = VieMax = 200;
            Vitesse = 0.10f;
            Vitesse_Attaque = 1f;
            Portee = 15f; // 2 = Corps à corps
            Dommages = 10;
            Puissance = 1;
            Defense = 5;
            IsRanged = true;
            XPUnite = 200;
            Inventory = new List<Item> { new PotionDeVie(this, Vector2.Zero) };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.ArcherAttack);
            effetUniteDeath = new EffetSonore(PackSon.GruntDeath);
            statsLevelUpdate();
        }
Пример #11
0
        public Chasseur(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite           = PackTexture.Chasseur;
            Tiles            = new Vector2(1757 / 5, 3131 / 11);
            Portrait         = PackTexture.ChasseurPortrait;
            packAnimation    = new PackAnimation();
            ProjectileSprite = PackTexture.projectiles[0];
            Scale            = 0.3f;
            // Statistiques
            Vie             = VieMax = 350;
            Vitesse         = 0.10f;
            Vitesse_Attaque = 0.6f;
            Portee          = 15f; // 2 = Corps à corps
            Dommages        = 80;
            Puissance       = 10;
            Defense         = 2;
            IsRanged        = true;
            XPUnite         = 200;

            spells = new List <Spell> {
                new Explosion(this), new Soin(this), new Invisibilite(this), new FurieSanguinaire(this), new Polymorphe(this), new Tempete(this)
            };

            Inventory = new List <Item> {
                new PotionDeVie(this, Vector2.Zero)
            };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.ArcherAttack);
            effetUniteDeath   = new EffetSonore(PackSon.GruntDeath);
            statsLevelUpdate();
        }
Пример #12
0
        public Odin(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Physique
            largeurPhysique = 5;
            CreateBody(largeurPhysique, Position);
            // Graphique
            Sprite        = PackTexture.Odin;
            Tiles         = new Vector2(160, 160);
            Portrait      = PackTexture.CavalierPortrait;
            packAnimation = new AnimationOdin();

            // Statistiques
            Vie             = VieMax = 3500;
            Vitesse         = 0.20f;
            Vitesse_Attaque = 1f;
            Portee          = 1f; // 1 = Corps à corps
            Dommages        = 75;
            Puissance       = 100;
            Defense         = 12;
            XPUnite         = 200;
            Inventory       = new List <Item> {
                new PotionDeVie(this, Vector2.Zero)
            };

            spells = new List <Spell> {
                new NovaDeFeu(this), new Bump(this)
            };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.Epee);
            effetUniteDeath   = new EffetSonore(PackSon.CavalierDeath);
            statsLevelUpdate();
        }
Пример #13
0
        public Cavalier(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite   = PackTexture.Cavalier;
            Tiles    = new Vector2(370 / 5, 835 / 11);
            Portrait = PackTexture.CavalierPortrait;

            // Statistiques
            Vie             = VieMax = 300;
            Vitesse         = 0.15f;
            Vitesse_Attaque = 1f;
            Portee          = 1f; // 1 = Corps à corps
            Dommages        = 10;
            Puissance       = 1;
            Defense         = 10;
            XPUnite         = 200;
            Inventory       = new List <Item> {
                new PotionDeVie(this, Vector2.Zero)
            };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.Epee);
            effetUniteDeath   = new EffetSonore(PackSon.CavalierDeath);
            statsLevelUpdate();
        }
Пример #14
0
        public static void Initialize(ContentManager content)
        {
            // Sons d'attaque
            Epee         = content.Load <SoundEffect>("Sons/sword3"); // Attaque cavalier
            GruntAttack  = content.Load <SoundEffect>("Sons/GruntAttack");
            ArcherAttack = content.Load <SoundEffect>("Sons/ArcherAttack");
            TrollAttack  = content.Load <SoundEffect>("Sons/AxeMissileLaunch1");
            DemonAttack  = content.Load <SoundEffect>("Sons/DemonMissileLaunch1");

            // Sons de mort
            GruntDeath    = content.Load <SoundEffect>("Sons/Gruntquimeurt");
            CavalierDeath = content.Load <SoundEffect>("Sons/Cavalierquimeurt");
            DemonDeath    = content.Load <SoundEffect>("Sons/DemonDeath1");
            OgreDeath     = content.Load <SoundEffect>("Sons/OgreDeath1");
            SheepDeath    = content.Load <SoundEffect>("Sons/SheepDeath");

            // Sons des sorts.
            Soin                  = content.Load <SoundEffect>("Sons/soin");
            Explosion             = content.Load <SoundEffect>("Sons/explosion");
            InvisibiliteCible     = content.Load <SoundEffect>("Sons/InvisibilityTarget");
            FurieSanguinaireCible = content.Load <SoundEffect>("Sons/BloodlustTarget");
            PolymorphCible        = content.Load <SoundEffect>("Sons/PolymorphTarget");

            // Autres
            LevelUp = content.Load <SoundEffect>("Sons/LevelUp");
            EffetSonore.InitEffects();
        }
Пример #15
0
        public Archer(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite           = PackTexture.Archer;
            Tiles            = new Vector2(295 / 5, 660 / 9);
            Portrait         = PackTexture.ArcherPortrait;
            packAnimation    = new AnimationArcher();
            ProjectileSprite = PackTexture.projectiles[0];

            // Statistiques
            Vie             = VieMax = 200;
            Vitesse         = 0.10f;
            Vitesse_Attaque = 1f;
            Portee          = 15f; // 2 = Corps à corps
            Dommages        = 10;
            Puissance       = 1;
            Defense         = 5;
            IsRanged        = true;
            XPUnite         = 200;
            Inventory       = new List <Item> {
                new PotionDeVie(this, Vector2.Zero)
            };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.ArcherAttack);
            effetUniteDeath   = new EffetSonore(PackSon.GruntDeath);
            statsLevelUpdate();
        }
Пример #16
0
        public Grunt(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite   = PackTexture.Grunt;
            Tiles    = new Vector2(380 / 5, 620 / 11);
            Portrait = PackTexture.GruntPortrait;

            // Statistiques
            Vie             = VieMax = 200;
            Vitesse         = 0.10f;
            Vitesse_Attaque = 1f;
            Portee          = 1f; // 2 = Corps à corps
            Dommages        = 20;
            Puissance       = 5;
            Defense         = 5;
            XPUnite         = 200;
            Inventory       = new List <Item> {
                new PotionDeVie(this, Vector2.Zero)
            };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.GruntAttack);
            effetUniteDeath   = new EffetSonore(PackSon.GruntDeath);
            statsLevelUpdate();
        }
Пример #17
0
        public Odin(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Physique
            largeurPhysique = 5;
            CreateBody(largeurPhysique, Position);
            // Graphique
            Sprite = PackTexture.Odin;
            Tiles = new Vector2(160, 160);
            Portrait = PackTexture.CavalierPortrait;
            packAnimation = new AnimationOdin();

            // Statistiques
            Vie = VieMax = 3500;
            Vitesse = 0.20f;
            Vitesse_Attaque = 1f;
            Portee = 1f; // 1 = Corps à corps
            Dommages = 75;
            Puissance = 100;
            Defense = 12;
            XPUnite = 200;
            Inventory = new List<Item> { new PotionDeVie(this, Vector2.Zero) };

            spells = new List<Spell> { new NovaDeFeu(this), new Bump(this)} ;

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.Epee);
            effetUniteDeath = new EffetSonore(PackSon.CavalierDeath);
            statsLevelUpdate();
        }
Пример #18
0
        public Spell(Unite u, bool useMana = true)
        {
            unite            = u;
            AnimationCurrent = AnimationLimite;

            Cooldown       = 1;
            Ticks          = 1;
            CoutMana       = 1;
            Animation      = null;
            AnimationReset = null;
            Tiles          = Vector2.Zero;

            NeedUnPoint  = false;
            SpriteBouton = PackTexture.blank;
            SpriteEffect = PackTexture.blank;
            sonSort      = null;
        }
Пример #19
0
        protected int TickCurrent; // Tick actuel

        #endregion Fields

        #region Constructors

        public Spell(Unite u, bool useMana = true)
        {
            unite = u;
            AnimationCurrent = AnimationLimite;

            Cooldown = 1;
            Ticks = 1;
            CoutMana = 1;
            Animation = null;
            AnimationReset = null;
            Tiles = Vector2.Zero;

            NeedUnPoint = false;
            SpriteBouton = PackTexture.blank;
            SpriteEffect = PackTexture.blank;
            sonSort = null;
        }
Пример #20
0
        public FurieSanguinaire(Unite u, bool useMana = true)
            : base(u)
        {
            idSort = 2;
            Cooldown = 5;
            Ticks = 300;
            if (useMana)
                CoutMana = 30;
            else
                CoutMana = 0;
            Tiles = new Vector2(320 / 5, 320 / 5);

            NeedUnPoint = false;
            SpriteBouton = PackTexture.boutons[5];
            SpriteEffect = PackTexture.sorts[0];
            sonSort = new EffetSonore(PackSon.FurieSanguinaireCible);
            description = new Text("DescriptionFurieSanguinaire");
        }
Пример #21
0
        public Polymorphe(Unite u, bool useMana = true)
            : base(u)
        {
            idSort = 4;
            Cooldown = 2;
            Ticks = 1;
            if (useMana)
                CoutMana = 30;
            else
                CoutMana = 0;

            NeedUnPoint = false;
            NeedAUnit = true;
            SpriteBouton = PackTexture.boutons[12];
            SpriteEffect = PackTexture.sorts[0];
            sonSort = new EffetSonore(PackSon.PolymorphCible);
            description = new Text("DescriptionPolymorph");
        }
Пример #22
0
        public Tempete(Unite u, bool useMana = true)
            : base(u)
        {
            idSort = 7;
            Cooldown = 5;
            Ticks = 200;
            CoutMana = 50;
            Animation = PackAnimation.Explosion();
            AnimationReset = PackAnimation.Explosion();
            Tiles = new Vector2(320 / 5, 320 / 5);

            NeedUnPoint = false;
            SpriteBouton = PackTexture.boutons[13];
            SpriteEffect = PackTexture.sorts[0];
            sonSort = new EffetSonore(PackSon.Explosion);

            description1 = new Text("DescriptionTempete1");
            description2 = new Text("DescriptionTempete2");
        }
Пример #23
0
        public Tempete(Unite u, bool useMana = true)
            : base(u)
        {
            idSort         = 7;
            Cooldown       = 5;
            Ticks          = 200;
            CoutMana       = 50;
            Animation      = PackAnimation.Explosion();
            AnimationReset = PackAnimation.Explosion();
            Tiles          = new Vector2(320 / 5, 320 / 5);

            NeedUnPoint  = false;
            SpriteBouton = PackTexture.boutons[13];
            SpriteEffect = PackTexture.sorts[0];
            sonSort      = new EffetSonore(PackSon.Explosion);

            description1 = new Text("DescriptionTempete1");
            description2 = new Text("DescriptionTempete2");
        }
Пример #24
0
        public RegenMana(Unite u, bool useMana = true)
            : base(u)
        {
            idSort = 5;
            Cooldown = 2;
            Ticks = 1;
            if (useMana)
                CoutMana = 500;
            else
                CoutMana = 0;
            Animation = PackAnimation.Soin();
            AnimationReset = PackAnimation.Soin();
            Tiles = new Vector2(180 / 5, 35);

            NeedUnPoint = false;
            SpriteBouton = PackTexture.boutons[2];
            SpriteEffect = PackTexture.sorts[2];
            sonSort = new EffetSonore(PackSon.Soin);
        }
Пример #25
0
        public Explosion(Unite u, bool useMana = true)
            : base(u)
        {
            idSort = 1;
            Cooldown = 2;
            Ticks = 1;
            CoutMana = 10;
            Animation = PackAnimation.Explosion();
            AnimationReset = PackAnimation.Explosion();
            Tiles = new Vector2(320 / 5, 320 / 5);

            NeedUnPoint = true;
            SpriteBouton = PackTexture.boutons[0];
            SpriteEffect = PackTexture.sorts[0];
            sonSort = new EffetSonore(PackSon.Explosion);

            description1 = new Text("DescriptionExplosion1");
            description2 = new Text("DescriptionExplosion2");
            description3 = new Text("DescriptionExplosion3");
        }
Пример #26
0
        public Explosion(Unite u, bool useMana = true)
            : base(u)
        {
            idSort         = 1;
            Cooldown       = 2;
            Ticks          = 1;
            CoutMana       = 10;
            Animation      = PackAnimation.Explosion();
            AnimationReset = PackAnimation.Explosion();
            Tiles          = new Vector2(320 / 5, 320 / 5);

            NeedUnPoint  = true;
            SpriteBouton = PackTexture.boutons[0];
            SpriteEffect = PackTexture.sorts[0];
            sonSort      = new EffetSonore(PackSon.Explosion);

            description1 = new Text("DescriptionExplosion1");
            description2 = new Text("DescriptionExplosion2");
            description3 = new Text("DescriptionExplosion3");
        }
Пример #27
0
        public Invisibilite(Unite u, bool useMana = true)
            : base(u)
        {
            idSort = 3;
            Cooldown = 5;
            Ticks = 300;
            if (useMana)
                CoutMana = 30;
            else
                CoutMana = 0;
            Tiles = new Vector2(320 / 5, 320 / 5);

            NeedUnPoint = false;
            SpriteBouton = PackTexture.boutons[2];
            SpriteEffect = PackTexture.sorts[0];
            sonSort = new EffetSonore(PackSon.InvisibiliteCible);
            uniteFollowing = new List<Unite>();

            description1 = new Text("DescriptionInvisibilite1");
            description2 = new Text("DescriptionInvisibilite2");
        }
Пример #28
0
        public Polymorphe(Unite u, bool useMana = true)
            : base(u)
        {
            idSort   = 4;
            Cooldown = 2;
            Ticks    = 1;
            if (useMana)
            {
                CoutMana = 30;
            }
            else
            {
                CoutMana = 0;
            }

            NeedUnPoint  = false;
            NeedAUnit    = true;
            SpriteBouton = PackTexture.boutons[12];
            SpriteEffect = PackTexture.sorts[0];
            sonSort      = new EffetSonore(PackSon.PolymorphCible);
            description  = new Text("DescriptionPolymorph");
        }
Пример #29
0
        public FurieSanguinaire(Unite u, bool useMana = true)
            : base(u)
        {
            idSort   = 2;
            Cooldown = 5;
            Ticks    = 300;
            if (useMana)
            {
                CoutMana = 30;
            }
            else
            {
                CoutMana = 0;
            }
            Tiles = new Vector2(320 / 5, 320 / 5);

            NeedUnPoint  = false;
            SpriteBouton = PackTexture.boutons[5];
            SpriteEffect = PackTexture.sorts[0];
            sonSort      = new EffetSonore(PackSon.FurieSanguinaireCible);
            description  = new Text("DescriptionFurieSanguinaire");
        }
Пример #30
0
        public Soin(Unite u, bool useMana = true)
            : base(u)
        {
            idSort = 6;
            Cooldown = 1;
            Ticks = 1;
            if (useMana)
                CoutMana = 15;
            else
                CoutMana = 0;
            Animation = PackAnimation.Soin();
            AnimationReset = PackAnimation.Soin();
            Tiles = new Vector2(180 / 5, 35);

            NeedUnPoint = false;
            SpriteBouton = PackTexture.boutons[1];
            SpriteEffect = PackTexture.sorts[1];
            sonSort = new EffetSonore(PackSon.Soin);

            description1 = new Text("DescriptionSoin1");
            description2 = new Text("DescriptionSoin2");
        }
Пример #31
0
        public Unite(Vector2 Position, int Level = 1)
            : base(Position)
        {
            // Constructeur par defaut d'une unité
            Vie               = VieMax = 1;
            Mana              = ManaMax = 200;
            ManaRegen         = 300;
            Vitesse           = 0.1f;
            Portee            = 1; // 1 = Corps à corps
            Dommages          = 1;
            Puissance         = 1;
            effetUniteAttaque = new EffetSonore(PackSon.Epee);
            effetUniteDeath   = new EffetSonore(PackSon.GruntDeath);
            effetUniteLevelUp = new EffetSonore(PackSon.LevelUp);
            nbFrameSonJoue    = 0;
            Vitesse_Attaque   = 1.00f;
            Defense           = 0;
            XPUnite           = 0;
            this.Level        = Level;
            // Graphique par defaut
            Sprite = PackTexture.blank;
            Tiles  = Vector2.One;
            color  = Color.White;

            id     = Map.GetId();
            idWave = -1;
            spells = new List <Spell> {
                new Soin(this)
            };
            spellsUpdate = new List <Spell> {
            };
            Inventory    = new List <Item> {
            };
            Stuff        = new List <Item> {
            };

            //Dialogue.Add("Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.");
        }
Пример #32
0
        public RegenMana(Unite u, bool useMana = true)
            : base(u)
        {
            idSort   = 5;
            Cooldown = 2;
            Ticks    = 1;
            if (useMana)
            {
                CoutMana = 500;
            }
            else
            {
                CoutMana = 0;
            }
            Animation      = PackAnimation.Soin();
            AnimationReset = PackAnimation.Soin();
            Tiles          = new Vector2(180 / 5, 35);

            NeedUnPoint  = false;
            SpriteBouton = PackTexture.boutons[2];
            SpriteEffect = PackTexture.sorts[2];
            sonSort      = new EffetSonore(PackSon.Soin);
        }
Пример #33
0
        public Cavalier(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite = PackTexture.Cavalier;
            Tiles = new Vector2(370 / 5, 835 / 11);
            Portrait = PackTexture.CavalierPortrait;

            // Statistiques
            Vie = VieMax = 300;
            Vitesse = 0.15f;
            Vitesse_Attaque = 1f;
            Portee = 1f; // 1 = Corps à corps
            Dommages = 10;
            Puissance = 1;
            Defense = 10;
            XPUnite = 200;
            Inventory = new List<Item> { new PotionDeVie(this, Vector2.Zero) };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.Epee);
            effetUniteDeath = new EffetSonore(PackSon.CavalierDeath);
            statsLevelUpdate();
        }
Пример #34
0
        public Troll(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite = PackTexture.Troll;
            Tiles = new Vector2( 311 / 5, 620 / 11);
            ProjectileSprite = PackTexture.projectiles[1];

            // Statistiques
            Vie = VieMax = 200;
            Vitesse = 0.10f;
            Vitesse_Attaque = 1f;
            Portee = 10f; // 2 = Corps à corps
            Dommages = 10;
            Puissance = 1;
            Defense = 5;
            IsRanged = true;
            XPUnite = 200;

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.TrollAttack);
            effetUniteDeath = new EffetSonore(PackSon.GruntDeath);
            statsLevelUpdate();
        }
Пример #35
0
        public Grunt(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite = PackTexture.Grunt;
            Tiles = new Vector2( 380 / 5, 620 / 11);
            Portrait = PackTexture.GruntPortrait;

            // Statistiques
            Vie = VieMax = 200;
            Vitesse = 0.10f;
            Vitesse_Attaque = 1f;
            Portee = 1f; // 2 = Corps à corps
            Dommages = 20;
            Puissance = 5;
            Defense = 5;
            XPUnite = 200;
            Inventory = new List<Item> { new PotionDeVie(this, Vector2.Zero) };

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.GruntAttack);
            effetUniteDeath = new EffetSonore(PackSon.GruntDeath);
            statsLevelUpdate();
        }
Пример #36
0
        public Troll(Vector2 Position, int Level = 1)
            : base(Position, Level)
        {
            // Graphique
            Sprite           = PackTexture.Troll;
            Tiles            = new Vector2(311 / 5, 620 / 11);
            ProjectileSprite = PackTexture.projectiles[1];

            // Statistiques
            Vie             = VieMax = 200;
            Vitesse         = 0.10f;
            Vitesse_Attaque = 1f;
            Portee          = 10f; // 2 = Corps à corps
            Dommages        = 10;
            Puissance       = 1;
            Defense         = 5;
            IsRanged        = true;
            XPUnite         = 200;

            // Sons
            effetUniteAttaque = new EffetSonore(PackSon.TrollAttack);
            effetUniteDeath   = new EffetSonore(PackSon.GruntDeath);
            statsLevelUpdate();
        }
Пример #37
0
        public Unite(Vector2 Position, int Level = 1)
            : base(Position)
        {
            // Constructeur par defaut d'une unité
            Vie = VieMax = 1;
            Mana = ManaMax = 200;
            ManaRegen = 300;
            Vitesse = 0.1f;
            Portee = 1; // 1 = Corps à corps
            Dommages = 1;
            Puissance = 1;
            effetUniteAttaque = new EffetSonore(PackSon.Epee);
            effetUniteDeath = new EffetSonore(PackSon.GruntDeath);
            effetUniteLevelUp = new EffetSonore(PackSon.LevelUp);
            nbFrameSonJoue = 0;
            Vitesse_Attaque = 1.00f;
            Defense = 0;
            XPUnite = 0;
            this.Level = Level;
            // Graphique par defaut
            Sprite = PackTexture.blank;
            Tiles = Vector2.One;
            color = Color.White;

            id = Map.GetId();
            idWave = -1;
            spells = new List<Spell> {  new Soin(this)};
            spellsUpdate = new List<Spell> { };
            Inventory = new List<Item> { };
            Stuff = new List<Item> { };

            //Dialogue.Add("Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.");
        }