Project1

标题: 怎么用代码实现事件功能 [打印本页]

作者: weew163com    时间: 2016-12-14 16:36
标题: 怎么用代码实现事件功能
本帖最后由 weew163com 于 2016-12-14 17:15 编辑

最近在试着鼓捣脚本
需要下面的功能:
变量指定的事件移动到变量指定的坐标 并且面向也可以指定

事件本身有移动的功能但是不能用变量指定要移动的事件
所以想用代码来完成
自己写的是这样:

RUBY 代码复制
  1. m = 69 + $game_variables[21]
  2. x = $game_variables[5]
  3. y = $game_variables[6]
  4. $game_map.events[m].moveto( x, y  )


貌似是可以移动了 但是不知道怎么指定朝向阿 求指教

顺便问一下有没有专门写怎么 用脚本来实现事件可以做到的事的教程吗?
比如要开启战斗啦、设置移动路线拉这种。
作者: VIPArcher    时间: 2016-12-14 16:58
口糊,未测试
设置朝向
  1. d=2 #朝向2,4,6,8 如果有用八方向脚本1,3,5,7也是可以的
  2. $game_map.events[m].set_direction(d)
复制代码

另外事件里写事件脚本的话,可以使用
  1. #param : -1 则玩家、0 则本事件、其他 则是指定的事件ID
  2.   get_character(param)
复制代码
来获取事件
再另外你也可以把这个操作封装成一个方法放在 Game_Interpreter 类里面。需要的时候直接调用
例如
  1. class Game_Interpreter
  2.   def set_character_pos(id,x,y,d)
  3.     character = get_character(id)
  4.     return unless character
  5.     character.moveto(x, y)
  6.     character.set_direction(d)
  7.   end
  8. end
复制代码

事件里调用
  1. v=$game_variables
  2. set_character_pos(69+v[21],v[5],v[6],v[7])
复制代码

作者: weew163com    时间: 2016-12-14 17:14
VIPArcher 发表于 2016-12-14 16:58
口糊,未测试
设置朝向
另外事件里写事件脚本的话,可以使用 来获取事件

哦哦感谢!




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