witam , mam taki skrypt. Na firefoxie mam taki bład. jak to naprawić?
Cytat
Nieprawidłowe przekierowanie
Firefox wykrył, że serwer przekierowuje żądanie tego zasobu w sposób uniemożliwiający jego ukończenie.
Problem ten może się pojawić w wyniku zablokowania lub odrzucenia ciasteczek.
<?php
$gracz = $uzytkownik['gracz'];
if(isset($_GET['walka'])){ //jeżeli wciśnięto walkę z wybranym potworem
// w linku podaje się ID potwora z którym mamy walczyć, więc zabezpieczymy sobie tą zmienną
$_GET['walka'] = (int)$_GET['walka'];
$pozostalo = $uzytkownik['ostatnia_walka_pvc'] + 600
- time(); if($uzytkownik['zycie'] < 5){
echo "masz za mało życia by walczyć<hr/>"; } elseif($pozostalo > 0){
echo "ostatnio prowadziłeś walkę<hr/>"; } else {
//pobieramy dane
//jeżeli nie pobrano przeciwnika
echo "nie ma takiego potwora<hr/>"; } else {
//wszystkiedane potwora mamy w zmiennej $przeciwnik
echo "<b>rozpoczęto walkę</b><hr/>";
//walka ma trwać dopóki gracz i przeciwnik mają minimum 1 punkt życia
while(($uzytkownik['zycie'] > 0) && ($przeciwnik['zycie'] > 0)){
//losujemy ile obrażeń zada gracz potworowi
$obrazenia = rand($uzytkownik['obrazenia_min'],$uzytkownik['obrazenia_max']);
//modyfikujemy ilość obrażeń, im większa różnica atak gracza do obrony przeciwnika tym więcej zada się obrażeń
$mod = $uzytkownik['atak'] / $przeciwnik['obrona'];
//obrażenia nie mogą być zwiększone więcej niż dwukrotnie, żeby nie przeginać ;] możesz zrezygnować z tej opcji
if($mod > 2) $mod = 2;
//żeby nie przesadzać wprowadzono także ograniczenia dolne, obrażenia nigdy nie będą mniejsze niż niż wylosowana wartość / 2
if($mod < 0.5) $mod = 0.5;
//obliczamy
$obrazenia = floor($obrazenia * $mod);
//jeżeli nie zadano minimum 1 obrażeń, to ustaw wartość = 1, możesz z tego zrezygnować jeżeli chcesz
if($obrazenia < 1) $obrazenia = 1;
//jeżeli zadało się więcej obrażeń iż przeciwnik ma życia to popraw dane
if($obrazenia > $przeciwnik['zycie']) $obrazenia = $przeciwnik['zycie'];
$przeciwnik['zycie'] -= $obrazenia;
echo "zadałeś ".$obrazenia." obrażeń przeciwnikowi<br/>";
if($przeciwnik['zycie'] < 1){
//potwór nie żyje
echo "<br/>ostateczny cios zabija potwora<br/>";
} else {
//jeżeli potwór wciąż żyje
//losujemy ile obrażeń zada graczowi
$obrazenia = rand($przeciwnik['obrazenia_min'],$przeciwnik['obrazenia_max']);
//modyfikujemy ilość obrażeń
$mod = $przeciwnik['atak'] / $uzytkownik['obrona'];
//obrażenia nie mogą być zwiększone więcej niż dwukrotnie, żeby nie przeginać ;] możesz zrezygnować z tej opcji
if($mod > 2) $mod = 2;
//żeby nie przesadzać wprowadzono także ograniczenia dolne, obrażenia nigdy nie będą mniejsze niż niż wylosowana wartość / 2
if($mod < 0.5) $mod = 0.5;
//obliczamy
$obrazenia = floor($obrazenia * $mod);
//jeżeli nie zadano minimum 1 obrażeń, to ustaw wartość = 1, możesz z tego zrezygnować jeżeli chcesz
if($obrazenia < 1) $obrazenia = 1;
//jeżeli zadało się więcej obrażeń iż przeciwnik ma życia to popraw dane
if($obrazenia > $uzytkownik['zycie']) $obrazenia = $uzytkownik['zycie'];
$uzytkownik['zycie'] -= $obrazenia;
echo $przeciwnik['nazwa']." zadał Ci ".$obrazenia." obrażeń<br/>";
if($uzytkownik['zycie'] < 1){
//potwór zabił gracza
echo "<br/>morderczy cios posyła Cię na ziemię, trochę czasu minie nim się pozbierasz<br/>"; }
}
}
if($uzytkownik['zycie'] > 0){
//gracz wygrał walkę
echo "wygrałeś walkę i zdobywasz ".$przeciwnik['punkty']." punktów oraz ".$przeciwnik['zloto']." złota";
mysql_query("update gracze set ostatnia_walka_pvc = ".time().", punkty = punkty + ".$przeciwnik['punkty'].", zloto = zloto + ".$przeciwnik['zloto'].", zycie = ".$uzytkownik['zycie']." where gracz = ".$uzytkownik['gracz']);
} else {
//przegrałeś
mysql_query("update gracze set ostatnia_walka_pvc = ".time().", zycie = ".$uzytkownik['zycie']." where gracz = ".$uzytkownik['gracz']); mysql_query("INSERT INTO raporty SET raport = '1', tytul = ".$uzytkownik['zycie']." where gracz = ".$uzytkownik['gracz']); }
$uzytkownik['ostatnia_walka_pvc'] = time(); }
}
}
$pozostalo = $uzytkownik['ostatnia_walka_pvc'] + 600
- time(); if($uzytkownik['zycie'] < 5){
echo "masz za mało życia by walczyć"; } elseif($pozostalo > 0){
//gracz niedawno prowadził walkę
//dodajemy funkcję liczącą czas
?>
<script type='text/javascript'>
function liczCzas(ile) {
godzin = Math.floor(ile / 3600);
minut = Math.floor((ile - godzin * 3600) / 60);
sekund = ile - minut * 60 - godzin * 3600;
if (godzin < 10){ godzin = "0"+ godzin; }
if (minut < 10){ minut = "0" + minut; }
if (sekund < 10){ sekund = "0" + sekund; }
if (ile > 0) {
ile--;
document.getElementById("zegar").innerHTML = godzin + ':' + minut + ':' + sekund;
setTimeout("liczCzas("+ile+")", 1000);
} else {
document.getElementById("zegar").innerHTML = "[zakończono]";
}
}
</script>
Twoja postać niedawno prowadziła walkę: <span id='zegar'></span>
<?php
echo "<script type='text/javascript'>liczCzas(".$pozostalo.")</script>"; } else {
//pobieramy listę potworów
echo " brak potworów w grze"; } else {
<table>
<tr>
<th align='center'>Potwór</th>
<th>złoto</th>
<th>exp</th>
<th></th>
</tr>
";
<tr>
<td>".$potwor['nazwa']."</td>
<td>".$potwor['zloto']."</td>
<td>".$potwor['punkty']."</td>
<td><a href='arena.php?walka=".$potwor['potwor']."'>walcz</a></td>
</tr>";
}
}
}
?>