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
     
     
  • 相关阅读:
    Python脚本传參和Python中调用mysqldump
    金蝶K3管理软件PDA条码解决方式,盘点机与金蝶K3无缝对接
    android设置中的Preferencescreen使用方法介绍与分析
    设计模式之6大原则(3)-依赖倒置原则
    C# DataTable的詳細使用方法
    C++学习笔记13-类继承
    hdu1023
    Haskell 差点儿无痛苦上手指南
    三角形、长方形、正方形、梯形、圆等的周长计算公式和面积计算公式
    (黑客游戏)HackTheGame1.21 过关攻略
  • 原文地址:https://www.cnblogs.com/codecombat/p/12255029.html
Copyright © 2011-2022 走看看