- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
少儿编程分享:手把手教你用Python编写俄罗斯方块(十)
游戏分享:手把手教你用Python编写
俄罗斯方块 (十)
2017.12.28
这是俄罗斯方块的最后一章了
经历了这么多游戏
编写了这么多代码
你的心中是否有所收获呢
温故而知新 在一段时间的学习之后
也要懂得总结与回顾
从底板坐标转换为像素坐标
437.def convertToPixelCoords(boxx, boxy):
438. # Convert the given xy coordinates of the board to xy
439. # coordinates of thelocation on the screen.
440. return (XMARGIN + (boxx * BOXSIZE)), (TOPMARGIN + (boxy *
BOXSIZE))
该辅助函数将板的坐标转换为像素坐标。 此功能与前一游戏程序中使用的其他
“转换坐标”功能相同。
在屏幕上绘制底板或任何地方的方块
443.def drawBox(boxx, boxy, color, pixelx None, pixely None):
444. # draw a single box (each tetromino piece has four boxes)
445. # at xy coordinates on the board. Or, if pixelx pixely
446. # are specified, draw to the pixel coordinates stored in
447. # pixelx pixely (this is used for the Next piece).
448. if color BLANK:
449. return
450. if pixelx None and pixely None:
451. pixelx, pixely convertToPixelCoords(boxx, boxy)
452. pygame.draw.rect(DISPLAYSURF, COLORS[color], (pixelx + 1, pixely
+ 1, BOXSIZE - 1, BOXSIZE - 1))
453. pygame.draw.rect(DISPLAYSURF, LIGHTCOLORS[color], (pixelx + 1,
pixely + 1, BOXSIZE - 4, BOXSIZE - 4))
drawBox()函数在屏幕上绘制一个方块。 该函数可以接收boxx和boxy参数,用
于要绘制框的底板坐标。 但是,如果指定pixelx和pixely参数,则这些像素坐标
将覆盖boxx和boxy参数。 pixelx和pixelely参数用于绘制不在底板上的 “下一
个”积木上。
如果pixelx和pixely参数未设置,则默认情况下,当函数首次开始时,它们将被
设置为None。 那么第450行的if语句将覆盖来自convertToPixelCoords()的返
回值的None值。 此调用获取由boxbox和boxy指定的板坐标的像素坐标。
代码不会用颜色填满整个方块的空间。 要在两块积木的方块之间有一个黑色的轮
廓,在python.ra()调取的left和top参数被添加其中,而-1和1被添加到width和
height参数中。 为了画出突出方块,首先在452是方块绘制较深的颜色。然后,
在第453行是较暗方块的方块的顶部绘制一个稍小的方块。
在屏幕上绘制一切东西
456.def drawBoard(board):
457. # draw the border around the board
458. pygame.draw.rect(DISPLAYSURF, BORDERCOLOR, (XMARGIN - 3,
TOPMARGIN - 7, (BOARDWIDTH * BOXSIZE) + 8, (BOARDHEIGHT *
BOXSIZE) + 8), 5)
459.
460. # fill the background of the board
461. py
您可能关注的文档
- 宝鸡至广元自驾游路线.doc
- 宝齐莱(Carl F.Bucherer)官方售后维修客户服务中心.docx
- 实 施 规 划 情 (必填)况.doc
- 实拍遗留下的古村落,后三图令人匪夷所思!.pdf
- 实例分析教材解读与课堂改进.ppt
- 实数的概念--华师大版40635.ppt
- 实数的概念--华师大版40648.ppt
- 实拍:斯柯达昊锐自动变速器维修过程.docx
- 实施乡村振兴战略,必须做到“六个推动”.pdf
- 实施教育信息化2.0行动计划,可能面临的挑战与应对策略.docx
- 2023咸阳职业技术学院招聘笔试真题参考答案详解.docx
- 2023四川化工职业技术学院招聘笔试真题及参考答案详解.docx
- 2023哈尔滨职业技术学院招聘笔试真题及参考答案详解.docx
- 2023商洛职业技术学院招聘笔试真题及答案详解1套.docx
- 2023呼伦贝尔职业技术学院招聘笔试真题参考答案详解.docx
- 2023南阳农业职业学院招聘笔试真题参考答案详解.docx
- 2023天津公安警官职业学院招聘笔试真题带答案详解.docx
- 2023年上海电机学院招聘笔试真题参考答案详解.docx
- 2023年四川艺术职业学院招聘笔试真题参考答案详解.docx
- 2023安徽体育运动职业技术学院招聘笔试真题及答案详解一套.docx
文档评论(0)