scratch遊戲「小蝌蚪成長」用大背景 分割法

2021-10-07 12:46:50 字數 1674 閱讀 9914

網上有許多小蝌蚪的遊戲。其中有一遊戲,小蝌蚪開始很小,其四處游動吃蚊子幼蟲,吃乙個蚊子幼蟲其身體長大一點,長大到某尺寸變為青蛙。本例實現其部分功能,使用大背景,尺寸為960 * 720,將其分割為4個480 * 360的小影象,用這4個影象建立4個角色,它們協同工作實現大背景,使小蝌蚪能游到960 * 720大影象的任何位置。用這個例子說明實現大背景的步驟。

遊戲有6個角色:小蝌蚪、蚊子幼蟲和4個背景角色,每個背景角色大小都是480 * 360,名稱分別是:左上圖、右上圖、左下圖和右下圖,分別代表960 * 720的大影象的4塊小影象。前兩個角色每個都有兩個造型,以實現動畫。見下圖。

小蝌蚪的所有指令碼如下圖。「重複執行」指令碼中頭兩句是讓小蝌蚪跟隨滑鼠移動,因此小蝌蚪所在位置座標就是滑鼠的座標。這裡首先要找到小蝌蚪移動和背景角色移動的關係。由於4個背景角色位置有固定關係,因此,先找小蝌蚪移動(即滑鼠移動)和左上圖移動的關係。這裡涉及到3個角色:顯示視窗、小蝌蚪和左上圖角色。它們共用乙個座標系。顯示視窗中心座標為(0,0),它不會移動。小蝌蚪只能在顯示視窗中移動。背景角色移動方向和小蝌蚪移動方向相反,使小蝌蚪能游到960 * 720大影象的任何位置。當小蝌蚪位置在顯示視窗中心座標為(0,0)時,960 * 720大影象中心也應在(0,0),此時左上圖中心座標為(-240,180)。當小蝌蚪向顯示視窗左側移動,左上圖向顯示視窗右側移動,當小蝌蚪移到顯示視窗的左邊界(x座標-240),應該碰到大影象的左邊界,左上圖也向右移動240,因此其此時x座標為0。同理小蝌蚪從座標(0,0)移到移到顯示視窗的右邊界(x座標240),左上圖向左移動240,此時x座標為-480。參看下圖中的注釋,能更清楚的看到在這3個位置上,小蝌蚪x座標(即滑鼠x座標)和左上圖的x座標的關係。由此得出兩者關係為:左上圖x座標=-240-滑鼠x座標。參見注釋中兩者3點的y座標,可推出左上圖和滑鼠y座標之間關係為:左上圖y座標=180-滑鼠y座標。後邊4個判斷指令碼,是限制背景在一定範圍內移動。例如第1個判斷指令碼,當左上角圖形中心x座標=0後,就不能繼續右移,否則顯示視窗左側將出現一豎條空白。由於從960 * 720大影象中裁剪出4個480 * 360小影象不精確,實際上本例在小蝌蚪移到左右兩側時還會在兩側出現一豎條空白。解決的方法是使指令碼中數字480變小。

左上圖、右上圖、左下圖和右下圖指令碼如下。所有「當綠旗被單擊」指令碼是使自己移到初始位置。右列是它們接收到移動事件的響應指令碼。它們根據變數「左上圖x」和「左上圖y」移動。無論這4個圖移到任何位置,它們之間有固定關係,例如,左上圖和右上圖的中心的x座標相差480,y座標相同。這裡的數值不是480和360,也是由於從960 * 720大影象中裁剪出4個480 * 360小影象不精確,使4個小影象兩兩之間出現縫隙,解決的辦法也是使指令碼中數字480或360減小。有一點需要說明,裁剪不精確,影象橫豎線可能會錯開。因此從960 * 720大影象中精確裁剪出4個480 * 360小影象是很重要的。

蚊子幼蟲的所有指令碼如下。

本遊戲還可以增加功能,如記分系統,吃一條蚊子幼蟲加一分。還可使蟲子尺寸隨機改變,蝌蚪去吃尺寸比其大的蟲子,減一分。蝌蚪達到一定分數變為青蛙,分數減到某值,蝌蚪死亡等等。

小蝌蚪找媽媽 牛客

時間限制 c c 1秒,其他語言2秒 空間限制 c c 131072k,其他語言262144k 64bit io format lld 青蛙媽媽最近很不放心把蝌蚪寶寶送到幼兒園,但當她買菜回家時,卻發現可愛的孩子小蝌蚪走丟了。小池塘裡有很多石頭,青蛙家在其中標號為s的石頭上。小蝌蚪會移動k分鐘,每分...

使用Scratch製作專案《彈珠遊戲》

不知道大家有沒有聽說過這樣一句話,80後玩彈珠,90後玩遊戲,00後怎麼消遣業餘時間?不是王者就是吃雞。作為一名90後,我們對打彈珠在熟悉不過了,今天,我們就來了解以下如果使用scratch製作彈珠遊戲吧!首先,咱們先來體驗一款比較經典的打彈珠遊戲。點我進入遊戲 遊戲體驗完了,如果我們想要製作這個遊...

scratch程式設計滑雪者遊戲教程

首先我們來看一下效果 我們從演示中能看出4個角色 企鵝 大樹 旗子和裝飾用的坎,我們通過鍵盤操控企鵝滑雪躲避樹並撿起旗子,現在我們就來看看是怎麼編的吧!首先我們要畫出企鵝的造型,造型的排列一定不能亂哦!下面是具體程式 上面的程式會根據當前的造型而做出不同的變化 接著我們來看樹的程式 旗子的程式和大樹...