Scratch少兒編程第86講: 水平滾動背景簡易實現方式

網友投稿 2020-03-21 13:52

前言

最近估計是疫情的原因,一直也沒心情,所以也沒什么靈感,一直不知道該講點什么。今天翻翻之前的課程,翻到了超級瑪麗這一節,突然想起來背景的水平滾動這塊。之前我們在游戲里有提過垂直的背景滾動,都沒有專門提過水平的背景滾動,這里有一個水平滾動的簡易方法,大家可以把他應用在自己的小游戲里,效果不錯的。以后CC哥會挑一些比較實用的通用性技巧,可以讓大家用在自己設計的小游戲里,讓游戲更生動完美。

請看示例:

設計思路

1:屏幕連續滾動首先就是講圖片的銜接性,需要圖片之間要無縫銜接。垂直滾動的時候會有點難度。但是水平滾動如果想簡單的話就非常簡單。只需要一張圖片左右翻轉就好了。左右翻轉的同一張圖片就可以實現無縫銜接。

2:連續滾動時,圖片是作為角色的,角色移動出屏幕是需要CC哥之前教的角色完全移出舞臺的技巧。

有了這兩點就非常容易實現啦。

代碼展示

https://cdn.china-scratch.com/timg/200323/13524252M-0.jpg

CC哥選了3個背景造型,下面這個黑的不用說是為了移出舞臺用的。

程序的功能:

https://cdn.china-scratch.com/timg/200323/135242B16-1.jpg

代碼部分邏輯:

1:首先將圖片角色生成兩個克隆體。

2:根據克隆體的編號,分布放好初始位置,然后慢慢向左邊移動。

3:當移動出舞臺后立即移動到最右邊重新進入屏幕。

https://cdn.china-scratch.com/timg/200323/1352433437-2.jpg

這一步很簡單,就是先設好變量的初始值,以及生成兩個克隆體。注意要給每個克隆體一個編號,用來對應不同的操作。我們編號為A和B。

克隆體的代碼稍長,CC哥截成兩段來講:

https://cdn.china-scratch.com/timg/200323/13524311G-3.jpg

克隆體啟動后,首先進行判斷,如果A克隆體,那么將方向設置為面向-90度,實際上就是把圖片做了左右翻轉,記得要實現把角色設定成左右翻轉。

https://cdn.china-scratch.com/timg/200323/1352444E0-4.jpg

重復執行的代碼里的造型大小的變化和切換造型都是為了讓角色能夠完全移動出舞臺。(大家可以在《角色完全移出舞臺》這一講里學習這個技巧)

https://cdn.china-scratch.com/timg/200323/13524435c-5.jpg

這個移動命令就是讓背景從右側進入屏幕。滑動坐標這個變量是全局變量,所以只要在一個克隆體里增加就好了。所以在這個克隆體里不需要管,統一在B克隆體里處理就好。

https://cdn.china-scratch.com/timg/200323/1352455J9-6.jpg

這個“否則”的部分代碼就是代表另一個克隆體里面的操作。

1:首先如果是“暫停”這個變量為No的話,那么滑動速度這個變量就減去1。反過來,如果這個變量為Yes的話,那么滑動速度這個變量就會停下來,也就意味著兩個圖片克隆體的運動會停下來。

2:如果B圖片克隆體已經完全移出了屏幕,就立即跳到屏幕右邊,也就是讓滑動坐標直接加上959。

3:滑動坐標這個變量代表移動循環長度,一圈下來就是960,然后復位為0。

另外屏幕滾動還加上了暫停鍵和屏幕切換鍵。

暫停:

https://cdn.china-scratch.com/timg/200323/135245N08-7.jpg

https://cdn.china-scratch.com/timg/200323/1352463137-8.jpg

這個技巧不復雜,關鍵注重好銜接時不要有縫隙。大家可以自己試試。如果好用,可以直接把這個角色做好之后導出來。在做其他程序的時候導入就行了。

--end--

后記,小編朋友公司研發了一個游戲化的少兒編程在線課程(5-12歲),游戲化教學結合scratch(一款在線少兒編程工具,類似樂高的積木拼搭),我家娃娃學了幾次課,非常喜歡(超預期),16次課才200多塊錢,對鍛煉孩子的思維能力和動手動力很有幫助。

感興趣的朋友可以掃描二維碼,關注一下,或微信搜索“大耳猴少兒編程”

http://www.bhucgxcz.icu/Uploads/Editor/2018-04-22/5adca08bdc212.jpg

聲明:本文章由網友投稿作為教育分享用途,如有侵權原作者可通過郵件及時和我們聯系刪除:freemanzk@qq.com