目录
3.1.1 AbstractFactoryTest 实现 API
注:本系统并非31个单个系统,而是一整个大的系统中包含了31种设计模式。
一、项目简介
《动物运动会》是由我们小组设计的一套动物运动会题材的体验类动物运动会 API,用户可以扮演一个动物运动会的参赛小动物,在设定的大厅和比赛里进行游戏。
玩家可以选择所使用动物的种族和颜色等特征,随后即可参加动物运动会;
动物可以在大厅选择将要进行的动作,包括参加比赛,进入饮品台,打印成绩单,购买装备,粉丝见面会和询问其他动物成绩;
参加比赛,系统会根据你所选择的动物运动员种族,获取相应的能力参数,根据你的动物运动员的状态获取状态参数,通过成绩计算函数获取相应的比赛成绩,并与其他 7 名系统生成的小动物竞赛,得到你在本场比赛中的成绩和名次。
进入饮品台,可以选择想要的饮品,包括:coffee,cola,mineral water,对于每个饮品可以选择添加配料,包括:milk,lemon,sugar,在添加配料的过程中可以进行 redo 操作,也可以进行 undo 操作,结束饮品选择后要进行付款操作,在付款过程中要对不同种族的货币按一定比率进行兑换,从而成功完成付款操作。不同的饮品可以为该动物带来不同的属性加成和状态恢复,帮助动物在运动会中取得更好的成绩;
选择打印成绩单,可以查看你所选择的动物在当前已完成的所有比赛项目的成绩,并为你选择的动物打印出相应的成绩单,以获得动物在本次运动会上的具体表现;
进入装备购买界面中,你可以为自己的动物选择心仪的运动装备,包括:运动跑鞋和运动护腕,不同的运动装备对小动物的属性值有不同程度的加成。为了使运动装备的选择能对小动物的不同属性的加成有所区分,提高游戏可玩性和合理性,对于每一个小动物,只可以选择一种运动装备。合理选择运动装备,可以使你的小动物在运动会相应类型的项目中取得更好的成绩。
选择开始粉丝见面会时,你可以选择接见某一种族的粉丝,系统会根据你所选择的种族,从粉丝中随机抽取一个幸运粉丝和你见面。这也契合了现实生活中运动会上运动员有可能随机会见粉丝的场景。
选择查询其他动物成绩,可以选择你要询问的动物对象,并选择你想要知道的该动物具体某一项运动的成绩,该动物将如实告知你他的成绩,以便你判断你的动物在本次运动会的项目中与其他小动物的差距;
总而言之,《动物运动会》具有很强的可操作性与参与度,是一套经典的赛事体验类游戏 API。
二、Design Pattern 汇总表
编号 | Design Pattern Name | 实现个(套)数 | sample programs 个数 | 备注 |
---|---|---|---|---|
1 | Abstract Factory | 1 | 1 | |
2 | Adapter | 1 | 1 | |
3 | Bridge | 1 | 1 | |
4 | Builder | 1 | 1 |