{"id":1023928,"student_id":2589,"content":"import random\nfrom game import (\n set_backdrop,\n create_sprite,\n create_sound,\n draw_text,\n forever,\n stop\n)\n\n\nset_backdrop('bg.jpg')\nplayer = create_sprite('p0.png', 'p1.png')\nball = create_sprite('ball.png')\nbar = create_sprite('bar0.png', 'bar1.png')\nhint = create_sprite('hint.png')\ngameover_text = create_sprite('gameover.png')\n\nblocks = []\nspeed = 10\nscore = 0\nlife = 3\nactive = False\ncombo = 0\n\nplayer.y = 800\nball.y = 700\nball.layer = 1\nhint.layer = 1\ngameover_text.layer = 1\ngameover_text.hidden = True\nhint.hidden = True\n\nball.direction = 0\n\nfor y in range(5):\n for x in range(10):\n b = create_sprite('b0.png', 'b1.png', 'b2.png', 'b3.png', 'b4.png', 'b5.png', 'b6.png', 'b7.png')\n b.x = x * 120 + 60\n b.y = y * 60 + 30\n b.costume_id = random.randrange(7)\n blocks.append(b)\n\n\n\ndef loop():\n global speed, score, life, active, combo, blocks\n\n player.x = cursor.x\n\n if active == True:\n ball.step_forward(speed)\n ball.bounce_edge()\n else:\n ball.y = 700\n ball.x = cursor.x\n\n if cursor.is_down == True:\n active = True\n\n if ball.touched(player) == True:\n ball.direction = (ball.x - player.x) * 45 / 100\n combo = 0\n\n if ball.y \u003e 850:\n active = False\n ball.direction = 0\n life = life - 1\n\n if life \u003c= 0:\n gameover()\n\n for b in blocks:\n if active == True:\n b.y = b.y + speed / 100\n\n if b.y \u003e 800 and b.hidden == False:\n gameover()\n\n if ball.touched(b) == True:\n b.hidden = True\n ball.direction = -ball.direction + 180\n if speed \u003c 20:\n speed = speed + 0.2\n combo = combo + 1\n score = score + combo\n\n if blocks[0].y \u003e 30:\n for x in range(10):\n b = create_sprite('b0.png', 'b1.png', 'b2.png', 'b3.png', 'b4.png', 'b5.png', 'b6.png', 'b7.png')\n b.x = x * 120 + 60\n b.y = -30\n b.costume_id = random.randrange(7)\n blocks = [b] + blocks\n\n draw_text('life: ' + str(life), 100, 860, 'white', 40)\n draw_text('score: ' + str(score), 500, 860, 'white', 40)\n draw_text('combo: ' + str(combo), 900, 860, 'white', 40)\n\n\n\ndef gameover():\n stop()\n for b in blocks:\n b.costume_id = 7\n player.costume_id = 1\n bar.costume_id = 1\n gameover_text.hidden = False\n\n\nforever(loop)\n","created_at":"2025-05-29T13:16:23.675+08:00","updated_at":"2025-05-29T13:17:31.087+08:00","name":"14_B_C_打磚塊_綜合練習_【講解】連續分數加成 副本","language":"python","screenshot":{"url":null},"parent_id":1012180,"plugin":"","description":null,"note":null,"status":"public","like_student_ids":[],"is_featured":false,"views":52,"hashid":"4y3s995v6","is_content_changed":false,"review_status":"unsubmitted","submitted_at":null,"reviewed_at":null,"advise":null,"is_deleted":false}
[{"id":38687856,"file_name":"b0.png","project_id":1023928,"asset_id":251763,"created_at":"2025-05-29T13:16:23.681+08:00","updated_at":"2025-05-29T13:16:23.681+08:00"},{"id":38687857,"file_name":"b1.png","project_id":1023928,"asset_id":251764,"created_at":"2025-05-29T13:16:23.682+08:00","updated_at":"2025-05-29T13:16:23.682+08:00"},{"id":38687858,"file_name":"b2.png","project_id":1023928,"asset_id":251765,"created_at":"2025-05-29T13:16:23.684+08:00","updated_at":"2025-05-29T13:16:23.684+08:00"},{"id":38687859,"file_name":"b3.png","project_id":1023928,"asset_id":251766,"created_at":"2025-05-29T13:16:23.685+08:00","updated_at":"2025-05-29T13:16:23.685+08:00"},{"id":38687860,"file_name":"b4.png","project_id":1023928,"asset_id":251767,"created_at":"2025-05-29T13:16:23.686+08:00","updated_at":"2025-05-29T13:16:23.686+08:00"},{"id":38687861,"file_name":"b5.png","project_id":1023928,"asset_id":251768,"created_at":"2025-05-29T13:16:23.687+08:00","updated_at":"2025-05-29T13:16:23.687+08:00"},{"id":38687862,"file_name":"b6.png","project_id":1023928,"asset_id":251769,"created_at":"2025-05-29T13:16:23.688+08:00","updated_at":"2025-05-29T13:16:23.688+08:00"},{"id":38687863,"file_name":"b7.png","project_id":1023928,"asset_id":251770,"created_at":"2025-05-29T13:16:23.689+08:00","updated_at":"2025-05-29T13:16:23.689+08:00"},{"id":38687864,"file_name":"ball.png","project_id":1023928,"asset_id":251771,"created_at":"2025-05-29T13:16:23.690+08:00","updated_at":"2025-05-29T13:16:23.690+08:00"},{"id":38687865,"file_name":"bar1.png","project_id":1023928,"asset_id":251772,"created_at":"2025-05-29T13:16:23.691+08:00","updated_at":"2025-05-29T13:16:23.691+08:00"},{"id":38687866,"file_name":"bg.jpg","project_id":1023928,"asset_id":251773,"created_at":"2025-05-29T13:16:23.691+08:00","updated_at":"2025-05-29T13:16:23.691+08:00"},{"id":38687867,"file_name":"bar0.png","project_id":1023928,"asset_id":251774,"created_at":"2025-05-29T13:16:23.692+08:00","updated_at":"2025-05-29T13:16:23.692+08:00"},{"id":38687868,"file_name":"gameover.png","project_id":1023928,"asset_id":251775,"created_at":"2025-05-29T13:16:23.693+08:00","updated_at":"2025-05-29T13:16:23.693+08:00"},{"id":38687869,"file_name":"hint.png","project_id":1023928,"asset_id":251776,"created_at":"2025-05-29T13:16:23.694+08:00","updated_at":"2025-05-29T13:16:23.694+08:00"},{"id":38687870,"file_name":"p0.png","project_id":1023928,"asset_id":251777,"created_at":"2025-05-29T13:16:23.695+08:00","updated_at":"2025-05-29T13:16:23.695+08:00"},{"id":38687871,"file_name":"p1.png","project_id":1023928,"asset_id":251778,"created_at":"2025-05-29T13:16:23.696+08:00","updated_at":"2025-05-29T13:16:23.696+08:00"},{"id":38687872,"file_name":"1.mp3","project_id":1023928,"asset_id":251779,"created_at":"2025-05-29T13:16:23.697+08:00","updated_at":"2025-05-29T13:16:23.697+08:00"},{"id":38687873,"file_name":"2.mp3","project_id":1023928,"asset_id":251780,"created_at":"2025-05-29T13:16:23.698+08:00","updated_at":"2025-05-29T13:16:23.698+08:00"},{"id":38687874,"file_name":"3.mp3","project_id":1023928,"asset_id":251781,"created_at":"2025-05-29T13:16:23.699+08:00","updated_at":"2025-05-29T13:16:23.699+08:00"},{"id":38687875,"file_name":"4.mp3","project_id":1023928,"asset_id":251782,"created_at":"2025-05-29T13:16:23.700+08:00","updated_at":"2025-05-29T13:16:23.700+08:00"},{"id":38687876,"file_name":"5.mp3","project_id":1023928,"asset_id":251783,"created_at":"2025-05-29T13:16:23.701+08:00","updated_at":"2025-05-29T13:16:23.701+08:00"},{"id":38687877,"file_name":"6.mp3","project_id":1023928,"asset_id":251784,"created_at":"2025-05-29T13:16:23.702+08:00","updated_at":"2025-05-29T13:16:23.702+08:00"},{"id":38687878,"file_name":"7.mp3","project_id":1023928,"asset_id":251785,"created_at":"2025-05-29T13:16:23.703+08:00","updated_at":"2025-05-29T13:16:23.703+08:00"},{"id":38687879,"file_name":"bgm.mp3","project_id":1023928,"asset_id":251786,"created_at":"2025-05-29T13:16:23.703+08:00","updated_at":"2025-05-29T13:16:23.703+08:00"},{"id":38687880,"file_name":"hit.wav","project_id":1023928,"asset_id":251787,"created_at":"2025-05-29T13:16:23.704+08:00","updated_at":"2025-05-29T13:16:23.704+08:00"}]
橘蘋學習平台
我的作品
檢視專案頁
匯出
複製
匯入
刪除
截圖
繁中
简中
English
日本語
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦