Mam problem z kodem. Nie mam pojecia gdzie lezy blad. Tworze sobie gre z falami zombie, Ustalilem sobie ze co poziom ilosc_zombie = zabite*2 da kolejny poziom. Tylko ze pierwszy poziom działa tylko poprawnie. Drugi w polowie.Zmienna ilosc_zombie pokazuje poprawnie ile powinno byc teraz zombie a okazuje sie ze jest ich o wiele wiele wiecej. Dlaczego ?
void Update()
{
PoziomCheck();
wave = gO.GetComponent<Stats>().wave;
// ilosczombie = gO.GetComponent<Stats>().zombie;
zabite = gO.GetComponent<Stats>().zabite_zombie;
if(wave == 1)
{
if(tworz == true)
{
for (int i = 0; i < ilosczombie; i++)
{
//InvokeRepeating("NowyZombie", 0.5f, 0.5f);
Invoke("NowyZombie", 2);
if(i <= ilosczombie)
{
tworz = false;
}
}
}
}
if (wave == 2)
{
gO.GetComponent<Stats>().wave = 2;
if (tworz == true)
{
for (int i = 0; i < ilosczombie; i++)
{
//InvokeRepeating("NowyZombie", 0.5f, 0.5f);
Invoke("NowyZombie", 2);
if (i <= ilosczombie)
{
tworz = false;
}
}
}
}
//InvokeRepeating("NowyZombie", 0.5f, 0.5f);
//Invoke("NowyZombie", 5);
}
void PoziomCheck()
{
switch(zabite)
{
case 2:
wave = 2;
ilosczombie = zabite * 2;
tworz = true;
break;
case 4:
wave = 3;
ilosczombie = zabite * 2;
break;
default:
break;
}
}