其他分享
首页 > 其他分享> > 「网易官方」极客战记(codecombat)攻略-游戏开发2-中心队形-center-formation

「网易官方」极客战记(codecombat)攻略-游戏开发2-中心队形-center-formation

作者:互联网

                                                                                             (点击图片进入关卡)

夜幕降临了。带士兵们围在火旁!

简介

setActionFor 函数可以用来一次控制多个单元。

让所有的 "soldier" s 在出生时移动到关卡的中心位置!

默认代码

# 夜晚来临! 把所有的士兵向火移动。 def centerFormation(event):     # event.target是运行此事件处理程序的单元。     unit = event.target     # 现在使用unit.moveXY将装置移动到火中。

 

# 这产生了四名士兵: game.spawnXY("soldier", 16, 57) game.spawnXY("soldier", 15, 13) game.spawnXY("soldier", 63, 13) game.spawnXY("soldier", 67, 57) # 这将士兵的重生行动设置为功能中心队形: game.setActionFor("soldier", "spawn", centerFormation)

概览

setActionFor 函数用于定义某种类型的单元逻辑。 用它来告诉所有士兵移动到地图中心,或者食人魔攻击他们最近的敌人,或者弓箭手只攻击大家伙!

当行为函数被调用时,它会创建一个被调用的特定单元的事件。 event.target 是你如何能够指挥特定单位如何执行的事情。

def sayHi(event):     # This is the specific unit:     unit = event.target     # This makes that unit say something.     unit.say("Hi!") game.spawnXY("munchkin", 20, 20) game.spawnXY("munchkin", 30, 40) # All munchkins now have an event listener on 'spawn' which calls sayHi when they spawn: game.setActionFor("munchkin", "spawn", sayHi)

中心队形 解法

# 夜晚来临! 把所有的士兵向火移动。 def centerFormation(event):     # event.target是运行此事件处理程序的单元。     unit = event.target     # 现在使用unit.moveXY将装置移动到火中。     unit.moveXY(40, 36) # 这产生了四名士兵: game.spawnXY("soldier", 16, 57) game.spawnXY("soldier", 15, 13) game.spawnXY("soldier", 63, 13) game.spawnXY("soldier", 67, 57) # 这将士兵的重生行动设置为功能中心队形: game.setActionFor("soldier", "spawn", centerFormation)    

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

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

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

标签:codecombat,极客,target,soldier,game,战记,spawnXY,event,unit
来源: https://www.cnblogs.com/codecombat/p/12743828.html