扣哒世界 CS2答案(完结)

本来也没打算写这篇文章的,但是最近学校正好要我们打,然后就顺便写了这篇文章……

废话不多说,直接上干货~~~

注意:未经同意,严禁转载!!!(@sht)

1

# 在标记上建造两段围栏来保护村民。
# 把鼠标悬停在地图上,以得到X,Y坐标。
hero.buildXY("fence", 40, 52)
hero.buildXY("fence", 40, 20)

2

# 到小路的尽头去,并在那儿修一个栅栏。
# 利用你的 moveXY(x, y)坐标移动功能。

hero.moveXY(36, 60)
hero.moveXY(37, 13)
hero.buildXY("fence", 72, 25)

3

# 英雄完全糊涂了!
# 纠正路径,别让其踩到地雷。

hero.moveXY(11, 36)
hero.moveXY(35, 25)
hero.moveXY(40, 56)
hero.moveXY(76, 58)

4

while True:
    hero.moveXY(56,44)
    hero.moveXY(40,56)
    hero.moveXY(24, 44)
    hero.moveXY(24, 25)
    hero.moveXY(40, 12)
    hero.moveXY(56, 25)

6

hero.moveXY(19, 33)
enemy = hero.findNearestEnemy()
if enemy:
    hero.attack(enemy)
    hero.attack(enemy)
hero.moveXY(49, 51)
enemy = hero.findNearestEnemy()
if enemy:
    hero.attack(enemy)
    hero.attack(enemy)
hero.moveXY(58, 14)
enemy = hero.findNearestEnemy()
if enemy:
    hero.attack(enemy)
    hero.attack(enemy)

7

# 记得敌人可能还不存在。
while True:
    enemy = hero.findNearestEnemy()
    if enemy:
        # 如果有敌人,攻击它!
        hero.attack(enemy)
        pass

8

# 记得敌人可能还不存在。
while True:
    enemy = hero.findNearestEnemy()
    # 如果有敌人,攻击它!
    if enemy:
        hero.attack(enemy)

9

while True:
    enemy = hero.findNearestEnemy()
    # 使用一个 “if” 语句去检查是否有敌人存在:
    if enemy:
        hero.attack(enemy)
        
        

10

while True:
    hero.moveXY(35, 34)
    leftEnemy = hero.findNearestEnemy()
    if leftEnemy:
        hero.attack(leftEnemy)
        hero.attack(leftEnemy)
    hero.moveXY(60, 31)
    # 再次使用findNearestEnemy,来找到右侧的敌人。
    enemy = hero.findNearestEnemy()
    if enemy:
        hero.attack(enemy)
        hero.attack(enemy)
    # 如果有右侧的敌人,使用"if"来攻击。
    

11

while True:
    hero.moveXY(43, 50)
    top = hero.findNearestEnemy()
    if top:
        hero.buildXY("fire-trap", 43, 50)
    hero.moveXY(25, 34)
    left = hero.findNearestEnemy()
    if left:
        hero.buildXY("fire-trap", 25, 34)
    hero.moveXY(43, 20)
    # 为下面的敌人设置一个变量。:
    down = hero.findNearestEnemy()
    if down:
        hero.buildXY("fire-trap", 43, 20)

14

while True:
enemy = hero.findNearestEnemy()
if enemy:
hero.attack(enemy)
hero.attack(enemy)
pass
else:
hero.moveXY(40, 34)

15

while True:
    enemy = hero.findNearestEnemy()
    if enemy:
        hero.attack(enemy)
        hero.attack(enemy)
    else:
        hero.attack("Chest")

17

hero.moveXY(23, 23)
while True:
    enemy = hero.findNearestEnemy()
    if hero.isReady("cleave"):
        # 用“Cleave”干掉敌人!
        hero.cleave(enemy)
        pass
    else:
        hero.attack(enemy)
        pass

18

while True:
    enemy = hero.findNearestEnemy()
    if hero.isReady("cleave"):
        hero.cleave()
    else:
        hero.attack(enemy)

19

while True:
    enemy = hero.findNearestEnemy()
    # 使用带有‘isReady’的if语句来检查 "cleave":
    if hero.isReady("cleave"):
        hero.cleave(enemy)
        
    else:
        hero.attack(enemy)

20

enemy1 = "Gort"
distance1 = hero.distanceTo(enemy1)
hero.say(distance1)

enemy2 = "Smasher"
distance2 = hero.distanceTo(enemy2)
# 说出distance2变量!
hero.say(distance2)
# 不要攻击友方!
friend3 = "Charles"

# 最后的食人魔。
enemy4 = "Gorgnub"
# 确定并说出与enemy4之间的距离:
d = hero.distanceTo(enemy4)
hero.say(d)

21

while True:
    enemy = hero.findNearestEnemy()
    distance = hero.distanceTo(enemy)
    if distance < 10:
        # 如果他们与农民太近,就攻击他们
        hero.attack(enemy)
        pass
    # 否则的话,呆在农民旁边!使用else
    else:
        hero.moveXY(40, 37)
    

22

while True:
    # 检查与最近敌人的距离。
    enemy = hero.findNearestEnemy()
    distance = hero.distanceTo(enemy)
    # 如果它接近到10m以内,使用cleave!
    if distance <10:
        hero.cleave(enemy)
    # 否则,根据名字攻击"Chest"(宝箱)。
    else:
        hero.attack('Chest')
    pass
    

24

while True:
    enemy = hero.findNearestEnemy()
    distance = hero.distanceTo(enemy)
    if hero.isReady('cleave'):
        # <%= first_priority %>
        hero.cleave()
    elif distance < 5:
        # <%= attack_nearest %>
        hero.attack(enemy)
    else:
        # <%= break_open %>
        # <%= use_name %>
        hero.attack("Chest")

26

# 在这关,别碰恶魔石!往其他方向移动避开它们!
while True:
    evilstone = hero.findNearestItem()
    if evilstone:
        pos = evilstone.pos
        if pos.x == 34:
            # 如果恶魔石在左边,走到右边。
            hero.moveXY(46, 22)
        else:
            # 如果恶魔石在右边,走到左边。
            hero.moveXY(34, 22)
    else:
        # 如果没有恶魔石,那就去到中间。
        hero.moveXY(40, 22)

27

while True:
    enemy = hero.findNearestEnemy()
    # 如果有敌人出现,那么就...
    if enemy:
        # 使用distanceTo创建一个距离变量
        distance = hero.distanceTo(enemy)
        # 如果敌人与你的距离小于5米,那么就攻击它
        if distance < 5:
            hero.attack(enemy)
        # 否则(这名敌人还离得很远),就使用shield
        else:
            hero.shield()
    # 否则(没有敌人)...
    else:
        # …那么,回到X位置。
        hero.moveXY(40, 34)

28

while True:
    enemy = hero.findNearestEnemy()
    if enemy:
        # 用 distanceTo 获取与敌人的距离。
        distance = hero.distanceTo(enemy)
        # 如果距离小于5米...
        if distance < 5:
            # ...如果 “cleave”技能准备好了,就用“cleave”干掉他们!
            if hero.isReady("cleave"):
                hero.cleave(enemy)
            # ...否则,仅仅进行普通攻击。
            else:
                hero.attack(enemy)

31

def findAndAttackEnemy():
    enemy = hero.findNearestEnemy()
    if enemy:
        hero.attack(enemy)


# 这段代码不是函数的一部分。
while True:
    # 现在你可以使用findAndAttackEnemy在村子里巡逻
    hero.moveXY(35, 34)
    findAndAttackEnemy()
    
    # 现在移动到右侧入口。
    hero.moveXY(60, 31)
    # 使用findAndAttackEnemy
    findAndAttackEnemy()

32

# 这个函数攻击最近的敌人。
def findAndAttackEnemy():
    enemy = hero.findNearestEnemy()
    if enemy:
        hero.attack(enemy)


def findAndCleaveEnemy():
    # 定义一个函数来劈斩敌人(只在劈斩就绪时)
    enemy = hero.findNearestEnemy()
    if enemy:
        if hero.isReady('cleave'):
            hero.cleave(enemy)


# 在主循环中,巡逻、劈斩和攻击。
while True:
    # 移动到巡逻点,劈斩并攻击。
    hero.moveXY(35, 34)
    findAndCleaveEnemy()
    findAndAttackEnemy()
    
    # 移动到另一点:
    hero.moveXY(60, 31)
    findAndCleaveEnemy()
    findAndAttackEnemy()

33

# 定义你自己的函数来对抗敌人!
# 在函数中找到敌人,然后劈斩或是攻击它。
def cleaveOrAttack():
    enemy = hero.findNearestEnemy()
    if enemy:
        if hero.isReady('cleave'):
            hero.cleave(enemy)
        else:
            hero.attack(enemy)
while True:
    hero.moveXY(35, 34)
    # 使用上面定义的cleaveOrAttack函数。
    cleaveOrAttack()
    hero.moveXY(47, 27)
    # 再次调用函数。
    cleaveOrAttack()
    hero.moveXY(60, 31)
    # 再次调用函数。
    cleaveOrAttack()

34

def pickUpCoin():
    coin = hero.findNearestItem()
    if coin:
        hero.moveXY(coin.pos.x, coin.pos.y)
def attackEnemy():
    enemy = hero.findNearestEnemy()
    if enemy:
        hero.attack(enemy)
while True:
    attackEnemy()
    pickUpCoin()

36

def checkAndAttack(target):
    # target参数只是一个变量!
    # 它包含了函数调用时的参数。
    if target:
        hero.attack(target)
    hero.moveXY(43, 34)
while True:
    hero.moveXY(58, 52)
    topEnemy = hero.findNearestEnemy()
    checkAndAttack(topEnemy)
    
    # 移动到底部的X标记处。
    hero.moveXY(58, 16)
    # 创建名为 bottomEnemy 的变量,寻找最近敌人。
    bottomEnemy = hero.findNearestEnemy()
    # 使用 checkAndAttack 函数,并使用 bottomEnemy 变量。
    checkAndAttack(bottomEnemy)

37

def checkToDefend(target):
    # 检查目标是否存在
    if target:
        # 如果是这样,攻击目标。
        hero.attack(target)
    # 如果没有目标,使用else去做点别的事
    else:
        # 否则攻击 "Door"
        hero.attack("Door")
while True:
    enemy = hero.findNearestEnemy()
    checkToDefend(enemy)

38

def hitOrHide(target):
    # 如果'目标'存在:
    if target:
        # 攻击'目标'
        hero.attack(target)
        # 然后移动到红色标记。
        hero.moveXY(32, 17)
while True:
    enemy = hero.findNearestEnemy()
    hitOrHide(enemy)

39

def checkTakeHide(item):
    if item:
        # 物品在此,拿着它。
        hero.moveXY(item.pos.x, item.pos.y)
        # 然后移动到营地中央(40, 34)
        hero.moveXY(40, 34)
while True:
    # 移动到右上的X标记。
    hero.moveXY(68, 56)
    # 在那里搜索一块发光石。
    lightstone = hero.findNearestItem()
    # 调用checkTakeHide,并使用参数:lightstone
    checkTakeHide(lightstone)
    
    # 移动到左上角的标记。
    hero.moveXY(12, 56)
    # 搜索发光石。
    lightstone = hero.findNearestItem()
    # 调用checkTakeHide函数。
    # 将搜索的结果作为参数传入。
    checkTakeHide(lightstone)

40

def checkEnemyOrSafe(target):
    # 如果目标(参数)存在:
    if target:
        # 然后攻击目标
        hero.attack(target)
    # 否则:
    else:
        # 使用say()来叫农民。
        hero.say("All clear!")


while True:
    # 移动到并检查右上的X标记。
    hero.moveXY(64, 54)
    enemy1 = hero.findNearestEnemy()
    checkEnemyOrSafe(enemy1)
    
    # 移动到左下的X标记处。
    hero.moveXY(16, 14)
    # 将findNearestEnemy()的结果存到一个变量中。
    enemy2 = hero.findNearestEnemy()
    # 调用checkEnemyOrSafe,并传递
    # findNearestEnemy的结果作为参数
    checkEnemyOrSafe(enemy2)

41

def cleaveWhenClose(target):
    if hero.distanceTo(target) < 5:
        # 将你的攻击代码放到这里。
        # 如果cleave准备就绪,那就劈斩目标
        if hero.isReady("cleave"):
            hero.cleave()
        # 否则,使用attack攻击目标!
        else:
            hero.attack(target)
# 这段代码不是函数的一部分。
while True:
    enemy = hero.findNearestEnemy()
    if enemy:
        # 注意在cleaveWhenClose内部,我们用target指向敌人。
        cleaveWhenClose(enemy)

43

def maybeBuildTrap(x, y):
    # 使用x和y作为移动的坐标。
    hero.moveXY(x, y)
    enemy = hero.findNearestEnemy()
    if enemy:
        # 使用 buildXY 在特定 x 和 y 处建造 "fire-trap".
        hero.buildXY("fire-trap", x, y)
while True:
    # 这会调用 maybeBuildTrap,并使用上方入口的坐标。
    maybeBuildTrap(43, 50)
    # 下面在左侧入口使用maybeBuildTrap!
    maybeBuildTrap(25, 34)
    # 在底部入口处使用“maybeBuildTrap” !
    maybeBuildTrap(43, 20)

44

def cleaveOrAttack(enemy):
    # 如果 “cleave” 技能冷却完毕,那就使用它!否则,使用普通攻击。
    if hero.isReady("cleave"):
        hero.cleave(enemy)
    else:
        hero.attack(enemy)
while True:
    enemy = hero.findNearestEnemy()
    if enemy:
        distance = hero.distanceTo(enemy)
        if distance < 5:
            # 调用上面定义的 “cleaveOrAttack” 函数
            cleaveOrAttack(enemy)

45

# 只在看到敌人时进行建造。
def maybeBuildSomething(buildType, x, y):
    # 移动到参数为X 和 Y的位置
    hero.moveXY(x, y)
    # 找到最近的敌人
    enemy = hero.findNearestEnemy()
    # 如果存在敌人
    if enemy:
        # 那么使用buildXY,参数buildType, x, 和 y
        hero.buildXY(buildType, 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)

46

def maybeBuildTrap(x, y):
    # 移动到给定的xy位置
    hero.moveXY(x, y)
    # 搜寻一枚硬币,如果找到就建造一个"fire-trap"
    coin = hero.findNearestItem()
    if coin:
        hero.buildXY("fire-trap", x, y)
while True:
    # 为左上方通道调用maybeBuildTrap
    maybeBuildTrap(12, 56)
    # 下面是右上角的通道。
    maybeBuildTrap(68, 56)
    # 下面是右下的通道。
    maybeBuildTrap(68, 12)
    # 下面是左下角的通道。
    maybeBuildTrap(12, 12)

49

# 你现在拥有一个宠物!
def speak(event):
    # 你的宠物需要用pet.say()进行回应
    pet.say("Meow!")
# 这将告诉你的宠物,在听到声音时运行speak()函数
pet.on("hear", speak)
# 和你的宠物交谈!
hero.say("Hello Kitty")

50

def onHear(event):
    # 不要更改这个函数
    pet.say("喵 汪 喵")
    pet.say("汪 汪")
    pet.say("喵")
    pet.say("喵")
    pet.say("喵 汪 喵 喵")

# 使用pet.on(eventType,eventHandler)方法
# 指派onHear函数来处理"hear"事件。
pet.on("hear", onHear)
# 这必须在 "pet.on" 的后面。
hero.say("伙计,你叫什么名字?")
hero.say("能重复一次吗?")
pet.on("hear", onHear)

51

def sayTwo(event):
    # 使用pet.say()来回答"2"
    pet.say("2")
    pass
pet.on("hear", sayTwo)
# 使用pet.on(),通过sayTwo来处理"hear"事件!
hero.say("一加一等于…?")
hero.say("x^3 - 6x^2 + 12x - 8 = 0。那x等于多少?")
hero.say("火星有多少卫星?")

52

def onHear(e):
    # 宠物需要在onHear中说点什么。
    pet.say("Myau")
pet.on("hear", onHear)
hero.say("能听懂我的话吗?")
hero.say("你是美洲狮吗?")
hero.say("你多大啦?")
# 再问两个问题。
hero.say("你会数学吗?")
hero.say("你想不想到大学深造?")

54

def goFetch():
    # 你可以在处理函数中使用循环。
    while True:
        potion = hero.findNearestItem()
        if potion:
            # 用 “pet.fetch()” 去让你的宠物捡药水:
            pet.fetch(potion)
# 当宠物被召唤出来时,会触发 "spawn" 事件。
# 这让你的宠物在关卡开始时运行 goFetch()函数。
pet.on("spawn", goFetch)

55

def onSpawn(event):
    while True:
        # 宠物一样可以发现敌人。
        enemy = pet.findNearestEnemy()
        # 如果有敌人:
        if enemy:
            # 然后让宠物说点什么:
            pet.say("Woof!")
pet.on("spawn", onSpawn);

56

def onSpawn(event):
    # 在 while-true 循环里:
    while True:
        # 使用hero.findNearestItem()
        item = hero.findNearestItem()
        # 如果有物品:
        if item:
            # 使用pet.fetch(item)来拿取物品。
            pet.fetch(item)
# 使用pet.on()来将onSpawn指派给"spawn"事件
pet.on("spawn", onSpawn)
hero.moveXY(78, 35)

58

def onSpawn(event):
    while True:
        # 首先,移动到左侧X标记处:
        pet.moveXY(9, 24)
        # 接着,移动到上面的X标记。
        pet.moveXY(30, 43)
        # 将宠物移动至右侧的X标记处:
        pet.moveXY(51, 24)
        # 将你的宠物移动到下面的X标记处:
        pet.moveXY(30, 5)
pet.on("spawn", onSpawn)
while True:
    hero.say("狗狗真棒!")
    hero.say("你能做到的!")
    hero.say("跑跑跑!")
    hero.say("快好了!")
    hero.say("再来一圈!")

59

def onSpawn(event):
    while True:
        pet.moveXY(12, 8)
        pet.moveXY(48, 8)
pet.on("spawn", onSpawn)
# 鼓舞你的宠物。不要移除这个:
while True:
    hero.say("跑!!!")
    hero.say("速度!")

62


def petLogic():
    pet.moveXY(66, 74)
 
pet.on('spawn', petLogic)
while True:
    enemy = hero.findNearestEnemy()
    if enemy:
        if hero.isReady("cleave"):
            hero.cleave(enemy)
        else:
            hero.attack(enemy)
    else:
        hero.moveXY(38, 31)
文章如未特殊说明,皆为原创,转载请注明原文位置及作者:“原文链接https://wp.xybcm.cn/article/2024/p=271/,作者Huang223。”
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇