zoukankan      html  css  js  c++  java
  • 「网易官方」极客战记(codecombat)攻略-游戏开发2-下午茶时间-teatime

                                                                             (点击图片进入关卡)

    不要忘记准备并喝下你的夜晚健康药水。

    简介

    你可以有几个计时器并独立追踪它们。 以不同的间隔生成兽人和投掷者,因为投掷者更危险。 此外,我们需要一些用三个时间间隔生成的药水。

    所以你可以从食人魔中跑出来,在需要的时候或者与食人魔战斗时服用药剂。

    默认代码

    敬请期待!

    概览

    这个关卡有四个计时器。

    其中三个我们很熟悉,我们正在使用它们来生成单位和物品。

    然而,游戏逻辑并不需要最后一个 nextPotionIn 。 我们仅将它用于 UI 所以玩家可以看到下一次药水产生的时间。当然,我们可以显示 game.spawnPotionTime 但玩家不清楚,因为他们必须比较当前时间和生成时间。 相反,我们会显示到下一个药水的剩余时间。

    与 game.time 不同,我们必须重设每个游戏框架的计时器, 所以我们已经放入了函数 updateTimers ,它在每个游戏框架的主游戏循环中被调用。

    下午茶时间 解法

    def spawnMunchkins():
        munchkin1 = game.spawnXY("munchkin", 2, 12)
        munchkin2 = game.spawnXY("munchkin", 2, 56)
        munchkin1.behavior = "AttacksNearest"
        munchkin2.behavior = "AttacksNearest"
    def spawnThrowers():
        thrower1 = game.spawnXY("thrower", 2, 16)
        thrower1.behavior = "AttacksNearest"
        thrower2 = game.spawnXY("thrower", 2, 52)
        thrower2.behavior = "AttacksNearest"
    def spawnPotion():
        game.spawnXY("potion-large", 46, 34)
    game.addSurviveGoal(20)
    game.munchkinSpawnTime = 0
    game.throwerSpawnTime = 0
    game.potionSpawnTime = 6
    game.nextPotionIn = 0
    ui.track(game, "time")
    ui.track(game, "nextPotionIn")
    player = game.spawnPlayerXY("duelist", 40, 34);
    player.maxSpeed = 15
    def updateTimers():
        if game.time > game.munchkinSpawnTime:
            game.munchkinSpawnTime = game.munchkinSpawnTime + 6
            spawnMunchkins()
        if game.time > game.potionSpawnTime:
            player.say("药水在这!")
            game.potionSpawnTime = game.potionSpawnTime + 6
            spawnPotion()
        if game.time > game.throwerSpawnTime:
            game.throwerSpawnTime = game.throwerSpawnTime + 9
            spawnThrowers()
    game.nextPotionIn = game.potionSpawnTime - game.time

     

    while True:
        updateTimers()
     
     

    本攻略发于极客战记官方教学栏目,原文地址为:

    https://codecombat.163.com/news/jikezhanji-xiawuchashijian

    极客战记——学编程,用玩的!

  • 相关阅读:
    HDU 5818 Joint Stacks (优先队列)
    POJ 3169 Layout (差分约束系统)
    HDU 4370 0 or 1 (最短路+最小环)
    LightOJ 1074 Extended Traffic (最短路spfa+标记负环点)
    HDU 1142 A Walk Through the Forest (求最短路条数)
    力扣71——简化路径
    力扣73——矩阵置零
    ThreadLocal的进化——TransmittableThreadLocal
    ThreadLocal的进化——InheritableThreadLocal
    Java——内部类详解
  • 原文地址:https://www.cnblogs.com/codecombat/p/12758498.html
Copyright © 2011-2022 走看看