Project1

标题: 角色面向NPC [打印本页]

作者: pnlhk    时间: 2007-4-6 06:58
标题: 角色面向NPC
解答者反而遇到問題{/gg}

雖然這個並行事件是可以令角色面向NPC
可是同時角色亦無法移動
如何能改進一下呢?(例如邊移動邊朝向NPC)
作者: pnlhk    时间: 2007-4-6 06:58
标题: 角色面向NPC
解答者反而遇到問題{/gg}

雖然這個並行事件是可以令角色面向NPC
可是同時角色亦無法移動
如何能改進一下呢?(例如邊移動邊朝向NPC)
作者: 狄奥    时间: 2007-4-6 07:08
提示: 作者被禁止或删除 内容自动屏蔽
作者: 亿万星辰    时间: 2007-4-6 14:55
像这个问题,通过脚本就可很容易的解决.........

默认的有 turn_toward_player ,你完全可以自己仿造写一个 turn_toward_npc 即可......
作者: pnlhk    时间: 2007-4-7 05:46
以下引用亿万星辰于2007-4-6 6:55:09的发言:

像这个问题,通过脚本就可很容易的解决.........

默认的有 turn_toward_player ,你完全可以自己仿造写一个 turn_toward_npc 即可......

看我寧可做個這麼複雜的事件也不寫腳本就知道我是腳本白痴......{/fd}
作者: 亿万星辰    时间: 2007-4-7 15:02
以下引用pnlhk于2007-4-6 21:46:55的发言:
看我寧可做個這麼複雜的事件也不寫腳本就知道我是腳本白痴......

呃......虽然我不能强迫你去学习脚本,但基础的脚本知识并不复杂.......

Game_Character里追加一个方法
  1.   def turn_to(event)
  2.     # 求得与主角的坐标差
  3.     sx = @x - event.x
  4.     sy = @y - event.y
  5.     # 坐标相等的场合下
  6.     if sx == 0 and sy == 0
  7.       return
  8.     end
  9.     # 横侧距离长的情况下
  10.     if sx.abs > sy.abs
  11.       # 将左右方向变更为朝向主角的方向
  12.       sx > 0 ? turn_left : turn_right
  13.     # 竖侧距离长的情况下
  14.     else
  15.       # 将上下方向变更为朝向主角的方向
  16.       sy > 0 ? turn_up : turn_down
  17.     end
  18.   end
复制代码

这和原函数的修改很小。。。。
调用方法,如果你是在设置移动路线里用,那么直接写
turn_to($game_map.events[X])
本身转向X号事件
如果是在事件页里
$game_map.events[X].turn_to($game_map.events[Y])
X号事件转向Y号事件
作者: 小傻瓜    时间: 2007-4-7 23:38
提示: 作者被禁止或删除 内容自动屏蔽




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