设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1982|回复: 9
打印 上一主题 下一主题

[已经解决] 请问如何在同一个事件里同时让两种触发条件有效

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
95 小时
注册时间
2008-9-6
帖子
74
跳转到指定楼层
1
发表于 2013-8-14 19:13:18 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 tz5514 于 2013-8-20 23:19 编辑

请问各位
我想要让一个事件(NPC)有两个分页
第一页的触发条件是并行处理 作为判定当这个NPC随机移动一步时 就播放脚步声
第二页的触发条件是和事件碰撞时 作为当主角与NPC碰撞时 就发生战斗
但会发生仅第二页有效,第一页完全无效的情况(分页编号较大的盖过较小的)

之前曾经用过拆成两个事件来实现 效果的确可以 问题是我一张地图上可能会有数十个怪物NPC 拆成两个事件的方法就是等于要放了两倍的事件量 对效能会有严重影响
所以我需要的就是放在同一事件里方法

因此想请教各位
如何“在同一个事件里同时让两种触发条件有效”

依我上面的需求来说就是

主角乱晃时,NPC执行 "并行处理"的分页
一旦主角与NPC发生破撞时 则执行"与事件碰撞"的分页 并且在执行完成之后,回到执行 "并行处理"的分页

谢谢

Lv1.梦旅人

梦石
0
星屑
50
在线时间
256 小时
注册时间
2013-5-27
帖子
196
2
发表于 2013-8-14 20:21:07 | 只看该作者
图书馆有个 脚印 脚本,走路可以有声音的。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
95 小时
注册时间
2008-9-6
帖子
74
3
 楼主| 发表于 2013-8-17 23:35:44 | 只看该作者
scottyfan 发表于 2013-8-14 20:21
图书馆有个 脚印 脚本,走路可以有声音的。


谢谢你的回覆 但是那个不符合我的需求
因为我的脚步声是因怪物NPC的不同而播放不同的脚步声
而不是跟地图图块有关联

并且是要给NPC(地图上的事件)使用的 而不是主角
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
99
在线时间
900 小时
注册时间
2012-11-13
帖子
893
4
发表于 2013-8-18 06:43:15 | 只看该作者
自定义怪物移动路线,然后

点评

这个方法虽然不符合原本的问题 但是可以完美实现我想要的效果 感谢你的解答  发表于 2013-8-18 18:13
废弃
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
95 小时
注册时间
2008-9-6
帖子
74
5
 楼主| 发表于 2013-8-18 22:01:12 | 只看该作者
3106345123 发表于 2013-8-18 06:43
自定义怪物移动路线,然后

不好意思请问一下 这个方法随机移动的话并没有问题
但是如果是主动追着主角跑的NPC的话(接近玩家) 会发生无法自动触发事件
就是说NPC虽然会追来主角身边 但是就仅到身边 不会自动触发战斗 必须要主角(玩家)撞他一下才能触发
请问如何解决 谢谢
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
99
在线时间
900 小时
注册时间
2012-11-13
帖子
893
6
发表于 2013-8-19 12:38:49 | 只看该作者
tz5514 发表于 2013-8-18 22:01
不好意思请问一下 这个方法随机移动的话并没有问题
但是如果是主动追着主角跑的NPC的话(接近玩家) 会发 ...

事件触发条件改为"与事件接触“
废弃
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
95 小时
注册时间
2008-9-6
帖子
74
7
 楼主| 发表于 2013-8-19 18:03:44 | 只看该作者
3106345123 发表于 2013-8-19 12:38
事件触发条件改为"与事件接触“


一直都是设成"与事件接触"..如果是平常直接在行动类型设定"接近主角"的话 他会自动撞上主角然后触发

但是如果是像你在楼上说的那种设法的话 就只会接近到主角身边 但是无法自动撞上来触发进入战斗
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
99
在线时间
900 小时
注册时间
2012-11-13
帖子
893
8
发表于 2013-8-20 08:11:48 | 只看该作者
本帖最后由 3106345123 于 2013-8-20 08:16 编辑
tz5514 发表于 2013-8-19 18:03
一直都是设成"与事件接触"..如果是平常直接在行动类型设定"接近主角"的话 他会自动撞上主角然后触发

但 ...


因为怪物在跟主角相邻时,怪物还要再向主角移动才可触发,所以
加上这个
  1. #==============================================================================
  2. # +++ MOG - Event Sensor Range (v1.0) +++
  3. #==============================================================================
  4. # By Moghunter
  5. # http://www.atelier-rgss.com
  6. #==============================================================================
  7. # Permite que o evento tenha dois comportamentos, de curta distância e de
  8. # longa distância.
  9. #===============================================================================
  10. # - Utilização
  11. # Crie uma página com a condição de ativação Self Switch D, está página será
  12. # usada quando o player estiver perto do evento.
  13. # Defina a area do sensor do evento colocando este nome no evento.
  14. #
  15. # <SensorX>
  16. #
  17. # X = Area do Sensor
  18. #
  19. #===============================================================================
  20. module MOG_EVENT_SENSOR
  21.   #Definição da letra da Self Switch que ativará a página de curta distância.
  22.   SENSOR_SELF_SWITCH = "D"
  23. end

  24. #===============================================================================
  25. # ■ GAME EVENT
  26. #===============================================================================
  27. class Game_Event < Game_Character
  28.   
  29.   attr_reader   :sensor_range
  30.   
  31.   #--------------------------------------------------------------------------
  32.   # ● Initialize
  33.   #--------------------------------------------------------------------------            
  34.   alias mog_event_sensor_initialize initialize
  35.   def initialize(map_id, event)
  36.       mog_event_sensor_initialize(map_id, event)
  37.       setup_event_sensor
  38.   end
  39.   
  40.   #--------------------------------------------------------------------------
  41.   # ● Setup Event Sensor
  42.   #--------------------------------------------------------------------------         
  43.   def setup_event_sensor
  44.       @sensor_range =  @event.name =~ /<Sensor(\d+)>/ ? $1.to_i : 0
  45.   end  
  46.   
  47.   #--------------------------------------------------------------------------
  48.   # ● Update
  49.   #--------------------------------------------------------------------------            
  50.   alias mog_event_sensor_update update
  51.   def update
  52.       mog_event_sensor_update
  53.       update_event_sensor
  54.   end  
  55.   
  56.   #--------------------------------------------------------------------------
  57.   # ● Update Sensor
  58.   #--------------------------------------------------------------------------        
  59.   def update_event_sensor
  60.       return if @sensor_range == 0
  61.       distance = ($game_player.x - self.x).abs + ($game_player.y - self.y).abs
  62.       enable   = (distance <= @sensor_range)
  63.       key = [$game_map.map_id, self.id, MOG_EVENT_SENSOR::SENSOR_SELF_SWITCH]
  64.       last_enable = $game_self_switches[key]
  65.       execute_sensor_effect(enable,key) if enable != last_enable
  66.     end

  67.   #--------------------------------------------------------------------------
  68.   # ● Execute_Sensor Effect
  69.   #--------------------------------------------------------------------------            
  70.   def execute_sensor_effect(enable,key)      
  71.       @pattern = 0
  72.       @pattern_count = 0               
  73.       $game_self_switches[key] = enable
  74.       self.refresh
  75.   end
  76.    
  77. end

  78. $mog_rgss3_event_sensor = true
复制代码
在事件名后加上<Sensor1>。
增加事件页,触发条件为 独立开关D为ON。
在增加的事件页改为接近主角

评分

参与人数 1梦石 +2 收起 理由
Sion + 2 认可答案

查看全部评分

废弃
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
95 小时
注册时间
2008-9-6
帖子
74
9
 楼主| 发表于 2013-8-20 10:25:16 | 只看该作者
3106345123 发表于 2013-8-20 08:11
因为怪物在跟主角相邻时,怪物还要再向主角移动才可触发,所以
加上这个在事件名后加上。
增加事件页,触 ...

已成功解决
感谢您这几次的耐心解答
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-16 11:43

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表