Project1

标题: 地图上怎么让尸体置于其他事件的最底层、、、 [打印本页]

作者: 刺夜之枪    时间: 2012-1-7 23:30
标题: 地图上怎么让尸体置于其他事件的最底层、、、
因为尸体可以穿透,所以其他ID小于尸体ID的事件经过这个格子时就会被尸体覆盖住,蛋疼。不知怎么解决。
dsu_plus_rewardpost_czw
作者: CockyGuy    时间: 2012-1-8 01:49
本帖最后由 CockyGuy 于 2012-1-8 01:51 编辑

在Main之前插入这个脚本:
  1. class Game_Character
  2.   attr_accessor   :deadbody
  3.   #--------------------------------------------------------------------------
  4.   # ● 获取画面 Z 坐标
  5.   #     height : 角色的高度
  6.   #--------------------------------------------------------------------------
  7.   def screen_z(height = 0)
  8.     # 在最前显示的标志为 ON 的情况下
  9.     if @always_on_top
  10.       # 无条件设置为 999
  11.       return 999
  12.     end
  13.     if @deadbody
  14.       return 10
  15.     end
  16.    
  17.     # 通过实际坐标和地图的显示位置来求得画面坐标
  18.     z = (@real_y - $game_map.display_y + 3) / 4 + 32
  19.     # 元件的情况下
  20.     if @tile_id > 0
  21.       # 元件的优先不足 * 32
  22.       return z + $game_map.priorities[@tile_id] * 32
  23.     # 角色的场合
  24.     else
  25.       # 如果高度超过 32 就判定为满足 31
  26.       return z + ((height > 32) ? 31 : 0)
  27.     end
  28.   end
  29. end
复制代码
然后在尸体那个事件,【移动规则】那里。
频度改为【6:Highest】
【类型】选择【自定义】。
点击【移动路线】
脚本,输入:
  1. self.deadbody = true
复制代码
确定。





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