卡牌抽籤 ( 20 中 1 )
這篇教學會利用 Scratch 的「區域變數」和「全域變數」概念,製作可以從 20 卡牌裡進行抽籤,抽出中獎卡牌的抽籤小遊戲。
繪製角色造型
使用「繪畫」工具建立角色「card」,角色有三個造型,分別是卡牌封面「cover」、沒中獎「no」和中獎「yes」,尺寸設定為 60x60,並對齊畫布中心點。
積木程式原理
點擊 card 角色,設定點擊綠旗時定位到舞台左上角,造型設定為 cover,新增一個變數 ok 作為抽中的號碼,號碼設定為 1~20 的隨機整數。
從左側積木清單裡,新增函式「建立分身」,勾選「執行完畢再更新畫面」。
函式的內容先隱藏本尊,接著使用重複四次積木,每次重複時除了往下移動,會再重複五次往右移動,如此一來就能產生 5x4 共 20 個分身,分身產生後顯示分身。
新增「適用所有角色」的「全域」變數 num,,新增「僅適用當前角色」的「區域」變數 num_local。
在「建立分身」函式裡,設定 num 為 0,接著設定每次產生分身時將 num 增加 1,並把 num_local 數值設為當前 num 的值,由於每個分身裡的區域變數 num_local 不會互相影響,這個做法就能透過區域變數 num_local 知道每個分身的號碼。
設定點擊角色後,判斷 num_local 數值是否等於 ok 的數值,如果相等,就將這張卡牌改成中獎的造型,如果不相等,將卡牌改成沒中獎的造型,並刪除分身。
完成效果
所有角色的程式都完成後,點擊綠旗,舞台上會出現 20 張卡牌,點擊卡牌就可以開始抽籤。
範例解答
範例解答:卡牌抽籤 ( 20 中 1 )
意見回饋
如果有任何建議或問題,可傳送「意見表單」給我,謝謝~