zoukankan      html  css  js  c++  java
  • 【网易官方】极客战记(codecombat)攻略-森林-封闭的十字路口closed-crossroad

    围栏还是陷阱?这取决于位置,当然还有函数。

    简介

    村庄位于一处繁忙的十字路口,只有老练的建造者才能保护它! 顺时针绕村庄移动。

    在上下通道使用 "fire-trap" 。 左右通道使用 `"fence"。

    函数可以定义很多参数,类型也可以各异,诸如字符串、数字等。

    def sureBuildSomething(buildType, x, y):
        # 如下函数被调用时,
        # buildType将是"fence"
            # x将是20,y将是40
    maybeBuildTrap("fence", 20, 40)

    默认代码

    # 只在看到敌人时进行建造。
    # 该函数定义3个参数。
    def maybeBuildSomething(typeToBuild, x, y):
        hero.moveXY(x, y)
        # 找到最近的敌人

     

        # 如果存在敌人

     

            # 那么使用buildXY,参数typeToBuild, x, 和 y
            # 使用变量typeToBuild作为第一个参数。

     

        pass
    # 你不需要改动下面的代码。
    while True:
        # 调用 maybeBuildSomething,使用"fire-trap"及底部X的坐标。
        maybeBuildSomething("fire-trap", 40, 20)
        # 调用maybeBuildSomething,在左侧X处使用"fence"!
        maybeBuildSomething("fence", 26, 34)
        # 调用maybeBuildSomething,在顶部的X处使用"fire-trap"!
        maybeBuildSomething("fire-trap", 40, 50)
        # 调用maybeBuildSomething,在右侧X处使用"fence"!
        maybeBuildSomething("fence", 54, 34)

    概览

    函数可以有任意数目的参数,其类型也可以各异。

    例如 buildXY ,它有 3 个参数:一个字符串(要建造的对象的类型)和两个数字(x 及 y 坐标值)

    def maybeBuildSomething(buildType, x, y):
        # 如下函数被调用时,
        # buildType是'fence', x是40, y是20
    maybeBuildSomething('fence', 40, 20)

    buildType 是一个字符串, x 和 y 是数字。

    注意:调用函数时,参数顺序需要同定义时保持一致。

    现在你可以为 "fence" 和 "fire-trap" 使用同一个函数,而不是两个,这样代码就会简洁很多!

    封闭的十字路口 解法

    # 只在看到敌人时进行建造。
    # 该函数定义3个参数。
    def maybeBuildSomething(typeToBuild, x, y):
        hero.moveXY(x, y)
        # 找到最近的敌人
        enemy = hero.findNearestEnemy()
        # 如果存在敌人
        if enemy:
            # 那么使用buildXY,参数typeToBuild, x, 和 y
            # 使用变量typeToBuild作为第一个参数。
            hero.buildXY(typeToBuild, x, y)
    # 你不需要改动下面的代码。
    while True:
        # 调用 maybeBuildSomething,使用"fire-trap"及底部X的坐标。
        maybeBuildSomething("fire-trap", 40, 20)
        # 调用maybeBuildSomething,在左侧X处使用"fence"!
        maybeBuildSomething("fence", 26, 34)
        # 调用maybeBuildSomething,在顶部的X处使用"fire-trap"!
        maybeBuildSomething("fire-trap", 40, 50)
        # 调用maybeBuildSomething,在右侧X处使用"fence"!
        maybeBuildSomething("fence", 54, 34)
    本攻略发于极客战记官方教学栏目,原文地址为:
    https://codecombat.163.com/news/jikezhanji-fengbideshizilukou
     
     
  • 相关阅读:
    ggplot2 上篇
    R笔记1
    读书笔记 第2章 数据挖掘概述
    读书笔记 数据化营销
    [LeetCode] 172. 阶乘后的零
    [LeetCode] 171. Excel表列序号
    [LeetCode] 169. 求众数
    知乎使用selenium反爬虫的解决方案
    [LeetCode] 168. Excel表列名称
    [LeetCode] 167. 两数之和 II
  • 原文地址:https://www.cnblogs.com/codecombat/p/12255029.html
Copyright © 2011-2022 走看看