示例#1
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();
        }
示例#2
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();
        }
示例#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 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");
        }
示例#5
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();
        }
示例#6
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");
        }
示例#7
0
        public Objet(Vector2 Position)
        {
            // Général
            this.ObjectifListe = new List<Noeud> { };
            CanAttack = true;

            // Physique
            largeurPhysique = 1;
            CreateBody(largeurPhysique, Position);

            // Graphique
            this.Sprite = PackTexture.blank;
            this.Animation = new List<Vector2> { };
            this.Dialogue = new List<Text> { };
            this.packAnimation = new PackAnimation();

            this.direction = Direction.Bas;
            this.FlipH = false;
        }
示例#8
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");
        }
示例#9
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);
        }
示例#10
0
        public Objet(Vector2 Position)
        {
            // Général
            this.ObjectifListe = new List <Noeud> {
            };
            CanAttack          = true;

            // Physique
            largeurPhysique = 1;
            CreateBody(largeurPhysique, Position);

            // Graphique
            this.Sprite        = PackTexture.blank;
            this.Animation     = new List <Vector2> {
            };
            this.Dialogue      = new List <Text> {
            };
            this.packAnimation = new PackAnimation();


            this.direction = Direction.Bas;
            this.FlipH     = false;
        }