Файл: include/creature.php
Строк: 121
<?php
include_once("table_name.php");
include_once("base.php");
include_once("common_func.php");
include_once("creature_base.php");
/**
creature classes
*/
class CCreature extends CCreatureBase
{
var $vnum_uniq;
var $table_status;
var $table_players;
/**
Constructor
*/
function CCreature($database,$vnum = 0)
{
global $table_mobs_state;
global $table_player;
$this->db = $database;
$this->table_status=$table_mobs_state;
$this->table_players=$table_player;
$this->vnum_uniq =$vnum;
parent::CCreatureBase($database,$this->getVnum());
}
function setVnum($new_vnum)
{
$this->vnum_uniq=$new_vnum;
$vnum=$this->getVnum();
parent::setVnum($vnum);
}
function getVnum()
{
$sql = "select vnum_mob from $this->table_status where vnum=$this->vnum_uniq";
$result = $this->execSQL($sql);
$row = $result->fetchRow();
return $row[0];
}
function getState()
{
$sql = "select state from $this->table_status where vnum=$this->vnum_uniq";
$result = $this->execSQL($sql);
$row = $result->fetchRow();
return $row[0];
}
function setState($state)
{
$sql = "update $this->table_status set state='$state' where vnum='$this->vnum_uniq' LIMIT 1";
$result = $this->execSQL($sql);
}
function getCurHP()
{
$sql = "select hp from $this->table_status where vnum=$this->vnum_uniq";
$result = $this->execSQL($sql);
$row = $result->fetchRow();
return $row[0];
}
function setCurHP($hp)
{
$sql = "update $this->table_status set hp='$hp' where vnum='$this->vnum_uniq' LIMIT 1";
$result = $this->execSQL($sql);
}
function getMaxHP()
{
$sql = "select hp_max from $this->table_status where vnum=$this->vnum_uniq";
$result = $this->execSQL($sql);
$row = $result->fetchRow();
return $row[0];
}
function getCountAllMob($vnum_mobs)
{
$sql = "select count(*) from $this->table_status where vnum_mob='$vnum_mobs'";
$result = $this->execSQL($sql);
$row = $result->fetchRow();
return $row[0];
}
function getMobsInRoom($room)
{
$sql = "select vnum,vnum_mob,state from $this->table_status where vnum_room='$room'";
$result = $this->execSQL($sql);
$mobs = array();
//cycle on all player
while($row = $result->fetchRow())
{
$mobs[] = array("vnum" => $row[0], "vnum_mob" => $row[1], "state" => $row[2]);
}
return $mobs;
}
/**
get player which fight with mobs
*/
function getPlayerFightMobs()
{
$sql = "select vnum,name,online from $this->table_players where object='$this->vnum_uniq' limit 1";
$result = $this->execSQL($sql);
if($result->numRows()==0) return 0;
$row = $result->fetchRow();
$player = array("vnum" => $row[0],"name" => $row[1],"online" => $row[2]);
return $player;
}
function removeMob()
{
$sql = "delete from $this->table_status where vnum=$this->vnum_uniq";
$this->execSQL($sql);
}
function mobExists()
{
$sql = "select vnum from $this->table_status where vnum=$this->vnum_uniq";
$result=$this->execSQL($sql);
if($result->numRows()==0) return false;
return true;
}
}
?>