最近迷上了玩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代码的更多相关文章

  1. CodeCombat森林关卡Python代码

    地牢关卡过完,接下来是边缘的森林! 1,森林保卫战 hero.moveUp() hero.buildXY("fence", 40, 52) hero.moveDown() hero ...

  2. codecombat之地牢关卡Python代码

    1.地牢 # 向宝石进发. # 小心撞墙! # 在下面输入你的代码. self.moveRight() self.moveDown() self.moveRight() 2.深藏的宝石 # 利用你的移 ...

  3. Python和多线程(multi-threading)。这是个好主意码?列举一些让Python代码以并行方式运行的方法。

    Python并不支持真正意义上的多线程.Python中提供了多线程包,但是如果你想通过多线程提高代码的速度,使用多线程包并不是个好主意.Python中有一个被称为Global Interpreter ...

  4. python面试题之多线程好吗?列举一些让Python代码以并行方式运行的方法

    答案 Python并不支持真正意义上的多线程.Python中提供了多线程包,但是如果你想通过多线程提高代码的速度,使用多线程包并不是个好主意.Python中有一个被称为Global Interpret ...

  5. 可爱的豆子——使用Beans思想让Python代码更易维护

    title: 可爱的豆子--使用Beans思想让Python代码更易维护 toc: false comments: true date: 2016-06-19 21:43:33 tags: [Pyth ...

  6. if __name__== "__main__" 的意思(作用)python代码复用

    if __name__== "__main__" 的意思(作用)python代码复用 转自:大步's Blog  http://www.dabu.info/if-__-name__ ...

  7. Python 代码风格

    1 原则 在开始讨论Python社区所采用的具体标准或是由其他人推荐的建议之前,考虑一些总体原则非常重要. 请记住可读性标准的目标是提升可读性.这些规则存在的目的就是为了帮助人读写代码,而不是相反. ...

  8. 一行python代码实现树结构

    树结构是一种抽象数据类型,在计算机科学领域有着非常广泛的应用.一颗树可以简单的表示为根, 左子树, 右子树. 而左子树和右子树又可以有自己的子树.这似乎是一种比较复杂的数据结构,那么真的能像我们在标题 ...

  9. [Dynamic Language] 用Sphinx自动生成python代码注释文档

    用Sphinx自动生成python代码注释文档 pip install -U sphinx 安装好了之后,对Python代码的文档,一般使用sphinx-apidoc来自动生成:查看帮助mac-abe ...

随机推荐

  1. Booleans

    两个取值false和true.但要注意Lua中所有的值都可以作为条件.在控制结构的条件中除了false和nil为假,其他值都为真.所以Lua认为0和空串都是真.

  2. C++11 explicit的使用

    C++中的explicit关键字只能用于修饰只有一个参数的类构造函数 , 它的作用是表明该构造函数是显示的, 而非隐式的,跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况 ...

  3. PHP网站环境搭配: Apache Http+PHP+Mysql

    Apache Http+PHP+Mysql 环境搭配 1. 先下载上述三个软件 都要下载对应系统的软件,mysql还可以再下载navicat for mysql. 2.  安装Apache Http ...

  4. javascript基础拾遗(十一)

    1.DOM操作 1)查找 //根据id查找 document.getElementById() //根据html标签查找 documnet.getElementByTagName() //根据样式cl ...

  5. [DIOCP3-说明书] 关于DEMO的编译

    总有些朋友问我,关于DEMO编译的一些问题,每次都回答大概都差不多,我想还是写篇说明书给大家,关于DEMO编译的步骤.   [环境设定] 1.将DIOCP3\source路径添加到Delphi的搜索路 ...

  6. 【Linux技术】linux库文件编写·入门

    一.为什么要使用库文件 我们在实际编程中肯定会遇到这种情况:有几个项目里有一些函数模块的功能相同,实现代码也相同,也是我们所说的重复代码.比如,很多项目里都有一个用户验证的功能. 代码段如下: //U ...

  7. RestTemplate 发送 get 请求使用误区 多值为null

    http://blog.csdn.net/zhousenshan/article/details/71055687 ****************************************** ...

  8. LVS之NAT和DR服务脚本

    NAT服务控制脚本 #!/bin/bash # # chkconfig: - 88 12 # description: LVS script for VS/NAT # . /etc/rc.d/init ...

  9. java 栈和队列的模拟--java

    栈的定义:栈是一种特殊的表这种表只在表头进行插入和删除操作.因此,表头对于栈来说具有特殊的意义,称为栈顶.相应地,表尾称为栈底.不含任何元素的栈称为空栈. 栈的逻辑结构:假设一个栈S中的元素为an,a ...

  10. 【MarkdownPad】不能输入表格Table

    使用MarkdownPad时,需要制作一个表格.搜到参照这篇文章,发现还是无法显示表格,测试效果是如下这样的: Markdown文本: 显示效果: 谷歌一下,原来是MarkdownPad默认的处理器不 ...