随着while True的练习,你是不是感觉塔防游戏其实没什么,一个while True就可以实现了呢??
严酷考验(真正的挑战)
需要购买个小衣服,称称血量
# 使用你学到的技能击败那些食人魔。
# 记住:打败食人魔矮人需要两次攻击。
while True:
hero.moveRight()
enemy = hero.findNearestEnemy()
hero.attack(enemy)
hero.attack(enemy)
严酷考验A
# 使用你学到的技能来击败那些食人魔。
# 记住:打败食人魔矮人需要两次攻击。
while True:
hero.moveLeft()
enemy = hero.findNearestEnemy()
hero.attack(enemy)
hero.attack(enemy)
严酷考验B
# 使用你学到的技能来击败那些食人魔。
# 记住:打败食人魔矮人需要两次攻击。
while True:
hero.moveUp()
enemy = hero.findNearestEnemy()
hero.attack(enemy)
hero.attack(enemy)
矮人骚乱
# 在 while true循环里,使用 findNearestEnemy() 并攻击!
while True:
enemy = hero.findNearestEnemy()
hero.attack(enemy)
hero.attack(enemy)
拉近距离
hero.moveRight()
# 通过上一个关卡,你应该能认识这个。
enemy1 = hero.findNearestEnemy()
# 现在,攻击enemy1
hero.attack(enemy1)
hero.attack(enemy1)
hero.moveRight(2)
enemy2 = hero.findNearestEnemy()
hero.attack(enemy2)
hero.attack(enemy2)
hero.moveDown()
hero.moveRight()
名称大师
你需要眼镜给你提供 “findNearestEnemy” 寻找最近敌人的能力。
# 你的英雄不知道这些敌人的名字!
# 这眼镜给了你 “findNearestEnemy” 寻找最近敌人的能力。
# 将hero.findNearestEnemy()的结果赋值给变量enemy1:
enemy1 = hero.findNearestEnemy()
# enemy1现在指向最近的敌人。使用变量进行攻击!
hero.attack(enemy1)
hero.attack(enemy1)
# enemy1已被打败,再次调用hero.findNearestEnemy()将会找到附近的新敌人。
enemy2 = hero.findNearestEnemy()
hero.attack(enemy2)
hero.attack(enemy2)
# 将hero.findNearestEnemy()的结果赋值给变量enemy3:
enemy3 = hero.findNearestEnemy()
# 现在使用enemy3变量进行攻击。
hero.attack(enemy3)
hero.attack(enemy3)
变量(Variables)是代表数据的符号,变量的值会在你存储新数据的时候发生变化,是存储信息以供反复使用的一种方式。
记住,当你使用双引号时,相当于你创建了一个字符串,就像"weak door",当你不使用双引号时,你在引用变量,就像enemy1。
老对手
# 你可以像名牌那样使用变量
enemy1 = "Kratt"
enemy2 = "Gert"
enemy3 = "Ursa"
hero.attack(enemy1)
hero.attack(enemy1)
hero.attack(enemy2)
hero.attack(enemy2)
hero.attack(enemy3)
hero.attack(enemy3)
恭喜你!!!!到目前为止,你已经在玩游戏的同时学会了4个关于python的内容:
1.调用(call)方法(methon)像moveUp这样的命令
2.传递字符串(string),在双引号的字符,如"Kratt"做为方法的参数(argument)
3.使用while-true (loop)一边又一边的重复你的方法。
4.如何使用变量,及进行变量值的变化转变。