如何製作一個完美的(運動)操作系統

本操作系統屬於外國大神自制的跳躍系統,本人只是翻譯+一些個人的理解,如侵權那麼我會刪除此貼
這是大神的教程鏈接,小學英文系數,差不多能看懂
http://pan.baidu.com/s/1c1OALrE(轉者注:連接已失效)
首先看效果(沒有踢牆跳)





流暢的嚇人而且。。。反正就是超級666
小貓的素材也是大神畫的
如果你是新手,不要猶豫,戳進這個帖子

 

首先,你要準備的是:
1.一臺裝有scratch的電腦。
2.一個小貓的角色。(在上面的教程s.b2文件可以找到)
3.一個有基本理解力並且學過scratch的腦子
4.以上均爲廢話。

————分割線————

(一)簡單的重力系統——
如題,這一大段要講的就是重力系統啦。
重力系統,要做的就是讓你的小貓向下移動,最簡單的方式如下:
 1.1

效果如下:
1.2
看起來很蠢對吧,沒錯這就是很蠢,所以我們需要一個新的變量—— 1.3
效果如下:
 1.4
這樣看上去就好多了對吧。
然後呢。。我們就做好了重力系統。(沒錯就是如此簡單)
注意事項:
1.是增加的是-1不是1。
2.不要把y座標錯認成x座標。

但是————光掉落可不行,在碰到地面的時候總得停下來吧。
所以呢——
1.5
效果如下:
1.6
細心的大家肯定發現了,y座標增加1的動畫被顯示了出來,這導致小貓看上去像“浮”出來了一樣。
這是因爲scratch會在一串積木執行完畢或者重複執行的末尾時更新動畫。
解決的辦法是不讓scratch刷新屏幕。
既然重複執行是循環的,不能用普通腳本代替,那麼——
利用自定義模塊的運行不刷新。

1.7
完美解決:
1.8
更新完畢
 

㈡移動
衆所周知,移動是做一個跳躍遊戲必不可少的要素之一,那麼今天就來學習移動。
首先看一個栗子:

2.1
給它加一點特技,就會變得很油,很亮,DUANGDUANGDUANG!!(霧):

2.2
然後看效果:

2.3
很顯然,小貓直接飛過了臺子,牛頓老人家的骨灰盒都壓不住了。
所以我們要改進,碰到地面,那麼就返回!(PS:上一章所說的,sc會在重複執行的最後更新動畫,所以我們不必擔心腳底下的地面):

2.4
但是這樣的話,就會出現:如果地面上有一個米粒大的凸起♂,但是小貓仍然走不過去。爲了修復這個BUG,我們需要了解如何判斷這是一面牆還是一個斜坡——斜坡檢測。
大家都知道,在爬坡的時候,你的x和y座標是在不斷增加/減少的。


(靈魂畫手)
然後爬坡的時候需要擡腿對吧,怎麼擡呢,由於小貓不能一眼看出要擡到哪裏,我們要模擬。
一個像素一個像素向上擡,如果說你的腿擡到了空中,那麼你就把整個身子定在那裏不動(實際上實現的時候你動的是整個身子)
但是如果你的腿不夠高,跨不過這座牆。

你就要把你的腿放下來,並且退回到你走這一步的時候。
下面上代碼:


2.5
嗯。。看效果:

2.6

OK,本章完結。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章