使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击(一)
使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击-激光组件(二)
使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击-飞船动画(三)
使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击-滚动背景(四)
使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击-敌人配置(五)
使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击-碰撞框和受伤区域(六)
使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击-受伤 爆炸 销毁组件(七)
使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击-敌人生成器(八)
使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击-标题菜单及游戏结束界面(九)
使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击-基础得分系统(十)
使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击-最高分和数据记录(十一)
使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击-黄色敌人(十二)
使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击-粉色敌人状态切换(十三)
使用Godot4组件制作竖版太空射击游戏_2D卷轴飞机射击-粉色敌人子弹(十四)
整体开发还是基于组件的思维。相比于工厂模式或者状态机,可能有些老套,但是更容易理解和编程
教程大概是2个小时 基本上一个小时就能有游戏的雏形。
不过由于都是初学者,所以大概整体是应该4个小时左右。
本篇文章实现难度曲线和音乐音效,约15分钟
加油!还有2节就完成这个游戏了!最多还有20分钟!
代码修改
难度曲线核心是按照时间增加难度
切换到敌人生成器,需要添加游戏状态,因为难度需要和分数连接起来,添加game_stats
黄色敌人和粉色敌人mode暂时设置为disbale不生成,只有到达一定分数才生成
代码修改如下
1增加一个时间参数偏移
2设置生成率为一个难度曲线
3分数超过某些值,高级敌人才生成
代码添加后,敌人就会按照难度生成,可运行游戏测试
难度曲线讲解
实际上就是这个函数,可以使用其他函数代替
声效添加
切换到ship场景,添加VariablePitchAudioStreamPlayer节点,每次发射激光都要有声音
拖动声音文件到检查器播放Stream流
现在运行游戏,发射子弹应该有声音
同样切换到爆炸场景,添加爆炸音乐,需要开启自动播放
同样的,敌人受击音乐也要添加,并且代码需要添加被击中播放
音频分离
需要设置声音总线,让音效和音乐分离开,好方便调节两部分音量大小
点击下方音频,添加总线music和sound
默认声音总线为master
修改刚才三个效果音频总线为sound
场景音乐
新建一个AudioStreamPlayer场景,更改名称为MusicPlayer,添加音乐music,同时设置自动播放
属性设置自动加载这个音乐场景
这样运行游戏,音乐和音效就都加载完成
本章完成了难度曲线和音乐声效,下一章是结尾,实现游戏存储