protected virtual void Atakuj() { if (cel != null) { nawigacja.velocity = Vector3.zero; transform.LookAt(cel); float dystans = Vector3.Magnitude(nawigacja.destination - transform.position); if (dystans <= odlegloscDoAtaku) { if ((czasAtaku -= Time.deltaTime) <= 0) { Atak(); } } else { polecenie = Polecenie.gon; } } else { polecenie = Polecenie.spocznij; } }
protected virtual void Idz() { float dystans = Vector3.Magnitude(nawigacja.destination - transform.position); if (dystans <= stop) { polecenie = Polecenie.spocznij; } }
protected virtual void Sledz() { if (cel != null) { nawigacja.SetDestination(cel.position); } else { polecenie = Polecenie.spocznij; } }
public SuperPilot() { poleceniaWłącz = new Polecenie[7]; poleceniaWyłącz = new Polecenie[7]; Polecenie brakPolecenia = new BrakPolecenia(); for (int i = 0; i < 7; i++) { poleceniaWłącz[i] = brakPolecenia; poleceniaWyłącz[i] = brakPolecenia; } polecenieWycofaj = brakPolecenia; }
public virtual void Atak() { Jednostka jednostka = cel.GetComponent <Jednostka>(); if (jednostka && jednostka.CzyZyje) { OdtwarzaczOdglosow.PlaySound("brzdek" + generatorBrzdekuMiecza); animator.SetTrigger(WALKA); czasAtaku = szybkoscAtaku; } else { cel = null; polecenie = Polecenie.spocznij; } }
protected virtual void Gon() { if (cel != null) { nawigacja.SetDestination(cel.position); float dystans = Vector3.Magnitude(nawigacja.destination - transform.position); if (dystans <= odlegloscDoAtaku) { polecenie = Polecenie.atakuj; } } else { polecenie = Polecenie.spocznij; } }
public void wciśniętoPrzyciskWyłącz(int slot) { poleceniaWyłącz[slot].wykonaj(); polecenieWycofaj = poleceniaWyłącz[slot]; }
public void ustawPolecenie(int slot, Polecenie włącz, Polecenie wyłącz) { poleceniaWłącz[slot] = włącz; poleceniaWyłącz[slot] = wyłącz; }