我的世界python指令攻略_PYTHON玩转我的世界——找钻石小游戏
原标题:PYTHON玩转我的世界——找钻石小游戏
非常简单的小游戏,总共代码50多行,新手也很容易理解。
游戏效果
随机放置一个钻石在玩家附近,同时每隔1秒在消息框中提示钻石和玩家之间的距离,并提示出是远离钻石还是接近钻石,玩家走到钻石边上,游戏结束,提示用时多少秒。
游戏演示视频
视频加载中...
程序代码import mcpi.minecraft as minecraft import time import random import math # 获取两点之间的距离 def distanceBetweenPoints(point1, point2): xd = point2.x - point1.x yd = point2.y - point1.y zd = point2.z - point1.z return math.sqrt((xd * xd) + (yd * yd) + (zd * zd)) if __name__ == "__main__": mc = minecraft.Minecraft.create time.sleep(2) playerPos = mc.player.getTilePos # 随机产生钻石坐标 randomBlockPos = playerPos randomBlockPos.x = random.randrange(randomBlockPos.x - 50, randomBlockPos.x + 50) randomBlockPos.y = random.randrange(randomBlockPos.y - 5, randomBlockPos.y + 5) randomBlockPos.z = random.randrange(randomBlockPos.z - 50, randomBlockPos.z + 50) # 放置一个钻石 mc.setBlock(randomBlockPos.x, randomBlockPos.y, randomBlockPos.z, 'DIAMOND_BLOCK') mc.postToChat("一个钻石被藏了起来,去把它找出来吧!") # 开始主循环 seeking = True lastDistanceFromBlock = -1 timeStarted = time.time while (seeking == True): time.sleep(2) # 获取玩家位置 playerPos = mc.player.getPos # 获取玩家位置和钻石位置的距离 distanceFromBlock = distanceBetweenPoints(randomBlockPos, playerPos) if lastDistanceFromBlock >= 0: if distanceFromBlock < 2: # 找到钻石! seeking = False else: if distanceFromBlock < lastDistanceFromBlock: mc.postToChat("目标接近中...距离:" + str(int(distanceFromBlock))) if distanceFromBlock > lastDistanceFromBlock: mc.postToChat("目标远离中...距离:" + str(int(distanceFromBlock))) lastDistanceFromBlock = distanceFromBlock timeTaken = time.time - timeStarted mc.postToChat("找到了!用时:" + str(int(timeTaken)) + "秒")
参考资料:https://blog.csdn.net/gogir/article/details/100074563
参考资料:https://www.stuffaboutcode.com/2013/01/raspberry-pi-minecraft-hide-and-seek.html返回搜狐,查看更多
责任编辑:
我的世界python指令攻略_PYTHON玩转我的世界——找钻石小游戏相关推荐
- 我的世界python指令攻略_我的世界之攻略大全149-指令大全又来啦
ascend - 把自己提升到上一个平台 bind {命令关键字} - 设置一键命令 clear - 清空控制台 damage - 关闭或者开启伤害 即无敌 descend - 把自己移动到下面一个的 ...
- python爬虫网页文字游戏_python爬虫下载某网站156个网页小游戏素材
本帖最后由 三木猿 于 2020-9-18 23:19 编辑 有哪些游戏自己看吧↓ 一波网页小游戏(摸鱼专用) https://www.52pojie.cn/thread-1269936-1-1.ht ...
- PYTHON玩转我的世界(2) —— 找钻石小游戏
非常简单的小游戏,总共代码50多行,新手也很容易理解. 游戏效果 随机放置一个钻石在玩家附近,同时每隔1秒在消息框中提示钻石和玩家之间的距离,并提示出是远离钻石还是接近钻石,玩家走到钻石边上,游戏结束 ...
- python自学攻略-Python自学攻略
原标题:Python自学攻略 在过去的十年里,随着自动化技术的出现,科技最终成为杰出的金融机构,银行,保险和投资公司,股票交易公司,对冲基金,券商等公司的一部分.根据2013年的Crosman 报告, ...
- 《MINECRAFT我的世界 新手完全攻略(第3版)》一1.4 关于快照版
本节书摘来异步社区<MINECRAFT我的世界 新手完全攻略(第3版)>一书中的第1章,第1.4节,作者: [澳]Stephen O'Brien 译者: 相世杰 责编: 赵轩,更多章节内容 ...
- 《MINECRAFT我的世界 新手完全攻略(第3版)》一1.1 注册与下载
本节书摘来异步社区<MINECRAFT我的世界 新手完全攻略(第3版)>一书中的第1章,第1.1节,作者: [澳]Stephen O'Brien 译者: 相世杰 责编: 赵轩,更多章节内容 ...
- 《MINECRAFT我的世界 新手完全攻略(第3版)》一2.2 去找树
本节书摘来异步社区<MINECRAFT我的世界 新手完全攻略(第3版)>一书中的第2章,第2.2节,作者: [澳]Stephen O'Brien 译者: 相世杰 责编: 赵轩,更多章节内容 ...
- 迷你星域冒险服务器维护中,迷你世界星域冒险攻略 星域冒险快速通关技巧[多图]...
迷你世界星域冒险是一个十分特殊的副本,里面的话是有很大难度的,不管有强大的boss存在,还有各种机关以及谜题需要你去解开,十分的复杂,稍微一不注意,就会卡在一个地方动弹不得了,具体来说的话,到底要怎么 ...
- 《MINECRAFT我的世界 新手完全攻略(第3版)》一1.3 开始新游戏
本节书摘来异步社区<MINECRAFT我的世界 新手完全攻略(第3版)>一书中的第1章,第1.3节,作者: [澳]Stephen O'Brien 译者: 相世杰 责编: 赵轩,更多章节内容 ...
最新文章
- smo算法matlab实现
- eclipse外观设置
- SimpleDateFormat 格式图
- SAP ui5 单元测试框架 - OPA
- 删除某个时间段之前的文件
- SpringCloud系列:分布式服务调用链跟踪整合Zipkin、RabbitMQ、Elasticsearch(二)
- 拖动窗体FormBorderStyle属性为None的窗体移动
- [Ext JS] 组件浮动一篇通(floating、alignTo)
- 苹果 M1带起ARM,英特尔 x86 霸主地位遭威胁
- Python 查询 MAC 地址相关信息
- 你能获得的数据量越大,你能挖掘到的价值就越多。
- 瀚高数据库不定时停库
- 从深圳地铁看-------以损害乘客利益为目标的营运方式
- UOM Convertion Rate API
- 马斯克“开房聊天”,中外网友在线求码!Clubhouse一夜火遍全球
- 计算机医学应用的前景,未来这3大专业,不仅就业前景广阔,而且不容易被外行人轻易取代...
- 【hdu2298】【三分】Toxophily
- Jenkins自动化部署-配置项目(下)
- n阶奇数魔方阵c语言编程,n阶魔方阵C语言
- 雪糕的最大数量(leetcode)
热门文章
- android qsb空间,Android launcher3中QSBSearchBar会在主菜单界面显示的问题。
- 星际无限受邀出席国际区块链周新浪潮之巅数字金融矿业大会
- 天正菜单栏不见了怎么显示出来_天正建筑CAD右侧的修改栏不见了怎么办?怎么调出来?...
- java实现发送邮件功能(可以添加附件)
- base64压缩/canvas.toDataURL
- 如何诠释恒指期货顺势做单
- 英雄联盟服务器不稳定领取皮肤,英雄联盟因服务器稳定性问题官方免费发放源计划娜美皮肤...
- python中地址路径的间隔符在字符中的表示
- Adobe Illustrator(AI)中画波浪线选择端点以及编辑的问题
- 数据库存储微信昵称emoji表情