root/dev/common/class.item.php @ 106

Revision 106, 3.9 KB (checked in by exi, 16 years ago)

Added the missing data to the items table.
Changed the parser so it doesnt break on involved empty npcs.

Line 
1<?php
2require_once("db.php");
3
4class Item
5{
6    function Item($id = 0)
7    {
8        $this->id_ = $id;
9        $this->qry_ = new DBQuery();
10    }
11
12    function getID()
13    {
14        return $this->id_;
15    }
16
17    function getName()
18    {
19        $this->execQuery();
20//        if (!$this->row_['itm_name'])
21//        {
22//            return $this->id_;
23//        }
24        return $this->row_['itm_name'];
25    }
26
27    function getIcon($size = 32)
28    {
29        $this->execQuery();
30
31        // slot 6 is dronebay
32        if ($this->row_['itt_slot'] == 6)
33        {
34            $html .= "<td class=item-icon width=\"30\" height=\"34\" background=\"".IMG_URL."/drones/".$size."_".$size."/".$this->row_['itm_externalid'].".png\" valign=top>";
35        }
36        else
37        {
38            // fix for new db structure, just make sure old clients dont break
39            if (!strstr($this->row_['itm_icon'], 'icon'))
40            {
41                $this->row_['itm_icon'] = 'icon'.$this->row_['itm_icon'];
42            }
43            $html .= "<td class=item-icon width=\"30\" height=\"34\" background=\"".IMG_URL."/items/".$size."_".$size."/".$this->row_['itm_icon'].".png\" valign=top>";
44        }
45        // return IMG_URL."/items/".$size."_".$size."/".$this->row_['itm_icon'].".png";
46
47        if (substr($this->getName(), strlen($this->getName()) - 2, 2) == "II")
48            $html .= "<img src=\"".IMG_URL."/items/32_32/t2.gif\" border=\"0\">";
49        else
50            $html .= "<img src=\"".IMG_URL."/items/32_32/blank.gif\" border=\"0\">";
51
52        $hmtl .= "</td>";
53
54        return $html;
55    }
56
57    function getSlot()
58    {
59        $this->execQuery();
60        return $this->row_['itt_slot'];
61    }
62
63    function execQuery()
64    {
65        if (!$this->qry_->executed_)
66        {
67            $this->sql_ = "select *
68                           from kb3_items, kb3_item_types
69                               where itm_id = ".$this->id_."
70                               and itm_type = itt_id";
71            $this->qry_->execute($this->sql_) or die($this->qry_->getErrorMsg());
72            $this->row_ = $this->qry_->getRow();
73        }
74    }
75
76    function lookup($name)
77    {
78        $qry = new DBQuery();
79        $qry->execute("select * from kb3_items itm
80                        where itm_name = '".slashfix($name)."'");
81        $row = $qry->getRow();
82        if (!isset($row['itm_id']))
83        {
84            global $config;
85            if ($config->getConfig('adapt_items'))
86            {
87                // if the item is a tec2 we likely have the tec1
88                if (substr($name, -2, 2) == 'II')
89                {
90                    $qry->execute("select * from kb3_items itm
91                                    where itm_name = '".slashfix(substr($name,0,-1))."'");
92                    $row = $qry->getRow();
93                    $qry->execute("INSERT INTO kb3_items (itm_name,itm_volume,itm_type,itm_externalid,itm_techlevel, itm_icon)
94                                    VALUES ('".slashfix($name)."','".$row['itm_volume']."','".$row['itm_type']."','".$row['itm_externalid']."','2','".$row['itm_icon']."')");
95                    $this->id_ = $qry->getInsertID();
96                }
97                else
98                {
99                    // no idea what this is, insert as 'Temp'
100                    $qry->execute("INSERT INTO kb3_items (itm_name,itm_type)
101                                    VALUES ('".slashfix($name)."','721')");
102                    $this->id_ = $qry->getInsertID();
103                }
104            }
105        }
106        $this->id_ = $row['itm_id'];
107    }
108
109    function get_item_id($name)
110    {
111        $qry = new DBQuery();
112        $qry->execute("select *
113                        from kb3_items
114                        where itm_name = '".slashfix($name)."'");
115
116        $row = $qry->getRow();
117        if ($row['itm_id']) return $row['itm_id'];
118    }
119}
120?>
Note: See TracBrowser for help on using the browser.