陳新龍
我們用Scratch模擬海浪,讓小球在海浪中隨波逐流。我們還可以調整海浪的強度。
把背景涂成黃色代表天空,紅色的小球角色代表小船,繪制矩形角色代表海洋。海洋可以用漸變效果,從淺藍到深藍(如圖1)。

在繪制完海洋后,我們需要在海洋上方繪制一條無形的線,填充和輪廓都選擇無。這條線有什么作用呢?帶著這個問題往下看吧(如圖2)。

下面我們用外觀中的特效工具“漩渦”讓風平浪靜的海面變成波濤洶涌的海面。海浪是由風等外力產生,設置一個變量“風級”代表風力大小,初始設為6級,你可以根據運行效果自行修改,級別越大,海洋也就越大。
接下來讓海面形成波浪效果,漩渦特效是以對象角色的圖形中心為圓點對整個圖形做扭曲,如果沒有我們在矩形上方繪制的隱形線條讓海浪角色的中心在海浪的上方,漩渦特效就無法畫出我們預想的波浪效果了。所以這根線要選在海面與舞臺中心對稱的天空中。
這里只需添加重復執行語句,讓漩渦特效的數值不斷循環變化就可以達到效果了(如圖3)。

小球部分的代碼比較簡單,讓它隨著波濤來回碰撞反彈,這里用自制積木“碰撞”,遇到或離開海浪的顏色就改變v坐標,把小球放在海面位置,點擊綠旗后重復執行(如圖4)。

編寫完成后點擊綠旗運行,看看小球是不是在海面上運動了。當然也可以把小球換成大輪船,這樣會更加逼真一些。