{"id":559680,"student_id":10,"content":"createSprite('cover.png'); //設定背景圖\nlet player = createSprite('0.png', '1.png', '2.png', '3.png', '4.png', '5.png', '6.png', '7.png', '8.png', '9.png', '10.png'); //企鵝\nlet item = createSprite('item_0.png', 'item_1.png', 'item_2.png', 'item_3.png'); //拋出物品\nlet number = createSprite('n_1.png', 'n_2.png', 'n_3.png', 'n_4.png', 'n_5.png'); //倒數數字\nlet info = createSprite('info.png', 'next.png', 'end.png'); //遊戲說明、下個關卡、遊戲結束\nlet sight = createSprite('target.png'); //準星\n\nlet blocks = []; //存放冰塊角色的陣列\nlet level = 0; //等級\nlet timer = 0; //計時器\nlet target; //目標冰塊\nlet vy = 0; //物品下降速度\nlet count = 0; //紅寶石數量\nlet score = 0; //金塊數量\nlet clock = 0; //動畫計時器\n\nfor (let y = 0; y \u003c 6; y++) {\n for (let x = 0; x \u003c 10; x++) {\n let b = createSprite('b_0.png', 'b_1.png', 'b_2.png', 'b_3.png', 'b_4.png', 'b_4.png', 'b_4.png', 'b_4.png');\n b.x = x * 100 + 150;\n b.y = y * 100 + 150;\n if (x % 2 == 0)b.y -= 50;\n b.on('click', function () {\n if (b.costumeId \u003e 3 \u0026\u0026 timer \u003c 900) {\n target = b; //點擊冰塊設定目標\n }\n });\n b.layer = -1;\n blocks.push(b);\n }\n}\n\nplayer.rotationStyle = 'fixed';\nnumber.opacity = 0.3;\n\n//開始每個關卡\nfunction startLevel () {\n level += 1; //每進入一個關卡等級 +1\n count = 0; //紅寶石數量歸零\n timer = 1200; //重置計時器\n target = undefined; //取消目標物\n info.hidden = true; //隱藏說明\n player.moveTo(600, 450); //重置玩家企鵝\n item.moveTo(600, 1000); //移動到畫面外\n\n for (let i = 0; i \u003c 60; i++) {\n if (i \u003c 17) blocks[i].costumeId = 1;\n else if (i \u003c 20) blocks[i].costumeId = 3;\n else if (i \u003c 21 + level) blocks[i].costumeId = 2;\n else blocks[i].costumeId = 0;\n }\n shuffle();\n}\n\n//冰塊隨機互換\nfunction shuffle () {\n for (let i = 0; i \u003c 100; i++) {\n let randA = Math.floor(Math.random() * 60); //隨機整數 0 - 59\n let randB = Math.floor(Math.random() * 60); //隨機整數 0 - 59\n let a = blocks[randA].costumeId; //隨機取出 A 冰塊的造型編號\n let b = blocks[randB].costumeId; //隨機取出 B 冰塊的造型編號\n blocks[randA].costumeId = b; //交換造型編號\n blocks[randB].costumeId = a; //交換造型編號\n }\n}\n\n// 遊戲迴圈\nfunction gameloop () {\n sight.moveTo(cursor); //準星不斷跟著滑鼠移動\n if (info.hidden) {\n updateTimer(); //更新計時器\n updatePlayer(); //更新企鵝角色\n updateTexts(); //引出計分板文字\n }\n}\n\n// 更新企鵝\nfunction updatePlayer () {\n if (target != undefined) {\n player.toward(target); //朝向目標\n player.stepForward(6); //向前移動\n player.costumeId = Math.floor(timer / 12) % 2; //走路動畫\n player.costumeId += Math.floor(player.direction / 90) * 2; //根據方向切換造型\n if (player.distanceTo(target) \u003c 6) {\n target.costumeId -= 4; //翻開冰塊\n if (target.costumeId == 1) score += 1; //挖到金塊\n if (target.costumeId == 2) count += 1; //挖到紅寶石\n if (target.costumeId == 3) {\n count = 0; // 清空紅寶石\n timer = 0; //挖到炸彈時間歸零\n player.costumeId = 10; //變成烤焦造型\n }\n clock = 20; //動畫時間\n target = undefined;\n }\n }\n\n //挖冰塊的動畫\n if (player.costumeId != 10) {\n clock -= 1;\n if (clock \u003e 10) player.costumeId = 8; //挖下動作\n else if (clock \u003e 0) player.costumeId = 9; //挖起動作\n }\n}\n\n//更新計時器\nfunction updateTimer () {\n if (timer \u003e 0) timer -= 1; //時間減少 1\n if (timer == 0) timeout(); //時間到\n if (timer == 900) hideAll(); //蓋上冰塊\n number.hidden = timer \u003e 300 \u0026\u0026 timer \u003c 900; //顯示倒數數字\n number.costumeId = Math.floor(timer / 60) % 5; //切換倒數數字造型\n}\n\n//時間到\nfunction timeout () {\n info.hidden = false; //顯示\n info.costumeId = count == level ? 1 : 2;\n}\n\n//隱藏全部寶石\nfunction hideAll () {\n for (let i = 0; i \u003c 60; i++) {\n blocks[i].costumeId += 4;\n }\n}\n\n//更新拋出的物品\nfunction updateitem () {\n vy += 0.5; //向下速度增加\n item.y += vy; //改變垂直 y 座標\n item.direction += 10; //旋轉\n}\n\n//顯示計分板上的文字\nfunction updateTexts () {\n drawText(Math.floor(timer / 60), 250, 830, 'white', 50); //剩餘時間\n drawText(score, 650, 830, 'white', 50); //金塊數量\n drawText(count, 1050, 830, 'white', 50); //紅寶石數量\n}\n\n//點擊遊戲說明圖\nfunction infoOnClick () {\n if (info.costumeId == 2) {\n let result = createSprite('end_0.png', 'end_1.png', 'end_2.png', 'end_3.png', 'end_4.png', 'end_5.png'); //創造企鵝解鎖圖\n result.costumeId = Math.floor(score / 10); //根據分數切換解鎖等級\n if (result.costumeId \u003e 5) result.costumeId = 5; //最高只能解鎖至最後一張\n info.destroy(); //隱藏說明圖\n } else {\n startLevel(); //開始新的一局\n }\n}\n\nforever(gameloop);\ninfo.on('click', infoOnClick);","created_at":"2023-07-07T11:39:39.880+08:00","updated_at":"2024-01-15T23:36:36.081+08:00","name":"企鵝挖寶(延伸版) 副本","language":"javascript","screenshot":{"url":"https://cdn3.koding.school/uploads/project/screenshot/559680/cbad0f9b279eb74f3672697656e8a05f.jpg"},"parent_id":507659,"plugin":"Game.set({width: 1200, height: 900});","description":null,"note":null,"status":"public","like_student_ids":[],"is_featured":false,"views":101,"hashid":"vngs5kg5g","is_content_changed":false,"review_status":"unsubmitted","submitted_at":null,"reviewed_at":null,"advise":null,"is_deleted":false}
[{"id":12745732,"file_name":"item_1.png","project_id":559680,"asset_id":614065,"created_at":"2023-07-07T11:39:39.887+08:00","updated_at":"2023-07-07T11:39:39.887+08:00"},{"id":12745733,"file_name":"end_3.png","project_id":559680,"asset_id":614066,"created_at":"2023-07-07T11:39:39.888+08:00","updated_at":"2023-07-07T11:39:39.888+08:00"},{"id":12745734,"file_name":"end_2.png","project_id":559680,"asset_id":614067,"created_at":"2023-07-07T11:39:39.889+08:00","updated_at":"2023-07-07T11:39:39.889+08:00"},{"id":12745735,"file_name":"end_1.png","project_id":559680,"asset_id":614068,"created_at":"2023-07-07T11:39:39.890+08:00","updated_at":"2023-07-07T11:39:39.890+08:00"},{"id":12745736,"file_name":"end_0.png","project_id":559680,"asset_id":614069,"created_at":"2023-07-07T11:39:39.891+08:00","updated_at":"2023-07-07T11:39:39.891+08:00"},{"id":12745737,"file_name":"b_4.png","project_id":559680,"asset_id":614070,"created_at":"2023-07-07T11:39:39.893+08:00","updated_at":"2023-07-07T11:39:39.893+08:00"},{"id":12745738,"file_name":"b_0.png","project_id":559680,"asset_id":614071,"created_at":"2023-07-07T11:39:39.894+08:00","updated_at":"2023-07-07T11:39:39.894+08:00"},{"id":12745739,"file_name":"item_0.png","project_id":559680,"asset_id":614072,"created_at":"2023-07-07T11:39:39.895+08:00","updated_at":"2023-07-07T11:39:39.895+08:00"},{"id":12745740,"file_name":"10.png","project_id":559680,"asset_id":614073,"created_at":"2023-07-07T11:39:39.895+08:00","updated_at":"2023-07-07T11:39:39.895+08:00"},{"id":12745741,"file_name":"9.png","project_id":559680,"asset_id":614074,"created_at":"2023-07-07T11:39:39.896+08:00","updated_at":"2023-07-07T11:39:39.896+08:00"},{"id":12745742,"file_name":"8.png","project_id":559680,"asset_id":614075,"created_at":"2023-07-07T11:39:39.897+08:00","updated_at":"2023-07-07T11:39:39.897+08:00"},{"id":12745743,"file_name":"3.png","project_id":559680,"asset_id":614076,"created_at":"2023-07-07T11:39:39.898+08:00","updated_at":"2023-07-07T11:39:39.898+08:00"},{"id":12745744,"file_name":"5.png","project_id":559680,"asset_id":614077,"created_at":"2023-07-07T11:39:39.899+08:00","updated_at":"2023-07-07T11:39:39.899+08:00"},{"id":12745745,"file_name":"2.png","project_id":559680,"asset_id":614078,"created_at":"2023-07-07T11:39:39.900+08:00","updated_at":"2023-07-07T11:39:39.900+08:00"},{"id":12745746,"file_name":"4.png","project_id":559680,"asset_id":614079,"created_at":"2023-07-07T11:39:39.901+08:00","updated_at":"2023-07-07T11:39:39.901+08:00"},{"id":12745747,"file_name":"1.png","project_id":559680,"asset_id":614080,"created_at":"2023-07-07T11:39:39.901+08:00","updated_at":"2023-07-07T11:39:39.901+08:00"},{"id":12745748,"file_name":"7.png","project_id":559680,"asset_id":614081,"created_at":"2023-07-07T11:39:39.902+08:00","updated_at":"2023-07-07T11:39:39.902+08:00"},{"id":12745749,"file_name":"0.png","project_id":559680,"asset_id":614082,"created_at":"2023-07-07T11:39:39.903+08:00","updated_at":"2023-07-07T11:39:39.903+08:00"},{"id":12745750,"file_name":"6.png","project_id":559680,"asset_id":614083,"created_at":"2023-07-07T11:39:39.904+08:00","updated_at":"2023-07-07T11:39:39.904+08:00"},{"id":12745751,"file_name":"gameover.png","project_id":559680,"asset_id":614084,"created_at":"2023-07-07T11:39:39.905+08:00","updated_at":"2023-07-07T11:39:39.905+08:00"},{"id":12745752,"file_name":"end.png","project_id":559680,"asset_id":614085,"created_at":"2023-07-07T11:39:39.906+08:00","updated_at":"2023-07-07T11:39:39.906+08:00"},{"id":12745753,"file_name":"end_5.png","project_id":559680,"asset_id":614086,"created_at":"2023-07-07T11:39:39.906+08:00","updated_at":"2023-07-07T11:39:39.906+08:00"},{"id":12745754,"file_name":"end_4.png","project_id":559680,"asset_id":614087,"created_at":"2023-07-07T11:39:39.907+08:00","updated_at":"2023-07-07T11:39:39.907+08:00"},{"id":12745755,"file_name":"b_2.png","project_id":559680,"asset_id":614088,"created_at":"2023-07-07T11:39:39.908+08:00","updated_at":"2023-07-07T11:39:39.908+08:00"},{"id":12745756,"file_name":"b_1.png","project_id":559680,"asset_id":614089,"created_at":"2023-07-07T11:39:39.909+08:00","updated_at":"2023-07-07T11:39:39.909+08:00"},{"id":12745757,"file_name":"b_3.png","project_id":559680,"asset_id":614090,"created_at":"2023-07-07T11:39:39.910+08:00","updated_at":"2023-07-07T11:39:39.910+08:00"},{"id":12745758,"file_name":"board.png","project_id":559680,"asset_id":614091,"created_at":"2023-07-07T11:39:39.911+08:00","updated_at":"2023-07-07T11:39:39.911+08:00"},{"id":12745759,"file_name":"item_3.png","project_id":559680,"asset_id":614092,"created_at":"2023-07-07T11:39:39.912+08:00","updated_at":"2023-07-07T11:39:39.912+08:00"},{"id":12745760,"file_name":"item_2.png","project_id":559680,"asset_id":614093,"created_at":"2023-07-07T11:39:39.913+08:00","updated_at":"2023-07-07T11:39:39.913+08:00"},{"id":12745761,"file_name":"info.png","project_id":559680,"asset_id":614094,"created_at":"2023-07-07T11:39:39.914+08:00","updated_at":"2023-07-07T11:39:39.914+08:00"},{"id":12745762,"file_name":"n_1.png","project_id":559680,"asset_id":614095,"created_at":"2023-07-07T11:39:39.914+08:00","updated_at":"2023-07-07T11:39:39.914+08:00"},{"id":12745763,"file_name":"n_2.png","project_id":559680,"asset_id":614096,"created_at":"2023-07-07T11:39:39.915+08:00","updated_at":"2023-07-07T11:39:39.915+08:00"},{"id":12745764,"file_name":"n_3.png","project_id":559680,"asset_id":614097,"created_at":"2023-07-07T11:39:39.916+08:00","updated_at":"2023-07-07T11:39:39.916+08:00"},{"id":12745765,"file_name":"n_4.png","project_id":559680,"asset_id":614098,"created_at":"2023-07-07T11:39:39.917+08:00","updated_at":"2023-07-07T11:39:39.917+08:00"},{"id":12745766,"file_name":"n_5.png","project_id":559680,"asset_id":614099,"created_at":"2023-07-07T11:39:39.918+08:00","updated_at":"2023-07-07T11:39:39.918+08:00"},{"id":12745767,"file_name":"next.png","project_id":559680,"asset_id":614100,"created_at":"2023-07-07T11:39:39.918+08:00","updated_at":"2023-07-07T11:39:39.918+08:00"},{"id":12745768,"file_name":"target.png","project_id":559680,"asset_id":614101,"created_at":"2023-07-07T11:39:39.919+08:00","updated_at":"2023-07-07T11:39:39.919+08:00"},{"id":12745769,"file_name":"cover.png","project_id":559680,"asset_id":614102,"created_at":"2023-07-07T11:39:39.920+08:00","updated_at":"2023-07-07T11:39:39.920+08:00"}]
橘蘋學習平台
橘蘋學習平台
我的作品
檢視專案頁
匯出
複製
匯入
刪除
下載 Android APP (APK)
截圖
1:1:1
1:1
full
幫助
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦