Tworzenie systemu walki do gry online

Hej!

Tworze gre online i mam problem z napisaniem systemu walki. Nie chodzi mi tu o problem z kodem tylko o pomoc w ogolnych zalorzeniach gry… Czas gry to przyszlosc a wiec karabiny i ogolnie walka na dystans aczkolwiek sa potwory ktore atakuja wrecz. Na razie funkcja odpwoiedzialna za to atakowanie wyglada tak:

private function fight_attack($dist,$bul,$att,$acc) {

		$this->weapon_round_bul_used = 0;

		$injuries = 0;

		for ($i = 0;$i<$bul;$i++) {

			if ($dist <= 0) {

				//walka wrecz 25% szans na nieudany atak

				$temp = rand(0,4);

				if ($temp != 4) {

					$injuries += $att;

					$this->weapon_bul_used++;

					$this->weapon_round_bul_used++;

				}

			}

			else if ($dist < $acc) {

				//POPRAW

				$injuries = $att*$bul + $injuries;

				$this->weapon_bul_used += $bul;

				$this->weapon_round_bul_used += $bul;

			}

			//jezeli dystans jest wiecej niz celnosc broni

			else if ($dist > $acc) {

				$temp = rand(0,$dist - $acc);

				//jezeli losowanie wynosi 0

				if($temp == 0) {

					//to zwieksz obrazenia

					$injuries += $att;

					$this->weapon_bul_used++;

					$this->weapon_round_bul_used++;

				}

			}

		}

		return $injuries;

	}

Ale zdaje sobie sprawę ze to nie jest dobry sposób (a przy tym jeszcze nie wszystko dziala :D). I czy ktos mogly mi ktos podsunac jakies rozwiazanie zeby naboje zbyt czesto nie trafialy w cel? :smiley:

To nie jest praca domowa ani nie proszę o konkretny kod, proszę tylko o nakierowanie mnie na dobra drogę :slight_smile:

Pozdrowienia

PS: Przy wywoływaniu tego kodu $acc wynosi 30