Пример #1
0
        /// <summary>
        /// Affiche l'emplacement de sort. Puis, si le numéro de sort du joueur surveillé correspond à un sort, affiche
        /// son icône en fond, affiche de haut en bas l'icône plus lumineuse indiquant le chargement du sort, et écrit
        /// le nombre de charges disponibles.
        /// La couleur du nombre change si aucune n'est disponible, (orange) si il y en a un nombre non maximal (jaune)
        /// ou si le nombre maximal est atteint, (vert) auquel cas l'icône lumineuse est donc affichée intégralement.
        /// </summary>
        /// <param name="shift"> Le point de décalage, inutilisée </param>
        /// <param name="g"> L'objet permettant de dessiner </param>
        public override void Draw(Point shift, Graphics g)
        {
            SocketSprite.Draw(Position, g);

            var p1 = Position + new Point(0, HeightShift);

            _backgroundSprite?.Draw(p1, g);
            _foregroundSprite?.Draw(p1, g);

            if (_owner.IsChoosingSpell())
            {
                Bloom.Draw(Position, g);
                return;
            }

            if (_currentSpell == null)
            {
                return;
            }
            var p2        = Position - new Point(0, 20);
            var nbCharges = _currentSpell.CurrentCharges;
            var color     = Color.Orange;

            if (nbCharges == 0)
            {
                color = Color.Red;
            }
            else if (nbCharges == _currentSpell.MaxChares)
            {
                color = Color.GreenYellow;
            }
            new Text(nbCharges.ToString(), 16, color).Draw(p2, g);
        }
Пример #2
0
 /// <summary>
 /// Affiche le nom courant de la sauvegarde et le texte environnant.
 /// </summary>
 /// <param name="shift"> La position de décalage, inutiilisée </param>
 /// <param name="g"> l'objet permettant de dessiner </param>
 public override void Draw(Point shift, Graphics g)
 {
     Screen.Draw(MenuState.ScreenPoint, g);
     TextTop.Draw(new Point(600, 200), g);
     _nameText.Draw(new Point(600, 280), g);
     TextBottom.Draw(new Point(600, 600), g);
 }
Пример #3
0
 /// <summary>
 /// Dessine le bouton puis son texte. Si le bouton est en focus, son dessin est modifié.
 /// </summary>
 /// <param name="shift"> Le point de référence, pas utilisé car le bouton est en position absolue </param>
 /// <param name="g"> L'objet qui permet de dessiner </param>
 public override void Draw(Point shift, Graphics g)
 {
     if (_hasFocus)
     {
         ButtonFocusSprite.Draw(Position, g);
     }
     else
     {
         ButtonSprite.Draw(Position, g);
     }
     _text.Draw(Position - new Point(0, 70), g);
 }
Пример #4
0
 /// <summary>
 /// Dessine l'image de fond puis affiche les boutons.
 /// </summary>
 /// <param name="shift"> La position de décalage, inutilisée </param>
 /// <param name="g"> L'objet permettant de dessiner </param>
 public override void Draw(Point shift, Graphics g)
 {
     _screen.Draw(ScreenPoint, g);
     ButtonsHandler?.Draw(shift, g);
 }