// ----------------------- SHOW THE NAMES
static void ShowNames()
{
System.IO.StreamReader reader;
reader = new System.IO.StreamReader(name1);
string str1 = reader.ReadLine();
char[] char1 = str1.ToCharArray();
if (char1.Length != 0)
System.Console.WriteLine("| 1. ", str1, "|");
else System.Console.WriteLine("| 1. Empty slot |");
reader = new System.IO.StreamReader(name2);
string str2 = reader.ReadLine();
char[] char2 = str1.ToCharArray();
if (char1.Length != 0)
System.Console.WriteLine("| 1. ", str2, "|");
else System.Console.WriteLine("| 1. Empty slot |");
reader = new System.IO.StreamReader(name3);
string str3 = reader.ReadLine();
char[] char3 = str1.ToCharArray();
if (char1.Length != 0)
System.Console.WriteLine("| 1. ", str3, "|");
else System.Console.WriteLine("| 1. Empty slot |");
}
// ------------------------------------------------------------------------ CLASS
public class Game
{
static string[] characters = new string[3];
static string[] full_characters = new string[3];
static string[] passwords = new string[3];
static bool[] ischaracter = new bool[3];
static bool[] ispassword = new bool[3];
static System.IO.FileStream name1, name2, name3;
static System.IO.FileStream pass1, pass2, pass3;
// --------------------------------------------------------------------- MAIN
static void Main(string[] args)
{
// ----------------------- START MENU
System.Console.WriteLine("Welcome to Odyssey!\n");
System.Console.WriteLine("Choose your character:\n\n");
System.Console.WriteLine("---------------------");
System.Console.WriteLine("| Character name | ");
System.Console.WriteLine("|-------------------| ");
Game.ShowNames();
System.Console.WriteLine("---------------------");
// ----------------------- TAKE CHARACTER CHOICE AND RESPOND
string choice = System.Console.ReadLine();
int choicenum = 0;
if (choice == "1") choicenum = 1;
if (choice == "2") choicenum = 2;
if (choice == "3") choicenum = 3;
Game.RespondChoice(choicenum);
// ---------------------- SET NEW PASSWORD
// ---------------------- TAKE PASSWORD ATTEMPT AND CHECK IT
string pass_try = System.Console.ReadLine();
Game.CheckPass(choicenum);
}
// ---------------------------------------------------------------- FUNCTIONS
// ----------------------- SHOW THE NAMES
static void ShowNames()
{
System.IO.StreamReader reader;
reader = new System.IO.StreamReader(name1);
string str1 = reader.ReadLine();
char[] char1 = str1.ToCharArray();
if (char1.Length != 0)
System.Console.WriteLine("| 1. ", str1, "|");
else System.Console.WriteLine("| 1. Empty slot |");
reader = new System.IO.StreamReader(name2);
string str2 = reader.ReadLine();
char[] char2 = str1.ToCharArray();
if (char1.Length != 0)
System.Console.WriteLine("| 1. ", str2, "|");
else System.Console.WriteLine("| 1. Empty slot |");
reader = new System.IO.StreamReader(name3);
string str3 = reader.ReadLine();
char[] char3 = str1.ToCharArray();
if (char1.Length != 0)
System.Console.WriteLine("| 1. ", str3, "|");
else System.Console.WriteLine("| 1. Empty slot |");
}
// ----------------------- FILL THE NAMES TO WIDTH 15
static void FillChars()
{
full_characters[0] = characters[0].PadRight(15);
full_characters[1] = characters[1].PadRight(15);
full_characters[2] = characters[2].PadRight(15);
}
// ---------------------- RESPOND TO CHARACTER CHOICE
static void RespondChoice(int i)
{
switch (i)
{
case 1:
if (ischaracter[1]) Game.CheckPass(i);
else Game.NewName(1);
break;
case 2:
if (ischaracter[1]) Game.CheckPass(i);
else Game.NewName(2);
break;
case 3:
if (ischaracter[2]) Game.CheckPass(i);
else Game.NewName(3);
break;
}
}
// ---------------------- SET NEW CHARACTER NAME
static void NewName(int i)
{
System.Console.WriteLine("Choose your character's name.\n");
System.IO.StreamWriter writer;
switch (i)
{
case 1:
name1 = System.IO.File.OpenWrite("name1.txt");
writer = new System.IO.StreamWriter(name1);
characters[0] = System.Console.ReadLine();
writer.WriteLine(characters[0]);
writer.Close();
ischaracter[0] = true;
break;
case 2:
name2 = System.IO.File.OpenWrite("name2.txt");
writer = new System.IO.StreamWriter(name2);
characters[1] = System.Console.ReadLine();
writer.WriteLine(characters[1]);
writer.Close();
ischaracter[1] = true;
break;
case 3:
name3 = System.IO.File.OpenWrite("name3.txt");
writer = new System.IO.StreamWriter(name3);
characters[2] = System.Console.ReadLine();
writer.WriteLine(characters[2]);
writer.Close();
ischaracter[2] = true;
break;
}
Game.NewPass(i);
}
// ---------------------- SET NEW PASSWORD
static void NewPass(int i)
{
System.Console.WriteLine("Choose your character's password.\n");
System.IO.StreamWriter writer;
switch (i)
{
case 1:
pass1 = System.IO.File.OpenWrite("pass1.txt");
writer = new System.IO.StreamWriter(pass1);
passwords[0] = System.Console.ReadLine();
writer.WriteLine(passwords[0]);
writer.Close();
System.Console.WriteLine("You're in.");
break;
case 2:
pass2 = System.IO.File.OpenWrite("pass2.txt");
writer = new System.IO.StreamWriter(pass2);
passwords[1] = System.Console.ReadLine();
writer.WriteLine(passwords[1]);
writer.Close();
System.Console.WriteLine("You're in.");
break;
case 3:
pass3 = System.IO.File.OpenWrite("pass3.txt");
writer = new System.IO.StreamWriter(pass3);
passwords[3] = System.Console.ReadLine();
writer.WriteLine(passwords[3]);
writer.Close();
System.Console.WriteLine("You're in.");
break;
}
}
// --------------------- CHECK PASSWORD IS CORRECT
static void CheckPass(int i)
{
string[] attempts = new string[3];
System.Console.WriteLine("Enter your password:\n");
System.IO.StreamReader reader;
switch (i)
{
case 1:
reader = new System.IO.StreamReader(pass1);
attempts[0] = System.Console.ReadLine();
if (attempts[0] == reader.ReadLine())
System.Console.WriteLine("You're in.");
else System.Console.WriteLine("Incorrect password.");
break;
case 2:
reader = new System.IO.StreamReader(pass2);
attempts[1] = System.Console.ReadLine();
if (attempts[1] == reader.ReadLine())
System.Console.WriteLine("You're in.");
else System.Console.WriteLine("Incorrect password.");
break;
case 3:
reader = new System.IO.StreamReader(pass3);
attempts[2] = System.Console.ReadLine();
if (attempts[2] == reader.ReadLine())
System.Console.WriteLine("You're in.");
else System.Console.WriteLine("Incorrect password.");
break;
}
}
}