面向对象大作业之课程设计(自主选题)

零、使用的AI工具

主要使用chat gpt 3.5进行辅助

一、选题与前期调查

在经过查询相关资料与思考以及强烈的个人意愿,我决定写一个飞机大战小游戏

其他人已完成的系统:

1.blog.csdn.net/bangxiecode/article/details/128995945?

2.blog.csdn.net/falldeep/article/details/121909781?

3.https://www.cnblogs.com/yt0617/p/14337817.html

准备实现的功能:

  1. 游戏界面:使用java swing创建游戏窗口,包括用户登录,背景、飞机、敌机、子弹等元素的绘制。

  2. 飞机控制:通过键盘输入或者鼠标控制玩家的飞机移动,例如上下左右移动、发射子弹等。

  3. 敌机生成:按照一定的时间间隔生成敌机,并设置敌机的不同类型和难度级别。可以考虑实现敌机的随机移动和射击功能。

  4. 碰撞检测:检测玩家飞机与敌机、子弹之间的碰撞,当碰撞发生时,根据规则进行相应的处理,例如扣除玩家生命值或敌机爆炸等。

  5. 分数计算:根据玩家的表现,设计分数计算系统,并在界面上显示玩家的得分。

  6. 音效和音乐:为游戏增加背景音乐和音效.

  7. 关卡设计:设计多个关卡,逐渐增加敌机的数量和难度,提高游戏的挑战性(选择关卡功能暂定)

  8. 记录和排行榜:保存玩家的最高分数,并显示排行榜,让玩家可以比较自己的成绩。

  9. 游戏暂停和重新开始:提供暂停和重新开始游戏的功能,方便玩家在需要时暂停或重新开始游戏。

  10. 游戏结束界面:当玩家生命值为零或游戏时间结束时,显示游戏结束界面,包括玩家得分、排名等信

  11. 创建用户界面:输入用户名与密码创建用户。

  12. 储存数据的方式暂定为文件。

二、系统功能设计

  1. 游戏界面管理功能:
  • 创建游戏窗口,并设置窗口大小和标题。
  • 绘制游戏背景、玩家飞机、敌机、子弹等游戏元素。
  • 用户登录与验证

     

    2. 玩家飞机控制功能:

  • 监听键盘输入或鼠标操作,控制玩家飞机的移动,包括上下左右移动和发射子弹。
  • 根据玩家的输入更新玩家飞机的位置和状态。

   

    3.敌机生成功能:

  • 设计多种类型的敌机,包括不同的外观、生命值和移动速度。
  • 设置敌机生成的时间间隔和数量,保证游戏的难度逐渐增加。
  • 随机生成不同类型的敌机,并将敌机加入游戏场景。

    4.碰撞检测功能:

  • 检测玩家飞机与敌机之间的碰撞,并根据规则处理。
  • 检测玩家飞机的子弹与敌机之间的碰撞,并造成相应的伤害。
  • 更新敌机和玩家飞机的生命值,当生命值为零时,执行相应的爆炸效果。

    5.得分和计分功能:

  • 根据玩家的表现,设计得分规则和计算方法。
  • 更新玩家的得分并显示在游戏界面上。
  • 保存最高分数,并提供排行榜功能。

    6.音效和音乐管理功能:

  • 添加背景音乐和音效,增强游戏的氛围和体验。
  • 播放特定音效,如爆炸声、子弹射击声等。

   7. 关卡设计和切换功能(暂定):

  • 设计多个关卡,每个关卡具有不同的敌机类型、数量和难度。
  • 在关卡开始时显示关卡信息,并在关卡结束时显示过关提示。:

   8.游戏暂停功能:

  • 提供游戏暂停和继续功能,允许玩家在需要时暂停游戏。

     9.游戏结束和排名功能:

  • 监测玩家生命值是否为零或游戏时间是否结束,触发游戏结束逻辑。
  • 显示游戏结束界面,包括玩家得分、排名和重新开始选项。

 三、数据如何存储和界面选择

暂定使用文件储存,GUI界面

四、开发工具:

idea ,git,AI开发工具(Cursor)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值