面向对象程序设计

课程设计

Java程序代写 通过面向对象程序课程设计的操作与实践,使学生了解面向对象程序设计的相关理论知识和有关工具软件的使用技巧,在一定程度上提高学生们应用程序的综合开发能力和创新意识、创新能力,具体了解与掌握的基本知识和能力有以下几个方面:

【目的】 

通过面向对象程序课程设计的操作与实践,使学生了解面向对象程序设计的相关理论知识和有关工具软件的使用技巧,在一定程度上提高学生们应用程序的综合开发能力和创新意识、创新能力,具体了解与掌握的基本知识和能力有以下几个方面:

1、学会面向对象的系统分析和设计方法。

2、学会使用MUL表述项目的类结构图。

3、掌握面向对象程序设计应用开发的基本方法。

4、通过综合课程设计,进一步锻炼学生使用面向对象方法思考问题及动手能力。

 

【内容】 Java程序代写

CC3K游戏由一块79列宽、30行高的地图组成(保留5行用于显示信息)。游戏如下:玩家角色穿过地牢,杀死敌人并 收集宝藏直到地牢的尽头(地牢的尽头是5楼)。一个地牢由不同的楼层组成,每个楼层由与通道相连的房间组成。简单来说,每层楼层总是由5个房间组成,并由通道连接。

 

系统组成:

角色状态3种指标:

HP(Health Points): 表示角色的健康情况,如果分数为0,就表示被杀死。

Attack(Atk):表示角色的攻击力。

Defense(Def):表示角色的抵抗力。

 

1.Player Character:(简称PC,玩家角色)在游戏地图上表示为“@”

PC可以是几种类型,默认的物种为shade:

shade(初始状态为125 HP, 25 Atk, 25 Def)

drow (150 HP, 25 Atk , 15 Def,all potions have their effect magnified by 1.5[所有能力的效果放大1.5倍])

vampire (吸血鬼,50 HP, 25 Atk, 25 Def, gains 5 HP every attack and has no maximum HP[每次攻击都获得5 HP并且HP没有上限])

troll (巨魔,120 HP, 25 Atk, 15 Def, regains 5 HP every turn; HP is capped at 120 HP[每回合重新获得5 HP; HP的上限为120 HP])

goblin (地精,110 HP, 15 Atk, 20 Def, steals 5 gold from every slain enemy[每杀死一个敌人获得5个金币])。

 

2.Enemies(NPC,非玩家角色): Java程序代写

敌人只能在它所在的房间内随机移动一个位置。

敌人有如下几种:

human (人类,140 HP, 20 Atk, 20 Def, 留下两堆普通金子)

dwarf (矮人,100 HP, 20 Atk, 30 Def, Vampires对dwarves过敏,并丢掉5HP)

elf (精灵,140 HP, 30 Atk, 10 Def,除了对drow以外,对其他物种攻击两次)

orcs (兽人,180 HP, 30 Atk, 25 Def,对goblins造成比其他物种多50%的损害)

merchant (商人,30 HP, 70 Atk, 5 Def)

dragon (龙,150 HP, 20 Atk, 20 Def, 总是在保护金子)

halfling (半身,100 HP, 15 Atk, 20 Def, has a 50% chance to cause the player character to miss in combat)。

 

Merchant是中立的,不会主动攻击,但PC可以攻击并杀死Merchant,PC一旦攻击或杀死Merchant,所有其他Merchant从这一刻起都会成为PC的敌人,也就是开始具有攻击性。

Dragon的身边总有“龙囤积”,即每当“龙囤积”生成也一定生成Dragon。

除Dragon,Human,Merchant以外的所有敌人死后都会留下“小”或“普通”的金子,金子的价值会马上累计到PC的总值中。

Dragon是静止不动的,其他所有敌人每次都会随机移动一个单元,但敌人永远不能离开它一开始所在的房间。

如果PC邻近敌人,敌人就一定会攻击PC。

地图上的敌人表示为:H(uman),D(warf),E(lf),O(rc),M(erchant),D(ragon),L(Halfling)。

 

3.Potions(魔药):

它有两种类型:正和负,被PC获得可以使PC得正分或负分,在游戏地图上表示为“P”,只有当PC邻近Potions时才可以使用它。PC事先并不知道Potions的分值是正还是负,直到使用了它们时。(但是如果是从Merchant那里买来的Potions,它们的分数就应显示在地图上。)

 

Positive Potions:

Restore health (RH): 恢复 10分 HP (不能超过该物种的最大值)

Boost Atk (BA): 增加5分Atk

Boost Def (BD): 增加5分Def

Negative Potions:

Poison health (PH): 丢掉10分 HP (不能小于 0 HP)

Wound Atk (WA): 减少5分 Atk

Wound Def (WD): 减少5分 Def

RH和PH的效果是永久的,其他的都只在本楼层有效,超出本楼层,它们的效果丧失。

 

4.金子 Java程序代写

金子可以分为几种类型:小(价值1)、普通(价值2)、商人囤积(价值4)和龙囤积(价值6)。金子在地图上表示为“G”。Dragon总是保护着身边的龙囤积,只有当Dragon死后,它身边的金子才能被取走。Merchant死后会在身边留下金子。

 

5.楼层

每个楼层有5个相互连通的房间,最好能随机生成房间及它们之间的连接,也可以是事先画好固定的。

PC可以随机位于某个房间中,位于某个房间的可能性是相同的,但不可以位于有通向下一楼层楼梯的房间内。楼梯在游戏地图上表示为“\”。

每一楼层有10个Potions,以相同的可能性分布于5个房间,是6种Potion的某一种的可能性也是相同的。

每一楼层有10个Gold,位于某个房间的可能性是相同的,位于某一地砖的可能性也相同。是“普通”的可能性是5/8;是“小”的可能性是1/4;是“龙囤积”的可能性是1/8。

除Dragon以外,Enemies按下面的可能性分布:

Human:  2/9

Dwarf:  3/18

Halfling: 5/18

Elf:  1/9

Orc:  1/9

Merchant:  1/9

每个楼层有20个enemies。

注意:不允许多个对象占据游戏地图上的同一个单元。也不能占据门口,通道或楼梯的位置。

当PC走到楼梯时,下一楼层就自动生成并显示出来。

6.战斗 Java程序代写

除了Merchants和Dragons,其他所有Enemies对PC都有敌意,如果PC邻近它们,它们就会自动攻击PC,但它们的攻击有50%的可能性会失误。Enemies不会追击PC。PC也会攻击邻近他的敌人,并且不会失误。

一个回合攻击成功会给对方造成如下损失:Damage(Defender) = ceiling((100/(100+Def(Defender)))*Atk(Attacker))

 

Dragons只有当PC邻近它或者它的金子的时候才对PC有敌意,并攻击PC。

Java程序代写
Java程序代写

7.显示

墙表示为“|”和“-”,门表示为“+”,通道表示为“#”,地砖表示为“.”,房间是较小的多边形,

 

8.命令

游戏开始时玩家需要选择角色的类别。

游戏过程中可输入如下命令:

no,so,ea,we,ne,nw,se,sw: 使PC按某方向移动一个位置。

u <direction>: 使用某方向上的Potion

a <direction>: 攻击指定方向上邻近位置的敌人

s, d, v, g, t:游戏开始时玩家选择角色的类别

r:重启游戏

q:推出游戏

 

要求Java程序代写

  1. 大家自愿组成两个人的小组,由两人共同完成本课程设计。
  2. 写出课程设计报告,内容包括对问题的分析、总体设计(类的UML结构图和系统设计说明)、软件使用说明和编程过程中遇到的主要难点问题等等。
  3. 课程设计报告以给定模板样式,用A4纸打印(打印时应包括本页),并于20-21学年第1学期开学第15周后以纸制形式提交(另外,还需要上交报告的电子板文件(文件名:学号+课程设计报告)和课程设计的源程序文件(一个完整的工程项目文件夹,工程项目名称:学号cc3k)及可运行文件:.exe)。
  4. 评分原则

1)程序(80%)

  • 程序能实现部分功能并运行,就可以及格。
  • 完成的功能越多分数越高。
  • 全部实现可以得到满分。
  • 老师不会阅读源代码,如果程序不能运行就不能得分。

要求各小组独立完成该课程设计。

2) 课程设计报告10%)

3)项目验收(10%)

每个小组15~20分钟,介绍自己的程序,回答老师的提问。