{"id":53631,"student_id":248,"content":"setBackdrop('black');\n\n// 創造天花板\nvar ceiling = createSprite(\"ceiling.png\");\nceiling.x = 320;\nceiling.y = 8;\nceiling.layer = 1;\n\n// 創造左右牆壁\nvar left_wall = createSprite(\"wall.png\");\nvar right_wall = createSprite(\"wall.png\");\nleft_wall.x = 130;\nright_wall.x = 510;\n\n// 創造玩家\nvar player = createSprite([\"player_1.png\", \"player_2.png\", \"player_3.png\", \"player_4.png\", \"player_5.png\"]);\nplayer.y = 50;\n\n//完整版程式碼\nvar stairs = []; // 存放階梯角色的陣列\nvar vy = 0; // 玩家垂直移動速度\nvar life = 3;\nvar score = 0;\nvar touchOn;\nvar lastTime=0;\nvar bestScore = DB.variables.bestScore || 0;\nvar flash = false;\n\nfor (var i = 0; i \u003c 6; i++) {\n var stair = createSprite([\"conveyor_left.png\", \"conveyor_right.png\", \"trampoline.png\", \"normal.png\", \"nails.png\", \"fake.png\"]);\n stair.x = Math.random()*290 + 185;\n stair.y = i*80 + 480;\n stair.costumeId = Math.floor(Math.random()*6);\n stairs.push(stair);\n}\n\nforever(function() {\n var time = Date.now();\n if (player.touched(ceiling) \u0026\u0026 time - lastTime \u003e 3000) { //上次被刺 刺到是3秒前\n life -= 3;\n lastTime = time;\n vy = 0;\n flash = true;\n }\n \n if(flash){\n setBackdrop('tomato');\n flash = false;\n \n }\n\n print(\"生命:\"+life, 0, 0, \"white\", 30);\n print(\"分數:\"+score, 0, 40, \"white\", 30);\n print(\"最高分:\"+bestScore, 200, 40, \"white\", 30);\n\n if (key.left \u0026\u0026 !player.touched(left_wall)) {\n player.x -= 3;\n }\n if (key.right \u0026\u0026 !player.touched(right_wall)) {\n player.x += 3;\n }\n\n // 如果玩家沒有踩到階梯,下降速度增加 0.1\n if (!player.touched(stairs)) {\n vy += 0.1;\n }\n player.y += vy; // 根據玩家下降速度移動角色 y 座標\n\n for (var i = 0; i \u003c stairs.length; i++) {\n stairs[i].y -= 2;\n if (stairs[i].y \u003c -10) {\n stairs[i].costumeId = Math.floor(Math.random()*5);\n stairs[i].y += 480;\n stairs[i].hidden = false;\n score = score + 1; // score++; score += 1;\n }\n }\n \n if (life \u003c= 0 || player.y \u003e 480) {\n \tsetBackdrop('tomato');\n \tif(score\u003ebestScore){\n \t DB.variables.set(\"bestScore\",score);\n \t}\n \tsound.play(\"gg.mp3\");\n stop();\n }\n \n});\n\nplayer.when('touch', stairs, function(s) {\n vy = 0;\n player.y = s.y - 20; //固定角色位置在當前的階梯上方\n if (s.costumeId == 2) { // 彈簧床\n vy = -6;\n }\n if (s.costumeId == 0) { //往左輸送帶\n player.x -= 2;\n }\n if (s.costumeId == 1) { //往右輸送帶\n player.x += 2;\n }\n //針刺平台\n if (s.costumeId == 4 \u0026\u0026 touchOn!=s) { //針刺\n life -= 3;\n flash = true;\n }\n //一般平台\n if (s.costumeId == 3 \u0026\u0026 touchOn!=s) { //針刺\n life += 1;\n }\n //假平台\n if(s.costumeId == 5 \u0026\u0026 touchOn!=s ) { // 假平台\n setTimeout(function() {\n s.hidden = true;\n }, 300);\n }\n \n touchOn = s;\n});\n\n\n/*\n\n\n\nsetBackdrop('black');\n\n// 創造天花板\nvar ceiling = createSprite(\"ceiling.png\");\nceiling.x = 320;\nceiling.y = 8;\nceiling.layer = 1;\n\n// 創造左右牆壁\nvar left_wall = createSprite(\"wall.png\");\nvar right_wall = createSprite(\"wall.png\");\nleft_wall.x = 130;\nright_wall.x = 510;\n\n// 創造玩家\nvar player = createSprite([\"player_1.png\",\"player_2.png\",\"player_3.png\",\"player_4.png\",\"player_5.png\"]);\nplayer.y = 50;\n\nvar stairs = [];\nvar vy = 0;\nvar life = 10;\nvar floor = 0;\nvar lastTime = 0;\nvar hit;\nvar bestScore = 1;\n\nfor(var i=0; i\u003c6; i++) {\n var stair = createSprite([\"conveyor_left.png\",\"conveyor_right.png\",\"normal.png\",\"nails.png\",\"trampoline.png\",\"fake.png\"]);\n\tstair.x = Math.random()*290 + 185;\n stair.y = i*80 + 480;\n stair.costumeId = Math.floor(Math.random()*6);\n stairs.push(stair);\n}\n\nvar clock = 0;\nforever(function() {\n setBackdrop('black');\n if(hit) {//被打到背景會閃紅\n setBackdrop('tomato');\n hit = false;\n }\n\tif (key.left \u0026\u0026 !player.touched(left_wall)) {\n \tplayer.x -= 3;\n }\n if (key.right \u0026\u0026 !player.touched(right_wall)) {\n \tplayer.x += 3;\n }\n if (!player.touched(stairs)) {\n vy += 0.1;\n }\n\n clock++;\n if (clock%6 == 0) {\n if (key.right) {\n if (player.costumeId == 1) {\n player.costumeId = 2;\n } else {\n player.costumeId = 1;\n }\n }\n\n if (key.left) {\n if (player.costumeId == 3) {\n player.costumeId = 4;\n } else {\n player.costumeId = 3;\n }\n }\n }\n\n if (key.right == false \u0026\u0026 key.left == false) { //沒有移動就是站立狀態\n player.costumeId = 0;\n }\n\n player.y += vy;\n\n for (var i=0; i\u003cstairs.length; i++) {\n \tstairs[i].y -= 2;\n if(stairs[i].y \u003c -10) { // 最上方是y=0,所以這行代表到天花板的意思\n stairs[i].costumeId = Math.floor(Math.random()*5);\n \tstairs[i].y += 480;\n stairs[i].hidden = false;\n floor += 1;\n }\n }\n if (life \u003c= 0 || player.y \u003e 480) { // 也可以寫在hit==true那邊\n \tsetBackdrop('tomato');\n stop();\n }\n var time = Date.now();\n if (player.touched(ceiling) \u0026\u0026 time - lastTime \u003e 3000) { //上次被刺 刺到是3秒前\n life -= 3;\n lastTime = time;\n hit = true;\n vy = 0;\n }\n print(floor, 370, 10, 'red', 20);\n print(life, 10, 10, 'red', 20);\n});\n\n//踩到踏板的程式\nplayer.when('touch',stairs, function(s) {\n if(player.y \u003e s.y) { // 碰到平台的下方就不作反應\n return;\n }\n vy = 0;\n player.y = s.y - 20; //站在平台上\n\tif(s.costumeId == 0) { //向左的輸送帶\n \tplayer.x -= 2;\n }\n if(s.costumeId == 1) { //向右的輸送帶\n \tplayer.x += 2;\n }\n if(s.costumeId == 4) { //彈跳床\n vy = -6;\n }\n if(s.costumeId == 2 \u0026\u0026 s !== player.touchOn) { //正常的平台,如果是剛踩到的話,就加一命\n \tlife += 1;\n }\n if(s.costumeId == 3 \u0026\u0026 s !== player.touchOn) { //有釘子的平台,踩到會扣血\n \tlife -= 3;\n hit = true;\n }\n if(s.costumeId == 5 \u0026\u0026 s !== player.touchOn) { // 假平台\n setTimeout(function() { // 0.3秒後,平台消失\n s.hidden = true\n }, 300);\n }\n player.touchOn = s;\n});\n*/","created_at":"2019-01-12T00:52:09.191+08:00","updated_at":"2019-11-10T01:30:07.257+08:00","name":"小朋友下樓梯 副本","language":"javascript","screenshot":{"url":"https://cdn5.koding.school/uploads/project/screenshot/53631/af63be485e967b50144ed1448bcfa445.jpg"},"parent_id":13412,"plugin":"","description":null,"note":null,"status":"public","like_student_ids":[],"is_featured":false,"views":263,"hashid":"jzmsr832","is_content_changed":false,"review_status":"unsubmitted","submitted_at":null,"reviewed_at":null,"advise":null,"is_deleted":false}
[{"id":956135,"file_name":"jump.mp3","project_id":53631,"asset_id":36478,"created_at":"2019-01-12T00:52:09.209+08:00","updated_at":"2019-01-12T00:52:09.209+08:00"},{"id":956136,"file_name":"gg.mp3","project_id":53631,"asset_id":36479,"created_at":"2019-01-12T00:52:09.212+08:00","updated_at":"2019-01-12T00:52:09.212+08:00"},{"id":956137,"file_name":"flash.mp3","project_id":53631,"asset_id":36476,"created_at":"2019-01-12T00:52:09.216+08:00","updated_at":"2019-01-12T00:52:09.216+08:00"},{"id":956138,"file_name":"bg.mp3","project_id":53631,"asset_id":36477,"created_at":"2019-01-12T00:52:09.218+08:00","updated_at":"2019-01-12T00:52:09.218+08:00"},{"id":956139,"file_name":"conveyor_left.png","project_id":53631,"asset_id":33485,"created_at":"2019-01-12T00:52:09.221+08:00","updated_at":"2019-01-12T00:52:09.221+08:00"},{"id":956140,"file_name":"conveyor_right.png","project_id":53631,"asset_id":33486,"created_at":"2019-01-12T00:52:09.226+08:00","updated_at":"2019-01-12T00:52:09.226+08:00"},{"id":956141,"file_name":"fake.png","project_id":53631,"asset_id":33487,"created_at":"2019-01-12T00:52:09.230+08:00","updated_at":"2019-01-12T00:52:09.230+08:00"},{"id":956143,"file_name":"trampoline.png","project_id":53631,"asset_id":33489,"created_at":"2019-01-12T00:52:09.237+08:00","updated_at":"2019-01-12T00:52:09.237+08:00"},{"id":956144,"file_name":"nails.png","project_id":53631,"asset_id":33490,"created_at":"2019-01-12T00:52:09.242+08:00","updated_at":"2019-01-12T00:52:09.242+08:00"},{"id":956145,"file_name":"ceiling.png","project_id":53631,"asset_id":33491,"created_at":"2019-01-12T00:52:09.246+08:00","updated_at":"2019-01-12T00:52:09.246+08:00"},{"id":956146,"file_name":"wall.png","project_id":53631,"asset_id":33492,"created_at":"2019-01-12T00:52:09.248+08:00","updated_at":"2019-01-12T00:52:09.248+08:00"},{"id":956147,"file_name":"player_3.png","project_id":53631,"asset_id":33493,"created_at":"2019-01-12T00:52:09.251+08:00","updated_at":"2019-01-12T00:52:09.251+08:00"},{"id":956148,"file_name":"player_4.png","project_id":53631,"asset_id":33494,"created_at":"2019-01-12T00:52:09.254+08:00","updated_at":"2019-01-12T00:52:09.254+08:00"},{"id":956149,"file_name":"player_2.png","project_id":53631,"asset_id":33495,"created_at":"2019-01-12T00:52:09.257+08:00","updated_at":"2019-01-12T00:52:09.257+08:00"},{"id":956150,"file_name":"player_5.png","project_id":53631,"asset_id":33496,"created_at":"2019-01-12T00:52:09.260+08:00","updated_at":"2019-01-12T00:52:09.260+08:00"},{"id":956151,"file_name":"player_1.png","project_id":53631,"asset_id":33497,"created_at":"2019-01-12T00:52:09.263+08:00","updated_at":"2019-01-12T00:52:09.263+08:00"},{"id":956186,"file_name":"normal.png","project_id":53631,"asset_id":23072,"created_at":"2019-01-12T03:44:29.358+08:00","updated_at":"2019-01-12T03:44:29.358+08:00"}]
橘蘋學習平台
我的作品
檢視專案頁
匯出
複製
匯入
刪除
下載 Android APP (APK)
截圖
繁中
简中
English
日本語
1:1:1
1:1
全寬
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦