查看: 2006|回复: 6

[已经解决] 定义角色新属性遇到的问题

[复制链接]
梦石
0
星屑
606
在线时间
797 小时
注册时间
2014-7-1
回帖
501

开拓者

发表于 2016-7-22 07:20:33 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 jiushiainilip19 于 2016-7-22 07:40 编辑

这是我自己添加的角色新属性  可是这个只能在战斗中调用 无法在其他界面调用

比如在一些加点的界面用@actor.crt就会报错


这个该用什么样的方法去解决呢?

实在是不想用到那么多变量来给角色加属性!
[pre lang="ruby"]
class Game_Actor < Game_Battler
  attr_reader :crt                        # 暴击几率
  attr_reader :maxcrts                    # 暴击增益
  attr_reader :lucks                      # 运气
  attr_reader :neictl                        # 内部穿透力
  attr_reader :waictl                        # 外部穿透力
  attr_reader :xihp                        # 吸血
  attr_reader :xisp                        # 吸气
  
  alias mohuaiyuan201676_setup setup
  def setup(actor_id)
    mohuaiyuan201676_setup(actor_id)
    @crt = 0
    @maxcrts = 0
    @lucks = 0
    @neictl = 0
    @waictl = 0
    @xihp = 0
    @xisp = 0
  end
  #● 定义暴击率
def crt
  n = str/2000+dex/2000+$game_variables[@actor_id+4850]
  #天赋效果增加暴击率
    case self.id
     when 20 #玄霄
       if self.battle_skill.include?(20) ; n += 15 ;end #[A天赋]冰火之力
     when 13 #赵云
       if self.battle_skill.include?(13) ; n += 10 ;end #[A天赋]勇冠三军
     when 16 #步惊云
       if self.battle_skill.include?(16) ; n += 30 ;end #[A天赋]火麒麟臂
     end
   
    case @weapon_id
     when 1..999
      weapon = $data_weapons[@weapon_id]
      n += weapon != nil ? weapon.str_plus/10 : 0
    end
    #一些装备下的状态增加暴击率
    for i in @states
    case i
    when 124..125 ; n += 20  #万寿套 和 五彩套
    when 133 ; n += 5   #不败套1
    when 134 ; n += 10  #不败套2
    when 135 ; n += 15  #不败套3
    when 136 ; n += 20  #不败套4
    when 137 ; n += 25  #不败套5 161 165
    when 161 ; n += 5   #凌霄套1
    when 162 ; n += 10  #凌霄套2
    when 163 ; n += 15  #凌霄套3
    when 164 ; n += 20  #凌霄套4
    when 165 ; n += 25  #凌霄套5
    when 698 ; n += 15  #幻彩金光石
    when 697 ; n += 10 #碧玉海星石
    when 284 ; n += $game_variables[3674] #内功葵花宝典
    when 269 ; n += $game_variables[3672] #内功招臻无招
    end;end
      return [[n, 1].max, 300].min
    end
   
   
   
   
  #● 定义暴伤
    def maxcrts
      n = 100+str/100+dex/100+$game_variables[@actor_id+4825]
      
#星级附加效果增益
  case $game_variables[3456]  #$墨星级
    when 1;n+=10
    when 2;n+=20
    when 3;n+=40
    when 4;n+=100
    end
      
      
  #天赋效果增加爆伤
    case self.id
     when 20 #玄霄
       if self.battle_skill.include?(20) ; n += 20 ;end #[A天赋]冰火之力
     when 15 #陆雪琪
       if self.battle_skill.include?(15) ; n += 30 ;end #[A天赋]天地不仁
     when 21 #墨鸭
       if self.battle_skill.include?(25) ; n += 25 ;end #[A天赋]火麒麟臂
     when 17 #聂风
       if self.battle_skill.include?(17) ; n += 35 ;end #[A天赋]魔血爆发
     end
      
     #专属武器每5点元神+1%暴击率!
    case @weapon_id
     when 1..999
      weapon = $data_weapons[@weapon_id]
      n += weapon != nil ? weapon.dex_plus/5 : 0
    end
    #一些装备下的状态增加暴击率
      for i in @states
       case i
        when 124..125 ; n += 20 #万寿套 和 五彩套
        when 133 ; n += 30 #不败套1
        when 134 ; n += 40 #不败套2
        when 135 ; n += 50 #不败套3
        when 136 ; n += 60 #不败套4
        when 137 ; n += 70#不败套5 161 165
        when 161 ; n += 30 #凌霄套1
        when 162 ; n += 40#凌霄套2
        when 163 ; n += 50#凌霄套3
        when 164 ; n += 60 #凌霄套4
        when 165 ; n += 70 #凌霄套5
        when 699 ; n += 30 #无上黑玄石
        when 697 ; n += 10#碧玉海星石 696
        when 275 ; n += [$game_variables[3678]*4,60].min#内功擒龙功
        end;end
      return [[n, 1].max, 500].min
    end
   
   
   
   
  #● 定义运气
    def lucks
      n = 1+$game_variables[@actor_id+4800]
      
  #天赋效果增加爆伤
    case self.id
     when 6 #赵灵儿
       if self.battle_skill.include?(6) ; n += 10 ;end
     when 12 #张良
       if self.battle_skill.include?(12) ; n += 8 ;end
     when 18 #宇文括
       if self.battle_skill.include?(18) ; n += 7 ;end
     when 23 #柳梦璃
       if self.battle_skill.include?(27) ; n += 3 ;end
     end
      
   
    case @weapon_id
     when 1..999
      weapon = $data_weapons[@weapon_id]
      n += weapon != nil ? weapon.agi_plus/30 : 0
    end
    #一些装备下的状态增加暴击率
     for i in @states
       case i
        when 696 ; n += 10#第尊石
        when 112 ; n += 2 #太乙1
        when 113 ; n += 4 #太乙2
        when 114 ; n += 6 #太乙3
        when 115 ; n += 8 #太乙4
        when 116 ; n += 10 #太乙5
        when 118 ; n += 2 #乌光1
        when 119 ; n += 4 #乌光2
        when 120 ; n += 6 #乌光3
        when 121 ; n += 8 #乌光4
        when 122 ; n += 10 #乌光5
        when 273 ; n += [$game_variables[3680],15].min#内功九阳神功
       end
     end
      return [[n, 1].max, 100].min
    end
   
   
   
   
   
  #● 定义内穿
    def neictl
      n = 1+$game_variables[@actor_id+4875]
      
#星级附加效果增益
  case $game_variables[186]  #$陆星级
    when 1;n+=20
    when 2;n+=40
    when 3;n+=60
    when 4;n+=100
    end
  case $game_variables[3440]  #$玄星级
    when 1;n+=20
    when 2;n+=40
    when 3;n+=60
    when 4;n+=100
    end
      
      
  #天赋效果增加内穿
    case self.id
     when 14 #高月
       if self.battle_skill.include?(14) ; n += 10 ;end
     when 8 #大司命
       if self.battle_skill.include?(8) ; n += 10 ;end
     when 2 #少司命
       if self.battle_skill.include?(2) ; n += 10 ;end
     end
      
   
    case @weapon_id
     when 1..999
      weapon = $data_weapons[@weapon_id]
      n += weapon != nil ? weapon.int_plus/2 : 0
    end
   
    #一些装备下的状态增加内穿
     for i in @states
       case i
        when 143 ; n += 30  #天子3
        when 144 ; n += 60  #天子4
        when 145 ; n += 100 #天子5
        when 272 ; n += $game_variables[3682] #太极心法
        when 284 ; n += $game_variables[3674]*2 #内功葵花宝典
        end;end
        
      return [[n, 1].max, 500].min
    end
   
   
   
   
   
  #● 定义外穿
    def waictl
      n = 1+$game_variables[@actor_id+4900]
      
#星级附加效果增益
  case $game_variables[90]  #$卫星级
    when 1;n+=20
    when 2;n+=40
    when 3;n+=60
    when 4;n+=100
    end
  case $game_variables[180] #$赵星级
    when 1;n+=20
    when 2;n+=40
    when 3;n+=60
    when 4;n+=100
    end
      
      
      
  #天赋效果增加外穿
    case self.id
     when 10 #吕布
       if self.battle_skill.include?(10) ; n += 10 ;end
     when 1 #卫庄
       if self.battle_skill.include?(1) ; n += 10 ;end
     when 19 #夏侯仪
       if self.battle_skill.include?(19) ; n += 10 ;end
       end
      
   
    case @weapon_id
     when 1..999
      weapon = $data_weapons[@weapon_id]
      n += weapon != nil ? weapon.int_plus/2 : 0
    end
      
    #一些装备下的状态增加外穿
     for i in @states
       case i
        when 139 ; n += 30 #苍云3
        when 140 ; n += 60 #苍云4
        when 141 ; n += 100 #苍云5
        when 284 ; n += $game_variables[3674]*2#内功葵花宝典
        when 400 ; n += $data_states[400].pdef_rate
        end;end   
      return [[n, 1].max, 500].min
    end
   

   
  #● 定义吸血
    def xihp
      n = $game_variables[3692]+$game_variables[@actor_id+4925]
      
#星级附加效果增益
  case $game_variables[173]  #$燕星级
    when 1;n+=2
    when 2;n+=3
    when 3;n+=4
    when 4;n+=5
    end
  case $game_variables[3463]  #$慕容紫英
    when 1;n+=2
    when 2;n+=3
    when 3;n+=4
    when 4;n+=5
    end
      
  #天赋效果增加吸血
    case self.id
     when 11 #燕丹
       if self.battle_skill.include?(11) ; n += 10 ;end
     when 4 #盖聂
       if self.battle_skill.include?(4) ; n += 10 ;end
     when 5 #天明
       if self.battle_skill.include?(5) ; n += 10 ;end
     when 22 #慕容紫英
       if self.battle_skill.include?(26) ; n += 5 ;end
       end
      
   
    case @weapon_id
     when 1..999
      weapon = $data_weapons[@weapon_id]
      n += weapon != nil ? weapon.atk/30: 0
    end
      
    #一些装备下的状态增加吸血
     for i in @states
       case i
        when 139 ; n +=  5 #苍云3
        when 140 ; n +=  8 #苍云4
        when 141 ; n += 10 #苍云5
        when 695 ; n += 15 #九玄破空石
        when 693 ; n += 10 #字母阴阳石
        when 276 ; n += $game_variables[3676] #内功九阴真经全本
        when 284 ; n += $game_variables[3674] #内功葵花宝典
        end;end
            
      return [[n, 1].max, 150].min
    end
  #● 定义吸真
    def xisp
      n = $game_variables[3691]+$game_variables[@actor_id+4950]
      
      
#星级附加效果增益
  case $game_variables[183]  #$高星级
    when 1;n+=2
    when 2;n+=3
    when 3;n+=4
    when 4;n+=5
    end
  case $game_variables[3470]  #$柳梦璃星级
    when 1;n+=2
    when 2;n+=3
    when 3;n+=4
    when 4;n+=5
    end
      
  #天赋效果增加吸真
    case self.id
     when 7 #李逍遥
       if self.battle_skill.include?(7) ; n += 10 ;end
     when 3 #冰雪莲
       if self.battle_skill.include?(3) ; n += 10 ;end
       end

     for i in @states
       case i
        when 143 ; n +=  5  #天子3
        when 144 ; n +=  8  #天子4
        when 145 ; n += 10  #天子5
        when 694 ; n += 15#五彩斑斓石
        when 693 ; n += 10# #字母阴阳石
        when 276 ; n += $game_variables[3676]#内功九阴真经全本
        when 284 ; n += $game_variables[3674]#内功葵花宝典
        end;end
      
      weapon = $data_weapons[@weapon_id]
      n += weapon != nil ? weapon.atk/30: 0
        
      return [[n, 1].max, 150].min
    end
  
  #---------------------------------------------------------------------------
  #● 最大威力成长属性
  #---------------------------------------------------------------------------
  def zmax
    n = 500+$game_variables[$威力[0+@actor.id]]*1000
    n += (str + dex + agi)/ 20
    return [[n, 1].max, 10000].min
  end
  #---------------------------------------------------------------------------
  #● 角色战斗力
  #---------------------------------------------------------------------------
  def ce
     n = str + dex + (atk * 10) + (int * 10) + $game_variables[99]
     
#星级附加效果增益
  case $game_variables[164]  #$大星级
    when 1;n+=300
    when 2;n+=500
    when 3;n+=800
    when 4;n+=1000
    end
  case $game_variables[3432] #$夏星级
    when 1;n+=300
    when 2;n+=500
    when 3;n+=800
    when 4;n+=1000
    end
     
     
     for i in @states
      case i
       when 401 ; n += n * 50 /100
       end
     end
     return [[n, 1].max, 65535].min
  end
  
  #---------------------------------------------------------------------------
  #● 定义个人回合
  #---------------------------------------------------------------------------
  def yxtr
    n = 0
    n += $game_variables[self.id + 187]
    return n
  end
end

#==============================================================================
class Window_Base < Window
  #---------------------------------------------------------------------------
  #● 战斗力描绘
  #---------------------------------------------------------------------------
  def draw_actor_ce(actor, x, y)
    self.contents.font.color = system_color
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y, 164, 80, "战斗力:"+actor.ce.to_s)
  end
  def draw_actor_crt(actor, x, y)
    self.contents.font.color = system_color
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 94, y, 164, 80, actor.crt.to_s+"%")
  end  
  def draw_actor_maxcrts(actor, x, y)  
    self.contents.font.color = system_color
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 94, y, 164, 80, actor.maxcrts.to_s+"%")
  end  
  def draw_actor_lucks(actor, x, y)  
    self.contents.font.color = system_color
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 94, y, 164, 80, actor.lucks.to_s+"%")
  end  
  def draw_actor_neictl(actor, x, y)  
    self.contents.font.color = system_color
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 94, y, 164, 80, actor.neictl.to_s)
  end  
  def draw_actor_waictl(actor, x, y)  
    self.contents.font.color = system_color
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 94, y, 164, 80, actor.waictl.to_s)
  end  
  def draw_actor_xihp(actor, x, y)  
    self.contents.font.color = system_color
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 94, y, 164, 80, actor.xihp.to_s+"%")
  end  
  def draw_actor_xisp(actor, x, y)  
    self.contents.font.color = system_color
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 94, y, 164, 80, actor.xisp.to_s+"%")
  end  
  def draw_actor_zmax(actor, x, y)  
    self.contents.font.color = system_color
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 94, y, 164, 80, actor.zmax.to_s+"点")
  end  
  end  
end
[/pre]

[pre lang="ruby"]
class Scene_Mstarlevel
  #--------------------------------------------------------------------------
  # ● 初始化对像$scene = Scene_Mstarlevel.new
  #     actor_index : 角色索引  Scene_Mstarlevel
  #--------------------------------------------------------------------------
  def initialize(actor_index = 0, menu_index = 0)
    @actor_index = actor_index
    @menu_index = menu_index
  end
  #--------------------------------------------------------------------------
  # ● 主处理
  #--------------------------------------------------------------------------
  def main
    # 获取角色
    @actor = $game_party.actors[@actor_index]
    s1 = "暴击概率+"
    s2 = "暴击增益+"
    s3 = "江湖运气+"
    s4 = "内招穿透+"
    s5 = "外招穿透+"
    s6 = "外招吸血+"
    s7 = "内招吸真+"
    @commandy_window = Window_Command.new(180, [s1,s2,s3,s4,s5,s6,s7])
    @commandy_window.index = @menu_index
    @commandy_window.back_opacity = 255
    @commandy_window.active = false
    #@command_window.visible = false
    @commandy_window.x+=450
    @commandy_window.y+=60
   
    # 生成状态窗口
    @status_window = Window_Mstar.new(@actor)
    @status_window.y =65
    @help_window = Window_Mstar_Help.new   
    @help_window.y =360
    #选择窗口
    @command_window = Window_MstarCommand.new
    @command_window.y=0
    # 执行过渡
    Graphics.transition
    # 主循环
    loop do
      # 刷新游戏画面
      Graphics.update
      # 刷新输入信息
      Input.update
      # 刷新画面
      update
      # 如果画面被切换的话就中断循环
      if $scene != self
        break
      end
    end
    # 准备过渡
    Graphics.freeze
    # 释放窗口
    @status_window.dispose
    @help_window.dispose
    @command_window.dispose
    @commandy_window.dispose
  end
  #--------------------------------------------------------------------------
  # ● 定义第二属性境界提升操作
  #--------------------------------------------------------------------------
  def update_commandy
    if Input.trigger?(Input::B)
      # 演奏取消 SE
      $game_system.se_play($data_system.cancel_se)
      @commandy_window.active = false
      @command_window.active = true
      # 切换到菜单画面
      return
    end
    if Input.repeat?(Input::C)
      $game_system.se_play($data_system.decision_se)
      @actor = $game_party.actors[@actor_index]
      case @commandy_window.index
       when 0 #暴击概率 max30 #要石头防具
         @actor.crt+=1
         if $game_variables[@actor.id+4775]<30
          if $game_party.armor_number($宝石[0+$game_variables[@actor.id+4775]])>=1
             $game_variables[@actor.id+4850]+=1 #暴击概率
             $game_variables[@actor.id+4775]+=1 #等级!
             $game_party.lose_armor($宝石[0+$game_variables[@actor.id+4775]],1)
             @status_window.refresh
           else
             $game_system.se_play($data_system.cancel_se)
           end
         end
       when 1 #暴击增益 max100 4750 #绿色仙魂
         if $game_variables[@actor.id+4750]<100
           if $game_party.item_number(956)>=1
              $game_variables[@actor.id+4825]+=1 #暴击增益
              $game_variables[@actor.id+4750]+=1 #等级!
              $game_party.lose_item(956,1)
              @status_window.refresh
            else
             $game_system.se_play($data_system.cancel_se)
           end
         end
       when 2 #江湖运气 max20 #金色仙魂
         if $game_variables[@actor.id+4725]<20
           if $game_party.item_number(960)>=1
             $game_variables[@actor.id+4800]+=1
             $game_variables[@actor.id+4725]+=1 #等级!
             $game_party.lose_item(960,1)
             @status_window.refresh
           else
             $game_system.se_play($data_system.cancel_se)
           end
         end
         
       when 3 #内招穿透 max100 #蓝色仙魂
         if $game_variables[@actor.id+4700]<100
           if $game_party.item_number(957)>=1
              $game_variables[@actor.id+4875]+=1
              $game_variables[@actor.id+4700]+=1 #等级!
              $game_party.lose_item(957,1)
              @status_window.refresh
           else
             $game_system.se_play($data_system.cancel_se)
           end
         end
       when 4 #外招穿透 max100 #橙色仙魂
         if $game_variables[@actor.id+4675]<100
           if $game_party.item_number(958)>=1
              $game_variables[@actor.id+4900]+=1
              $game_variables[@actor.id+4675]+=1 #等级!
              $game_party.lose_item(958,1)
              @status_window.refresh
           else
             $game_system.se_play($data_system.cancel_se)
           end
         end
       when 5 #吸血 max200% 紫色仙魂
         if $game_variables[@actor.id+4650]<20
           if $game_party.item_number(959)>=1
              $game_variables[@actor.id+4925]+=1
              $game_variables[@actor.id+4650]+=1 #等级!
              $game_party.lose_item(959,1)
              @status_window.refresh
           else
             $game_system.se_play($data_system.cancel_se)
           end
         end
       when 6 #吸真 max200%
         if $game_variables[@actor.id+4625]<20
           if $game_party.item_number(959)>=1
              $game_variables[@actor.id+4950]+=1
              $game_variables[@actor.id+4625]+=1 #等级!
              $game_party.lose_item(959,1)
              @status_window.refresh
           else
             $game_system.se_play($data_system.cancel_se)
           end
         end
         
      end
    end  
    case @commandy_window.index
      when 0 #暴击概率
        if $game_variables[@actor.id+4775]<30
           @text_1 = "目前需求吞噬:【"+$data_armors[$宝石[0+$game_variables[@actor.id+4775]]].name+"】"
           @text_1_s1 = "拥有:【"+$game_party.armor_number($宝石[0+$game_variables[@actor.id+4775]]).to_s+"】个"
           @text_1_s2 = "当前次数:"+$game_variables[@actor.id+4775].to_s+"次"
           @help_window.mstar_help_text(@text_1,@text_1_s1,@text_1_s2)
         else
           @text_1 = "已经是最高级的了"
           @help_window.mstar_help_text(@text_1)
         end
      when 1 #暴击增益
        if $game_variables[@actor.id+4750]<100
           @text_1 = "需求【绿色仙魂】一个:目前【"+$game_party.item_number(956).to_s+"】个"
           @text_1_s2 = "目前进行了"+$game_variables[@actor.id+4750].to_s+"次提升"
           @help_window.mstar_help_text(@text_1,@text_1_s2)
         else
           @text_1 = "已经是最高级的了"
           @help_window.mstar_help_text(@text_1)
         end
      when 2 #运气
        if $game_variables[@actor.id+4725]<20
           @text_1 = "需求【金色仙魂】一个:目前【"+$game_party.item_number(960).to_s+"】个"
           @text_1_s2 = "目前进行了"+$game_variables[@actor.id+4725].to_s+"次提升"
           @help_window.mstar_help_text(@text_1,@text_1_s2)
         else
           @text_1 = "已经是最高级的了"
           @help_window.mstar_help_text(@text_1)
        end
      when 3 #内穿
        if $game_variables[@actor.id+4700]<100
           @text_1 = "需求【蓝色仙魂】一个:目前【"+$game_party.item_number(957).to_s+"】个"
           @text_1_s2 = "目前进行了"+$game_variables[@actor.id+4700].to_s+"次提升"
           @help_window.mstar_help_text(@text_1,@text_1_s2)
         else
           @text_1 = "已经是最高级的了"
           @help_window.mstar_help_text(@text_1)
        end
      when 4 #外穿
        if $game_variables[@actor.id+4675]<100
           @text_1 = "需求【橙色仙魂】一个:目前【"+$game_party.item_number(958).to_s+"】个"
           @text_1_s2 = "目前进行了"+$game_variables[@actor.id+4675].to_s+"次提升"
           @help_window.mstar_help_text(@text_1,@text_1_s2)
         else
           @text_1 = "已经是最高级的了"
           @help_window.mstar_help_text(@text_1)
        end
      when 5 #吸血
        if $game_variables[@actor.id+4650]<10000
           @text_1 = "需求【紫色仙魂】一个:目前【"+$game_party.item_number(959).to_s+"】个"
           @text_1_s2 = "目前进行了"+$game_variables[@actor.id+4650].to_s+"次提升"
           @help_window.mstar_help_text(@text_1,@text_1_s2)
         else
           @text_1 = "已经是最高级的了"
           @help_window.mstar_help_text(@text_1)
        end
      when 6 #吸真
        if $game_variables[@actor.id+4625]<10000
           @text_1 = "也需求【紫色仙魂】一个:目前【"+$game_party.item_number(959).to_s+"】个"
           @text_1_s2 = "目前进行了"+$game_variables[@actor.id+4625].to_s+"次提升"
           @help_window.mstar_help_text(@text_1,@text_1_s2)
         else
           @text_1 = "已经是最高级的了"
           @help_window.mstar_help_text(@text_1)
        end
         return
       end
     end
     
  

  
  #--------------------------------------------------------------------------
  # ● 刷新画面 Scene_Mstarlevel $scene = Scene_Mstarlevel.new
  #--------------------------------------------------------------------------
  def update
    @status_window.update
    @help_window.update
    @command_window.update
    @commandy_window.update

    if @commandy_window.active
      update_commandy
      return
    end
   
   
    # 按下 B 键的情况下
    if Input.trigger?(Input::B)
      # 演奏取消 SE
      $game_system.se_play($data_system.cancel_se)
      # 切换到菜单画面
      $scene = Scene_Menu.new(7)
      return
    end
#=============================================================
# 按下 C 键的情况下   $game_variables[27]=魂力 57 = 声望
#=============================================================
  if Input.trigger?(Input::C)
   case @command_window.index
     when 1 #角色升星 #最大2 也就是3星
      case @actor.id
        when 1 #卫庄
          if $game_variables[90]<4 #8
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[90]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[90]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[90]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[90]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[90]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[90]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[90]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[90]]
               #得出星级提升结果
                for i in 3001..3007
                  $game_variables+=1
                end
                $game_variables[90]+=1
                $game_system.se_play($data_system.battle_start_se)
                $卫庄名字=["卫庄","仙-卫庄","神-卫庄","玄-卫庄","真-卫庄","圣-卫庄","极-卫庄","元-卫庄","上清-卫庄"]
                $game_actors[1].name = $卫庄名字[0+$game_variables[90]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================卫庄结束======================
        when 2 #少司命
          if $game_variables[93]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[93]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[93]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[93]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[93]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[93]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[93]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[93]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[93]]
              #得出星级提升结果
                for i in 3008..3014
                  $game_variables+=1
                end
                $game_variables[93]+=1
                $game_system.se_play($data_system.battle_start_se)
                $少司命名字=["少司命","仙-少司命","神-少司命","玄-少司命","真-少司命","圣-少司命","极-少司命","元-少司命","上清-少司命"]
                $game_actors[2].name = $少司命名字[0+$game_variables[93]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================少司命结束======================
        when 3 #冰雪莲
          if $game_variables[96]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[96]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[96]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[96]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[96]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[96]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[96]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[96]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[96]]
              #得出星级提升结果
                for i in 3015..3021
                  $game_variables+=1
                end
                $game_variables[96]+=1
                $game_system.se_play($data_system.battle_start_se)
                $冰雪莲名字=["冰雪莲","仙-冰雪莲","神-冰雪莲","玄-冰雪莲","真-冰雪莲","圣-冰雪莲","极-冰雪莲","元-冰雪莲","上清-冰雪莲"]
                $game_actors[3].name = $冰雪莲名字[0+$game_variables[96]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================冰雪莲结束======================
        when 4 #盖聂
          if $game_variables[152]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[152]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[152]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[152]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[152]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[152]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[152]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[152]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[152]]
              #得出星级提升结果
                for i in 3022..3028
                  $game_variables+=1
                end
                $game_variables[152]+=1
                $game_system.se_play($data_system.battle_start_se)
                $盖聂名字=["盖聂","仙-盖聂","神-盖聂","玄-盖聂","真-盖聂","圣-盖聂","极-盖聂","元-盖聂","上清-盖聂"]
                $game_actors[4].name = $盖聂名字[0+$game_variables[152]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================盖聂结束======================
        when 5 #天明
          if $game_variables[155]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[155]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[155]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[155]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[155]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[155]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[155]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[155]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[155]]
              #得出星级提升结果
                for i in 3029..3035
                  $game_variables+=1
                end
                $game_variables[155]+=1
                $game_system.se_play($data_system.battle_start_se)
                $天明名字=["玉煞天明","仙-玉煞天明","神-玉煞天明","玄-玉煞天明","真-天明","圣-天明","极-天明","元-天明","上清-天明"]
                $game_actors[5].name = $天明名字[0+$game_variables[155]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================天明结束======================
        when 6 #赵灵儿
          if $game_variables[158]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[158]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[158]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[158]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[158]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[158]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[158]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[158]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[158]]
              #得出星级提升结果
                for i in 3036..3042
                  $game_variables+=1
                end
                $game_variables[158]+=1
                $game_system.se_play($data_system.battle_start_se)
                $赵灵儿名字=["赵灵儿","仙-赵灵儿","神-赵灵儿","玄-赵灵儿","真-赵灵儿","圣-赵灵儿","极-赵灵儿","元-赵灵儿","上清-赵灵儿"]
                $game_actors[6].name = $赵灵儿名字[0+$game_variables[158]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================赵灵儿结束======================
        when 7 #李逍遥
          if $game_variables[161]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[161]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[161]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[161]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[161]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[161]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[161]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[161]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[161]]
              #得出星级提升结果
                for i in 3043..3049
                  $game_variables+=1
                end
                $game_variables[161]+=1
                $game_system.se_play($data_system.battle_start_se)
                $李逍遥名字=["李逍遥","仙-李逍遥","神-李逍遥","玄-李逍遥","真-李逍遥","圣-李逍遥","极-李逍遥","元-李逍遥","上清-李逍遥"]
                $game_actors[7].name = $李逍遥名字[0+$game_variables[161]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================李逍遥结束======================
        when 8 #大司命
          if $game_variables[164]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[164]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[164]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[164]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[164]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[164]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[164]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[164]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[164]]
              #得出星级提升结果
                for i in 3050..3056
                  $game_variables+=1
                end
                $game_variables[164]+=1
                $game_system.se_play($data_system.battle_start_se)
                $大司命名字=["大司命","仙-大司命","神-大司命","玄-大司命","真-大司命","圣-大司命","极-大司命","元-大司命","上清-大司命"]
                $game_actors[8].name = $大司命名字[0+$game_variables[164]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================大司命结束======================
        when 9 #重楼
          if $game_variables[167]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[167]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[167]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[167]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[167]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[167]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[167]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[167]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[167]]
              #得出星级提升结果
                for i in 3057..3063
                  $game_variables+=1
                end
                $game_variables[167]+=1
                $game_system.se_play($data_system.battle_start_se)
                $重楼名字=["重楼","仙-重楼","神-重楼","玄-重楼","真-重楼","圣-重楼","极-重楼","元-重楼","上清-重楼"]
                $game_actors[9].name = $重楼名字[0+$game_variables[167]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================重楼结束======================
        when 10 #吕布
          if $game_variables[170]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[170]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[170]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[170]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[170]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[170]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[170]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[170]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[170]]
              #得出星级提升结果
                for i in 3064..3070
                  $game_variables+=1
                end
                $game_variables[170]+=1
                $game_system.se_play($data_system.battle_start_se)
                $吕布名字=["吕布","仙-吕布","神-吕布","玄-吕布","真-吕布","圣-吕布","极-吕布","元-吕布","上清-吕布"]
                $game_actors[10].name = $吕布名字[0+$game_variables[170]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================吕布结束======================
        when 11 #燕丹
          if $game_variables[173]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[173]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[173]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[173]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[173]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[173]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[173]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[173]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[173]]
              #得出星级提升结果
                for i in 3071..3077
                  $game_variables+=1
                end
                $game_variables[173]+=1
                $game_system.se_play($data_system.battle_start_se)
                $燕丹名字=["燕丹","仙-燕丹","神-燕丹","玄-燕丹","真-燕丹","圣-燕丹","极-燕丹","元-燕丹","上清-燕丹"]
                $game_actors[11].name = $燕丹名字[0+$game_variables[173]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================燕丹结束======================
        when 12 #张良
          if $game_variables[177]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[177]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[177]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[177]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[177]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[177]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[177]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[177]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[177]]
              #得出星级提升结果
                for i in 3078..3084
                  $game_variables+=1
                end
                $game_variables[177]+=1
                $game_system.se_play($data_system.battle_start_se)
                $张良名字=["张良","仙-张良","神-张良","玄-张良","真-张良","圣-张良","极-张良","元-张良","上清-张良"]
                $game_actors[12].name = $张良名字[0+$game_variables[177]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================张良结束======================
        when 13 #赵云
          if $game_variables[180]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[180]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[180]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[180]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[180]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[180]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[180]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[180]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[180]]
              #得出星级提升结果
                for i in 3085..3091
                  $game_variables+=1
                end
                $game_variables[180]+=1
                $game_system.se_play($data_system.battle_start_se)
                $赵云名字=["赵云","仙-赵云","神-赵云","玄-赵云","真-赵云","圣-赵云","极-赵云","元-赵云","上清-赵云"]
                $game_actors[13].name = $赵云名字[0+$game_variables[180]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================赵云结束======================
        when 14 #高月
          if $game_variables[183]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[183]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[183]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[183]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[183]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[183]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[183]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[183]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[183]]
              #得出星级提升结果
                for i in 3092..3098
                  $game_variables+=1
                end
                $game_variables[183]+=1
                $game_system.se_play($data_system.battle_start_se)
                $高月名字=["高月","仙-高月","神-高月","玄-高月","真-高月","圣-高月","极-高月","元-高月","上清-高月"]
                $game_actors[14].name = $高月名字[0+$game_variables[183]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================高月结束======================
        when 15 #陆雪琪
          if $game_variables[186]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[186]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[186]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[186]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[186]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[186]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[186]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[186]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[186]]
              #得出星级提升结果
                for i in 3099..3105
                  $game_variables+=1
                end
                $game_variables[186]+=1
                $game_system.se_play($data_system.battle_start_se)
                $陆雪琪名字=["陆雪琪","仙-陆雪琪","神-陆雪琪","玄-陆雪琪","真-陆雪琪","圣-陆雪琪","极-陆雪琪","元-陆雪琪","上清-陆雪琪"]
                $game_actors[15].name = $陆雪琪名字[0+$game_variables[186]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================陆雪琪结束======================
        when 16 #步惊云
          if $game_variables[3429]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[3429]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[3429]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[3429]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[3429]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[3429]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[3429]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[3429]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[3429]]
              #得出星级提升结果
                for i in 3401..3407
                  $game_variables+=1
                end
                $game_variables[3429]+=1
                $game_system.se_play($data_system.battle_start_se)
                $步惊云名字=["步惊云","仙-步惊云","神-步惊云","玄-步惊云","真-步惊云","圣-步惊云","极-步惊云","元-步惊云","上清-步惊云"]
                $game_actors[16].name = $步惊云名字[0+$game_variables[3429]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================步惊云结束======================
        when 17 #聂风
          if $game_variables[3430]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[3430]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[3430]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[3430]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[3430]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[3430]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[3430]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[3430]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[3430]]
              #得出星级提升结果
                for i in 3408..3414
                  $game_variables+=1
                end
                $game_variables[3430]+=1
                $game_system.se_play($data_system.battle_start_se)
                $聂风名字=["聂风","仙-聂风","神-聂风","玄-聂风","真-聂风","圣-聂风","极-聂风","元-聂风","上清-聂风"]
                $game_actors[17].name = $聂风名字[0+$game_variables[3430]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================聂风结束======================
        when 18 #宇文括
          if $game_variables[3431]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[3431]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[3431]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[3431]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[3431]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[3431]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[3431]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[3431]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[3431]]
              #得出星级提升结果
                for i in 3415..3421
                  $game_variables+=1
                end
                $game_variables[3431]+=1
                $game_system.se_play($data_system.battle_start_se)
                $宇文括名字=["宇文括","仙-宇文括","神-宇文括","玄-宇文括","真-宇文括","圣-宇文括","极-宇文括","元-宇文括","上清-宇文括"]
                $game_actors[18].name = $宇文括名字[0+$game_variables[3431]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================宇文括结束======================
        when 19 #夏侯仪
          if $game_variables[3432]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[3432]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[3432]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[3432]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[3432]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[3432]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[3432]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[3432]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[3432]]
              #得出星级提升结果
                for i in 3422..3428
                  $game_variables+=1
                end
                $game_variables[3432]+=1
                $game_system.se_play($data_system.battle_start_se)
                $夏侯仪名字=["夏侯仪","仙-夏侯仪","神-夏侯仪","玄-夏侯仪","真-夏侯仪","圣-夏侯仪","极-夏侯仪","元-夏侯仪","上清-夏侯仪"]
                $game_actors[19].name = $夏侯仪名字[0+$game_variables[3432]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================夏侯仪结束======================
        when 20 #玄霄
          if $game_variables[3440]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[3440]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[3440]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[3440]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[3440]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[3440]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[3440]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[3440]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[3440]]
              #得出星级提升结果
                for i in 3433..3439
                  $game_variables+=1
                end
                $game_variables[3440]+=1
                $game_system.se_play($data_system.battle_start_se)
                $玄霄名字=["玄霄","仙-玄霄","神-玄霄","玄-玄霄","真-玄霄","圣-玄霄","极-玄霄","元-玄霄","上清-玄霄"]
                $game_actors[20].name = $玄霄名字[0+$game_variables[3440]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================玄霄结束======================
        when 21#墨鸭
          if $game_variables[3456]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[3456]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[3456]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[3456]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[3456]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[3456]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[3456]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[3456]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[3456]]
              #得出星级提升结果
                for i in 3451..3455
                  $game_variables+=1
                end
                $game_variables[3456]+=1
                $game_system.se_play($data_system.battle_start_se)
                $墨鸦名字=["墨鸦","仙-墨鸦","神-墨鸦","玄-墨鸦","真-墨鸦","圣-墨鸦","极-墨鸦","元-墨鸦","上清-墨鸦"]
                $game_actors[21].name = $墨鸦名字[0+$game_variables[3456]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================墨鸦结束======================
        when 22#慕容紫英
          if $game_variables[3463]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[3463]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[3463]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[3463]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[3463]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[3463]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[3463]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[3463]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[3463]]
              #得出星级提升结果
                for i in 3458..3462
                  $game_variables+=1
                end
                $game_variables[3463]+=1
                $game_system.se_play($data_system.battle_start_se)
                $慕容紫英名字=["慕容紫英","仙-慕容紫英","神-慕容紫英","玄-慕容紫英","真-慕容紫英","圣-慕容紫英","极-慕容紫英","元-慕容紫英","上清-慕容紫英"]
                $game_actors[22].name = $慕容紫英名字[0+$game_variables[3463]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================慕容紫英结束======================
        when 23#柳梦璃
          if $game_variables[3470]<4
             if $game_party.item_number(1)>=$星牌递增[0+$game_variables[3470]] &&
                $game_party.gold>=$灵魂递增[0+$game_variables[3470]] &&
                $game_variables[27]>=$灵魂递增[0+$game_variables[3470]] &&
              #得出数值消耗结果
                $game_party.lose_item(1,$星牌递增[0+$game_variables[3470]])
                $game_party.lose_gold($灵魂递增[0+$game_variables[3470]])
                $game_variables[27]-=$灵魂递增[0+$game_variables[3470]]
                #记录消耗值 用于解散英雄之用
                $game_variables[@actor.id+4600]+=$灵魂递增[0+$game_variables[3470]]
                $game_variables[@actor.id+4550]+=$星牌递增[0+$game_variables[3470]]
              #得出星级提升结果
                for i in 3465..3469
                  $game_variables+=1
                end
                $game_variables[3470]+=1
                $game_system.se_play($data_system.battle_start_se)
                $柳梦璃名字=["柳梦璃","仙-柳梦璃","神-柳梦璃","玄-柳梦璃","真-柳梦璃","圣-柳梦璃","极-柳梦璃","元-柳梦璃","上清-柳梦璃"]
                $game_actors[23].name = $柳梦璃名字[0+$game_variables[3470]]              
                @status_window.refresh
              else
                $game_system.se_play($data_system.cancel_se)
              end
            end
#=======================慕容紫英结束======================




          end
      when 2
          @commandy_window.active = true
          @command_window.active = false
          $game_system.se_play($data_system.battle_start_se)
           return
#=============================================================
      when 3
          if $game_party.item_number(969)>=1
           if $game_variables[$威力[0+@actor.id]]==0
               $game_system.se_play($data_system.cancel_se)
             else
                #属性降低
                $game_variables[$体退[0+@actor.id]]=0
                $game_variables[$真退[0+@actor.id]]=0
                $game_variables[$力退[0+@actor.id]]=0
                $game_variables[$元退[0+@actor.id]]=0
                $game_variables[$速退[0+@actor.id]]=0
                #传承符-1
                $game_party.lose_item(969,1)
                #星级降低
                $game_variables[$威力[0+@actor.id]]=0
               # $game_variables[717]=0
                $game_actors[@actor.id].name = $名退[0+@actor.id]
                #灵石返还
                $game_party.gain_gold($game_variables[@actor.id+4600])
                #魂力返还
               $game_variables[27]+=$game_variables[@actor.id+4600]
                #返还星牌
                $game_party.gain_item(1,$game_variables[@actor.id+4550])
                #消耗记录归0
                $game_variables[@actor.id+4575]=0
                $game_variables[@actor.id+4600]=0
                $game_variables[@actor.id+4550]=0
                #修正退化后的血量
                @actor.hp = [@actor.hp, @actor.maxhp].min
                @actor.sp = [@actor.hp, @actor.maxsp].min

                $game_system.se_play($data_system.battle_start_se)
                @status_window.refresh
              end
            end
            
      when 4
          $scene = Scene_Map.new
        end
      end
      
        
#=============================================================
# 什么都没有按下的情况
#=============================================================
  case @command_window.index
    when 0
     @text_11 = "按空格换人,对应下面的要求来提升星级!"
     @text_zm_1 = "条件满足则提升,不可后悔!切记切记!"
     @help_window.mstar_help_text(@text_11,@text_zm_1)
    when 1
     case @actor.id
       when  1..20
         @text_1 = "炼星符:"+$星牌递增[0+$game_variables[$威力[0+@actor.id]]].to_s
         @text_1_s1 = "魂力+灵石:"+$灵魂递增[0+$game_variables[$威力[0+@actor.id]]].to_s
         @text_1_s2 = "消耗灵石魂力:"+$game_variables[@actor.id+4600].to_s+"消耗炼星符计数"+$game_variables[@actor.id+4550].to_s
         @help_window.mstar_help_text(@text_1,@text_1_s1,@text_1_s2)
       return
     end
    when 2
     @text_11 = "境界提升依靠吞噬各种道具来完成!"
     @help_window.mstar_help_text(@text_11)
    when 3
      if $game_variables[$威力[0+@actor.id]]==0
         @text_11 = "已经是最低了 不能在退化了!"
         @help_window.mstar_help_text(@text_11)
        else
         @text_11 = "星级归0 需:传承符!返还消耗资源(不包括星牌)"
         @text_11_s1 = "返还灵石和魂力:"+$game_variables[@actor.id+4600].to_s
         @text_11_s2 = "返还炼星符:"+$game_variables[@actor.id+4550].to_s
         @help_window.mstar_help_text(@text_11,@text_11_s1,@text_11_s2)
         return
       end
      
    when 4
     @text_11 = "退出升星界面"
     @help_window.mstar_help_text(@text_11)
    end
    #=============================================================
    # 转换角色
    #=============================================================
    # 按下 R 键的情况下
    case @command_window.index
      when 0  
       if Input.trigger?(Input::C)
      # 演奏光标 SE
      $game_system.se_play($data_system.cursor_se)
      # 移至下一位角色
      @actor_index += 1
      @actor_index %= $game_party.actors.size
      # 切换到别的状态画面
      $scene = Scene_Mstarlevel.new(@actor_index)
      return
    end
  end
end
end



[/pre]
QQ截图20160722071952.png
学习使我疲劳,打工使我疲惫,恋爱使我伤身,吸烟伤我肺腑,饮酒损我形象,旅游使我破费,月底不见铜板,只有在论坛里面看看各种大佬才能使我进去
梦石
0
星屑
4657
在线时间
1069 小时
注册时间
2013-3-28
回帖
309

开拓者

发表于 2016-7-22 09:45:56 | 显示全部楼层
本帖最后由 陈大帅帅帅哥 于 2016-7-22 09:48 编辑

把[pre lang="ruby"]attr_reader :crt                        # 暴击几率[/pre]换成[pre lang="ruby"]attr_accessor :crt                        # 暴击几率[/pre]

点评

换成之后没报错,但是在界面也无法调用啊@actor.crt+=1没什么反应  发表于 2016-7-23 07:46

评分

参与人数 1星屑 +10 收起 理由
jiushiainilip19 + 10 塞糖

查看全部评分

回复

使用道具 举报

梦石
0
星屑
4657
在线时间
1069 小时
注册时间
2013-3-28
回帖
309

开拓者

发表于 2016-7-23 10:25:38 | 显示全部楼层
@jiushiainilip19
把attr_reader :crt                        # 暴击几率[/pre]换成attr_accessor :crt                     ...[/quote]

在什么界面,另外看一看那个界面的代表角色的变量是否为@actor

(ps:这不算连贴吧……)

点评

在努力做修改了!谢谢你的意见!  发表于 2016-7-24 09:19
回复

使用道具 举报

梦石
0
星屑
9557
在线时间
5074 小时
注册时间
2013-6-21
回帖
3459

开拓者贵宾剧作品鉴家

发表于 2016-7-23 12:41:34 | 显示全部楼层
你的属性定义有问题。
[pre lang="Ruby"]
  #● 定义暴击率
def crt
  n = str/2000+dex/2000+$game_variables[@actor_id+4850]
  #天赋效果增加暴击率
    case self.id
     when 20 #玄霄
       if self.battle_skill.include?(20) ; n += 15 ;end #[A天赋]冰火之力
     when 13 #赵云
       if self.battle_skill.include?(13) ; n += 10 ;end #[A天赋]勇冠三军
     when 16 #步惊云
       if self.battle_skill.include?(16) ; n += 30 ;end #[A天赋]火麒麟臂
     end

    case @weapon_id
     when 1..999
      weapon = $data_weapons[@weapon_id]
      n += weapon != nil ? weapon.str_plus/10 : 0
    end
    #一些装备下的状态增加暴击率
    for i in @states
    case i
    when 124..125 ; n += 20  #万寿套 和 五彩套
    when 133 ; n += 5   #不败套1
    when 134 ; n += 10  #不败套2
    when 135 ; n += 15  #不败套3
    when 136 ; n += 20  #不败套4
    when 137 ; n += 25  #不败套5 161 165
    when 161 ; n += 5   #凌霄套1
    when 162 ; n += 10  #凌霄套2
    when 163 ; n += 15  #凌霄套3
    when 164 ; n += 20  #凌霄套4
    when 165 ; n += 25  #凌霄套5
    when 698 ; n += 15  #幻彩金光石
    when 697 ; n += 10 #碧玉海星石
    when 284 ; n += $game_variables[3674] #内功葵花宝典
    when 269 ; n += $game_variables[3672] #内功招臻无招
    end;end
      return [[n, 1].max, 300].min
    end
[/pre]
你仔细看这一段,你这一段是角色 crt 的定义,请问你的 crt 定义和变量 @crt 有什么关系?变量 @crt 根本就没在 crt 的定义里面出现。
[pre lang="Ruby"]@actor.crt += 1[/pre]
这句话的意思是让 @actor 对象的 @crt 变量 +1,但是获取 crt 方法根本就不会参考 @crt。因为你重新定义了Game_Actor#crt方法,因此你不能再认为@actor.crt就是返回 @crt 的值了啊。

不知道你的 @crt 变量是干啥用的。请看完我的解释之后自行修改。

评分

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

查看全部评分

回复 1 0

使用道具 举报

梦石
0
星屑
606
在线时间
797 小时
注册时间
2014-7-1
回帖
501

开拓者

 楼主| 发表于 2016-7-24 09:19:22 | 显示全部楼层
本帖最后由 jiushiainilip19 于 2016-7-24 10:26 编辑

已经解决了!谢谢给与提出的意见!
学习使我疲劳,打工使我疲惫,恋爱使我伤身,吸烟伤我肺腑,饮酒损我形象,旅游使我破费,月底不见铜板,只有在论坛里面看看各种大佬才能使我进去
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部