Hi
I am having a problem with Raycast crashing my 2D game when I touch somewhere on the screen and it is not a game object, Here is the script :
void Update () {
if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Began)
{
Ray ray = Camera.main.ScreenPointToRay(Input.GetTouch(0).position);
RaycastHit2D hit = Physics2D.Raycast(ray.origin, ray.direction);
Debug.Log(hit);
if ( hit.collider.transform.name == "Africa")
{
HappyText.text = Africa.Happy.ToString();
OilText.text = Africa.Oil.ToString();
PoupText.text = Africa.Population.ToString();
ArmyText.text = Africa.Army.ToString();
CountryText.text = "Africa";
}else if (hit.collider.transform.name == "NorthAmerica")
{
HappyText.text = NorthAmerica.Happy.ToString();
OilText.text = NorthAmerica.Oil.ToString();
PoupText.text = NorthAmerica.Population.ToString();
ArmyText.text = NorthAmerica.Army.ToString();
CountryText.text = "NorthAmerica";
}else if (hit.collider.transform.name == "SouthAmerica")
{
HappyText.text = SouthAmerica.Happy.ToString();
OilText.text = SouthAmerica.Oil.ToString();
PoupText.text = SouthAmerica.Population.ToString();
ArmyText.text = SouthAmerica.Army.ToString();
CountryText.text = "SouthAmerica";
}else if (hit.collider.transform.name == "Europe")
{
HappyText.text = Europe.Happy.ToString();
OilText.text = Europe.Oil.ToString();
PoupText.text = Europe.Population.ToString();
ArmyText.text = Europe.Army.ToString();
CountryText.text = "Europe";
}else if (hit.collider.transform.name == "Asia")
{
HappyText.text = Asia.Happy.ToString();
OilText.text = Asia.Oil.ToString();
PoupText.text = Asia.Population.ToString();
ArmyText.text = Asia.Army.ToString();
CountryText.text = "Asia";
}else if (hit.collider.transform.name == "Arabia")
{
HappyText.text = Arabia.Happy.ToString();
OilText.text = Arabia.Oil.ToString();
PoupText.text = Arabia.Population.ToString();
ArmyText.text = Arabia.Army.ToString();
CountryText.text = "Arabia";
}else if (hit.collider.transform.name == "Australia")
{
HappyText.text = Australia.Happy.ToString();
OilText.text = Australia.Oil.ToString();
PoupText.text = Australia.Population.ToString();
ArmyText.text = Australia.Army.ToString();
CountryText.text = "Australia";
}
}
}
what is the problem ? and thanks ![]()