• flash小游戏开发


    网页游戏开发中,尤其是sns类型的游戏,经常要开发小游戏。这个说难也不难,说简单也不简单。不难,随便找个新人,培训一两周as3,就可以做个小游戏上手了。不容易,要开发得好,代码可读性强,容易维护,却不易。我去看了本人所在项目的源代码,发现小游戏的代码质量相对于其他基础系统的代码质量要差一些。查阅了相关资料,书籍,发现前人已经终结出了一个个开发框架,可以套用的。

    先举一个特别简单的例子吧。打飞机游戏(想到其他地方,思想不纯洁的同学先去面壁:)。功能特别简单,通过控制键盘的方向键,操控飞机的运行方向。按space键,发射子弹,如果子弹打中空中飘浮的障碍,就将其击破。这个游戏是典型的键盘操作游戏,物体的运行是根据时间来决定的。可以参考以下的步骤设计:

    1.定义变量,arrowUp,arrowDown,arrowLeft,arrowRight

    2.初始化一批障碍物,角度随机,速度随机

    3.舞台监听 键盘按下事件 和 键盘松开事件。在监听事件处理函数中记录按下的键值,相应的变量设为true,松开时设为true。如果按下空白键,就新建一个子弹对象,具有初始速度dx,dy,旋转角度跟飞机的相同

    4.在enterFrame中进行以下操作
    4.1.计算距离上次的时间差,
    4.2.移动飞机
    4.3.移动子弹
    4.4.移动障碍物
    4.5.判断是否发生碰撞(通常比较偷懒的办法是,所有要检测的对象都统一存储在数组中,遍历检测碰撞)

    5.游戏结束

    看了上面的介绍是不是觉得思路比较清晰了。其实大部分小游戏都可以抽象成几大类。每一类都有原型可以参考。利用原型开发,可以大大提高开发效率,代码质量也大大提高。这里提供一本经典的书籍参考《ActionScript 3.0 Game Programming University》,学好里面的范例,就基本入门了。

    后记,写这本blog的时候,重新研读了pureMVC源码,发现一些的小游戏也可以用pureMVC来开发,解耦性更好。准备另写一篇blog描述一下思路。

  • 相关阅读:
    Jquery常用开发插件收集
    mysql创建函数或者存储过程,遇到语法报错
    CentOS安装微软雅黑,解决drawImage中文乱码问题
    Google Kaptcha 生成图形验证码
    sql中order by 待排序的字段值相同时,发生分页出现重复数据的问题
    深入Spring Boot: 怎样排查 java.lang.ArrayStoreException
    使用stream流的方式过滤和遍历集合
    【Java8】===两个List集合取交集、并集、差集
    SpringBoot实现单元测试时回滚事务
    Redis报错:ERR Operation against a key holding the wrong kind of value 解决处理
  • 原文地址:https://www.cnblogs.com/tinytiny/p/2528048.html
Copyright © 2020-2023  润新知