簡單(菜)的LuaSTG教程3:更復雜的簡單彈幕
emmmm
為什么標題叫更復雜的簡單彈幕呢,不是有矛盾嗎
UP小學語文沒學好唉,其實是不矛盾的
因為這篇講的是子彈和子彈組,他們只能做到勻變速直線運動,所以叫簡單彈幕
但是,讓他們的發(fā)射更加花里胡哨的復雜,就是復雜彈幕了
我大概不會講很多,只會放幾個簡單(?)的例子
首先,舉個什么例子好呢
那就妖夢斬擊吧((
首先,放一張成品圖


哇這是什么東西啊怎么這么一大坨啊
emmm其實也不是很復雜啦我就一個循環(huán)一個循環(huán)的講吧
(上面的大循環(huán)是奇數狙,下面的是偶數狙,沒什么區(qū)別
首先是一顆小子彈

嗯,這是一顆小狙(,速度為3,角度為0,aim to player為true的子彈
然后呢,再是第二個循環(huán)
還記得開花彈嗎?開花彈就是靠循環(huán)改變變量a,然后把a賦值給子彈的angle,那么子彈的速度也同樣是可行的
定義一個變量v,init為3,increment為0.5
這樣就做到了一發(fā)彈幕的效果

然后呢,就是那個'斬'的動作了
斬的動作其實更簡單,只要改變子彈的發(fā)射點就好了
定義一個變量x,然后賦值,增量隨意(這個妖夢斬擊的話,我喜歡x從-120到120
執(zhí)行21次,間隔2幀,變量名x,init為-120,increment為24(雖然循環(huán)執(zhí)行了21次,但變量其實才變了20次,所以執(zhí)行21次)

似乎有那味了,但是這只是easy版的
那么lunatic版的該怎么實現(xiàn)呢
其實子彈aim to player開上了之后呢,就是自機和發(fā)彈源的角度加上子彈屬性里的angle而已
所以這個自機狙其實是相對的(也就是說,只要angle不為0,那就絕對打不中自機(不考慮判定大小))
所以呢,讓這個東西的angle分別為-30,0,30不就行了嗎?(這個數據不一定是原版的)
執(zhí)行三次,變量a,init為-30,increment為30
然后就做出上面的效果了
這三個循環(huán)的順序是無關的.
可以自己試試把他變成偶數的?
我覺得只要講兩個例子就夠了((
然后呢,下一個就是更花里胡哨的例子了
[純粹的彈幕地獄],就是這張卡.
其實原理很簡單(由于我懶教程需要,我就直接做4P的效果,逐漸加強的效果就不做了)
要用到四個create task(我菜,只能這樣做

先做1P,1P是什么效果來著(
我就當它是那個紅彈好了


第一個循環(huán)是執(zhí)行無限次,間隔為30幀
第二個執(zhí)行30次,變量a代表的是隨機開花彈,后面的xzb,yzb就是代表隨機坐標
而圖中這種發(fā)射點在一個圓上的效果該怎么做呢?
發(fā)彈點的X坐標加上一個R*cos(angle)????????????????????????????????????????????????????????????????????????????????????????????????????????????????Y坐標加上一個R*sin(angle)
其實就是圓的參數方程,R代表圓的半徑,angle只要等于子彈發(fā)射的角度就行了
2P效果的話,和一p沒什么區(qū)別,換了個彈型,XY坐標,發(fā)射間隔


三p的話,就是左右兩大護法,藍彈一出天地滅
其實也和1,2P差不了多少


在上面的基礎,interval改為60,way數改為75,顏色變?yōu)樗{色,X,Y坐標變化
4P最簡單,連續(xù)的開花彈


好了,這期教程就到這里吧
8888888888888(湊不要臉