Pokaż wyniki od 1 do 2 z 2

Wątek: Ekwipunek

  1. #1
    Zarejestrowany
    Dołączył
    Jan 2010
    Posty
    78

    Domyślnie Ekwipunek

    wciąż trwaja moje prace nad tym silnikiem i dziele sie tym co mam. Dzisiaj ekwipunek
    A więc tworzymy tabele `ekwipunek` taka jak w moim module sklepu
    Kod php:
    CREATE TABLE `<ezrpg>ekwipunek` ( 
    `
    idINT NOT NULL AUTO_INCREMENT PRIMARY KEY 
    `
    ownerINT11 NOT NULL 
    `
    atakSMALLINT NOT NULL 
    `
    stanINT(1NOT NULL
    `
    miejsceINTNOT NULL 
    `
    nazwaVARCHAR(50NOT NULL 
    ENGINE InnoDB
    i znowu objaśniam że kolumna `miejsce` odnosi się do miejsca na ciele np. 1 - buty, 2 - spodnie itd.
    a teraz index
    Kod php:
    defined('IN_EZRPG') or exit;


    class 
    Module_Equip extends Base_Module
    {

        public function 
    start()
        {
            
    requireLogin();
            
            if(isset(
    $_GET['zaloz']))
            {
            
    $this->zaloz();
            }
            if(isset(
    $_GET['zdejmij']))
            {
            
    $this->zdejmij();
            }
            
            
    $wiersz_equip $this->db->execute('SELECT * FROM `ekwipunek` where `stan`=0 AND `miejsce`>1 AND `owner`=?',array($this->player->id));
            
    $equip $this->db->fetchAll($wiersz_equip);
            
            
    $wiersz_zalozone $this->db->execute('SELECT * FROM `ekwipunek` WHERE `stan`=1 AND `owner`=?',array($this->player->id));
            
    $zalozone $this->db->fetchAll($wiersz_zalozone);
            
            
    $this->tpl->assign('zalozone',$zalozone);
            
    $this->tpl->assign('equip',$equip);
            
            
    $this->tpl->display('equip.tpl');
           
        }
        
        private function 
    zaloz()
        {
        
        
    $ite $this->db->fetchRow('SELECT * FROM `<ezrpg>ekwipunek` WHERE `stan`=0 AND `id`=? AND `owner`=?',array($_GET['zaloz'],$this->player->id));
        
        if (
    $ite == true)
        {
            
    $item $this->db->fetchRow('SELECT * FROM `<ezrpg>ekwipunek` WHERE `stan`=1 AND `miejsce`=? AND `owner`=?' ,array($ite->miejsce,$this->player->id));            
            
            
            if(
    $ite->miejsce===$item->miejsce)
            {
            
    $this->db->execute('UPDATE `<ezrpg>ekwipunek` SET `stan`=1 WHERE `id`=?',array($_GET['zaloz']));
            
    $this->db->execute('UPDATE `<ezrpg>ekwipunek`SET `stan`=0 WHERE `id`=?',array($item->id));
            }else
            {
            
    $this->db->execute('UPDATE `<ezrpg>ekwipunek` SET `stan`=1 WHERE `id`=?',array($_GET['zaloz']));
            }
            
    $msg 'Przedmiot zalozony';
            
        }else 
    $msg 'Nie masz takiego przedmiotu';

        
    header('Location: index.php?mod=Equip&msg=' urlencode($msg));
        }
        
        private function 
    zdejmij()
        {
        
    $item $this->db->fetchRow('SELECT * FROM `<ezrpg>ekwipunek` WHERE `stan`=1 AND `id`=? AND `owner`=?',array($_GET['zdejmij'],$this->player->id));
        
        if (
    $item == true)
            {
            
    $this->db->execute('UPDATE `<ezrpg>ekwipunek` SET `stan`=0 WHERE `id`=?',array($_GET['zdejmij']));
            
    $msg 'przedmiot zdjety';
            }else    
    $msg 'Nie masz takiego przedmiotu';
        
        
    header('Location: index.php?mod=Equip&msg=' urlencode($msg));
        }
     

    oraz smarty UWAGA!!!!
    właśnie w smarty wstawione są te miejsca ja przyjąłem że 1 - broń, 2 - koszula, 3 - spodnie, 4 - buty
    Kod php:
    {include file="header.tpl" TITLE="Ekwipunek"}


        <
    p>
        <
    strong>Założone</strong>
        <
    ul>
            {foreach 
    from=$zalozone item=v}
                {if 
    $v->miejsce == 1}
                    <
    b>Noszona broń</b>: {$v->nazwa} (atak: {$v->atak}) - <a href="index.php?mod=Equip&zdejmij={$v->id}">Zdejmij</a><br /><br />
                {elseif 
    $v->miejsce == 2}
                    <
    b>Noszona koszula</b>: {$v->nazwa} (obrona: {$v->atak}) - <a href="index.php?mod=Equip&zdejmij={$v->id}">Zdejmij</a><br /><br />
                {elseif 
    $v->miejsce == 3}
                    <
    b>Noszone spodnie</b>: {$v->nazwa} (obrona: {$v->atak}) - <a href="index.php?mod=Equip&zdejmij={$v->id}">Zdejmij</a><br /><br />
                {elseif 
    $v->miejsce == 4}
                    <
    b>Noszone buty</b>: {$v->nazwa} (obrona: {$v->atak}) - <a href="index.php?mod=Equip&zdejmij={$v->id}">Zdejmij</a><br /><br />
                {else}
                    <
    b>Brak</b><br /><br />
                {/if}
            {/foreach}
            
        </
    ul>
        <
    strong>Ekwipunek</strong>
        {if 
    $equip!=false}
        <
    table width="400">
                <
    tr>
                   <
    td width="80%"><p>Nazwa</p></td>
                   <
    td width="20%"><p>Akcja:</p></td>
                </
    tr>
                
                {foreach 
    from=$equip item=v}
                    <
    tr><td>{$v->nazwa}</td><td><a href="index.php?mod=Equip&zaloz={$v->id}">Załóż</a></td></tr>
                {/foreach}
                {else}
                <
    p>Pusty ekwipunek</p>
                {/if}
        </
    table>
        </
    p>


    {include 
    file="footer.tpl"
    P.S mod zawiera funkcję fetchAll() dostępną w wersji 1.0.1 dziękuję za uwagę w przypadku błędów pisać

  2. #2
    Zasłużony Awatar Alson
    Dołączył
    Jan 2009
    Posty
    468

    Domyślnie

    Nom, ładnie. Kodu nie sprawdzałem ale fajnie że ktoś się zainteresował tym silnikiem. Nic mi nie pozostaje innego jak zachęcić do roboty :}

    Pozdrawiam Alson

Informacje o wątku

Użytkownicy przeglądający ten wątek

Aktualnie 1 użytkownik(ów) przegląda ten wątek. (0 zarejestrowany(ch) oraz 1 gości)

Podobne wątki

  1. Vallheru v. 1.09 ekwipunek
    Przez adif1 w dziale Support Vallheru
    Odpowiedzi: 1
    Ostatni post / autor: 05-08-2010, 20:36
  2. Ekwipunek - WT.
    Przez Awek w dziale Support Vallheru
    Odpowiedzi: 8
    Ostatni post / autor: 20-04-2010, 14:28
  3. Ekwipunek
    Przez Ligolis w dziale PHP / MySql
    Odpowiedzi: 20
    Ostatni post / autor: 27-01-2010, 17:39
  4. Ekwipunek - błąd
    Przez konradsm w dziale Support Vallheru
    Odpowiedzi: 0
    Ostatni post / autor: 19-12-2009, 12:34
  5. ekwipunek
    Przez konri100 w dziale Problemy przy tworzeniu własnej gry
    Odpowiedzi: 28
    Ostatni post / autor: 10-12-2009, 15:35

Zakładki

Uprawnienia umieszczania postów

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •