Ejemplo n.º 1
0
        public ShrimpBattleTurnResults Attack(Random rng, ref ShrimpBattlePerson target)
        {
            var results = new ShrimpBattleTurnResults();

            results.DamageDealt = rng.Next(1, 11);
            target.Health      -= results.DamageDealt;
            results.Response    = $"{Name} hit {target.Name} with their mighty sword.";
            return(results);
        }
Ejemplo n.º 2
0
        public ShrimpBattleTurnResults UseMagic(Random rng, ref ShrimpBattlePerson target)
        {
            var results = new ShrimpBattleTurnResults();

            results.DamageDealt = rng.Next(10, 21);
            results.ManaUsed    = ManaNeededForOffensiveMagic;
            if (Mana - results.ManaUsed > -1)
            {
                target.Health   -= results.DamageDealt;
                Mana            -= results.ManaUsed;
                results.Response = $"{Name} cast magic on {target.Name}.";
            }
            else
            {
                results.Response    = $"{Name} didn't have enough mana to use their magic, so it didn't do anything.";
                results.DamageDealt = 0;
                results.ManaUsed    = 0;
            }
            return(results);
        }
Ejemplo n.º 3
0
        public ShrimpBattleTurnResults Heal(ShrimpBattle battle)
        {
            var results = new ShrimpBattleTurnResults();

            if (battle.InBlitzMode)
            {
                results.Response = "The battle is in blitz mode! No healing magic!";
                return(results);
            }
            results.ManaUsed = ManaNeededForHealingMagic;
            if (Mana - results.ManaUsed > -1)
            {
                results.Response = $"{Name} used healing magic and gained 30 health.";
                Health          += 30;
                Mana            -= results.ManaUsed;
            }
            else
            {
                results.Response    = $"{Name} didn't have enough mana to use their magic, so it didn't do anything.";
                results.DamageDealt = 0;
                results.ManaUsed    = 0;
            }
            return(results);
        }