{"id":17258,"student_id":888,"content":"","created_at":"2017-03-01T20:52:04.729+08:00","updated_at":"2019-11-11T22:04:13.495+08:00","name":"多人賽車","language":"javascript","screenshot":{"url":"https://cdn1.koding.school/uploads/project/screenshot/17258/fd1ac05835b665cf0d7e3c5532c7c2d7.jpg"},"parent_id":2,"plugin":"var ID = Date.now().toString() + Math.floor(Math.random()*10000).toString();\nvar hostid;\nvar NAME = prompt('name?');\n\nvar target_1 = createSprite(\"target.jpg\");\nvar target_2 = createSprite(\"target.jpg\");\nvar road = createSprite(\"border.png\");\nvar car = createSprite(\"blue.png\");\ntarget_2.y = -500;\n\nvar speed = 0;\nvar round = 0;\nvar objects = [road, car, target_1, target_2];\n\ntarget = target_2;\n\nvar cars = {};\nvar users = {};\nusers[ID] = {\n id: ID,\n name: NAME,\n updateTime: 0,\n offsetX: 0,\n offsetY: 0,\n direction: 0,\n status: 0\n};\ncars[ID] = car;\n\nwindow.cars = cars;\n\nforever(function(){\n\n users[ID].updateTime = Date.now();\n users[ID].offsetX = car.x - road.x;\n users[ID].offsetY = car.y - road.y;\n users[ID].direction = car.direction;\n \n DB.broadcast(\"update\", users[ID]);\n\n hostid = ID;\n for (var id in users) {\n if (id \u003c hostid) {\n hostid = id;\n }\n }\n\n var h = 0;\n for (var id in users) {\n h++;\n if (id == hostid) {\n print(users[id].name + '(房主)', 10, 30*h, 'red');\n } else {\n print(users[id].name, 10, 30*h, 'red');\n }\n\n cars[id].x = users[id].offsetX + road.x;\n cars[id].y = users[id].offsetY + road.y;\n cars[id].direction = users[id].direction;\n\n if (Date.now() \u003e users[id].updateTime + 5000) {\n cars[id].destroy();\n delete cars[id];\n delete users[id];\n }\n }\n});\n\nDB.onMessage(\"update\", function (data) {\n if (users[data.id]) {\n users[data.id] = data;\n } else {\n users[data.id] = data;\n var car = createSprite(\"red.png\");\n cars[data.id] = car;\n }\n});\n\nforever(function(){\n if (car.touched(target_1) \u0026\u0026 target == target_1) {\n target = target_2;\n round += 1;\n }\n if (car.touched(target_2) \u0026\u0026 target == target_2) {\n target = target_1;\n round += 1;\n }\n if (round == 2) {\n users[ID].status = 0;\n }\n if (car.touched(road)) {\n speed = 0.3;\n }\n if (speed \u003c 8) {\n speed += 0.1;\n }\n if (key.left) {\n car.direction -= 3;\n }\n if (key.right) {\n car.direction += 3;\n }\n if (users[ID].status == 1) {\n car.stepForward(speed);\n }\n\n var offsetX = car.x - 320;\n var offsetY = car.y - 240;\n\n for (var i=0; i\u003cobjects.length; i++) {\n objects[i].move(-offsetX, -offsetY);\n }\n});\n\nforever(function(){\n\n for (var i in cars) {\n var car = cars[i];\n var fire = createSprite(\"red.png\");\n fire.moveTo(car);\n fire.direction = car.direction;\n\n fire.forever(function () {\n this.scale -= 0.02;\n this.opacity -= 0.02;\n if (this.scale \u003c= 0 || this.opacity \u003c= 0) {\n this.destroy();\n }\n });\n\n objects.push(fire);\n }\n});\n\nwhen('keydown', 'enter', function() {\n if (hostid != ID) {\n return;\n }\n startGame();\n DB.broadcast('startGame');\n});\n\nfunction startGame () {\n car.moveTo(road);\n users[ID].status = 1;\n target = target_2;\n round = 0;\n}\n\nDB.onMessage('startGame', startGame);\n","description":null,"note":null,"status":"public","like_student_ids":[2328,2327,173],"is_featured":false,"views":699,"hashid":"gk4skepd","is_content_changed":false,"review_status":"unsubmitted","submitted_at":null,"reviewed_at":null,"advise":null,"is_deleted":false}
[{"id":352162,"file_name":"red.png","project_id":17258,"asset_id":40459,"created_at":"2017-12-08T18:04:02.171+08:00","updated_at":"2017-12-08T18:04:02.171+08:00"},{"id":352163,"file_name":"gold.png","project_id":17258,"asset_id":40460,"created_at":"2017-12-08T18:04:02.181+08:00","updated_at":"2017-12-08T18:04:02.181+08:00"},{"id":352164,"file_name":"blue.png","project_id":17258,"asset_id":40461,"created_at":"2017-12-08T18:04:02.191+08:00","updated_at":"2017-12-08T18:04:02.191+08:00"},{"id":352165,"file_name":"border.png","project_id":17258,"asset_id":40462,"created_at":"2017-12-08T18:04:02.232+08:00","updated_at":"2017-12-08T18:04:02.232+08:00"},{"id":352166,"file_name":"target.jpg","project_id":17258,"asset_id":40463,"created_at":"2017-12-08T18:04:02.241+08:00","updated_at":"2017-12-08T18:04:02.241+08:00"}]
橘蘋學習平台
橘蘋學習平台
我的作品
檢視專案頁
匯出
複製
匯入
刪除
下載 Android APP (APK)
截圖
1:1:1
1:1
full
幫助
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦