|
发表于 2008-1-14 18:58:48
|
显示全部楼层
查看想要移动的地点,是不是"地面,可通行的"
如果从地形上讲的通行性,可以直接在jass api里找.
如果这个地方,是不是被树,或房子挡住了而无法通行,可以做一个全屏插眼的技能,给一个不可见单位.
让它对着这个点插眼, 如果插眼函数返回false,说明这个点是不可通行状态. 如果返回true,但是,检查所插的眼睛,并不在
所要插的位置上,说明被建筑挡住了.
如果想判断一个点,是不是被一个普通单位挡住了,(非建筑),而造成无法通行. 可以造一个不可见单位,无移动速度,且在地图外面.,对着这个点,随便使用一个造建筑技能. 这时,返回false,就说明这个地方有单位挡着. (注意,这个辅助单位,一定要是一个特殊的玩家的,比如玩家16这样的. 因为这个点被玩家自己的单位挡住了,这个函数返回true).
(无移动速度,保证了这个建筑不能被造出来. 而我们所做的,仅仅是利用这个返回值而己)
说多了....
jass中有很多函数的返回值是很有用的,只是人们不太注意而己. |
|