{"id":894979,"student_id":2589,"content":"from game import *\nfrom random import *\n\nbg = create_sprite('bg.png') #背景\nbucket = create_sprite('bucket_0.png') #籃子底層\nbucket_cover = create_sprite('bucket_1.png') #籃子上層\nplayer = create_sprite('p_0.png', 'p_1.png') #叩叮\nnumbers = [str(i) + '.png' for i in range(10)]\nn1 = create_sprite(numbers) #百位數\nn2 = create_sprite(numbers) #十位數\nn3 = create_sprite(numbers) #個位數\nrules = create_sprite('rules.png') #遊戲說明\ncreate_sound('bgm.wav', True) #背景音樂\n\nbg.move_to(600, 900)\nplayer.move_to(600, 700 + 900)\nbucket.move_to(700, 700 + 900)\nbucket_cover.move_to(700, 700 + 900)\nn1.move_to(150, 70)\nn2.move_to(100, 70)\nn3.move_to(50, 70)\n\nbucket_cover.layer = 2\nplayer.layer = 3\nn1.layer = n2.layer = n3.layer = 3\nrules.layer = 4\n\nitems = [] #存放掉落物\nscore = 0 #分數\nspeed = 2 #速度\n\n# 初始化角色屬性\ndef reset(s):\n s.y = random() * 2000 - 2100\n s.x = random() * 1000 + 100\n s.direction = random() * 360\n s.costume_id = randrange(3)\n s.status = 0\n s.vy = 0\n s.vx = 0\n s.combo = 0\n\n# 創造多個掉落物\nfor i in range(15):\n s = create_sprite('apple.png', 'orange.png', 'mushroom.png')\n reset(s)\n items.append(s)\n\n# 遊戲迴圈\ndef loop():\n global speed\n if key.space: rules.hidden = True #按下空白鍵隱藏遊戲說明\n if rules.hidden and bg.y \u003e 0: scroll() #如果遊戲說明隱藏就向下捲動\n if bg.y == 0: #如果背景已經降下來\n update_player() #更新玩家\n update_bucket() #更新籃子\n update_items() #更新水果\n update_scores() #更新分數\n speed += 0.0005\n\n# 捲動場景\ndef scroll():\n bg.y -= 2\n player.y -= 2\n bucket.y -= 2\n bucket_cover.y -= 2\n\n# 更新玩家\ndef update_player():\n if key.right: player.x += 10\n if key.left: player.x -= 10\n player.costume_id = (player.x // 100) % 2\n if player.y \u003e 700: player.y -= 5\n\n# 讓籃子跟著玩家移動\ndef update_bucket():\n bucket.x = player.x + 100\n bucket.y = player.y\n bucket_cover.x = player.x + 100\n bucket_cover.y = player.y\n \n# 更新掉落物\ndef update_items():\n global score\n for s in items:\n move_item(s) #移動掉落物\n player_collide(s) #頭部碰撞偵測\n bucket_collide(s) #籃子碰撞偵測\n if s.y \u003e 1000: reset(s)\n\n# 移動掉落物\ndef move_item(s):\n global score\n if s.status == 0:\n s.y += speed\n if s.status == 1:\n s.y += s.vy\n s.vy += 1\n s.x += s.vx\n s.direction += s.vx\n if s.status == 2:\n s.x = bucket.x\n s.y += speed / 2\n if s.y \u003e= 700: #完全進入籃子\n score += 1 + s.combo\n reset(s)\n if s.y \u003e= 650 and s.costume_id == 2: #進入一半且為蘑菇\n stop()\n\n# 頭部偵測碰撞\ndef player_collide(s):\n if abs(s.x - player.x) \u003c 100 and abs(s.y - player.y + 150) \u003c 50:\n s.status = 1\n s.vy = -15\n s.vx = (s.x - player.x) / 20\n s.combo += 1\n player.y += 20\n create_sound('hit.mp3')\n\n# 籃子偵測碰撞\ndef bucket_collide(s):\n if abs(s.x - bucket.x) \u003c 100 and abs(s.y - bucket.y + 50) \u003c 50:\n s.status = 2\n \n# 更新分數\ndef update_scores():\n n1.costume_id = score // 1 % 10 #個位數\n n2.costume_id = score // 10 % 10 #十位數\n n3.costume_id = score // 100 % 10 #百位數\n\nforever(loop) #重複不斷執行遊戲迴圈\n\n","created_at":"2024-11-26T16:50:11.391+08:00","updated_at":"2025-05-07T15:47:54.888+08:00","name":"4_蘋果收割季_完整版","language":"python","screenshot":{"url":"https://cdn7.koding.school/uploads/project/screenshot/894979/6a03bc4f3cec06e5c10be4ecbd1c0a7c.jpg"},"parent_id":894972,"plugin":"","description":null,"note":null,"status":"public","like_student_ids":[],"is_featured":false,"views":67,"hashid":"vngsn4dgy","is_content_changed":false,"review_status":"unsubmitted","submitted_at":null,"reviewed_at":null,"advise":null,"is_deleted":false}
[{"id":34767452,"file_name":"rules.png","project_id":894979,"asset_id":794693,"created_at":"2024-11-26T16:50:28.245+08:00","updated_at":"2024-11-26T16:50:28.245+08:00"},{"id":34767453,"file_name":"6.png","project_id":894979,"asset_id":794694,"created_at":"2024-11-26T16:50:28.250+08:00","updated_at":"2024-11-26T16:50:28.250+08:00"},{"id":34767454,"file_name":"7.png","project_id":894979,"asset_id":794695,"created_at":"2024-11-26T16:50:28.255+08:00","updated_at":"2024-11-26T16:50:28.255+08:00"},{"id":34767455,"file_name":"4.png","project_id":894979,"asset_id":794696,"created_at":"2024-11-26T16:50:28.259+08:00","updated_at":"2024-11-26T16:50:28.259+08:00"},{"id":34767456,"file_name":"5.png","project_id":894979,"asset_id":794697,"created_at":"2024-11-26T16:50:28.264+08:00","updated_at":"2024-11-26T16:50:28.264+08:00"},{"id":34767457,"file_name":"2.png","project_id":894979,"asset_id":794698,"created_at":"2024-11-26T16:50:28.269+08:00","updated_at":"2024-11-26T16:50:28.269+08:00"},{"id":34767458,"file_name":"3.png","project_id":894979,"asset_id":794699,"created_at":"2024-11-26T16:50:28.274+08:00","updated_at":"2024-11-26T16:50:28.274+08:00"},{"id":34767459,"file_name":"mushroom.png","project_id":894979,"asset_id":794700,"created_at":"2024-11-26T16:50:28.278+08:00","updated_at":"2024-11-26T16:50:28.278+08:00"},{"id":34767460,"file_name":"orange.png","project_id":894979,"asset_id":794701,"created_at":"2024-11-26T16:50:28.283+08:00","updated_at":"2024-11-26T16:50:28.283+08:00"},{"id":34767461,"file_name":"p_1.png","project_id":894979,"asset_id":794702,"created_at":"2024-11-26T16:50:28.287+08:00","updated_at":"2024-11-26T16:50:28.287+08:00"},{"id":34767462,"file_name":"8.png","project_id":894979,"asset_id":794703,"created_at":"2024-11-26T16:50:28.291+08:00","updated_at":"2024-11-26T16:50:28.291+08:00"},{"id":34767463,"file_name":"9.png","project_id":894979,"asset_id":794704,"created_at":"2024-11-26T16:50:28.295+08:00","updated_at":"2024-11-26T16:50:28.295+08:00"},{"id":34767464,"file_name":"0.png","project_id":894979,"asset_id":794705,"created_at":"2024-11-26T16:50:28.299+08:00","updated_at":"2024-11-26T16:50:28.299+08:00"},{"id":34767465,"file_name":"1.png","project_id":894979,"asset_id":794706,"created_at":"2024-11-26T16:50:28.304+08:00","updated_at":"2024-11-26T16:50:28.304+08:00"},{"id":34767466,"file_name":"p_0.png","project_id":894979,"asset_id":794707,"created_at":"2024-11-26T16:50:28.309+08:00","updated_at":"2024-11-26T16:50:28.309+08:00"},{"id":34767467,"file_name":"apple.png","project_id":894979,"asset_id":794708,"created_at":"2024-11-26T16:50:28.313+08:00","updated_at":"2024-11-26T16:50:28.313+08:00"},{"id":34767468,"file_name":"bg.png","project_id":894979,"asset_id":794709,"created_at":"2024-11-26T16:50:28.320+08:00","updated_at":"2024-11-26T16:50:28.320+08:00"},{"id":34767469,"file_name":"bucket_0.png","project_id":894979,"asset_id":794710,"created_at":"2024-11-26T16:50:28.324+08:00","updated_at":"2024-11-26T16:50:28.324+08:00"},{"id":34767470,"file_name":"bucket_1.png","project_id":894979,"asset_id":794711,"created_at":"2024-11-26T16:50:28.329+08:00","updated_at":"2024-11-26T16:50:28.329+08:00"},{"id":34767471,"file_name":"bgm.wav","project_id":894979,"asset_id":794712,"created_at":"2024-11-26T16:50:28.560+08:00","updated_at":"2024-11-26T16:50:28.560+08:00"},{"id":34767472,"file_name":"hit.mp3","project_id":894979,"asset_id":794713,"created_at":"2024-11-26T16:50:28.570+08:00","updated_at":"2024-11-26T16:50:28.570+08:00"}]
橘蘋學習平台
我的作品
檢視專案頁
匯出
複製
匯入
刪除
截圖
繁中
简中
English
日本語
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦