CodeCombat地牢关卡Python代码
最近迷上了玩CodeCombat,特将地牢关卡的Python代码整理如下,供有兴趣的人学习交流探讨
1,Kithgard地牢
hero.moveRight()
hero.moveDown()
hero.moveRight()
2,深藏的宝石
hero.moveRight()
hero.moveDown()
hero.moveUp()
hero.moveUp()
hero.moveRight()
3,幽灵守卫
# 避开食人魔的视线,夺取宝石。
hero.moveRight()
hero.moveUp()
hero.moveRight()
hero.moveDown()
hero.moveRight()
4,真实姓名
hero.moveRight()
hero.attack("Brak")
hero.attack("Brak")
hero.moveRight()
hero.attack("Treg")
hero.attack("Treg")
hero.moveRight()
hero.moveRight()
5,高举之剑
# 打败食人魔
# 记住,每个攻击两次。
hero.moveRight()
hero.attack("Rig")
hero.attack("Rig")
hero.attack("Gurt")
hero.attack("Gurt")
hero.attack("Ack")
hero.attack("Ack")
6,注解监牢
hero.say("密码是什么?")
# 使用"say()"函式来说出密码.
# 密码是: "Achoo"
hero.say("Achoo")
hero.moveUp()
hero.moveUp()
7,Kithgard的图书管理员
hero.moveRight()
hero.say("Hush")
hero.moveRight()
8,焰中舞动
# 代码通常按写下的顺序执行
# 循环多次重复一个代码块
# 按Tab或4个空格把移动指令缩进在循环内部 while True:
hero.moveRight()
hero.moveLeft()
9,循环又循环
# 在 while true 里的代码会永远重复!
while True:
# 走起
hero.moveRight()
hero.moveUp()
hero.moveLeft()
hero.moveDown()
10,闹鬼迷宫
while True:
# 在这里添加命令来重复。
hero.moveRight()
hero.moveRight()
hero.moveUp()
hero.moveUp()
11,再次迷宫历险
while True:
hero.moveRight()
hero.moveUp()
hero.moveRight()
hero.moveDown()
12,恐惧之门
# 攻击大门(Door)
# 需要攻击很多次,请使用loop循环
while True:
hero.attack("Door")
13,已知敌人
# 你可以用名称标签作为变量。
enemy1 = "Kratt"
enemy2 = "Gert"
enemy3 = "Ursa"
while True:
hero.attack(enemy3)
hero.attack(enemy1)
hero.attack(enemy2)
14,名字大师
# 你的英雄不知道这些敌人的名字!
# 这眼镜给了你 “findNearestEnemy” 寻找最近敌人的能力。
enemy1 = hero.findNearestEnemy()
hero.attack(enemy1)
hero.attack(enemy1) enemy2 = hero.findNearestEnemy()
hero.attack(enemy2)
hero.attack(enemy2) enemy3 = hero.findNearestEnemy()
hero.attack(enemy3)
hero.attack(enemy3)
15,近战
hero.moveRight()
enemy1 = hero.findNearestEnemy()
# 现在,攻击那个变量,
hero.attack(enemy1)
hero.attack(enemy1) hero.moveRight()
enemy2 = hero.findNearestEnemy()
hero.attack(enemy2)
hero.attack(enemy2)
hero.moveRight()
16,矮人骚乱
# 在 while true循环里,使用 findNearestEnemy() 并攻击!
while True:
enemy = hero.findNearestEnemy()
hero.attack(enemy)
17,最后的Kithman族
# 使用loop循环移动并攻击目标
while True:
hero.moveRight()
hero.moveUp()
enemy = hero.findNearestEnemy()
hero.attack(enemy)
hero.moveRight()
hero.moveDown()
hero.moveDown()
hero.moveUp()
18,KithGard之门
# 建造三个栅栏来隔离兽人!
hero.moveDown()
hero.buildXY("fence", 36, 34)
hero.buildXY("fence", 36, 31)
hero.buildXY("fence", 36, 27)
hero.moveRight()
hero.moveRight()
hero.moveRight()
hero.moveRight()
可选关卡1:不祥的征兆
# 你的目标是保护地图右边的人存活。
# 你不需要和食人巨怪打,只管逃命!你的盟友会保护你。
hero.moveRight()
hero.moveRight()
hero.moveUp()
hero.moveRight()
hero.moveRight()
hero.moveRight()
hero.moveDown()
hero.moveRight()
hero.moveDown()
hero.moveRight()
hero.moveRight()
可选关卡2:Kithgard精通
# 使用移动命令到达迷宫的终点。
# 计算你收集到的宝石数量,然后在到达火球陷阱时通过说出当前的宝石数量来使陷阱失效。
# 在起点的地方会有一只乌鸦告诉你一个密码。在门的附近说出该密码来开门。
# 当你靠近食人魔时杀死它。
# 你可以在需要的时候使用loop来重复所有的指令。
# 如果你通过了这个关卡,你就可以直接跳到边远地区的森林!
hero.moveUp()
hero.moveRight(3)
hero.moveUp()
hero.moveDown()
hero.moveRight()
hero.say("Swordfish")
hero.moveRight(2)
hero.moveUp()
hero.say("")
hero.moveUp(2)
enemy1 = hero.findNearestEnemy()
hero.attack(enemy1)
hero.attack(enemy1)
hero.moveLeft(4)
hero.moveUp(3)
hero.moveRight(3)
hero.moveUp()
hero.moveDown()
hero.moveRight()
hero.say("Swordfish")
hero.moveRight(2)
hero.moveUp()
hero.say("")
hero.moveUp(2)
enemy2 = hero.findNearestEnemy()
hero.attack(enemy2)
hero.attack(enemy2)
hero.moveLeft(6)

感受:
很有趣,通过游戏进行交互式学习编程。累了困了用这个提神也是很不错的方法~
CodeCombat地牢关卡Python代码的更多相关文章
- CodeCombat森林关卡Python代码
地牢关卡过完,接下来是边缘的森林! 1,森林保卫战 hero.moveUp() hero.buildXY("fence", 40, 52) hero.moveDown() hero ...
- codecombat之地牢关卡Python代码
1.地牢 # 向宝石进发. # 小心撞墙! # 在下面输入你的代码. self.moveRight() self.moveDown() self.moveRight() 2.深藏的宝石 # 利用你的移 ...
- Python和多线程(multi-threading)。这是个好主意码?列举一些让Python代码以并行方式运行的方法。
Python并不支持真正意义上的多线程.Python中提供了多线程包,但是如果你想通过多线程提高代码的速度,使用多线程包并不是个好主意.Python中有一个被称为Global Interpreter ...
- python面试题之多线程好吗?列举一些让Python代码以并行方式运行的方法
答案 Python并不支持真正意义上的多线程.Python中提供了多线程包,但是如果你想通过多线程提高代码的速度,使用多线程包并不是个好主意.Python中有一个被称为Global Interpret ...
- 可爱的豆子——使用Beans思想让Python代码更易维护
title: 可爱的豆子--使用Beans思想让Python代码更易维护 toc: false comments: true date: 2016-06-19 21:43:33 tags: [Pyth ...
- if __name__== "__main__" 的意思(作用)python代码复用
if __name__== "__main__" 的意思(作用)python代码复用 转自:大步's Blog http://www.dabu.info/if-__-name__ ...
- Python 代码风格
1 原则 在开始讨论Python社区所采用的具体标准或是由其他人推荐的建议之前,考虑一些总体原则非常重要. 请记住可读性标准的目标是提升可读性.这些规则存在的目的就是为了帮助人读写代码,而不是相反. ...
- 一行python代码实现树结构
树结构是一种抽象数据类型,在计算机科学领域有着非常广泛的应用.一颗树可以简单的表示为根, 左子树, 右子树. 而左子树和右子树又可以有自己的子树.这似乎是一种比较复杂的数据结构,那么真的能像我们在标题 ...
- [Dynamic Language] 用Sphinx自动生成python代码注释文档
用Sphinx自动生成python代码注释文档 pip install -U sphinx 安装好了之后,对Python代码的文档,一般使用sphinx-apidoc来自动生成:查看帮助mac-abe ...
随机推荐
- 菜鸟学Java(二十一)——如何更好的进行单元测试——JUnit
测试在软件生命周期中的重要性,不用我多说想必大家也都非常清楚.软件测试有很多分类,从测试的方法上可分为:黑盒测试.白盒测试.静态测试.动态测试等:从软件开发的过程分为:单元测试.集成测试.确认测试.验 ...
- 关于casperjs的介绍
casperjs是一个自动化测试框架,功能强大,也很适合当做爬虫软件使用,casperjs基于phantomjs软件,phantomjs是一个没有界面的浏览器环境,基于python环境 一,安装cas ...
- GDB 调试解析
GDB(GNU Debugger)是一个强大的命令行调试工具.大家知道命令行的强大就是在于,其可以形成执行序 列,形成脚本.UNIX下的软件全是命令行的,这给程序开发提代供了极大的便利,命令行软件的优 ...
- 将不同级别的logging 日志信息写入不同文件
将不同级别的logging 日志信息写入不同文件 # -*- coding: utf-8 -*- import os import time from logging.handlers import ...
- vue2.0的生命周期
生命周期先上图 什么是生命周期 Vue实例有一个完整的生命周期,也就是从开始创建.初始化数据.编译模板.挂载Dom.渲染→更新→渲染.卸载等一系列过程, 我们称这是Vue的生命周期.通俗说就是Vue实 ...
- yum卸载失败Error in PREUN scriptlet in rpm package postgresql-server
yum --setopt=tsflags=noscripts remove 参考 https://serverfault.com/questions/613256/yum-error-in-preun ...
- GreenDAO - primary key on multiple columns
转:http://stackoverflow.com/questions/15250609/greendao-primary-key-on-multiple-columns Does GreenDAO ...
- 让mysql查询强制走索引
select * from slot_value_temp force index(idx_slot_type_id) WHERE slot_type_id = 'xxxxxx'; 不定期更新
- 利用jenkins的api来完成相关工作流程的自动化
[本文出自天外归云的博客园] 背景 1. 实际工作中涉及到安卓客户端方面的测试,外推或运营部门经常会有很多的渠道,而每个渠道都对应着一个app的下载包,这些渠道都记录在安卓项目下的一个渠道列表文件中. ...
- 01-移动端开发教程-CSS3新特性
1. 移动端开发课程概述 移动互联网的兴起,让移动端的开发迅速蹿红.对于前端开发者来说,移动端的开发已经占据了他们大部分工作时间.接下来老马带大家一起学习移动端开发的相关前端开发技术. 这边课程内容包 ...