查看: 3009|回复: 2

[已经解决] 这个怪物追人脚本怎么设置追人时速度加快,不追时平常...

[复制链接]
梦石
0
星屑
12161
在线时间
4435 小时
注册时间
2014-4-11
回帖
5616

开拓者

发表于 2014-11-11 19:25:52 | 显示全部楼层 |阅读模式

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

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

×
我知道和@move_speed = last_speed有关。
我把他从下面的空白处拉到上面来+1。可是这样是平时是平常速度,看到主角后加速,加速,加速
  1. class Game_Character
  2. def toward_player_add(x = 1,y = 1)
  3. last_speed = @move_speed
  4. # 求得与主角坐标的差
  5. sx = (@x - $game_player.x).abs
  6. sy = (@y - $game_player.y).abs
  7. if sx <= x and sy <= y
  8. move_toward_player
  9. @move_speed = last_speed +1
  10. else
  11. move_random
  12. end

  13. end
  14. end
复制代码
梦石
0
星屑
34465
在线时间
5096 小时
注册时间
2012-11-19
回帖
4715

开拓者

发表于 2014-11-11 20:42:15 | 显示全部楼层
这样速度只会越来越快,把那个 last_speed 改成 @last_speed
删掉第三句,然后在初始化的时候:@last_speed = @move_speed

点评

谢谢。正确答案。前面加个@就可以在两个脚本间使用了吗。  发表于 2014-11-11 21:46

评分

参与人数 1星屑 +180 收起 理由
RyanBern + 180 认可答案

查看全部评分

xp vx va mv  va mz 各类型脚本/插件定制
回复

使用道具 举报

素材区好人

梦石
5
星屑
12574
在线时间
4348 小时
注册时间
2011-7-21
回帖
2264

超评测参与极短28参与极短27参与极短26参与极短25参与极短24参与极短23参与极短22参与极短21参与

发表于 2014-11-11 22:41:44 | 显示全部楼层
我这有个名雷视野,应该会用吧,不会用告诉我一声
[pre lang="ruby" line="1"]==============================================================================
# +++ MOG - Event Sensor Range (v1.0) +++
#==============================================================================
# By Moghunter
# http://www.atelier-rgss.com
#==============================================================================
# Permite que o evento tenha dois comportamentos, de curta distância e de
# longa distância.
#===============================================================================
# - Utilização
# Crie uma página com a condição de ativação Self Switch D, está página será
# usada quando o player estiver perto do evento.
# Defina a area do sensor do evento colocando este nome no evento.
#
# <SensorX>
#
# X = Area do Sensor
#
#===============================================================================
module MOG_EVENT_SENSOR
  #Definição da letra da Self Switch que ativará a página de curta distância.
  SENSOR_SELF_SWITCH = "D"
end

#===============================================================================
# ■ GAME EVENT
#===============================================================================
class Game_Event < Game_Character
  
  attr_reader   :sensor_range
  
  #--------------------------------------------------------------------------
  # ● Initialize
  #--------------------------------------------------------------------------            
  alias mog_event_sensor_initialize initialize
  def initialize(map_id, event)
      mog_event_sensor_initialize(map_id, event)
      setup_event_sensor
  end
  
  #--------------------------------------------------------------------------
  # ● Setup Event Sensor
  #--------------------------------------------------------------------------         
  def setup_event_sensor
      @sensor_range =  @event.name =~ /<Sensor(\d+)>/ ? $1.to_i : 0
  end  
  
  #--------------------------------------------------------------------------
  # ● Update
  #--------------------------------------------------------------------------            
  alias mog_event_sensor_update update
  def update
      mog_event_sensor_update
      update_event_sensor
  end  
  
  #--------------------------------------------------------------------------
  # ● Update Sensor
  #--------------------------------------------------------------------------        
  def update_event_sensor
      return if @sensor_range == 0
      distance = ($game_player.x - self.x).abs + ($game_player.y - self.y).abs
      enable   = (distance <= @sensor_range)
      key = [$game_map.map_id, self.id, MOG_EVENT_SENSOR::SENSOR_SELF_SWITCH]
      last_enable = $game_self_switches[key]
      execute_sensor_effect(enable,key) if enable != last_enable
    end

  #--------------------------------------------------------------------------
  # ● Execute_Sensor Effect
  #--------------------------------------------------------------------------            
  def execute_sensor_effect(enable,key)      
      @pattern = 0
      @pattern_count = 0               
      $game_self_switches[key] = enable
      self.refresh
  end
   
end

$mog_rgss3_event_sensor = true[/pre]

点评

不,我已经解决了。视野我那个也有的。  发表于 2014-11-11 23:01
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部