C# でテキスト アドベンチャーを作成しようとしています。XNA コーディングとは大きく異なります。プレーヤーの性別を表示しようとしていますが、別のフィールドにあります。次のエラーが表示されます。
「BoyorGirl」という名前は現在のコンテキストには存在しません
(エラーは行 113、列 73 にあります)。
そして、これがスクリプトです:(エラーが表示される場所に // を置きます)
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
....
Console.WriteLine("\t\t Press Enter to continue...");
Console.ReadLine();
Console.Clear();
Start_Game();
}
static public void Start_Game()
{
int StartMenu;
Console.WriteLine(@"Welcome Adventurer..
Are you ready for an adventure?
#1 Start Game
#2 Help
#3 Exit");
StartMenu = int.Parse(Console.ReadLine());
switch (StartMenu)
{
case 1:
Start_Adventure();
break;
case 2:
Help_Menu();
break;
case 3:
Console.WriteLine("Goodbye.");
System.Threading.Thread.Sleep(1000);
Environment.Exit(0);
break;
default:
Console.WriteLine("This is not an option..");
System.Threading.Thread.Sleep(2000);
Console.Clear();
Start_Game();
break;
}
}
static public void Start_Adventure()
{
Console.Clear();
Console.WriteLine("You're a normal..\nBoy/Girl?");
string BoyorGirl;
BoyorGirl = Console.ReadLine();
BoyorGirl = BoyorGirl.ToLower();
switch (BoyorGirl)
{
case "boy":
BoyorGirl = "Boy";
Console.Clear();
input_name();
break;
case "girl":
BoyorGirl = "Girl";
Console.Clear();
input_name();
break;
default:
Console.WriteLine("This is not an option..");
System.Threading.Thread.Sleep(2000);
Console.Clear();
Start_Adventure();
break;
}
}
public static void input_name()
{
Console.WriteLine("You're just a normal {0}, called.. input your name please.");
string name;
name = Console.ReadLine();
Console.Clear();
Console.WriteLine("You're just a normal {0}, called {1}..", BoyorGirl, name); //The error appears here.
}
static public void Help_Menu()
{
}
}
}
スタティックスも取り除きたいのですが、それは不可能だと思います。これを修正する方法について何か考えはありますか?