public static void NextPlay() { swing.Message("Continue or end ?(y/n)"); ConsoleKeyInfo k; //= new ConsoleKeyInfo(); do { k = Console.ReadKey(); } while (char.ToLower(k.KeyChar) != 'y' && char.ToLower(k.KeyChar) != 'n'); if (char.ToLower(k.KeyChar) == 'y') { swing = new Swing(); swing.ExitFlag = false; swing.endFlag = true; Console.Clear(); swing.PrintForm(ref swing.currentPosision); swing.currentPosision = Console.CursorTop; //swing.LstPoints = new List<Points>(); } else { swing.ExitFlag = true; } }
public void Swing(double angle, double velocity) { // Skapa svingen med hjälp av vinkeln och styrkan Swing swing = new Swing(angle, velocity, this); // Lägger till svingen till listan Swings.Add(swing); // Ökar slagräknaren this.SwingCounter++; // Ifall vi är inom tolleransen av vad som är att bollen är i hålet if (this.DistanceFromHole <= Course.Tolerance) { this.HasEnded = true; this.HasWon = true; // Ifall bollen har flugit utanför gränsen } else if (this.DistanceFromHole > (CourseLength + CourseRough)) { this.IsOutOfBounds = true; this.HasEnded = true; this.HasLost = true; } }
public void Swing(double angle, double velocity) { Swing swing = new Swing(angle, velocity, this); Swings.Add(swing); this.SwingCounter++; if (this.DistanceFromHole <= Ball.Tolerance) { this.Ended = true; this.Won = true; } else if (this.DistanceFromHole > Rough) { this.IsOutOfBounds = true; this.Ended = true; this.Lost = true; } }
public static int Goal = 0; // som spelaren försöker nå. public static void Main(string[] args) { Swing swing = new Swing(); Cup cup = new Cup(); while (Ball != Goal) // Här börjar loopen som fortsätter till spelaren har antingen { // vunnit eller kommit till en exception. Console.Clear(); cup.TooMany(); cup.Edge(); // Här kallar konsolen på all metoder, och dom börjar med att kolla om spelaren har lyckats cup.Show(); // misslyckas genom att slagit för mycket eller för långt, sedan visar konsolen hur långt det swing.Hit(); // är kvar och hur många gånger spelaren har skjutit. swing.Power(); swing.Dist(); // Sedan frågar konsolen om vinkeln och velocity, och räknar ut distansen utav det, och lägger cup.AddSwing(); // slaget i listan. Den fortsätter tills man har lyckats, och då får man se hur måga gånger det } // tog, och hur långt man åkte med varje slag. Console.Clear(); cup.ShowSwings(); }
static void Main(string[] args) { double finalDestination = 550; double remainingDistance = finalDestination; double previousDistance = 0; int maxSwingsAllowed = 10; Console.WriteLine("Welcome to the Golf Game"); Console.WriteLine("*****************************************************"); Console.WriteLine($"Game rules\n Total course distance {finalDestination} " + $"\n {maxSwingsAllowed} number of swings allowed"); Console.WriteLine("*****************************************************"); Console.Write("Enter name for your Player: "); name = Console.ReadLine(); try { while (true) { Console.WriteLine("*****************************************************"); Console.Write("Enter the angle for the ball swing between 1 to 90 degree : "); double angle = Convert.ToDouble(Console.ReadLine()); Console.Write("Enter positive value for the Velocity : "); double velocity = Convert.ToDouble(Console.ReadLine()); if (velocity <= 0 || angle <= 0 || angle >= 90) { Console.WriteLine("Invalid Angle or Velocity. Try again"); continue; } Console.WriteLine("*****************************************************"); Swing swing = new Swing(angle, velocity); swing.CalculateSwingDistance(); Console.WriteLine($"You have hit the ball {swing.SwingDistance} meters"); swing.CalculateCurrentDistance(previousDistance); previousDistance = swing.CurrentDistance; Console.WriteLine($"Your ball is at distance {previousDistance} meters from the initial point. "); swing.CalculateRemainingDistance(remainingDistance); remainingDistance = swing.RemainingDistance; Console.WriteLine($"Your ball is {swing.RemainingDistance} meters away from the Cup"); swingList.Add(swing); Console.WriteLine($"{name} has {maxSwingsAllowed - swingList.Count} swings left"); if (swing.RemainingDistance == 0) { Console.WriteLine("--------------------------------------------------------"); Console.WriteLine("CONGRATULATIONS!!! \n Your Ball reached the Cup"); DisplaySummary(); break; } else if (swing.RemainingDistance > finalDestination) { throw new BallOutOfCourse(); } else if (swingList.Count >= maxSwingsAllowed) { throw new TooManySwings(); } else if (swing.RemainingDistance > 0) { continue; } } } catch (BallOutOfCourse ex) { Console.WriteLine(ex.Message); } catch (TooManySwings ex) { Console.WriteLine(ex.Message); } Console.ReadLine(); }