Zaczelem sie uczyc socketow i zrobilem serwer(c#) i klient(unity,c#). Nie rozumiem dlaczego informacja zwrotna od serwera jest pomijana w instrukcji switch i if.
private void HandleResponse(string response)
{
string[] command = response.Split(' ');
if(response== "Invalid login or password")
{
Debug.Log(" OK!");
}
switch (command[0])
{
case "Success":
Debug.Log("Zalogowano");
break;
case "Invalid login or password":
Debug.Log("Invalid login or password");
break;
case "position":
float x = float.Parse(command[1]);
float y = float.Parse(command[2]);
Vector3 position = new Vector3(x, y, 0);
transform.position = position;
Debug.Log("Received position: " + position);
UpdatePlayerPositions(response); // <-
break;
default:
Debug.Log("Cos nie tak Linia 75: " + response);
break;
}
}
Wpisalem zly login i haslo powinno mi zadziałac case "Invalid login or password": lub if ktorego dodalem by tam tez sprawdzic. Default mi zwraca:Cos nie tak Linia 75: Invalid login or password. Skoro w response mam tekst Invalid login or password to powinien zadzialac if albo z case ... a dostaje default. Moze mi ktos wytlumaczyc to albo gdzies jest blad?