{"id":538773,"student_id":1443,"content":"let bg = createSprite('bg.png'); //背景圖\nlet player = createSprite('p_0.png', 'p_1.png', 'p_2.png', 'p_3.png'); //叩叮玩家\nlet monster = createSprite('monster_0.png', 'monster_1.png', 'monster_2.png'); //怪物\nlet gameover = createSprite('gameover.png'); //遊戲結束\nlet nums = ['0.png', '1.png', '2.png', '3.png', '4.png', '5.png', '6.png', '7.png', '8.png', '9.png'];\nlet num1 = createSprite(nums); //千位\nlet num2 = createSprite(nums); //百位\nlet num3 = createSprite(nums); //十位\nlet num4 = createSprite(nums); //個位\n\nlet speed = 10; //向上跳的速度\nlet score = 0; //完成的階梯數\nlet timer = 0; //道具作用剩餘時間\nlet blocks = []; // 存放階梯的陣列\n\n// 設定角色的圖層\nplayer.layer = 1;\ngameover.layer = 2;\nnum1.layer = num2.layer = num3.layer = num4.layer = 3;\nplayer.rotationStyle = 'flipped';\ngameover.hidden = true;\n\nnum1.moveTo(50, 50);\nnum2.moveTo(120, 50);\nnum3.moveTo(190, 50);\nnum4.moveTo(260, 50);\n\n// 使用迴圈創造 16 個階梯角色\nfor (let i = 0; i \u003c 16; i++) {\n let b = createSprite('b_0.png', 'b_1.png', 'b_22.png', 'b_3.png', 'b_4.png', 'b_5.png');\n blocks[i] = b; // 將階梯角色存入陣列\n}\n\nrestart();\ngameover.on('click', restart);\n\n// 重新開始遊戲\nfunction restart () {\n speed = 0; //重置速度\n score = 0; //重置分數\n timer = 0; //重置計時器\n player.moveTo(600, 450); //重置玩家位置\n player.costumeId = 0; //重置玩家造型\n monster.y = -3000; //重置怪物位置\n\n for (let i = 0; i \u003c 16; i++) {\n //重置階梯\n blocks[i].x = Math.random() * 1200; //隨機水平位置\n blocks[i].y = i * 60; //垂直相隔 60\n blocks[i].hidden = false;\n }\n}\n\n// //遊戲迴圈\nforever(function () {\n updatePlayer(); //更新玩家\n blocks.forEach(updateBlock); //更新階梯\n scroll(); // 捲動所有角色\n updateMonster(); //更新怪物\n updateScore(); //更新遊戲分數\n if (bg.y \u003e 900) bg.y -= 1800;\n})\n\n// 更新玩家位置\nfunction updatePlayer() {\n if (key.right) {\n player.x += 10; //向右移動 10\n player.direction = 90; //圖片水平翻轉向右\n }\n if (key.left) {\n player.x -= 10; //左右移動 10\n player.direction = 270; //圖片水平翻轉向左\n }\n if (player.x \u003c 0) player.x += 1200;\n if (player.x \u003e 1200) player.x -= 1200;\n\n speed -= 0.5;\n player.y -= speed;\n\n timer -= 1; //減少效果時間\n if (timer == 0) player.costumeId = 0; //解除效果\n if (player.costumeId == 1) speed = 30; //氣球飛行\n if (player.costumeId == 2) speed = 60; //老鷹衝刺\n\n}\n\n// 相對移動\nfunction scroll () {\n let offset = 450 - player.y;\n if (offset \u003e 0) {\n bg.y += offset; //移動背景\n player.y += offset; //移動叩叮\n monster.y += offset; //移動怪物\n for (let i = 0; i \u003c 16; i++) {\n blocks[i].y += offset; //移動階梯\n }\n }\n\n gameover.hidden = player.y \u003c 1000;\n}\n\n// 更新階梯位置\nfunction updateBlock (block) {\n if (block.y \u003e 930) {\n block.y -= 60 * 16 + score; //根據分數拉開階梯距離\n block.x = Math.random() * 1200; //隨機水平位置\n block.hidden = false; // 重新顯示\n\n let rand = Math.random() * 100;\n if (rand \u003c 70) block.costumeId = 0; //70% 機率一般石階\n else if (rand \u003c 85) block.costumeId = 1; //15% 機率草叢石階\n else if (rand \u003c 90) block.costumeId = 2; //5% 飛鶴\n else if (rand \u003c 95) block.costumeId = 3; //5% 雲朵\n else if (rand \u003c 99) block.costumeId = 4; //4% 氣球\n else block.costumeId = 5; //1% 老鷹\n\n score += 1;\n }\n\n if (block.costumeId == 2) block.x += 5; //如果是白鶴就向右移動\n if (block.x \u003e 1300) block.x -= 1400; //如果移動超出邊界就重置到左側\n if (block.scale \u003e 1) block.scale -= 0.03; //如果被放大就持續縮小\n\n if (block.touched(player) \u0026\u0026 player.y \u003c block.y \u0026\u0026 speed \u003c 0 \u0026\u0026 player.costumeId !=3) {\n block.scale = 1.3; // 放大階梯\n speed = 20; // 跳起速度設為 20\n let id = block.costumeId //用變數簡短造型編號\n if (id == 1) speed = 30;\n if (id == 3 || id == 4 || id == 5) block.hidden = true;\n\n if (id == 4) {\n player.costumeId = 1;\n timer = 60;\n }\n if (id == 5) {\n player.costumeId = 2;\n timer = 120;\n }\n }\n}\n\n// 更新怪物\nfunction updateMonster () {\n // 如果怪物超出下方邊界就重置到上方\n if (monster.y \u003e 1000) {\n monster.y -= 5000;\n monster.x = Math.random() * 1200;\n monster.costumeId = Math.floor(Math.random() * 3);\n }\n if (monster.touched(player) \u0026\u0026 speed \u003c 0) {\n player.costumeId = 3;\n }\n}\n\n// 更新分數\nfunction updateScore () {\n num1.costumeId = Math.floor(score / 1000) % 10; //更新千位造型\n num2.costumeId = Math.floor(score / 100) % 10; //更新百位造型\n num3.costumeId = Math.floor(score / 10) % 10; //更新十位造型\n num4.costumeId = Math.floor(score / 1) % 10; //更新個位造型\n}","created_at":"2023-05-22T14:04:33.334+08:00","updated_at":"2023-05-22T14:07:57.322+08:00","name":"攀岩高手(延伸版) 副本","language":"javascript","screenshot":{"url":"https://cdn2.koding.school/uploads/project/screenshot/538773/f098ba21270e596955de2414b8af5d68.jpg"},"parent_id":503450,"plugin":"Game.set({width: 1200, height: 900})","description":null,"note":null,"status":"public","like_student_ids":[],"is_featured":false,"views":83,"hashid":"vngs52rqk","is_content_changed":false,"review_status":"unsubmitted","submitted_at":null,"reviewed_at":null,"advise":null,"is_deleted":false}
[{"id":12296765,"file_name":"fail.mp3","project_id":538773,"asset_id":611927,"created_at":"2023-05-22T14:04:33.345+08:00","updated_at":"2023-05-22T14:04:33.345+08:00"},{"id":12296766,"file_name":"8.png","project_id":538773,"asset_id":611928,"created_at":"2023-05-22T14:04:33.350+08:00","updated_at":"2023-05-22T14:04:33.350+08:00"},{"id":12296767,"file_name":"9.png","project_id":538773,"asset_id":611929,"created_at":"2023-05-22T14:04:33.352+08:00","updated_at":"2023-05-22T14:04:33.352+08:00"},{"id":12296768,"file_name":"3.png","project_id":538773,"asset_id":611930,"created_at":"2023-05-22T14:04:33.354+08:00","updated_at":"2023-05-22T14:04:33.354+08:00"},{"id":12296769,"file_name":"7.png","project_id":538773,"asset_id":611931,"created_at":"2023-05-22T14:04:33.355+08:00","updated_at":"2023-05-22T14:04:33.355+08:00"},{"id":12296770,"file_name":"0.png","project_id":538773,"asset_id":611932,"created_at":"2023-05-22T14:04:33.356+08:00","updated_at":"2023-05-22T14:04:33.356+08:00"},{"id":12296771,"file_name":"6.png","project_id":538773,"asset_id":611933,"created_at":"2023-05-22T14:04:33.357+08:00","updated_at":"2023-05-22T14:04:33.357+08:00"},{"id":12296772,"file_name":"2.png","project_id":538773,"asset_id":611934,"created_at":"2023-05-22T14:04:33.359+08:00","updated_at":"2023-05-22T14:04:33.359+08:00"},{"id":12296773,"file_name":"1.png","project_id":538773,"asset_id":611935,"created_at":"2023-05-22T14:04:33.361+08:00","updated_at":"2023-05-22T14:04:33.361+08:00"},{"id":12296774,"file_name":"5.png","project_id":538773,"asset_id":611936,"created_at":"2023-05-22T14:04:33.362+08:00","updated_at":"2023-05-22T14:04:33.362+08:00"},{"id":12296775,"file_name":"4.png","project_id":538773,"asset_id":611937,"created_at":"2023-05-22T14:04:33.363+08:00","updated_at":"2023-05-22T14:04:33.363+08:00"},{"id":12296776,"file_name":"gameover.png","project_id":538773,"asset_id":611938,"created_at":"2023-05-22T14:04:33.364+08:00","updated_at":"2023-05-22T14:04:33.364+08:00"},{"id":12296777,"file_name":"monster_1.png","project_id":538773,"asset_id":611939,"created_at":"2023-05-22T14:04:33.365+08:00","updated_at":"2023-05-22T14:04:33.365+08:00"},{"id":12296778,"file_name":"p_0.png","project_id":538773,"asset_id":611940,"created_at":"2023-05-22T14:04:33.367+08:00","updated_at":"2023-05-22T14:04:33.367+08:00"},{"id":12296779,"file_name":"p_1.png","project_id":538773,"asset_id":611941,"created_at":"2023-05-22T14:04:33.368+08:00","updated_at":"2023-05-22T14:04:33.368+08:00"},{"id":12296780,"file_name":"p_2.png","project_id":538773,"asset_id":611942,"created_at":"2023-05-22T14:04:33.370+08:00","updated_at":"2023-05-22T14:04:33.370+08:00"},{"id":12296781,"file_name":"monster_0.png","project_id":538773,"asset_id":611943,"created_at":"2023-05-22T14:04:33.371+08:00","updated_at":"2023-05-22T14:04:33.371+08:00"},{"id":12296782,"file_name":"p_3.png","project_id":538773,"asset_id":611944,"created_at":"2023-05-22T14:04:33.372+08:00","updated_at":"2023-05-22T14:04:33.372+08:00"},{"id":12296783,"file_name":"monster_2.png","project_id":538773,"asset_id":611945,"created_at":"2023-05-22T14:04:33.373+08:00","updated_at":"2023-05-22T14:04:33.373+08:00"},{"id":12296784,"file_name":"item_2.png","project_id":538773,"asset_id":611946,"created_at":"2023-05-22T14:04:33.376+08:00","updated_at":"2023-05-22T14:04:33.376+08:00"},{"id":12296785,"file_name":"bg.png","project_id":538773,"asset_id":611947,"created_at":"2023-05-22T14:04:33.377+08:00","updated_at":"2023-05-22T14:04:33.377+08:00"},{"id":12296786,"file_name":"b_22.png","project_id":538773,"asset_id":611948,"created_at":"2023-05-22T14:04:33.378+08:00","updated_at":"2023-05-22T14:04:33.378+08:00"},{"id":12296787,"file_name":"b_3.png","project_id":538773,"asset_id":611949,"created_at":"2023-05-22T14:04:33.379+08:00","updated_at":"2023-05-22T14:04:33.379+08:00"},{"id":12296788,"file_name":"b_4.png","project_id":538773,"asset_id":611950,"created_at":"2023-05-22T14:04:33.380+08:00","updated_at":"2023-05-22T14:04:33.380+08:00"},{"id":12296789,"file_name":"b_5.png","project_id":538773,"asset_id":611951,"created_at":"2023-05-22T14:04:33.381+08:00","updated_at":"2023-05-22T14:04:33.381+08:00"},{"id":12296790,"file_name":"b_0.png","project_id":538773,"asset_id":611952,"created_at":"2023-05-22T14:04:33.383+08:00","updated_at":"2023-05-22T14:04:33.383+08:00"},{"id":12296791,"file_name":"b_1.png","project_id":538773,"asset_id":611953,"created_at":"2023-05-22T14:04:33.384+08:00","updated_at":"2023-05-22T14:04:33.384+08:00"}]
橘蘋學習平台
我的作品
檢視專案頁
匯出
複製
匯入
刪除
下載 Android APP (APK)
截圖
繁中
简中
English
日本語
1:1:1
1:1
全寬
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦