public void Show(BaseEnemy enemy)
        {
            var isEnemyOnScreen = enemy.X >= Camera.Main.X - Camera.Main.OrthogonalWidth / 2 &&
                                  enemy.X <= Camera.Main.X + Camera.Main.OrthogonalWidth / 2 &&
                                  enemy.Y >= Camera.Main.Y - Camera.Main.OrthogonalHeight / 2 &&
                                  enemy.Y <= Camera.Main.Y + Camera.Main.OrthogonalHeight / 2;

            Visible = isEnemyOnScreen;

            if (Visible)
            {
                var minMaxX = (CameraZoomManager.OriginalOrthogonalWidth - GetAbsoluteWidth()) / 2;
                var minMaxY = (CameraZoomManager.OriginalOrthogonalHeight - GetAbsoluteHeight()) / 2;

                var newX = (enemy.X - Camera.Main.X) * CameraZoomManager.GumCoordOffset;
                var newY = (enemy.Y - Camera.Main.Y + enemy.SpriteInstance.Height / 2) * CameraZoomManager.GumCoordOffset + GetAbsoluteHeight() / 2;

                X = MathHelper.Clamp(newX, -minMaxX, minMaxX);
                Y = MathHelper.Clamp(newY, -minMaxY, minMaxY);

                EnemyName = enemy.DisplayName;
                HealthDisplay.AttributeText = $"{enemy.HealthRemaining:##0} / {enemy.MaximumHealth:##0}";
                SpeedDisplay.AttributeText  = $"{enemy.EffectiveSpeed:##0}";

                PiercingResist.SetResistanceText(enemy.EffectivePiercingResist);
                BombardResist.SetResistanceText(enemy.EffectiveBombardResist);
                ChemicalResist.SetResistanceText(enemy.EffectiveChemicalResist);
                FireResist.SetResistanceText(enemy.EffectiveFireResist);
                FrostResist.SetResistanceText(enemy.EffectiveFrostResist);
                ElectricResist.SetResistanceText(enemy.EffectiveElectricResist);
            }
        }
示例#2
0
        public string toString()
        {
            var toString = "";

            if (!String.IsNullOrEmpty(Name))
            {
                toString += Name + "\r\n";
            }
            if (Quality != 0)
            {
                toString += Quality.ToString() + "\r\n";
            }
            if (ItemLevel != 0)
            {
                toString += "Item Level " + ItemLevel + "\r\n";
            }
            if (Armor > 0)
            {
                toString += Slot.ToString() + ":" + ArmorType.ToString() + "\r\n";
                toString += Armor + " Armor\r\n";
            }
            else
            {
                toString += Slot.ToString() + "\r\n";
            }

            if (Strength > 0)
            {
                toString += "+" + Strength.ToString() + " Strength" + "\r\n";
            }
            if (Agility > 0)
            {
                toString += "+" + Agility.ToString() + " Agility" + "\r\n";
            }
            if (Intellect > 0)
            {
                toString += "+" + Intellect.ToString() + " Intellect" + "\r\n";
            }
            if (Stamina > 0)
            {
                toString += "+" + Stamina.ToString() + " Stamina" + "\r\n";
            }
            if (Spirit > 0)
            {
                toString += "+" + Spirit.ToString() + " Spirit" + "\r\n";
            }

            if (ArcaneResist > 0)
            {
                toString += "+" + ArcaneResist.ToString() + " Arcane Resistance" + "\r\n";
            }
            if (FireResist > 0)
            {
                toString += "+" + FireResist.ToString() + " Fire Resistance" + "\r\n";
            }
            if (NatureResist > 0)
            {
                toString += "+" + NatureResist.ToString() + " Nature Resistance" + "\r\n";
            }
            if (FrostResist > 0)
            {
                toString += "+" + FrostResist.ToString() + " Frost Resistance" + "\r\n";
            }
            if (ShadowResist > 0)
            {
                toString += "+" + ShadowResist.ToString() + " Shadow Resistance" + "\r\n";
            }

            if (Classes != 0)
            {
                toString += ((Class)Classes).ToString() + "\r\n";
            }

            if (SpellCrit > 0)
            {
                toString += "Improves your chance to get a critical strike with spells by " + SpellCrit + "%.\r\n";
            }
            if (SpellPower > 0)
            {
                toString += "Increases damage and healing done by magical spells and effects by up to " + SpellPower + ".\r\n";
            }
            if (SpellHit > 0)
            {
                toString += "Improves your chance to hit with spells by " + SpellHit + "%.\r\n";
            }
            if (SpellPen > 0)
            {
                toString += "Decreases the magical resistances of your spell targets by " + SpellPen + ".\r\n";
            }
            if (ManaRegen > 0)
            {
                toString += "Restores " + ManaRegen + " mana per 5 sec.\r\n";
            }

            if (ItemSet != 0)
            {
                toString += ModelHelper.GetEnumDescription(ItemSet);
            }

            return(toString);
        }