zoukankan      html  css  js  c++  java
  • 2019春第二次课程设计实验报告

    一、实验项目名称

    飞机游戏。

    二、实验项目功能描述

    1.程序启动,在一个长方形范围内,范围的正中间有一个*(飞机);
    2.#(敌机)首先从范围的最顶部出现,一直下移,如果下移过程中与|(子弹)的位置重合,则敌机消失,得分加一,如果下落到长方形范围的最底部,则该敌机消失,产生新敌机;
    3.通过英文状态下输入a控制*(飞机)向左移动一个位置,输入d控制*(飞机)向右移动一个位置,输入s控制*(飞机)向下移动一个位置,输入w控制*(飞机)向上移动一个位置,输入空格则飞机发射子弹;
    4.如果敌机在下移过程中与*的位置重合,则显示“游戏结束”,游戏结束。

    三、项目模块结构介绍

    1.源程序由4个预编译命令和一个主函数组成,其中主函数调用了5个函数,分别是startup()show()updataWithoutInput()updataWithInput()HideCursor()
    2.其中函数show()中又使用了gotoxy函数(在windows.h中),函数updataWithInput()中用了kbhit函数(在conio.h中)。

    四、实现界面展示

    五、代码托管链接

    代码看这里

    贡献截图

    六、实验总结

    问题

    1.整个运行界面闪烁严重;

    解决办法:把system函数改为gotoxy()函数,使光标移动到原点位置。
    2.运行界面内部有光标闪烁;

    解决办法:在主函数的开头使用光标隐藏函数HideCursor()。
    3.当飞机和敌机的位置重合时,显示游戏结束,但是程序并没有结束,而是停止了,当连续多次再按enter后,又继续运行;

    解决办法:把system("pause")改为break。

    感想

    这是第二次接触游戏设计,对于游戏设计有了个初步的印象,这周照书上写了之后,想自己再加一点点东西,加完之后运行起来就发现放在不同的地方,效果不同,然后就不停的试,最后用了个自己满意的一版,另外还见到了没见过的函数,又去网上查它们的功能。写完整个游戏后感觉对一个游戏的设计真的要细究到每一个步骤,每一个变化,这是在课堂上不会教的内容。

  • 相关阅读:
    labVIEW学习——属性节点
    MATLAB学习
    WinForm中键盘按键问题
    TextBox的智能感知
    使用脚本操作UpdatePanel中控件的问题
    DBNull.Value,null,String.Empty之间的区别和联系
    Hotmail如何对已经存在的邮件地址进行更改?
    第一个hibernate项目
    html静态实现左边导航右边显示链接页面
    Struts2学习
  • 原文地址:https://www.cnblogs.com/LeeMayZ/p/10959808.html
Copyright © 2011-2022 走看看