Ejemplo n.º 1
0
        public void PaintTopInGame(ClipState clipState)
        {
            if (clipState != ClipState.BeforeClip)
            {
                return;
            }
            if (Hud.Game.Me.HeroClassDefinition.HeroClass != HeroClass.Necromancer)
            {
                return;
            }

            if (SkeletonCount != 0)
            {
                SkeletonCountLabel.Paint(barX, barY, barW, barH, HorizontalAlign.Center);
            }
            if (MageCount != 0)
            {
                MageCountLabel.Paint(barX + 2 * barW, barY, barW, barH, HorizontalAlign.Center);
            }
            if (ReviveCount != 0)
            {
                ReviveCountLabel.Paint(barX + 4 * barW, barY, barW, barH, HorizontalAlign.Center);
            }

            if (ActiveTimeLong.IsRunning || ActiveTime.IsRunning)
            {
                RingerTexture.Draw(Xpos, Ypos, texsize, 2 * texsize);

                var text = "";
                if (showTimerShort)
                {
                    var acctime1  = ActiveTime.ElapsedMilliseconds / 1000;
                    var accpower1 = (int)acctime1 * legpower;
                    text += ValueToString(acctime1, ValueFormat.NormalNumberNoDecimal) + " sec +" + accpower1 + "%";
                }
                if (showTimerLong)
                {
                    var acctime2  = ActiveTimeLong.ElapsedMilliseconds / 1000;
                    var accpower2 = (int)acctime2 * legpower;
                    if (showTimerShort)
                    {
                        text += "\n";
                    }
                    text += ValueToString(acctime2, ValueFormat.NormalNumberNoDecimal) + " sec +" + accpower2 + "%";
                }

                var textLayout = ActiveFont.GetTextLayout(text);
                ActiveFont.DrawText(textLayout, Xpos + texsize, Ypos + texsize - textLayout.Metrics.Height / 2);
            }
        }