The Game is running correct but now I need/want to print the result from the game to a text file using streamwriter. How do I make that happen?
To extract the info from the result?
Been trying different kinds of things but haven´t been able to do it just yet. So if there is anybody that could help me with this I would be grateful.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
namespace Dartgame.Simulator
{
class Program
{ //Här ska simulatorn starta i main för min Simulator, Christopher
public static void Main(string[] args)
{
Game mitt_spel = new Game();
mitt_spel.Run_game();
Console.Write("Press any key to continue ");
Console.ReadKey(true);
}
}
class Game
{
private List<Player> player_list = new List<Player>();
private bool keepGoing = true;
public void Run_game()
{
int winner = 301;
Random slumptal = new Random();
int turn1;
int turn2;
int turn3;
// Här ska programmet köras
Console.WriteLine(" Välkommen till Dartspels simulatorn! ");
Console.WriteLine("**************************************");
Console.WriteLine("Varje spelare kastar 3 pilar åt gången och får ett slumpat poäng. ");
Console.WriteLine("Spelet avslutas när någon spelare når 301poäng eller över");
player_list.Add(new Player("Christopher"));
player_list.Add(new Player("Suzanne"));
do
{
foreach (var Player in player_list)
{
turn1 = slumptal.Next(0, 20);
turn2 = slumptal.Next(0, 20);
turn3 = slumptal.Next(0, 20);
Player.Add_turns(turn1, turn2, turn3);
if (Player.Calculate_Total() >= winner)
{
keepGoing = false;
}
}
}
while (keepGoing);
foreach (var Player in player_list)
{
Player.Print_Turns();
}
}
}
class Player
{
private string name;
private List<Turns> turns_list = new List<Turns>();
/* Om inte spelare skriver in ett namn får han ett default namn, en konstruktor är
skapad för en spelare */
public Player(string _name = "Zion")
{
name = _name;
}
// Används för att lägga på omgång/turn i spelet
public void Add_turns(int turn1, int turn2, int turn3)
{
turns_list.Add(new Turns(turn1, turn2, turn3));
}
// Används för att beräkna totala poäng.
public int Calculate_Total()
{
int total = 0;
foreach (var Turns in turns_list)
{
total = total + Turns.Get_Score();
}
return total;
}
// Används för att skriva ut total poäng som lagrats i turns_list
public void Print_Turns()
{
Console.WriteLine("\n Poäng statistik för spelare {0}: ", name);
Console.WriteLine("******************************************\n");
foreach (var Turns in turns_list)
{
Console.WriteLine(Turns);
}
Console.WriteLine("******************************************\n");
Console.WriteLine("Totala poängen för spelaren är {0} poäng", Calculate_Total());
}
public override string ToString()
{
return string.Format("Spelaren {0}", name, "fick poäng");
}
}
class Turns
{
private int turnOne;
private int turnTwo;
private int turnThree;
public Turns(int _turnOne, int _turnTwo, int _turnThree)
{
turnOne = _turnOne;
turnTwo = _turnTwo;
turnThree = _turnThree;
}
public int Get_Score()
{
int totalt;
totalt = turnOne + turnTwo + turnThree;
return totalt;
}
/* skriver jag ut ett race object så hämtar den sen infon från private
* int turnOne , turnTwo osv från klassen Turns*/
public override string ToString()
{
return string.Format("Kast 1 : {0}, Kast 2 : {1}, Kast 3: {2}", turnOne, turnTwo, turnThree);
}
}
}