在一个游戏中,有盗贼,猎人,医生,农民,士兵几类人,这些人都有名称、等级,还可以自己介绍自己;
其中,
盗贼可以偷盗。
猎人可以打猎。
农民可以采矿。
盗贼、猎人和农民可以攻击。
农民、医生可以治疗。
士兵可以抵抗盗贼、猎人和农民等的攻击。
还有一个玩家可以控制这些角色。
设计这个系统。
<?php
abstract class Game{
protected $name;
protected $dengji;
protected $xingwei;
public function __construct($name,$dengji,$xingwei){
$this ->name=$name;
$this ->dengji=$dengji;
$this ->xingwei=$xingwei;
}
public function instrduce(){
echo "我是".$this ->name.\',\'."我的等级是".$this ->dengji.\'级\'.\',\'."能".$this->xingwei;
}
}
//定义接口开始
interface TouDao{
function toudao();
}
interface XingWei{
function xingwei();
}
interface DaLie{
function dalie();
}
interface CaiKuang{
function caikuang();
}
interface GongJi{
function gongji();
}
interface ZhiLiao{
function zhiliao();
}
//定义接口结束
//盗贼
class DaoZei extends Game implements TouDao,GongJi{
function toudao(){}
function gongji(){
echo ",能进行攻击";
}
}
//猎人
class LieRen extends Game implements DaLie,GongJi{
function dalie(){}
function gongji(){}
}
//农民
class NongMing extends Game implements CaiKuang,GongJi,ZhiLiao{
function caikuang(){}
function gongji(){}
function ZhiLiao(){
echo ",也能进行治疗";
}
}
//医生
class YiSheng extends Game implements ZhiLiao{
function ZhiLiao(){
}
}
//士兵
class ShiBin extends Game{
public function dIKang(){}
}
//玩家
class WanJia extends Game{
public function kongZhi(){}
}
$DaoZei =new DaoZei(\'盗贼\',\'中\',\'偷盗\');
$DaoZei ->instrduce();
$DaoZei ->gongji();
echo "<br><br>";
$lieren =new LieRen(\'猎人\',\'初\',\'打猎\');
$lieren ->instrduce();
$DaoZei ->gongji();
echo "<br><br>";
$nongming =new NongMing(\'农民\',\'初\',\'采矿\');
$nongming ->instrduce();
$DaoZei ->gongji();
$nongming ->ZhiLiao();
echo "<br><br>";
$yisheng = new YiSheng(\'医生\',\'中\',\'治疗\');
$yisheng ->instrduce();
echo "<br><br>";
$shibin = new ShiBin(\'士兵\',\'高\',\'抵抗盗贼、猎人和农民的攻击\');
$shibin ->instrduce();
echo "<br><br>";
$wanjia = new WanJia(\'玩家\',\'特高\',\'控制所有角色\');
$wanjia ->instrduce();
echo "<br><br>";