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

Project1

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

[已经过期] 击破数无法显示

[复制链接]

Lv1.梦旅人

梦石
0
星屑
168
在线时间
112 小时
注册时间
2014-2-4
帖子
50
跳转到指定楼层
1
发表于 2015-12-26 22:46:28 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
我把疾风怒涛汉化的任务脚本和超级整合的横版战斗脚本放在一起发现那个击破数无论打多少任务目标都是0如图{:2_264:} 求解决

RUBY 代码复制
  1. #==============================================================================
  2. # ■ VXAce-RGSS3-6 击破数计算器 [Ver.1.0.0]         by Claimh  汉化:疾风怒涛
  3. #------------------------------------------------------------------------------
  4. # 各角色击倒敌人数量计算。
  5. #------------------------------------------------------------------------------
  6. #・窗口显示设定
  7. #Widow_Status备注记录内容。
  8. #<记述>
  9. # draw_defeat_count(actor_id, enemy_id, x, y)
  10. #   actor_id   :对象角色ーID(为0则指代全体角色)
  11. #   enemy_id   :对象敌人ーID(为0则指定全体敌人)
  12. #   x      :横方向表示位置
  13. #   y      :纵方向表示位置
  14. #------------------------------------------------------------------------------
  15. #・变量记录
  16. #在事件设定中的脚本作如下格式的描述。
  17. #<记述>
  18. # input_defeat_count(actor_id, enemy_id, variable_id)
  19. #   actor_id   :对象角色ーID(为0则指代全体角色)
  20. #   enemy_id   :对象敌人ーID(为0则指定全体敌人)
  21. #   variable_id :击破数记录变量
  22. #==============================================================================
  23.  
  24. module DefeatCounter ## 与其他脚本合并使用
  25.   #--------------------------------------------------------------------------
  26.   # ● 指定角色的击破数
  27.   #       actor_id      :对象角色ーID(为0则指代全体角色)
  28.   #       enemy_id      :对象敌人ーID(为0则指定全体敌人)
  29.   #--------------------------------------------------------------------------
  30.   def self.defeat_count(actor_id=0, enemy_id=0)
  31.     return $game_actors.defeat(enemy_id, actor_id)
  32.   end
  33. end
  34.  
  35. class Game_Actor < Game_Battler
  36.   #--------------------------------------------------------------------------
  37.   # ● object初期化
  38.   #--------------------------------------------------------------------------
  39.   alias initialize_defeat_count initialize
  40.   def initialize(actor_id)
  41.     initialize_defeat_count(actor_id)
  42.     @defeat = {}
  43.   end
  44.   #--------------------------------------------------------------------------
  45.   # ● 击破数取得
  46.   #--------------------------------------------------------------------------
  47.   def defeat(enemy_id=0)
  48.     return defeat_all if enemy_id == 0
  49.     @defeat[enemy_id] = 0 unless @defeat.keys.include?(enemy_id)
  50.     return @defeat[enemy_id]
  51.   end
  52.   #--------------------------------------------------------------------------
  53.   # ● 击破数取得
  54.   #--------------------------------------------------------------------------
  55.   def defeat_all
  56.     @defeat.keys.inject(0) { |n, id| n += @defeat[id] }
  57.   end
  58.   #--------------------------------------------------------------------------
  59.   # ● 击破数计算
  60.   #--------------------------------------------------------------------------
  61.   def defeat_cnt(enemy_id)
  62.     return if enemy_id == 0
  63.     @defeat[enemy_id] = 0 unless @defeat.keys.include?(enemy_id)
  64.     @defeat[enemy_id] += 1
  65.   end
  66. end
  67.  
  68. class Game_Actors
  69.   #--------------------------------------------------------------------------
  70.   # ● 击破数取得
  71.   #--------------------------------------------------------------------------
  72.   def defeat(enemy_id=0, actor_id=0)
  73.     return defeat_all(enemy_id) if actor_id == 0
  74.     return self.[](actor_id).defeat(enemy_id)
  75.   end
  76.   #--------------------------------------------------------------------------
  77.   # ● 击破数取得
  78.   #--------------------------------------------------------------------------
  79.   def defeat_all(enemy_id=0)
  80.     @data.inject(0) { |n, actor| n += (actor.nil? ? 0 : actor.defeat(enemy_id)) }
  81.   end
  82. end
  83.  
  84. #==============================================================================
  85. # ■ Game_Battler
  86. #==============================================================================
  87. class Game_Battler < Game_BattlerBase
  88.   #--------------------------------------------------------------------------
  89.   # ● 伤害处理
  90.   #    在调用之前 @result.hp_damage @result.mp_damage @result.hp_drain
  91.   #    @result.mp_drain 已被设置。
  92.   #--------------------------------------------------------------------------
  93.   alias execute_damage_defeat execute_damage
  94.   def execute_damage(user)
  95.     execute_damage_defeat(user)
  96.     return if actor? or !dead? or user.enemy?
  97.     return if $game_troop.enable_dead_count?(self.index)
  98.     $game_troop.defeat_dead_count(self.index)
  99.     user.defeat_cnt(self.enemy_id)
  100.   end
  101. end
  102.  
  103.  
  104. #==============================================================================
  105. # ■ Game_Troop
  106. #==============================================================================
  107. class Game_Troop < Game_Unit
  108.   #--------------------------------------------------------------------------
  109.   # ● 建立[set up]
  110.   #--------------------------------------------------------------------------
  111.   alias setup_defeat setup
  112.   def setup(troop_id)
  113.     setup_defeat(troop_id)
  114.     @enemy_defeat = []
  115.   end
  116.   #--------------------------------------------------------------------------
  117.   # ● 击破時的计算
  118.   #--------------------------------------------------------------------------
  119.   def defeat_dead_count(index)
  120.     @enemy_defeat[index] = true
  121.   end
  122.   #--------------------------------------------------------------------------
  123.   # ● 已完成计算?
  124.   #--------------------------------------------------------------------------
  125.   def enable_dead_count?(index)
  126.     @enemy_defeat[index] || false
  127.   end
  128. end
  129.  
  130.  
  131. class Game_Interpreter
  132.   #--------------------------------------------------------------------------
  133.   # ● 指定变量时角色击破数储存
  134.   #       actor_id      :对象角色ー(为0则指代全体角色)
  135.   #       enemy_id      :对象敌人ー(为0则指代全体敌人)
  136.   #       variable_id   :击破数存储的变量
  137.   #--------------------------------------------------------------------------
  138.   def input_defeat_count(actor_id, enemy_id, variable_id)
  139.     $game_variables[variable_id] = $game_actors.defeat(enemy_id, actor_id)
  140.     return true
  141.   end
  142. end
  143.  
  144. class Window_Base < Window
  145.   #--------------------------------------------------------------------------
  146.   # ● 指定变量时角色击破数表示
  147.   #       actor_id      :对象角色ー(为0则指代全体角色)
  148.   #       enemy_id      :对象敌人ー(为0则指代全体敌人)
  149.   #       x             :横方向表示位置
  150.   #       y             :纵方向表示位置
  151.   #--------------------------------------------------------------------------
  152.   def draw_defeat_count(actor_id, enemy_id, x, y)
  153.     draw_text(x, y, 200, line_height, $game_actors.defeat(enemy_id, actor_id), 2)
  154.   end
  155. end

无标题.jpg (205.61 KB, 下载次数: 23)

无标题.jpg
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

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

GMT+8, 2024-11-17 03:35

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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