Project1

标题: 推箱子推到确定位置如何引发事件? [打印本页]

作者: ~萝卜萝卜~    时间: 2015-2-2 14:00
标题: 推箱子推到确定位置如何引发事件?
就是把箱子推到某一个设定好的地方后推不动了,同事触发另一个事件的设置怎么做?
作者: taroxd    时间: 2015-2-2 14:02
每推一步做一次判断,是否指定位置。如果是,那么打开一个开关。

箱子的第二个事件页是这个开关打开,内容为空(也就是无法移动)
要触发的事件条件也设为这个开关打开,触发条件设为自动执行。
作者: 翻滚牛宝宝    时间: 2015-2-2 14:42
  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
复制代码
在你需要的位置设置一个事件 然后按上面的脚本就可以了
作者: tseyik    时间: 2015-2-2 16:29
本帖最后由 tseyik 于 2015-2-2 16:37 编辑

倉庫番VA

soukoban.rar

1.19 MB, 下载次数: 113


作者: ~萝卜萝卜~    时间: 2015-2-2 19:20
本帖最后由 ~萝卜萝卜~ 于 2015-2-2 19:32 编辑

我来传一个解决后的图。
作者: ~萝卜萝卜~    时间: 2015-2-2 19:40
我好像不能上传图片,用图片地址又出各种问题,只能用附件来发了。

QQ图片20150202191041.png (55.65 KB, 下载次数: 34)

QQ图片20150202191041.png

QQ图片20150202191056.png (44.26 KB, 下载次数: 25)

QQ图片20150202191056.png

QQ图片20150202191111.png (38.19 KB, 下载次数: 27)

QQ图片20150202191111.png





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