教你制作小球淘汰賽(2)更完善的設計
第一:淘汰
制作時我們不僅需要小球停留在某關卡,還需要小球進入淘汰區(qū),這就需要添加一個塊來制作淘汰區(qū)。以下有2種做法:
1.?我的做法(比較容易,但是觀賞效果不如第二種):在綠塊下方創(chuàng)建紅塊,如圖,寫下以下代碼(圖一為第二關的紅線視圖,圖二為第一關的紅線代碼
圖一

圖二

其中r50就是第五十名的位置,排名等會講,scene.my.marb=49這一句可以省去,是為了檢查bug用的
這個代碼的效果是讓最后一名的小球自由落下到紅線上并移到淘汰區(qū)
將這個紅塊在每個關卡依次制作即可
為了保證排名可以正常顯示(關卡結束立即顯示),可以把這一關的所有物件加上以下一段代碼

這樣子可以讓某一關的小球全部通關后關卡中的東西消失,以讓小球更快觸碰紅線
2.?灰安教主做法(較難,但觀賞性強)
制作一個隱藏方塊置于兩關交界處

代碼區(qū)寫下

其中e.other._M?是判定碰撞的是否為彈珠,e.other.collideset是修改碰撞作用層,可以先不用寫。Timetolive=0即為碰撞后消失,下面的vel=[0,25]即為持續(xù)上升;
在這種情況下,小球碰到這個塊就可以去到淘汰區(qū)
但是總不能讓這個塊一開始就上升吧,所以還要加一個塊阻擋
在剛才的塊上方添加阻擋塊

代碼區(qū)寫下

即可實現(xiàn)自動去到淘汰區(qū)的效果
別忘記黏附到背景
第二:排名
這里介紹3種做法,難易等級和觀賞效果都是由低到高
第一種:我的做法1(難度:易)
特別簡單,不需要把所有淘汰區(qū)的位置寫出,只需要在每個紅線或淘汰區(qū)寫下
e.other.pos=scene.pos.taotai,
并在終點創(chuàng)建一個傳送點寫下以下代碼,如圖

邊上的平面向右移,中間創(chuàng)建一個墻,創(chuàng)建的墻上寫下每個名次,如上圖
這種方法很簡單,還可以依次設方框,在oncollide寫下text=e.other.materialname,顯示每個名次的小球名字,但缺點也很明顯,只有在終點才可以看到排名
第二種:我的做法2(難度:中)
1.?在第一關兩側向外移動平面,創(chuàng)建49個方框,注意這些方框的碰撞作用層要不同于背景和關卡,小球的碰撞作用層也要勾選排名的碰撞作用層,分別代表2-50名,如圖(我這里上面是預備格,你們可以把小球直接放入第一關的圓環(huán)內)并建立2個空隙,大小和小球的半徑相同,保證觸碰。(為了防止排名搖晃,可以在排名兩側創(chuàng)建兩個透明方框貫穿全部關卡,并且把排名的碰撞作用層和透明方框的碰撞作用層同時添加為一個新的碰撞作用層),例如,小球碰撞作用層為A+B,排名為B+C,透明方框為C

2.?創(chuàng)建49個變量分別儲存49個排名的位置(此處為scene.my.r2-scene.my.r50為例),盡量在空隙的中間,但是因為排名是不斷運動的,所以要在每塊排名的update分別寫下scene.my.r n =pos+[x,0]其中n為排名,x為需要的位置與排名塊的位置的x坐標(第一個數(shù)字)的差值通常為負數(shù)
舉個例子,我的淘汰賽中50名的代碼。當然,每個人做的可能插值不同

3.?用上述的紅線代碼,也就是這個

讓所有的紅線都能傳送到對應的名次
4.?每關的下墻創(chuàng)建一個長條,控制排名的位置

寫下以下代碼

scene.my.grade判斷所相等的那個數(shù)是當前關卡編號,例如這條代碼就是第二關的
復制長條到所有關卡即可。
特別提醒:兩塊排名區(qū)的所有排名一定要彼此黏附?。?!
5.?為了顯示排名所對應的球的名字,還要寫下下面代碼,其中的_b即為是否為小球的判定
_rank即為排名序號

這種做法有一個缺點,就是循跡追蹤繪圖器無法刪除,會影響觀感
第三種:灰安做法(難度:高)
與第二種大體思路相同,但可以避免出現(xiàn)上面的問題
1.提前制作49個排名數(shù)字,文本框,小球的落點并增加49個超小的小球(透明)

上面是總體樣貌結構,下面是小球落點和超小球的位置

3.?在每個超小球里寫下以下代碼,其中上面一段意思是把超小球的外觀和屬性改為傳送過來的淘汰的小球的屬性,并把傳送過來的小球刪除,后面一段就是把第五十名的位置設為此處(紅線或透明淘汰線上寫下傳送代碼以傳送到這里)

4.?在文本框的代碼區(qū)寫下以下代碼,顯示小球的名字并修改碰撞作用層防止干擾其他小球

5.?同上,把所有的排名工具彼此黏附,并延長關卡之間的透明隔板保證排名置于當前關卡
第三:視角跟隨
流暢的視角跟隨是必不可少的,有2種方法
第一種,如果你已經(jīng)有可以做到順著關卡移動的排名了,只需要點擊任意一塊排名,在選取中勾選視角跟隨即可;
第二種,如果你的排名為固定排名,不能跟隨關卡移動,可以增加一個視角跟隨方塊,向右移動右邊的平面,在關卡之間添加方框黏附到背景,寫下

即可(每關都要)
到現(xiàn)在,一個完美的框架就做好了,只需要再添加關卡內容就可以了
下一節(jié)將告訴你們怎么樣優(yōu)化細節(jié),期待你們能做出一個滿意的作品!