lxy1023-

在一个游戏中,有盗贼,猎人,医生,农民,士兵几类人,这些人都有名称、等级,还可以自己介绍自己;
其中,
盗贼可以偷盗。
猎人可以打猎。
农民可以采矿。
盗贼、猎人和农民可以攻击。
农民、医生可以治疗。
士兵可以抵抗盗贼、猎人和农民等的攻击。

还有一个玩家可以控制这些角色。
设计这个系统。

 

<?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>";

分类:

技术点:

相关文章: