找回密码
 点一下
查看: 1325|回复: 10

魔兽里,如何才能解除玩家的控制权?

[复制链接]
发表于 2009-1-8 14:22:26 | 显示全部楼层 |阅读模式
比如DOTA中,玩家1手选了一个英雄,然后设置程序接管该英雄。该英雄虽然被电脑接管,但玩家依然能向其发布指令。
如何才能解除玩家的控制权?
并不需要锁键盘鼠标,就像这个英雄是盟友的一样,你只能查看他的信息,不能控制它(由电脑完全地接管)。
EnableUserControl、SetUnitOwner、SetPlayerUnitsOwner貌似都没有什么用啊~
发表于 2009-1-8 14:23:38 | 显示全部楼层
对自己设置取消共享单位联盟……
回复

使用道具 举报

 楼主| 发表于 2009-1-8 14:28:27 | 显示全部楼层
用JASS可以做到吗?
回复

使用道具 举报

发表于 2009-1-8 14:33:38 | 显示全部楼层
自然
call SetPlayerAlliance(whichPlayer,whichPlayer, ALLIANCE_SHARED_CONTROL, false )就可以了,两个whichPlayer是同一玩家

恢复的时候把false改成true就好了
回复

使用道具 举报

 楼主| 发表于 2009-1-8 14:41:20 | 显示全部楼层
嗯,确实是无法控制的。
但~~~~超奇怪啊!怎么居然还能手动控制英雄学习技能点?!
回复

使用道具 举报

发表于 2009-1-8 14:43:33 | 显示全部楼层
哦,估计是因为能看到按钮,能看到就能点了
回复

使用道具 举报

 楼主| 发表于 2009-1-8 14:47:43 | 显示全部楼层
对,能看到按钮,也能点。
另外,这样似乎有BUG,玩家1的英雄被电脑接管,并通过刚才那个命令解除玩家1的控制权后,玩家1的英雄就会不停地往己方泉水处跑,走到基地门口了也会跑回去,根本就不出基地。
回复

使用道具 举报

发表于 2009-1-8 14:52:18 | 显示全部楼层
难道是类似中立敌对的AI设置了?
那试试和Dota一样的方法,捕捉到Move指令后,原地移动单位一次,然后再次发布命令呢?

这个方法我也没有在实际的地图上测试,所以有什么BUG也无能为力了 [s:186]
回复

使用道具 举报

 楼主| 发表于 2009-1-8 14:58:22 | 显示全部楼层
如果捕捉移动事件的话,AI发出的指令也会被捕捉吧...
回复

使用道具 举报

发表于 2009-1-8 15:03:47 | 显示全部楼层
AI可以换右键点击
回复

使用道具 举报

 楼主| 发表于 2009-1-8 15:43:50 | 显示全部楼层
不好办哪...
AI系统有数百处地方都直接发出指令,要捕捉人类玩家的指令的话,AI系统的也一并会被捕捉的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-7-21 14:24 , Processed in 0.052944 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表