Beispiel #1
0
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;
}
Beispiel #2
0
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