应胡呆呆 - 知乎同学的要求,分享16级同学大一上实现的猪小弟游戏demo。

猪小弟(pooyan)讲的是一只狼劫走了一只粉色小猪,猪妈妈去救粉色小猪的故事。游戏的玩法是玩家通过ws键控制猪妈妈的上下移动,按j箭发射箭,箭只有射中狼头顶的气球,才会使狼掉到地面死亡。猪妈妈的头顶会随机刷出肉棒,肉棒可以砸死很多只狼,狼也会发射子弹攻击猪妈妈。只有杀死一定数量的狼才可以过关。猪小弟程序主要分为开场动画、第一关、第二关共三部分。

开场动画:

第一关:

第二关:

实现代码、图片音乐素材、视频介绍资料参看:http://pan.baidu.com/s/1kVaBAXh,以下以第一关的制作为例。

主体功能描述:

struct level1_pooyan // 射手--猪妈

W向上移动、S向下移动、J发射骨箭或子弹

struct level1_arrow // 普通箭

1、一次只能射两支箭

2、一支箭在扎破气球后刷新cd

3、箭射中狼,无效,下坠

4、下坠的箭可以继续发生作用,射中下面的气球

struct level1_bone // 肉骨棒

1、一段固定时间后在固定位置生成

2、通过拾取获得,拾取后,切换武器

3、可以消灭击中的所有狼,击中气球无效

4、被击中的狼下坠,气球继续上升

5、上升的气球可以继续被击破

struct level1_rope // 绳子

struct level1_wolf // 敌人--狼

1、随机狼的下落位置

2、三种状态:(1)存活(2)被击中的挣扎动画(3)快速下坠

3、漏掉一只狼,游戏失败

struct level1_ball // 狼的气球

三种状态:(1)随狼下落(2)狼被肉骨棒击中后上升(3)被击中后破碎

struct level1_bullet // 狼的子弹

1、随机发射子弹的狼

2、随机狼发射子弹的位置

3、子弹射中猪妈后,游戏失败

4、猪妈可以通过用吊篮的顶部和底部挡掉子弹

void
startup_1() // 初始化

void
show_1() // 画面显示

void
update_without_input_1() // 与输入无关的更新

void
update_with_input_1() // 与输入有关的更新

void
gameover() // 游戏结束前的后处理

void main() // 主函数

主要实现步骤:

1.
开始运用做黑框游戏canvas写法、制作了开场动画,但是跳转到第一关的界面后,程序无法正常显示图片;

2.
换写法,实现猪妈的上下移动;

3.
实现一次只能射两只箭;

4.
实现狼的随机下落和结构体写法;

5.
实现建设中气球,狼快速下坠;

6.
实现狼发射子弹,猪妈中弹死亡;

7.
实现一些细节动画,狼出场向右奔跑,狼落地后继续向右奔跑,狼被击中挣扎,狼下坠时头向下挣扎,气球的破碎效果;

8.
实现肉骨棒的版块;

9.
添加分数判断,添加背景音乐,添加发箭的音效,添加发射肉骨棒时的音效;

10.
第一关基本完成。

做游戏,学编程(C语言) 17 猪小弟相关推荐

  1. 视频教程-做游戏学Python-Python语言快速入门-Python

    做游戏学Python-Python语言快速入门 20年软件项目开发管理经验 工信部人才交流中心特聘专家讲师 日本U-CAN在线教育特聘主任讲师 国家十二·五规划软件工程教材作者(书:清华大学出版社出版 ...

  2. 教孩子学编程 python语言版_教孩子学编程 PYTHON语言版 PDF_IT教程网

    资源名称:教孩子学编程 PYTHON语言版 PDF 资源目录: 第1章Python基础--认识环境1 1.1认识Python3 1.2用Python编写程序5 1.3运行Python程序5 1.4本章 ...

  3. python教孩子学编程,教孩子学编程(Python语言版)

    教孩子学编程(Python语言版) 第1 章 Python 基础:认识环境 #NiceHexSpiral.py #运行后,挺奇特,整个作画过程,完全呈现. import turtle colors=[ ...

  4. 但凡原神有二十树脂,我也不会来学编程(c语言)

    但凡原神有二十树脂,我也不会来学编程(c语言)<第一天> 编程小白一只,从今天开始,将在本专栏记录本人学习编程的过程与心得~来自甘肃,普通双非,由于地域影响,想要在计算机方面得到好的出路, ...

  5. 少儿编程python线上课程-少儿编程课堂|python – 用游戏学编程

    学习编程是很快乐的事情.当我们自己开发出一套时下流行的游戏时,这满满的成就感比玩儿游戏本身高出了不知道会有多少倍. 接下来一段时间我们就python从0开始学习怎么开发 flappy brid 游戏. ...

  6. python编程少儿游戏编程_少儿编程课堂|python – 用游戏学编程

    学习编程是很快乐的事情.当我们自己开发出一套时下流行的游戏时,这满满的成就感比玩儿游戏本身高出了不知道会有多少倍. 接下来一段时间我们就python从0开始学习怎么开发 flappy brid 游戏. ...

  7. 优的python少儿编程课_少儿编程课堂|python – 用游戏学编程

    学习编程是很快乐的事情.当我们自己开发出一套时下流行的游戏时,这满满的成就感比玩儿游戏本身高出了不知道会有多少倍. 接下来一段时间我们就python从0开始学习怎么开发 flappy brid 游戏. ...

  8. 学编程c语言高考能加分吗,学好编程,中高考都能加分,还能保送清华北大!...

    原标题:学好编程,中高考都能加分,还能保送清华北大! 前段时间,我跟一位母亲聊起现在的中考.高考,她大是不以为然,为什么?这位母亲跟我诉苦,说她家老大上半年备战中考,每天都早起晚睡地复习,全家都跟着一 ...

  9. 做软件学c易语言可以吗,怎么样做一个易语言程序:

    呵呵,楼主和我当初一样的迷惑. 我当初啃C语言的时候,也是想用C语言做界面出来,走了很多冤枉路,这里希望能给楼主一些提示. 如果你想用"纯"C来做界面的话,那么我会很肯定的告诉你, ...

最新文章

  1. tkmybatis 子查询_dnssearch 子域名枚举工具
  2. java模拟单链表环形链表解决约瑟夫问题
  3. iOS项目组件化历程
  4. 变频电源出现故障了怎么办,该如何去诊断呢
  5. 登录不上_《盗贼之海》登录不上?还在傻傻等待,快来让我教教你
  6. 【POJ】2065 SETI
  7. 流媒体技术学习笔记之(十五)FFmpeg编码遇到的错误、警告、Debug记录
  8. 移动通信原理B-------例题解答2
  9. 快速排序 时间复杂度计算
  10. Junit单元测试的基本编码步骤
  11. java kdj macd_很好用的KDJ与MACD结合指标
  12. 信用卡诈骗罪16个有效辩点
  13. 【Matplotlib绘制图像目录】Python数据可视化之美
  14. 极客学院ios开发工程师系列课程
  15. 桌面运维常见问题解决办法②
  16. Ubuntu 安装 SSH 服务
  17. cad标注样式快捷键_制图大神最常用的六大类CAD快捷命令,学会CAD就是这么简单...
  18. 留学计算机美国硕士,美国硕士留学计算机专业录取情况
  19. 自学mysql还是sql好_都说自学SQL数据库难,是真的吗?
  20. 未来的全能保姆机器人作文_未来的保姆机器人

热门文章

  1. ~~欧几里得算法(附模板题)
  2. 【干货】sql-labs、请求方式、注入类型、拼接方式
  3. 使用 docker 命令不用加 sudo
  4. leetcode5086:smallest-subsequence-of-distinct-characters
  5. AS5047P磁编码器ESP32驱动程序、硬件电路设计、SPI通信时序、逻辑波形分析、注意事项
  6. 【英语】Invest in Yourself
  7. 节 海里/小时 千米/小时 米/秒 转换
  8. 第四篇:决策树分类算法原理分析与代码实现
  9. linux档案与文件的的压缩与打包
  10. Hadoop与分布式开发