function gra_start($dane) { //na początku dodaj surowce fx('dodaj_surowce'); dodaj_surowce(); $czas = time(); //pobierz listę wybudowanych obiektów $kolejka_budowy = mysql_query("select * from planetx_budynki_kolejka where planeta_id = " . $dane['aktywna_planeta'] . " and koniec < " . $czas); $ile = mysql_num_rows($kolejka_budowy); //dla każdego budynku while ($obiekt = mysql_fetch_array($kolejka_budowy)) { //SEKCJA 1: ten element jest ważny dla każdego budynku //pobierz aktualny poziom $lvl = mysql_fetch_array(mysql_query("select poziom from planetx_budynki_planety where planeta_id = " . $dane['aktywna_planeta'] . " and budynek = " . $obiekt['budynek'])); if (!empty($lvl['poziom'])) { //jeżeli budynek poziom > 0 to zwiększ poziom danego budynku mysql_query("update planetx_budynki_planety set poziom = poziom + 1 where planeta_id = " . $dane['aktywna_planeta'] . " and budynek = " . $obiekt['budynek']); //zaznacz, że zwiększono poziom $lvl['poziom']++; } else { //jeżeli poziom == 0 dodaj budynek mysql_query("insert into planetx_budynki_planety (planeta_id, budynek) value (" . $dane['aktywna_planeta'] . "," . $obiekt['budynek'] . ")"); //zaznacz, że wybudowano 1 poziom $lvl['poziom'] = 1; } //w zależności od wybudowanego poziomu dodaj punkty dla gracza mysql_query("update planetx_gracze set punkty = punkty + " . $lvl['poziom'] . " where gracz = " . $dane['gracz']); //SEKCJA 1 koniec //SEKCJA 2: tu ustawiamy dodatkowe bonusy za wybudowanie budynku $metal = 0; $krysztaly = 0; $paliwo = 0; $populacja_max = 0; $surowce_max = 0; //w zależności od budynku switch ($obiekt['budynek']) { case 1: //kopalnia metalu //w zależności od wybudowanego poziomu switch ($lvl['poziom']) { case 1: //pierwszy poziom daje sporego kopa $metal += 50; break; case 2: $metal += 10; break; case 3: $metal += 15; break; case 4: $metal += 20; break; case 5: $metal += 30; break; case 6: $metal += 40; break; case 7: $metal += 50; break; case 8: $metal += 60; break; case 9: $metal += 70; break; case 10: $metal += 100; break; } break; case 2: //kopalnia kryształów //w zależności od wybudowanego poziomu switch ($lvl['poziom']) { case 1: //pierwszy poziom daje sporego kopa $krysztaly += 50; break; case 2: $krysztaly += 10; break; case 3: $krysztaly += 15; break; case 4: $krysztaly += 20; break; case 5: $krysztaly += 30; break; case 6: $krysztaly += 40; break; case 7: $krysztaly += 50; break; case 8: $krysztaly += 60; break; case 9: $krysztaly += 70; break; case 10: $krysztaly += 100; break; } break; case 3: //rafineria //w zależności od wybudowanego poziomu switch ($lvl['poziom']) { case 1: //pierwszy poziom daje sporego kopa $paliwo += 50; break; case 2: $paliwo += 10; break; case 3: $paliwo += 15; break; case 4: $paliwo += 20; break; case 5: $paliwo += 30; break; case 6: $paliwo += 40; break; case 7: $paliwo += 50; break; case 8: $paliwo += 60; break; case 9: $paliwo += 70; break; case 10: $paliwo += 100; break; } break; case 4: //gildia górników //w zależności od wybudowanego poziomu switch ($lvl['poziom']) { case 1: //pierwszy poziom daje sporego kopa $metal += 20; break; case 2: $metal += 5; break; case 3: $metal += 10; break; case 4: $metal += 15; break; case 5: $metal += 20; break; case 6: $metal += 25; break; case 7: $metal += 30; break; case 8: $metal += 35; break; case 9: $metal += 40; break; case 10: $metal += 50; break; } break; case 5: //centrum jonizacji //w zależności od wybudowanego poziomu switch ($lvl['poziom']) { case 1: //pierwszy poziom daje sporego kopa $krysztaly += 20; break; case 2: $krysztaly += 5; break; case 3: $krysztaly += 10; break; case 4: $krysztaly += 15; break; case 5: $krysztaly += 20; break; case 6: $krysztaly += 25; break; case 7: $krysztaly += 30; break; case 8: $krysztaly += 35; break; case 9: $krysztaly += 40; break; case 10: $krysztaly += 50; break; } break; case 6: //silos //w zależności od wybudowanego poziomu switch ($lvl['poziom']) { case 1: //pierwszy poziom daje sporego kopa $paliwo += 20; break; case 2: $paliwo += 5; break; case 3: $paliwo += 10; break; case 4: $paliwo += 15; break; case 5: $paliwo += 20; break; case 6: $paliwo += 25; break; case 7: $paliwo += 30; break; case 8: $paliwo += 35; break; case 9: $paliwo += 40; break; case 10: $paliwo += 50; break; } break; case 9: //magazyn //w zależności od wybudowanego poziomu switch ($lvl['poziom']) { case 1: //pierwszy poziom daje sporego kopa $surowce_max += 5000; break; case 2: $surowce_max += 1000; break; case 3: $surowce_max += 1200; break; case 4: $surowce_max += 1500; break; case 5: $surowce_max += 2000; break; case 6: $surowce_max += 2600; break; case 7: $surowce_max += 3300; break; case 8: $surowce_max += 4100; break; case 9: $surowce_max += 5000; break; case 10: $surowce_max += 10000; break; } break; case 10: //osiedla mieszkaniowe //w zależności od wybudowanego poziomu switch ($lvl['poziom']) { case 1: //pierwszy poziom daje sporego kopa $populacja_max += 500; break; case 2: $populacja_max += 100; break; case 3: $populacja_max += 120; break; case 4: $populacja_max += 150; break; case 5: $populacja_max += 200; break; case 6: $populacja_max += 260; break; case 7: $populacja_max += 330; break; case 8: $populacja_max += 410; break; case 9: $populacja_max += 500; break; case 10: $populacja_max += 1000; break; } break; } mysql_query("update planetx_planety set metal_przyrost = metal_przyrost + " . $metal . ", krysztaly_przyrost = krysztaly_przyrost + " . $krysztaly . ", paliwo_przyrost = paliwo_przyrost + " . $paliwo . ", surowce_max = surowce_max + " . $surowce_max . ", populacja_max = populacja_max + " . $populacja_max . " where planeta = " . $dane['aktywna_planeta']); //SEKCJA 2 koniec } //na końcu trzeba jeszcze wywalić zakończone zdarzenia w kolejce mysql_query("delete from planetx_budynki_kolejka where planeta_id = " . $dane['aktywna_planeta'] . " and koniec < " . $czas); //ustaw aktywność planety mysql_query("update planetx_planety set ostatnio_aktywna = " . $czas . " where planeta = " . $dane['aktywna_planeta']); //pobierz listę wytrenowanych jednostek $kolejka_treningu = mysql_query("select * from planetx_jednostki_kolejka where planeta_id = " . $dane['aktywna_planeta'] . " and koniec < " . $czas); $ile += mysql_num_rows($kolejka_treningu); //dla każdego budynku while ($obiekt = mysql_fetch_array($kolejka_treningu)) { //SEKCJA : ten element jest ważny dla każdej jednostki //sprawdz czy istnieje $jest = mysql_fetch_array(mysql_query("select ilosc from planetx_jednostki_planety where planeta_id = " . $dane['aktywna_planeta'] . " and jednostka = " . $obiekt['jednostka'])); if (isset($jest['ilosc'])) { //jeżeli jest już taka jednostka mysql_query("update planetx_jednostki_planety set ilosc = ilosc + " . $obiekt['ilosc'] . " where planeta_id = " . $dane['aktywna_planeta'] . " and jednostka = " . $obiekt['jednostka']); } else { //jeżeli poziom == 0 dodaj budynek mysql_query("insert into planetx_jednostki_planety (planeta_id, jednostka, ilosc) value (" . $dane['aktywna_planeta'] . "," . $obiekt['jednostka'] . "," . $obiekt['ilosc'] . ")"); } //SEKCJA koniec } //na końcu trzeba jeszcze wywalić zakończone zdarzenia w kolejce mysql_query("delete from planetx_jednostki_kolejka where planeta_id = " . $dane['aktywna_planeta'] . " and koniec < " . $czas); fx('rozwiaz_armie'); $powracajaca_armia = mysql_query("select * from planetx_ataki where status = 1 and koniec < " . $czas . " and planeta_id = " . $dane['aktywna_planeta']); while ($atak = mysql_fetch_array($powracajaca_armia)) { rozwiaz_armie($atak['atak']); } fx('bitwa'); $bitwy = mysql_query("select * from planetx_ataki where status = 0 and koniec < " . $czas . " and planeta_id = " . $dane['aktywna_planeta']); while ($atak = mysql_fetch_array($bitwy)) { bitwa($atak); } return $ile; }
ob_start(); require_once 'ustawienia/ustawienia.php'; //start sesji session_start(); //jeżeli istnieją dane w sesji to pobierz dane zalogowanego gracza if (!empty($_SESSION['gracz']) && is_numeric($_SESSION['gracz'])) { $User = getUser($_SESSION['gracz']); } //jeżeli nie ma danych gracza to ustaw rola = -1 jako niezalogowany if (empty($User)) { $User['rola'] = -1; } //odpal funkcję dodawania surowców require_once 'funkcje/dodaj_surowce.php'; dodaj_surowce($res_time, $res_period); //wybierz domyślny nagłówek strony $top_strony = 'strony/ogolne/top_strony.php'; //wybierz domyślny dół strony $dol_strony = 'strony/ogolne/dol_strony.php'; //lista akcji ogólnych, jeżeli tworzysz nowe to musisz je tu dopisać $akcje_ogolne = array("start", "zaloguj", "rejestracja", "regulamin", "kontakt"); //lista akcji gracza, jeżeli tworzysz nowe to musisz je tu dopisać $akcje_gracz = array("wyloguj", "konto", "konto2", "czat", "ranking", "poczta", "profil", "miasto", "nauka", "armia", "budynek", "ataki", "mapa", "koszary", "stajnie", "krag", "pomnik", "vip", "klan", "klan_forum", "karawany", "szpiedzy", "mur"); //lista akcji admina, jeżeli tworzysz nowe to musisz je tu dopisać $akcje_admin = array("wyloguj", "kody_vip", "admin", "admin2", "admin_reset", "admin_kolejka", "admin_ban", "admin_poczta"); //jeżeli nie wybrano akcji to ustaw domyślną start if (empty($_GET['akcja'])) { $_GET['akcja'] = 'start'; } //sprawdź czy wybrana akcja jest akcją admina i czy gracz ma do niej dostęp, musi mieć ustawione rola = 1