单obj游戏制作记录 月度挑战
柳隐 发表于 2018-11-08 08:04:57 393

首先声明,本人本职是搞机械的,写代码纯属外行,有些地方表达的可能不合适,代码写法可能不规范,希望大佬们多多包涵。

言归正传,本次单obj游戏的挑战我打算先做简单的小游戏——《打砖块》,等逻辑完善后再做更有难度的深度游戏。


《打砖块》主要思路是使用抽象物体(也就是游戏中并不存的物体,我把它们都叫做抽象物体)的坐标变换来模拟碰撞,然后绘制出相关的结果来完成游戏。具体思路如下:

1.先准备素材,我的资源都是爱给网下载的,这个没啥可说的;

2.创建一个房间,一个obj;

3.在obj创建事件中声明一系列变量表示抽象物体的属性(工程等做完我会公开,这里就不贴出来丢人了)

4.在obj步事件中进行抽象物体数值的变换与判断,比如球,当它的表示x坐标小于某个值(可以认为是房间中的x轴向0点的位置,但是需要加上球的半径与速度,我将它抽象理解为左侧墙壁)时,可以认为它碰到左边了,以此类推,各个壁的碰撞与球拍的碰撞是比较容易计算的。

5.使用一个数组表示砖块,将小球的位置坐标缩放到数组长度范围内,当小球进入某个位置后,可以认为发生了碰撞。

6.使用draw_sprite(精灵名字,精灵子图号,x,y)函数来绘制所有的精灵。

7.最困难的小球裂变的设计,绘制一个运动的小球是比较简单,而同时绘制多个运动的球,这个问题是比较麻烦的,我想了较长时间才解决。我采取是数组的方式,循环计算小球们的坐标,比如母球,我定义的变量是qiu_x[0]和qiu_y[0](本人英语差,喜欢用拼音命名,希望不要嘲笑我),qiu_x的意思就是球的x坐标,qiu_y的意思是小球的y坐标,然后将这两个变量数组化,用来表示多个球的坐标,[0]表示母球,然后再用球的数量控制循环次数将小球逐个绘制出来。这样的话,获得裂变技能时,将循环次数+3,可以多出三个子球。然后将没接到的球剔除并重新编号,再计算接下来循环的次数。

8.加上了第四个技能底部的防护板;

9.加上了第五个技能竖直方向的特殊空间;

10.加上了最强大的武器技能,总算是做完了,游戏只用一个obj,在运行中也只有一个obj。

本人白天上班,需要偷偷刷网页,非常不方便,写的比较乱,希望大佬们能理解~


最后于 1月前 被柳隐编辑 ,原因: 持续开发。。。
最新回复 (10)
  • B站长老湿 发表于 2018-11-14 10:16:02
    0 2
    可以开重力系统不?
  • 柳隐 发表于 2018-11-16 01:30:16
    0 3
    B站长老湿 可以开重力系统不?
    没有使用内置的重力变量,完全使用坐标计算模拟的碰撞
  • wild-dog2 发表于 2018-11-23 11:48:52
    0 4

    为什么后面要加一句不专业?你简直太专业了,试玩了一下,简直完美,可以上架STEAM了哈。看了源码,真正的单OBJ,强!!

  • 断水 发表于 2018-12-01 06:19:21
    0 5

    创意:8分      打砖块加上精巧的技能设计,进一步细化丰富素材确实可以做成能上架的游戏。
    复杂:7分      也是使用数组的设计,精巧的代码能做出这么完美的效果,短时间内我也做不到。
    美感:7分      应该是通用的素材,我个人的标准这里打高分,可能对于精心创作素材的人不太公平。不过整体的感觉很好。
    总分:22分    这应该整个活动中我玩得时间最长的一个,几个游戏包括我自己的都无法只使用鼠标或键盘完成所有的操作,切换起来比较麻烦。


    论坛加分项:

    完成作品并开源加 70*30/200=10.5 即论坛活动度加分为10.5分


  • unidentified 发表于 2018-12-01 08:55:54
    0 6
    总分22=创意8+复杂7+美感7
    很经典的游戏,要是球能打到板子的不同位置,反弹角度不同就好了。掉落的技能还挺多的,移动的时候声音略微鬼畜。
  • 柳隐 发表于 2018-12-01 09:15:26
    0 7
    unidentified 总分22=创意8+复杂7+美感7 很经典的游戏,要是球能打到板子的不同位置,反弹角度不同就好了。掉落的技能还挺多的,移动的时候声音略微鬼畜。
    反弹角度可以改变
  • wild-dog2 发表于 2018-12-02 08:56:09
    0 8
    创意:7分,经典打砖块新意上稍显欠缺点。
    复杂:8分,真正的单OBJ实现了所有球的碰撞。
    美感:8分。配色什么的都挺好的,界面设计也不错。
    总分23分。
  • tpxxn 发表于 2018-12-07 04:12:42
    0 9
    创意:6分     就是打砖块,似乎入射角和出射角不会变?
    复杂:7分     道具挺多(虽然很难捡到),代码复杂度一般
    美感:7分     这个打击音效绝了,方块的破碎精灵还行
    总分:20分
  • jilcky 发表于 2018-12-07 07:22:23
    0 10
    创意 3
    复杂 7 
    美感 6
    总分 16
  • 红色激情 发表于 2018-12-07 07:44:09
    0 11
    创意 8
    复杂 9 
    美感 10
    总分 27
    角落反弹有bug,跑到屏幕外