Project1

标题: RPGVA的一个小问题 [打印本页]

作者: wp5512987    时间: 2013-7-29 21:59
标题: RPGVA的一个小问题
在这之前我已经搜索过了,没有任何关于这个的记载。本人小白一个,请大神帮忙解决下,无耻了~  

-------------------分割线-------------------下面是正题



我想问下就是RPGVA里有没有像RPGVX的就是圈定一块区域,然后在里面的任何一个地方都可以触发任务或者事件。。  RPGVA里面区域编辑模式有点摸不着头脑了。
作者: wp5512987    时间: 2013-7-29 22:11
软件本身自带的,我记得好像是在右下角有编辑的。
作者: wp5512987    时间: 2013-7-29 22:13
软件本身自带的,我记得好像是在右下角有编辑的。
作者: 喵呜喵5    时间: 2013-7-29 23:25
右下角什么都没有,你说的是哪个?

TM截图未命名.png (42.57 KB, 下载次数: 20)

TM截图未命名.png

作者: gaogs123456    时间: 2013-7-29 23:46
这是一个靠近一定距离触发的脚本,使用方法是在事件的名称中加入  <SensorX>  X值=距离,1就是1格距离。
要注意:1格以1距离来计算,不论拐弯还是斜对角都是,事件本身的那一格不计算在距离内。
然后第二页事件以D作为独立开关开启条件,用并行处理或者自动执行就OK啦。
  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
复制代码





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