本帖最后由 lrdcq 于 2014-7-29 13:02 编辑
那我也来吧。这是我这边的 主弹幕发射器类 的 构造函数,我人懒啊把各种物体的发射都蹂躏到一起了确实很对不起,不过功能倒是非常全来着。。
如图所示大量的属性有预设。所以
1.一个简单的自机狙发射弹幕的JSON定义是- {mesh:WEHOUGAME.getBullet(0)}
复制代码 只需要定义弹幕“模型”即可
2.还记得我的bench1的普通弹幕抛洒么,那一个的定义是- {mesh:WEHOUGAME.getBullet(3),anglerandom:360,speedrandom:5,period:1,outfield:true,number:1,numberchange:[0.008,50]}
复制代码 除了模型定义,其他的分别是:角度随机范围:360 速度随机范围:5(默认速度是3,那么实际速度是0.5~5.5) 发射周期:1 出边界清除:true 每次发射数目:1 每次发射数目演变:每tick增加0.008,增加到50为止
3.符卡举例,例子是之前的“幻想格林尼治”的莲子一符“中子星喷发”,一共使用2个弹幕发射器- {mesh:WEHOUGAME.getBullet(24),palstancerandom:6,speedrandom:2,period:1,outfield:true},
- {period:130,type:'laser',number:3,angle:[15],speed:[1000],mesh:WEHOUGAME.getBullet(25),appearline:60,lifetime:130,bulletevents:[['t',1,['v',0.0001,0]]],birthse:4}
复制代码 分别解释
第一个发射,是往四周发射的粉色铳弹,如之前所说,默认情况是朝向自机的自机狙,那么palstancerandom:6定义其旋转曲率的随机度为6,即会在-3~3的范围内旋转(如图,发射处均是朝向自机发射,但大部分弹幕会往两边旋转),速度随机度2,这个理解,发射频率1即每tick发射一个弹幕的速度,最后一项是出界即清除。
第二个发射器,显然,就是中间的激光了(type:'laser'),一共有3条(number:3),其间隔的角度是15度(以目标(自机狙)为中心往两边分摊),然后mesh弹幕定义,预告线时间60tick(appearline:60),弹幕生存时间130tick,发射周期也是130tick。最后涉及到弹幕事件,一开始速度是1000(speed:[1000]),在time为1之后('t',1),其速度变为0.0001('v',0.0001,0),简单的说就是用1tick的时间把激光从发射点伸出来1000的距离,如果没速度的话激光根本没发射出来嘛~~。最后还有一个发射时引用音效ID=4.。。。
我相当于大概讲了一下我这里弹幕发射器的属性构成之类的。。。具体发射那段函数。。。。那百来行密密麻麻的真不敢贴出来啊。。。
|