root/dev/common/includes/class.ship.php @ 212

Revision 212, 4.7 KB (checked in by ralle030583, 16 years ago)

- replaced $config->getConfig with config::getconfig so we havent a mix in all files<br>
- added valing='top' to award boxes to make the awards nice in board with not many pilots<br>
- removed not needed includes<br>
- added event 'killmail_delete' which is called before real delete of a killmail<br>
- admin can see classified system in the killmaildetails

Line 
1<?php
2
3/**
4 *  Changes
5 *  11/23/06 - function getActualValue()
6 *             Returns actual value of the ship unrounded, rounding is retarded but
7 *             I dont want to fuck anything else up - Coni
8 *
9*/
10
11require_once("db.php");
12
13class Ship
14{
15    function Ship($id = 0)
16    {
17        $this->id_ = $id;
18    }
19
20    function getID()
21    {
22        return $this->id_;
23    }
24
25    function getName()
26    {
27        if ($this->shipname_ == "") $this->execQuery();
28        return $this->shipname_;
29    }
30
31    function getClass()
32    {
33        if (!$this->shipclass_) $this->execQuery();
34        return $this->shipclass_;
35    }
36
37    function getTechLevel()
38    {
39        $this->execQuery();
40        return $this->row_['shp_techlevel'];
41    }
42
43    function getImage($size)
44    {
45        if (!$this->externalid_)
46        {
47            $this->execQuery();
48        }
49        return IMG_URL."/ships/".$size."_".$size."/".$this->externalid_.".png";
50    }
51
52    function setName($shipname)
53    {
54        $this->shipname_ = $shipname;
55    }
56
57    function setClass($shipclass)
58    {
59        $this->shipclass_ = $shipclass;
60    }
61
62    function getPrice()
63    {
64        return $this->value_;
65    }
66
67    function execQuery()
68    {
69        if (!$this->qry_)
70        {
71            $this->qry_ = new DBQuery();
72
73            $this->sql_ = "select * from kb3_ships shp
74                           inner join kb3_ship_classes scl on shp.shp_class = scl.scl_id";
75            if (config::get('ship_values'))
76            {
77                $this->sql_ .= ' left join kb3_ships_values ksv on (shp.shp_id = ksv.shp_id) ';
78            }
79            $this->sql_ .= " where shp.shp_id = ".$this->id_;
80
81            $this->qry_->execute($this->sql_);
82            $row = $this->qry_->getRow();
83            $this->shipname_ = $row['shp_name'];
84            $this->shipclass_ = new ShipClass($row['scl_id']);
85            $this->shiptechlevel_ = $row['shp_techlevel'];
86            $this->externalid_ = $row['shp_externalid'];
87
88            if (config::get('ship_values'))
89            {
90                if (!$this->value_ = $row['shp_value'])
91                {
92                    $this->value_ = $row['shp_baseprice'];
93                }
94            }
95            else
96            {
97                $this->value_ = $row['shp_baseprice'];
98            }
99        }
100    }
101
102    function lookup($name)
103    {
104        $qry = new DBQuery();
105        $qry->execute("select *
106                        from kb3_ships
107                       where shp_name = '".slashfix($name)."'");
108
109        $row = $qry->getRow();
110        if ($row['shp_id']) $this->id_ = $row['shp_id'];
111    }
112}
113
114class ShipClass
115{
116    function ShipClass($id = 0)
117    {
118        if (!$id) $id = 0;
119        $this->id_ = $id;
120
121        $this->qry_ = new DBQuery();
122    }
123
124    function getID()
125    {
126        return $this->id_;
127    }
128
129    function getName()
130    {
131        if ($this->name_ == "") $this->execQuery();
132        return $this->name_;
133    }
134
135    // Why would you round here this is fucking retarded!
136    function getValue()
137    {
138        if (!$this->value_) $this->execQuery();
139        return round($this->value_ / 1000000, 2);
140    }
141
142    function getActualValue()
143    {
144        if (!$this->value_) $this->execQuery();
145        return $this->value_;
146    }
147
148    function getPoints()
149    {
150        if (!$this->points_) $this->execQuery();
151        return $this->points_;
152    }
153
154    function setName($name)
155    {
156        $this->name_ = $name;
157    }
158
159    function setValue($value)
160    {
161        $this->value_ = $value;
162    }
163
164    function getValueIndicator()
165    {
166        $value = $this->getValue();
167
168        if ($value >= 0 && $value <= 1)
169            $color = "gray";
170        elseif ($value > 1 && $value <= 15)
171            $color = "blue";
172        elseif ($value > 15 && $value <= 25)
173            $color = "green";
174        elseif ($value > 25 && $value <= 40)
175            $color = "yellow";
176        elseif ($value > 40 && $value <= 80)
177            $color = "red";
178        elseif ($value > 80 && $value <= 250)
179            $color = "orange";
180        elseif ($value > 250)
181            $color = "purple";
182
183        return IMG_URL."/ships/ship-".$color.".gif";
184    }
185
186    function execQuery()
187    {
188        if (!$this->qry_->executed_)
189        {
190            $sql = "select *
191                  from kb3_ship_classes
192                 where scl_id = ".$this->id_;
193
194            $this->qry_->execute($sql);
195            $row = $this->qry_->getRow();
196
197            $this->name_ = $row['scl_class'];
198            $this->value_ = $row['scl_value'];
199            $this->points_ = $row['scl_points'];
200        }
201    }
202}
203?>
Note: See TracBrowser for help on using the browser.