Project1

标题: 如何在地下地图设置可以飞行的单位穿透性 [打印本页]

作者: yang1zhi    时间: 2014-11-13 20:13
标题: 如何在地下地图设置可以飞行的单位穿透性
这个软件穿透就是全部都能穿透了的。这样进了地下地图,就连墙壁也可以穿了。
假设是鸟,会飞进墙壁不是很奇怪吗。
可是不设置穿透就连一些道路上的物体都不能穿。
我做了个坐骑鸟,在地上的时候全部能穿也没什么。可到了地下就连墙壁都穿过去了。
想用地形标志设置到了那种地形就取消穿透的,可是这样就困在墙上下不来了。
作者: 芯☆淡茹水    时间: 2014-11-13 21:24
Game_Map 里面不是有个取得地形标志的方法 terrain_tag 么?
然后在 Game_Character 1 的 passable? 方法里,有一句:
  1. if @through
  2.       # 可以通行
  3.       return true
  4.     end
复制代码
可以再加个条件限制:
RUBY 代码复制
  1. if @through and ! $game_map.terrain_tag(new_x, new_y) == X号地形标志。
  2.       # 可以通行
  3.       return true
  4.     end

可以把不可以穿透的墙壁什么的设置成  X号地形标志  就行了。
作者: yang1zhi    时间: 2014-11-13 22:22
芯☆淡茹水 发表于 2014-11-13 21:24
Game_Map 里面不是有个取得地形标志的方法 terrain_tag 么?
然后在 Game_Character 1 的 passable? 方法里 ...

可以了。谢谢
  if @through
       if $game_map.terrain_tag(new_x, new_y) == 1
      return false
      end
      return true
    end
作者: 芯☆淡茹水    时间: 2014-11-13 22:24
额~,怎么这样就能行?!
  1. if @through and $game_map.terrain_tag(new_x, new_y) != X号地形标志
  2.       # 可以通行
  3.       return true
  4.     end
复制代码





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1