• 第一课程设计实验报告


    一、 实验项目名称

                《飞机大战》
    

    二、 实验项目功能描述

    1、 用w、s、a、d控制自己的飞机的上下左右,空格发出子弹
    2、 击落敌机,从而获得加分,得分越高,敌机运动速度越快
    3、敌机随机出现,
    4、自己飞机有边界,不能出界
    5、输入字符0结束游戏,显示你的最后得分

    三、 项目模块结构介绍(文字+总体模型)

    模型:初始化
    显示画面
    数据输入
    无数据输入时继续运行程序
    使得屏幕不闪屏
    能播放音乐

    1、 初始化模块:startup();函数:控制游戏画面尺寸。自己飞机初始位置。敌机第一次出现的位置。子弹初始位置:位于自己飞机的正上方。飞机速度控制。
    2、 隐藏光标模块:HideCursor():是一个系统定义函数
    3、 播放音乐模块:从库里直接调用
    4、 显示画面模块:show(),从原点开始,清屏重画。输出子弹位置,自己飞机位置,敌机位置
    5、 无关数据输入继续运行模块:updateWithoutInput()判断输出的子弹是否击中敌机,击中敌机则子弹消失(出界),输出新敌机。控制敌机移动速度,分数到达一个值则飞机速度加快。
    6、 有关数据输入运行模块:updateWithInput():接收飞机移动输入,还有子弹输入,并控制飞机不出界。输入零则游戏结束

    四、 实现界面展示

    五、 代码托管链接

    https://gitee.com/xqldc/xqldx.git
    六、 实验总结(提出问题+解决办法+感想)
    书上的代码很不错,但是我还是改进了,改进如下:
    1、 增加了结束游戏的输入,
    2、 还增加了条件,使得自己的飞机不会出界,
    3、 增加了控制飞机速度的参数,得分越高,敌机速度越快
    4、 增加了音乐
    遇到的问题1:速度参数是整数的时候,每次敌机速度加快后的第一个敌机都会停止在第一行不会移动。
    解决方法:改变参数,
    遇到的问题2:想输出复杂的飞机图形,但是发现后面真正输出图片的时候,只要一个图片输出就行了,说明现在这个只输出一个字符的飞机就OK了,能满足以后的功能了。
    感想:现在做的还比较顺利,但是离真正的应用程序还是差的远,很多功能想到了,但是不知道怎么实现。不会的还是得多百度,多问,因为现在的很多东西想也想不懂,只有先了解它的原理和使用方法才能进行下一步。

  • 相关阅读:
    linux 下安装web开发环境
    js 字符串的操作
    css 弹出层-透明层
    Nginx服务器 之反向代理与负载均衡
    html5 响应式布局
    css 文本溢出显示省略号
    栈的运用(6)
    ctypes to load library in c/c++
    Expert Python programming
    Python type class metaclass
  • 原文地址:https://www.cnblogs.com/xqldc/p/10954736.html
Copyright © 2020-2023  润新知