当前位置:   article > 正文

【easyx】快速入门——弹球小游戏(第一代)

【easyx】快速入门——弹球小游戏(第一代)

目录

1.需求

2.运动的小球

3.碰到边缘反弹

4.圆周撞击或越过边界反弹

5.绘制和移动挡板

 6.小球碰到挡板反弹

7.游戏失败时该如何处理

8.随机初始条件

9.完整代码


我们这一节将结合动画和键盘交互的知识来做一个小游戏

1.需求

我们先看需求:小球在窗体内运动,撞到除了底边外的另外三个边缘就反弹一次,如果小球撞到底边,游戏结束。玩家可以控制在底边上的一个挡板,让小球撞击到挡板上而反弹,阻止小球撞到底边

2.运动的小球

这里我们先绘制好一个圆形

  1. #include<easyx.h>
  2. #include<stdio.h>
  3. int main()
  4. {
  5. initgraph(800, 600);
  6. setorigin(400, 300);
  7. setaspectratio(1, -1);
  8. setbkcolor(RGB(164, 225, 202));
  9. cleardevice();
  10. setfillcolor(WHITE);
  11. solidcircle(0, 0, 40);
  12. getchar();
  13. return 0;
  14. }

接下来我们想让小球一开始就往右上方运动,也就是说它的速度和x轴的夹角是45度 

我们假设vx=5,vy=5,则

 我们再考虑一下帧率的问题

这样子,小球就可以往右上方运动了

我们看代码

  1. #include<easyx.h>
  2. #include<stdio.h>
  3. int main()
  4. {
  5. initgraph(800, 600);
  6. setorigin(400, 300);
  7. setaspectratio(1, -1);
  8. setbkcolor(RGB(164, 225, 202));
  9. cleardevice();
  10. setfillcolor(WHITE);
  11. solidcircle(0, 0, 40);
  12. int x = 0, y = 0;
  13. int vx = 5, vy = 5;
  14. int r = 40;
  15. while (1)
  16. {
  17. cleardevice();
  18. solidcircle(x, y, r);
  19. Sleep(40);
  20. x += vx;
  21. y +
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/613713
推荐阅读
相关标签
  

闽ICP备14008679号