This is my code and this looks fine I think. But I tried to play it after switch if lesson. When I played it , it asked passwords there is no problem. But after I wrote Menu and pick one of the 1-2-3 sections it will give “oh no that is false” message that I wrote in the code. Is there any problem in my code ? Or do you guys know why is that happening ? Thanks.
public class Hacker : MonoBehaviour
{
string[] level1Passwords = {"kolay","matematik","kablo","uzaylı","gözlük" };
string[] level2Passwords = { "patates", "sentetik", "dilemma", "diferansiyel", "tantana" };
string[] level3Passwords = { "karbüratör", "laboratuvar", "pestenkerani", "profiterol", "muvaffakiyetsizleştiricileştiriveremeyebileceklerimizdenmişsinizcesine" };
// Game state
int level;
enum Screen { MainMenu, Password, Win};
Screen currentScreen;
string password;
void Start(){
ShowMainMenu();
}
void ShowMainMenu() {
Terminal.ClearScreen();
Terminal.WriteLine("Her şey TDK'deki kelimelerin harflerinin değiştirilmesi ile başladı.");
Terminal.WriteLine("Kürtlerin başlangıç hamleleri bunlarmış ve fark edemedik.");
Terminal.WriteLine("Kürd Land in kurulmasını engellemek için elimizden geleni yapmalıyız.");
Terminal.WriteLine("Lütfen arşivdeki kelimeleri düzelt.");
Terminal.WriteLine("Arsiv 1 icin 1 e bas.");
Terminal.WriteLine("Arsiv 2 icin 2 e bas.");
Terminal.WriteLine("Arsiv 3 icin 3 e bas.");
}
void OnUserInput(string input)
{
if (input == "Menu")
{
ShowMainMenu();
}
else if(currentScreen == Screen.MainMenu)
{
RunMainMenu(input);
}
else if (currentScreen == Screen.Password)
{
CheckPassword(input);
}
}
void RunMainMenu(string input)
{
bool isValidLevelNumber = (input == "1" || input == "2" || input == "3");
if (isValidLevelNumber)
{
level = int.Parse(input);
StartGame();
}
else if (input == "007")
{
Terminal.WriteLine("James Bond şakası he, hiç eskimez.");
}
else if (input == "Kürdistan")
{
Terminal.WriteLine("K'yı büyük yazmışsın hata mesajı almayasın sonra ?");
}
else if (input == "31")
{
Terminal.WriteLine("Gerçekten mi ?");
}
else
{
Terminal.WriteLine("Lütfen arsivlerden birini seçin.");
}
}
void StartGame()
{
print(level1Passwords.Length);
print(level2Passwords.Length);
print(level3Passwords.Length);
currentScreen = Screen.Password;
Terminal.ClearScreen();
switch(level)
{
case 1:
password = level1Passwords[0];
break;
case 2:
password = level2Passwords[0];
break;
case 3:
password = level3Passwords[0];
break;
default:
Debug.LogError("Bilgisayar imha başlatılıyor.");
break;
}
Terminal.WriteLine("Lütfen şifreyi girin:");
}
void CheckPassword(string input)
{
Debug.Log("Password: " + password);
Debug.Log("Input: " + input);
if (input == password)
{
Terminal.WriteLine("Congrats!!");
}
else
{
Terminal.WriteLine("Oh no that is false");
}
}
}