Project1

标题: 怎么更改地图中回复或持续伤害的有效步数。 [打印本页]

作者: 文雅夕露    时间: 2017-12-29 23:50
标题: 怎么更改地图中回复或持续伤害的有效步数。
#--------------------------------------------------------------------------
  # * 主角前進一步時的進程處理
  #--------------------------------------------------------------------------
  def on_player_walk
    for actor in members
      if actor.slip_damage?
        actor.hp -= 1 if actor.hp > 1   # 中毒所造成的傷害
        $game_map.screen.start_flash(Color.new(255,0,0,64), 4)
      end
      if actor.auto_hp_recover and actor.hp > 0
        actor.hp += 1                   # HP自動恢復
      end
    end
  end

找到以上脚本却没有思路更改。
默认是地图上走一步增加或减少hp,我想改为走十步才增加减少hp。
不知该怎么判断?

作者: 魔法丶小肉包    时间: 2017-12-30 00:19
本帖最后由 魔法丶小肉包 于 2018-1-4 22:20 编辑

RUBY 代码复制
  1. class Game_Party
  2.   def on_player_walk
  3.     @a ||= 0
  4.     @a += 1
  5.     for actor in members
  6.       if actor.slip_damage?
  7.         actor.hp -= 1 if actor.hp > 1 && @a == 10   # 持续伤害
  8.         $game_map.screen.start_flash(Color.new(255,0,0,64), 4) if @a == 10
  9.       end
  10.       if actor.auto_hp_recover and actor.hp > 0 and @a == 10
  11.         actor.hp += 1                   # 体力自动回复
  12.       end
  13.     end
  14.     if @a == 10
  15.           @a = 0
  16.     end
  17.   end
  18. end

作者: chd114    时间: 2018-1-4 17:21
  1. alias on_player_walk_10 on_player_walk
  2. def on_player_walk
  3. @step||=0;@step+=1
  4. on_player_walk_10 if @step>=10
  5. @step=0 if @step>=10
  6. end
复制代码

不用對原腳本內部做調整的情況可以用alias加新內容
作者: 文雅夕露    时间: 2018-1-4 20:10
chd114 发表于 2018-1-4 17:21
不用對原腳本內部做調整的情況可以用alias加新內容


不知这是什么情况...

作者: chd114    时间: 2018-1-4 20:15
文雅夕露 发表于 2018-1-4 20:10
不知这是什么情况...

因為這個腳本是class裏面的東西···我這裡沒vx所以不清楚你的腳本在哪個類裏

在main上面加
  1. class 腳本原來所屬類名
  2. 我放的腳本
  3. end
复制代码

就行了




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