Scratch/教程/移動
當你在 Scratch 專案中使用控制選項卡中的“當(鍵)鍵按下”時,很難實現平滑的移動。要實現平滑移動,你需要使用控制選項卡中的“永遠”迴圈和感應選項卡中的“<鍵(鍵)按下?>”。例如,這段指令碼
比這段指令碼效率高得多
但是,對於方向鍵,更好的指令碼是使用“將x改變10”表示右箭頭,“將y改變-10”表示左箭頭,等等。
在下面所有的教程中,你都將使用基於此想法的移動技巧。
在橫版平臺遊戲中,通常使用“速度”來控制精靈的移動。這是你使用速度變數進行高階移動程式設計的指南。“速度”只是一個變數的名稱,僅僅因為它被命名為速度並沒有什麼區別。但是,速度的概念為你的專案添加了一個複雜且高階的運動系統。
使用 yVelocity 將有助於你建立一個半現實且動態的重力系統。要開始本測試環節,請像這樣安排舞臺
然後在貓精靈中建立此指令碼
註釋塊的文字(如果你看不懂):這是一個基本的跳躍指令碼。我們將從分解它開始。第一個帶有將yVelocity設定為0積木的如果語句是為了防止貓穿透地面。下一個帶有將yVelocity設定為15積木的如果語句將在貓在地面上並且按下向上箭頭時起作用,並使貓跳躍。在這個如果語句之外,將y改變yVelocity將使他根據速度變數下降或上升。而將yVelocity改變-1是重力。
請記住,你可以更改指令碼中“將[yVelocity]設定為[15]”中的15,使貓跳得更高。
這涵蓋了Y速度。現在是時候瞭解X速度了。
“xVelocity”將幫助你使沿X軸的移動看起來更真實。首先像這樣安排你的舞臺
然後在貓精靈中建立以下指令碼
註釋塊的文字(如果你看不懂):這是沿X軸使用速度移動精靈所需的指令碼。maxSpeed可以是任何你想要的數字,取決於你希望精靈移動的速度。前兩個如果語句將xVelocity變數更改一定的數值。如果想要精靈移動得更快,這些數值可以更改。下一個如果-否則語句將使精靈指向他正在移動的方向。積木:將x改變xVelocity將使他根據他的速度移動。最後一個積木是摩擦力,並將使精靈最終緩慢停止。
現在,如果你將這兩個指令碼組合起來,你就可以完美地跳躍和奔跑。我希望這能幫助你解答你的問題。如果你需要任何其他資訊,請釋出你的問題,我將盡快回復你。



