Mam Taki problem posiadam skrypt php/js który wykonuje mi walkę i by użytkownik mógł dokonać następnej walki musi odczekać 5 minut. Czas jest zapisany w bazie danych MySql:
<?php require_once('config.php'); require_once('test_login.php'); require_once('menu.php'); require_once('dane_konta.php'); $_GET['walka'] = (int)$_GET['walka']; if($uzytkownik['zycie'] < 5){ } elseif($pozostalo > 0){ } else { $przeciwnik = mysql_fetch_array(mysql_query("select * from ziemia1 where potwor = ".$_GET['walka'])); //jeżeli nie pobrano przeciwnika } else { echo "<table border=0 width='100%'><tr><td> <table border='1' width='100%'><tr> <td width='50%'><center>"; echo "</center></td> <td align='right' width='50%'> <img src=".$przeciwnik['obrazek']." width='250' height='200'/> </td></tr> <tr> <td> <table width='100%'> <tr><td align='left' id='wkonto'>Życie</td><td align='right' id='wkonto'>".$uzytkownik['zycie']." </td></tr> <tr><td align='left' id='wkonto'>Obrarzenia</td><td align='right' id='wkonto'>".$uzytkownik['obrazenia_min']." - ".$uzytkownik['obrazenia_max']." </td></tr> <tr><td align='left' id='wkonto'>Atak</td><td align='right' id='wkonto'>".$uzytkownik['atak']." </td></tr> <tr><td align='left' id='wkonto'>Obrona</td><td align='right' id='wkonto'>".$uzytkownik['obrona']." </td></tr> <tr><td align='left' id='wkonto'>Szybkość</td><td align='right' id='wkonto'>".$uzytkownik['szybkosc']." </td></tr> <tr><td align='left' id='wkonto'>Furia</td><td align='right' id='wkonto'>".$uzytkownik['krytyk']." </td></tr> </table> </td> <td> <table width='100%'> <tr><td align='left' id='wkonto'> ".$przeciwnik['zycie']."</td><td align='right' id='wkonto'>Życie</td></tr> <tr><td align='left' id='wkonto'> ".$przeciwnik['obrazenia_min']." - ".$przeciwnik['obrazenia_max']."</td><td align='right' id='wkonto'>Obrarzenia</td></tr> <tr><td align='left' id='wkonto'> ".$przeciwnik['atak']."</td><td align='right' id='wkonto'>Atak</td></tr> <tr><td align='left' id='wkonto'> ".$przeciwnik['obrona']."</td><td align='right' id='wkonto'>Obrona</td></tr> <tr><td align='left' id='wkonto'> ".$przeciwnik['szybkosc']."</td><td align='right' id='wkonto'>Szybkość</td></tr> <tr><td align='left' id='wkonto'> ".$przeciwnik['krytyk']."</td><td align='right' id='wkonto'>Furia</td></tr> </table> </td> </tr> </table> </td></tr><tr><td>"; $runda=0; //pętla while(($uzytkownik['zycie'] > 0) && ($przeciwnik['zycie'] > 0)){ $runda++; If($runda>=2) { echo " <tr><td colspan='2'height='20'></td></tr>"; } echo "<tr><td bgcolor=#ccccaa colspan='2' height='40' align='center' middle='middle'><font size='4' ><b>RUNDA ".$runda."<br></b></font></td></tr>"; $obrazenia=$uzytkownik['zycie']-$przeciwnik['obrona']; $przeciwnik['zycie'] -= $obrazenia; echo "<center>Zadałeś <font color='red'><b>".$obrazenia."</b></font> obrażeń przeciwnikowi<br/></center></td>"; } if($przeciwnik['zycie'] < 1) { echo "<td id='walk1'><font color='red'><center>Przeciwnik Pokonany</center></font></td><tr> <td colspan='2' ><br><font color='#fff'><center>ostateczny cios zabija potwora</center>"; } else { $obrazenia=$przeciwnik['atak']-$uzytkownik['obrona']; $uzytkownik['zycie'] -= $obrazenia; echo "<center><b>".$przeciwnik['nazwa']."</b> zadał Ci <font color='red'><b>".$obrazenia."</b></font> obrażeń<br/></center></td></tr>"; } if($uzytkownik['zycie'] < 1){ echo "<tr><td colspan='2'><br/><center>morderczy cios posyła Cię na ziemię, trochę czasu minie nim się pozbierasz<br/>"; } } //koniec pentli } if($uzytkownik['zycie'] > 0){ echo "<br><center>wygrałeś walkę i zdobywasz ".$przeciwnik['punkty']." punktów oraz ".$zloto." złota <br><br></center>"; mysql_query("UPDATE `gracze` SET `zabitepotwory` = zabitepotwory + 1 WHERE gracz='".$uzytkownik['gracz']."'"); mysql_query("UPDATE `gracze` SET `owygrane` = owygrane + 1 WHERE gracz='".$uzytkownik['gracz']."'"); mysql_query("update gracze set ostatnia_walka_pvc = ".time().", punkty = punkty + ".$przeciwnik['punkty'].", zloto = zloto + ".$zloto.", zycie = ".$uzytkownik['zycie']." where gracz = ".$uzytkownik['gracz']); } else { //przegrałełe mysql_query("UPDATE `gracze` SET `oprzegrane` = oprzegrane + 1 WHERE gracz='".$uzytkownik['gracz']."'"); mysql_query("UPDATE `gracze` SET `przegrane` = przegrane + 1 WHERE gracz='".$uzytkownik['gracz']."'"); mysql_query("update gracze set ostatnia_walka_pvc = ".time().", zycie = 0 where gracz = ".$uzytkownik['gracz']); } } } } if($uzytkownik['zycie'] < 5){ } elseif($pozostalo > 0){ //gracz niedawno prowadził walkę //dodajemy funkcja licząca 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 { var str = "Kontynułuj"; document.getElementById("zegar").innerHTML = (str.link("mapa.php")); } } </script> <center> Twoja postać niedawno prowadziła walkę: <span id='zegar'></span></center><a name='dol'></a></td></tr> <?php } else { } else { echo "<center> <table border='0' id='tekst'> <tr> <th width='100'>Wygląd</th> <th width='80'>Potwór</th> <th width='50'>życie</th> <th width='80'>Obrażenia</th> <th width='50'>Atak</th> <th width='50'>Obrona</th> <th width='70'>szybkosc</th> <th width='50'>ktytyk</th> <th width='50'>Exp</th> <th width='40'>Walcz</th> </tr> <tr> <td colspan='10'> <hr> </td> </tr> "; echo " <tr> <td><img src=".$potwor['obrazek']." /></td> <td>".$potwor['nazwa']."</td> <td>".$potwor['zycie']."</td> <td>".$potwor['obrazenia_min']." - ".$potwor['obrazenia_max']."</td> <td>".$potwor['atak']."</td> <td>".$potwor['obrona']."</td> <td>".$potwor['szybkosc']."</td> <td>".$potwor['krytyk']."</td> <td>".$potwor['punkty']."</td> <td><a href='ziemia1.php?walka=".$potwor['potwor']."'>Walcz</a></td> </tr>"; } } } ?>
Skrypt walki został praktycznie skasowany gdyż post był za długi więc nie przejmujcie się tym że "atak - obrona = obrażenia" bo to nie prawda;
Moje pytanie brzmi jak przerobić to w sposób taki by po kliknięciu Walcz postać musiała odczekać 5 minut i wtedy walka by się wykonała, lecz musi mieć zabezpieczenie, że jak ktoś zmieni stronę lub się wyloguje to po zalogowaniu i wejściu na te stronę walka się wykonała od razu tak by miał wynik... Gdy prubuje to przerobić niby mi wszystko działa ale po kliknięciu na inną stronę wszystko się rozjeżdża;/ Proszę o pomoc