Project1

标题: 请问这个脚本的“踩踏/置物判断”要如何判断事件的? [打印本页]

作者: 黑舞嗜    时间: 2015-9-18 19:43
标题: 请问这个脚本的“踩踏/置物判断”要如何判断事件的?
本帖最后由 黑舞嗜 于 2015-9-18 20:46 编辑

https://rpg.blue/thread-366532-1-1.html
这个“踩踏/置物判断”脚本要如何判断事件的呢?
只能弄出判断主角的效果,事件的怎么试都试不出来

作者: 翻滚牛宝宝    时间: 2015-9-18 20:21
  1. #==============================================================================

  2. # ☆ Custom Adventure 踩踏/置物判断

  3. # -- Last Updated: 2014.6.3

  4. # -- by Moy

  5. # -- 转载请保留以上信息

  6. #==============================================================================

  7. #   本脚本判断一个在人物下层的事件是否被其他事件/角色踩踏

  8. #   对本事件使用只需要在分歧脚本中使用get_character(0).stepped_on?即可。

  9. #   判断别的事件请自行获取实例后使用。

  10. #==============================================================================

  11. # ■ Game_Event

  12. #==============================================================================

  13. class Game_Event < Game_Character

  14.   #--------------------------------------------------------------------------

  15.   # ● 判断本事件是否被其他事件/角色踩踏

  16.   #--------------------------------------------------------------------------

  17.   def stepped_on?#被事件踩踏

  18.     stepped_by_events?(@x,@y) #|| stepped_by_player_characters?(@x, @y)

  19.   end
  20.   
  21.   def stepped_on1?#被主角踩踏

  22.     stepped_by_player_characters?(@x, @y)

  23.   end
  24.   def stepped_on2?#被主角和事件踩踏

  25.     stepped_by_events?(@x,@y) || stepped_by_player_characters?(@x, @y)

  26.   end


  27.   #--------------------------------------------------------------------------

  28.   # ● 判断某位置是否被其他事件踩踏

  29.   #--------------------------------------------------------------------------

  30.   def stepped_by_events?(x, y)

  31.     $game_map.events_xy_nt(x, y).any? do |event|

  32.       event.normal_priority?

  33.     end

  34.   end

  35.   #--------------------------------------------------------------------------

  36.   # ● 判断某位置是否被主控角色踩踏

  37.   #--------------------------------------------------------------------------

  38.   def stepped_by_player_characters?(x, y)

  39.     @priority_type == 0 && $game_player.collide?(x, y)

  40.   end

  41. end
复制代码
看29行-48行
作者: 黑舞嗜    时间: 2015-9-18 20:46
翻滚牛宝宝 发表于 2015-9-18 20:21
看29行-48行

还是试不出来啊,事件脚本里面填get_event(3).stepped_on1?或者get_character(3).stepped_on1?都不行,到底怎么判断
作者: 翻滚牛宝宝    时间: 2015-9-18 20:51
就这样用的 要放在条件分歧里

QQ截图20150918204550.png (14.22 KB, 下载次数: 23)

QQ截图20150918204550.png

作者: 黑舞嗜    时间: 2015-9-18 22:02
翻滚牛宝宝 发表于 2015-9-18 20:51
就这样用的 要放在条件分歧里

这不还是主角踩踏时触发么..主角踩踏没意义,本身编辑器就能实现,我要的是事件踩踏上去触发啊
作者: tseyik    时间: 2015-9-18 22:31
使用方法:
check_region_events_size(區域ID, 關鍵字)
例:捉猫
check_region_events_size(1,"grab")
返回區域1中有關鍵字grab的事件数目





掴めるイベント.rar (1.46 MB, 下载次数: 63)

掴めるイベント

作者: 翻滚牛宝宝    时间: 2015-9-19 08:19
黑舞嗜 发表于 2015-9-18 22:02
这不还是主角踩踏时触发么..主角踩踏没意义,本身编辑器就能实现,我要的是事件踩踏上去触发啊 ...

做了简单做了个范例,你看一下吧,主角踩踏触发 事件踩踏触发 和事件踩踏触发踩踏事件都有,没有RGSS3.00 自己复制一个

Project8.rar

300.02 KB, 下载次数: 68






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