- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第13章游开发
13.3 游戏开发 【例13-2】 被钓的鱼。 游戏背景:读过海明威的《老人与海》吗?那条被老人钓到的大鱼拖着小船在茫茫大海中游荡了几十个小时,鱼的那种挣扎、忽紧忽慢、若即若离的状态给人留下了深刻的印象。本游戏就模拟这种场景,被钓到的鱼围绕鼠标光标忽紧忽慢地游动,但始终不能断线而去。 程序:#Exp13_2.pyimport pygameimport pygame._viewfrom pygame.locals import *from Exp8_6 import Vector2import randombackground_image_filename=‘海底8.jpg’sprite_image_filename=‘鱼3.gif’‘’‘设置三个向量(对象):v1代表鱼的位置向量,v2代表当前鼠标位置向量,v3代表鱼到当前鼠标位置的向量。当需要位置的时候,调用getpos()方法;运算的时候,直接用向量’‘’ pygame.init()background = pygame.image.load(background_image_filename)fish = pygame.image.load(sprite_image_filename)w=int(fish.get_width())h=int(fish.get_height())#按图片的宽、高创建一个窗口w2=int(background.get_width())h2=int(background.get_height())screen = pygame.display.set_mode((w2,h2),0, 32)#设置窗口标题pygame.display.set_caption(被钩住的鱼......)#设置时钟clock=pygame.time.Clock() #鱼的初始位置设为画面中心v1=Vector2(w2/2.0,h2/2.0) #零向量v3=Vector2()flag=1while flag==1: #退出代码,略 #把背景图画上去 screen.blit(background, (0,0)) #把鱼画上去 screen.blit(fish, v1.getpos()) #画线 pygame.draw.line(screen,(255,255,255), pygame.mouse.get_pos(), (v1.x,v1.y+h/2)) time_passed=clock.tick() time_passed_seconds=time_passed/1000.0? #实参前面加 * 意味着把列表或元组展开 v2=Vector2(*pygame.mouse.get_pos() ) #计算鱼儿当前位置到鼠标位置的向量 vector_to_mouse=v2-v1 #获得鼠标的按键情况 pressed_mouse=pygame.mouse.get_pressed() #化为幺向量 vector_to_mouse.normalize() #v3可以看做是鱼的速度,但是由于这样的运算,鱼的速度就不断改变了 #在没有到达鼠标时加速运动,超过以后则减速。因而鱼会在鼠标附近游动。 v3=v3+(vector_to_mouse*.2) v1+=v3*time_passed_seconds #刷新画面 pygame.display.update( ) 第16次上机作业1-完成问题13.1 2-13.1 准备5首音乐,修改程序,当单击鼠标时,播放下一首音乐。在播放第5首音乐时,再次单击能播放第1首音乐。3-完成和理解例13-2。修改程序,使得当用户单击鼠标时,鱼能回到单击点。 第13章游 戏 开 发 主要内容 1. 图形化的问候问题 2. Pygame基础知识 3. Pygame基础知识应用 1.图形化的问候问题 初学者编写的第一个程序往往是显示问候语“Hello World!”,那么初学游戏开发的能不能用漂亮的图形进行问候呢? 【问题13-1】小游戏,让鹰随鼠标移动。 分析需要载入鹰的图片,背景图片,需要建立窗口,要让鹰随鼠标移动需要管理鼠标事件,这些都能用Pygame做到。 框图 #Ques13_1.py #导入pygame库 import pygame #导入一些常用的函
您可能关注的文档
最近下载
- 康明斯KT38-GM发动机零件图册.pdf
- 少儿跆拳道教学教案.doc VIP
- [工程监理管理]山东省建设工程监理文件资料用表DOC73页).doc
- RFID技术数字养殖解决方案.pdf
- 2025年江西工商职业技术学院单招职业技能测试题库附答案.docx VIP
- 初中公共安全教育优质课.pptx VIP
- 义务教育版(2024)三年级全一册信息科技 第21课 分享学习资源 教案.docx VIP
- 蚌埠经济开发区征地拆迁补偿安置方案.docx VIP
- DBJ50T-291-2018 建设工程施工现场安全资料管理标准.docx VIP
- 2023-2024学年七年级语文下学期期中期末课内备考与专项复习(部编五四制)(上海专用)08说明文(三)说明方法(原卷版+解析).docx VIP
文档评论(0)