Project1

标题: 请教一下如何在战斗中显示敌人的属性有效度 [打印本页]

作者: 我是pre啊    时间: 2019-1-12 18:49
标题: 请教一下如何在战斗中显示敌人的属性有效度
如题,我觉得这样显示可以让战斗更加方便,以免用出不恰当的技能。
作者: 灯笼菜刀王    时间: 2019-1-12 19:56
你没有敌人随机生成属性, 敌人随机更换属性之类的吧, 所以这个问题很简单

根据你设置的敌人属性, 加上你觉得很好的提示, OVER

反正都是预先设置好的, 绝对不会有差错

栗子,  设置火A的敌人, 然后它的名字为  幽灵(火弱)

搞定收工
作者: KB.Driver    时间: 2019-1-12 23:24


RUBY 代码复制
  1. module SHOW_ENMEY_INFO
  2.  
  3.   ENABLE_SWITCH = 0
  4.   # 控制信息显示的开关编号
  5.   # 写0则固定开启,写-1则固定关闭
  6.  
  7.   def self.enable?
  8.     return false if ENABLE_SWITCH <  0
  9.     return true  if ENABLE_SWITCH == 0
  10.     $game_switches[ENABLE_SWITCH]   
  11.   end   
  12.  
  13.   SYMBOL_START = "(" #属性有效度开始符号
  14.   SYMBOL_END   = " )" #属性有效度结束符号
  15. end
  16.  
  17. class Window_Help
  18.  
  19.   alias :cld99_set_enemy :set_enemy
  20.   def set_enemy(enemy)
  21.     return cld99_set_enemy(enemy) unless SHOW_ENMEY_INFO.enable?
  22.     text = enemy.name
  23.     state_text = make_battler_state_text(enemy, 112, false)
  24.     if state_text != ""
  25.       text += "  " + state_text
  26.     end
  27.     #==================================================================
  28.     text += enemy.element_status_string
  29.     #==================================================================
  30.     set_text(text, 1)
  31.   end
  32. end
  33.  
  34. class Game_Enemy
  35.   include SHOW_ENMEY_INFO
  36.  
  37.   def element_status_string
  38.     string = ""
  39.     element_id = 1
  40.     (1..$data_system.elements.size).each do |element_id|
  41.       string += SYMBOL_END if element_id == $data_system.elements.size
  42.       #最后一次加个右括号
  43.       rank = $data_enemies[@enemy_id].element_ranks[element_id]
  44.       #element_ranks 1:A,2:B,3:C,4:D,5:E,6:F
  45.       next if rank == 3 || rank.nil? #C
  46.       term = $data_system.elements[element_id]
  47.       effect = (Array.new(6){|i| sprintf("%c",64+i)})[rank]
  48.       string += SYMBOL_START unless string.index(SYMBOL_START) #第一次加个左括号
  49.       string += " #{term}:#{effect}"
  50.     end
  51.     string
  52.   end
  53. end

作者: 我是pre啊    时间: 2019-1-13 16:58
KB.Driver 发表于 2019-1-12 23:24
module SHOW_ENMEY_INFO
  
  ENABLE_SWITCH = 0

哇,感谢~




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