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

Project1

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

[已经过期] 请问装备强化脚本如何改为强化提升固定值

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
47 小时
注册时间
2012-12-13
帖子
30
跳转到指定楼层
1
发表于 2012-12-23 02:25:55 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
如踢,我觉得强化系统强化的太过高了,想改成固定数值,如我想每+1改成武器提升3点攻击,防具则是提升2点防御,另外强化无需金币,希望各位大大帮助修改一下。

RUBY 代码复制
  1. #==============================================================================
  2.  
  3. # ■ 强化系统 优化版
  4.  
  5. #------------------------------------------------------------------------------
  6.  
  7. #  强化系统  wyongcan制作
  8.  
  9. # 优化版更新内容:优化了语法,修复部分BUG,使代码可读性增强,增加了宝石选择窗口
  10.  
  11. # 发布于66RPG  转载请保留版权信息
  12.  
  13. #==============================================================================
  14.  
  15. module Qiang
  16.  
  17. $maxlv = 9  #最高升到的级数
  18. $gailv = [100,100,100,75,75,75,50,50,50 ] #每级提升概率
  19. $gemlv = [[15,33],[30,34]] #使用宝石提高的几率  [提高几率,宝石ID]
  20. $uplv = [[3,30],[6,31],[9,32]] #强化所需要的强化石 [最大强化到的等级,强化石ID]
  21. $xxlv = [0,0,0,10,15,20,30,40,50] #每级强化后失败物品消失的几率
  22. $jjlv = [0,0,0,10,15,20,30,40,50] #每级强化后失败物品降级的几率
  23. $tsnl = [5,10,15,20,25,30,35,40,45] #每级强化提升能力的百分比
  24.  
  25. $tswp = [35,36] # 意思是:如果有31号物品则失败后物品不消失,如果有32号物品则失败后物品不降级
  26.  
  27. #武器强化后的计算公式为: 原攻击 * (1 + 提升能力百分比) + (0到当前强化级数随机) * 5 + 当前强化级数
  28.  
  29. $gemlv.sort!
  30.  
  31. $uplv.sort!
  32. $当前使用宝石id = 0
  33.  
  34. $当前使用宝石加成率 = 0
  35.  
  36. $强化哈希表 = {
  37.  
  38. "最高等级" => $maxlv ,
  39.  
  40. "每级概率" => $gailv ,
  41.  
  42. "宝石效果" => $gemlv ,
  43.  
  44. "消失几率" => $xxlv  ,
  45.  
  46. "降级几率" => $jjlv  ,
  47.  
  48. "提升能力" => $tsnl  ,
  49.  
  50. "特殊物品" => $tswp  ,
  51.  
  52. "强化材料" => $uplv  }
  53.  
  54. def self.idlostitem(id,amount = 1)
  55.  
  56.   $game_party.lose_item(idgetitem(id),amount)
  57.  
  58. end
  59.  
  60.  
  61. def self.idlostequip(id,weapon = true,amount = 1)
  62.  
  63.   weapon == true ? $game_party.lose_item($data_weapons[id],amount,true) : $game_party.lose_item($data_armors[id],amount,true)
  64.  
  65. end
  66.  
  67.  
  68. def self.idgainequip(id,weapon = true,amount = 1)
  69.  
  70.   weapon == true ? $game_party.gain_item($data_weapons[id],amount,true) : $game_party.gain_item($data_armors[id],amount,true)
  71.  
  72. end
  73.  
  74.  
  75. def self.idgetitem(id)
  76.  
  77.   $data_items[id]
  78.  
  79. end
  80.  
  81.  
  82. def self.equipable?(id,weapon = true)
  83.  
  84.   weapon == true ? weaponupisnil(id) : armorupisnil(id)
  85.  
  86.   weapon == true ? equip = $data_weapons[id].dup : equip = $data_armors[id].dup
  87.  
  88.   price = equip.price
  89.  
  90.   @needmoney = price * equip.up
  91.  
  92.   if @needmoney == 0
  93.     @needmoney = price / 2
  94.   end
  95.  
  96. #循环取出需要的强化材料
  97.  
  98.   temp = false
  99.  
  100.   for i in $强化哈希表["强化材料"]
  101.  
  102.     if equip.up < i[0]
  103.  
  104.       @lostitem = idgetitem i[1]
  105.  
  106.       $game_party.has_item?(idgetitem(i[1])) ? temp = true : temp = false
  107.  
  108.       break
  109.  
  110.     end
  111.  
  112.   end
  113.  
  114.   $game_party.gold >= @needmoney && temp == true ? true : false
  115.  
  116. end
  117.  
  118.  
  119. def self.upweapon (id)
  120.  
  121.   $message = ""
  122.  
  123.   success = false
  124.  
  125.   weaponupisnil(id)
  126.  
  127.   weapon = $data_weapons[id].dup
  128.  
  129.   gl = 0
  130.  
  131.   fangb = false
  132.  
  133.   fangj = false
  134.  
  135.   return unless weapon.up < $强化哈希表["最高等级"] && weaponupable?(id)
  136.  
  137.   loststh
  138.  
  139.   $message += "本次强化,共消耗:" + Vocab::currency_unit + " " + @needmoney.to_s
  140.  
  141.   $message += " " + @lostitem.name + "\n "
  142.  
  143.   gl = $强化哈希表["每级概率"][weapon.up]
  144.  
  145.   if $usegem == true
  146.  
  147.     gl += $当前使用宝石加成率
  148.  
  149.     idlostitem($当前使用宝石id)
  150.  
  151.     $message += idgetitem($当前使用宝石id).name + " "
  152.  
  153.   end
  154.  
  155.   if $fangb == true
  156.  
  157.     fangb = true
  158.  
  159.     idlostitem $强化哈希表["特殊物品"][0]
  160.  
  161.     $message += idgetitem($强化哈希表["特殊物品"][0]).name + " "
  162.  
  163.   end
  164.  
  165.   if $fangj == true
  166.  
  167.     fangj = true
  168.  
  169.     idlostitem $强化哈希表["特殊物品"][1]
  170.  
  171.     $message += idgetitem($强化哈希表["特殊物品"][1]).name + " "
  172.  
  173.   end
  174.  
  175.   suiji = rand (100)
  176.  
  177.   if suiji <= gl
  178.  
  179.     success = true
  180.  
  181.   end
  182.  
  183.   $message += "\n强化结果:"
  184.  
  185.   if success == true
  186.     $message += "强化成功"
  187.  
  188.     idlostequip id
  189.  
  190.     weapon.id = $data_weapons.size
  191.  
  192.     params = weapon.params.dup
  193.  
  194.     params[2] *= 1 + $强化哈希表["提升能力"][weapon.up] / 100
  195.  
  196.     params[2] += rand(weapon.up) * 5 + weapon.up
  197.  
  198.     params[2] += 1 if params[2] == weapon.params[2]
  199.  
  200.     $message += " 攻击力提升:" + (params[2] - weapon.params[2]).to_int.to_s
  201.  
  202.     weapon.up += 1
  203.  
  204.     $data_weapons.insert $data_weapons.size,weapon
  205.  
  206.     $data_weapons[$data_weapons.size-1].params = params
  207.  
  208.     idgainequip weapon.id
  209.  
  210.   else
  211.  
  212.     $message += "强化失败"
  213.  
  214.     suiji = rand (100)
  215.  
  216.     if suiji <= $强化哈希表["消失几率"][weapon.up]
  217.  
  218.       if fangb != true
  219.  
  220.       $message += ",道具消失"
  221.  
  222.       idlostequip id
  223.  
  224.       else
  225.  
  226.       $message += ",由于" + idgetitem($强化哈希表["特殊物品"][0]).name + "的作用,道具未消失"
  227.  
  228.       end
  229.  
  230.     else
  231.       suiji = rand (100)
  232.  
  233.       if suiji <= $强化哈希表["降级几率"][weapon.up]
  234.  
  235.         if fangj == false && weapon.up != 0
  236.  
  237.           $message += ",道具降级"
  238.  
  239.           params = weapon.params.dup
  240.  
  241.           params[2] -= weapon.up + rand(weapon.up) * 5
  242.  
  243.           params[2] /= 1 + $强化哈希表["提升能力"][weapon.up] / 100
  244.  
  245.           weapon.params = params
  246.  
  247.           weapon.up -= 1
  248.  
  249.           $data_weapons[id] = weapon
  250.  
  251.         else
  252.  
  253.           $message += ",由于" + idgetitem($强化哈希表["特殊物品"][1]).name + "的作用,道具未降级"
  254.  
  255.         end
  256.  
  257.       end
  258.  
  259.     end
  260.  
  261.   end
  262.  
  263.    $usegem = false
  264.  
  265.    $fangb = false
  266.  
  267.    $fangj = false
  268.  
  269. end
  270.  
  271.  
  272. def self.weaponupisnil(id)
  273.  
  274.    $data_weapons[id].up = 0 unless $data_weapons[id].up != nil
  275.  
  276. end
  277.  
  278.  
  279. def self.weaponupable?(id)
  280.  
  281.   equipable?(id)
  282.  
  283. end
  284.  
  285.  
  286. def self.uparmor (id)
  287.  
  288.   $message = ""
  289.  
  290.   success = false
  291.  
  292.   armorupisnil(id)
  293.  
  294.   armor = $data_armors[id].dup
  295.  
  296.   gl = 0
  297.  
  298.   fangb = false
  299.  
  300.   fangj = false
  301.  
  302.   return unless armor.up < $强化哈希表["最高等级"] && armorupable?(id)
  303.  
  304.   loststh
  305.  
  306.   $message += "本次强化,共消耗:" + Vocab::currency_unit + " " + @needmoney.to_s
  307.  
  308.   $message += " " + @lostitem.name + "\n "
  309.  
  310.   gl = $强化哈希表["每级概率"][armor.up]
  311.  
  312.   if $usegem == true
  313.  
  314.     gl += $当前使用宝石加成率
  315.  
  316.     idlostitem($当前使用宝石id)
  317.  
  318.     $message += idgetitem($当前使用宝石id).name + " "
  319.  
  320.   end
  321.  
  322.   if $fangb == true
  323.  
  324.     fangb = true
  325.  
  326.     idlostitem $强化哈希表["特殊物品"][0]
  327.  
  328.     $message += idgetitem($强化哈希表["特殊物品"][0]).name + " "
  329.  
  330.   end
  331.  
  332.   if $fangj == true
  333.  
  334.     fangj = true
  335.  
  336.     idlostitem $强化哈希表["特殊物品"][1]
  337.  
  338.     $message += idgetitem($强化哈希表["特殊物品"][1]).name + " "
  339.  
  340.   end
  341.  
  342.   suiji = rand (100)
  343.  
  344.   if suiji <= gl
  345.  
  346.     success = true
  347.  
  348.   end
  349.  
  350.   $message += "\n强化结果:"
  351.  
  352.   if success == true
  353.     $message += "强化成功"
  354.  
  355.     idlostequip id,false
  356.  
  357.     armor.id = $data_armors.size
  358.  
  359.     params = armor.params.dup
  360.  
  361.     params[3] *= 1 + $强化哈希表["提升能力"][armor.up] / 100
  362.  
  363.     params[3] += rand(armor.up) * 5 + armor.up
  364.  
  365.     params[3] += 1 if params[3] == armor.params[3]
  366.  
  367.     $message += " 防御力提升:" + (params[3] - armor.params[3]).to_int.to_s
  368.  
  369.     armor.up += 1
  370.  
  371.     $data_armors.insert $data_armors.size,armor
  372.  
  373.     $data_armors[$data_armors.size-1].params = params
  374.  
  375.     idgainequip armor.id,false
  376.  
  377.   else
  378.  
  379.     $message += "强化失败"
  380.  
  381.     suiji = rand (100)
  382.  
  383.     if suiji <= $强化哈希表["消失几率"][armor.up]
  384.  
  385.       if fangb != true
  386.  
  387.       $message += ",道具消失"
  388.  
  389.       idlostequip id,false
  390.  
  391.       else
  392.  
  393.       $message += ",由于" + idgetitem($强化哈希表["特殊物品"][0]).name + "的作用,道具未消失"
  394.  
  395.       end
  396.  
  397.     else
  398.       suiji = rand (100)
  399.  
  400.       if suiji <= $强化哈希表["降级几率"][armor.up]
  401.  
  402.         if fangj == false && armor.up != 0
  403.  
  404.           $message += ",道具降级"
  405.  
  406.           params = armor.params.dup
  407.  
  408.           params[3] -= armor.up + rand(armor.up) * 5
  409.  
  410.           params[3] /= 1 + $强化哈希表["提升能力"][armor.up] / 100
  411.  
  412.           armor.params = params
  413.  
  414.           armor.up -= 1
  415.  
  416.           $data_armors[id] = armor
  417.  
  418.         else
  419.  
  420.           $message += ",由于" + idgetitem($强化哈希表["特殊物品"][1]).name + "的作用,道具未降级"
  421.  
  422.         end
  423.  
  424.       end
  425.  
  426.     end
  427.  
  428.   end
  429.  
  430.    $usegem = false
  431.  
  432.    $fangb = false
  433.  
  434.    $fangj = false
  435.  
  436. end
  437.  
  438.  
  439. def self.armorupisnil(id)
  440.  
  441.    $data_armors[id].up = 0 unless $data_armors[id].up != nil
  442.  
  443. end
  444.  
  445. def self.armorupable?(id)
  446.  
  447.   equipable?(id,false)
  448.  
  449. end
  450.  
  451. def self.loststh()
  452.  
  453.    $game_party.lose_item(@lostitem,1)
  454.  
  455.    $game_party.lose_gold(@needmoney)
  456.  
  457. end
  458.  
  459. def self.needmoney
  460.  
  461.    @needmoney
  462.  
  463. end
  464.  
  465. def self.lostitem
  466.  
  467.    @lostitem
  468.  
  469. end
  470.  
  471. end
  472.  
  473. #==============================================================================
  474.  
  475. # ■ Scene_Qiang
  476.  
  477. #------------------------------------------------------------------------------
  478.  
  479. #  强化画面
  480.  
  481. #==============================================================================
  482.  
  483.  
  484. class Scene_Qiang < Scene_MenuBase
  485.  
  486.   $wufang = true
  487.  
  488.   $usegem = false
  489.  
  490.   $fangb = false
  491.  
  492.   $fangj = false
  493.  
  494.   #--------------------------------------------------------------------------
  495.  
  496.   # ● 开始处理
  497.  
  498.   #--------------------------------------------------------------------------
  499.  
  500.   def start
  501.  
  502.     super
  503.  
  504.     create_help_window
  505.  
  506.     @help_window.hide
  507.  
  508.     create_qianghelp_window
  509.  
  510.     create_command_window
  511.  
  512.     create_qiangxz_window
  513.  
  514.     create_wu_window
  515.  
  516.     create_fang_window
  517.  
  518.     create_choosegem_window
  519.  
  520.   end
  521.  
  522.   #--------------------------------------------------------------------------
  523.  
  524.   # ● 生成说明窗口
  525.  
  526.   #--------------------------------------------------------------------------
  527.  
  528.   def create_qianghelp_window
  529.  
  530.     @qianghelp_window = Window_Qianghelp.new
  531.  
  532.     @qianghelp_window.y = Graphics.height - @qianghelp_window.height
  533.  
  534.     @qianghelp_window.viewport = @viewport
  535.  
  536.     @qianghelp_window.hide
  537.  
  538.   end
  539.  
  540.   #--------------------------------------------------------------------------
  541.  
  542.   # ● 生成选择宝石
  543.  
  544.   #--------------------------------------------------------------------------
  545.  
  546.   def create_choosegem_window
  547.  
  548.     @choosegem_window = Window_Choosegem.new
  549.  
  550.     @choosegem_window.y = Graphics.height - @choosegem_window.height
  551.  
  552.     @choosegem_window.viewport = @viewport
  553.  
  554.     @choosegem_window.z = 120
  555.  
  556.   end
  557.  
  558.   #--------------------------------------------------------------------------
  559.  
  560.   # ● 生成选择窗口
  561.  
  562.   #--------------------------------------------------------------------------
  563.  
  564.   def create_qiangxz_window
  565.  
  566.     @qiangxz_window = Window_Qiangxz.new
  567.  
  568.     @qiangxz_window.y = @help_window.height + fitting_height(5) /2
  569.  
  570.     @qiangxz_window.z = 110
  571.  
  572.     @qiangxz_window.viewport = @viewport
  573.  
  574.     @qiangxz_window.set_handler(:gem,    method(:qiangxz_gem))
  575.  
  576.     @qiangxz_window.set_handler(:fangb,    method(:qiangxz_fangb))
  577.  
  578.     @qiangxz_window.set_handler(:fangj,    method(:qiangxz_fangj))
  579.  
  580.     @qiangxz_window.set_handler(:ok, method(:qiangxz_ok))
  581.  
  582.     @qiangxz_window.set_handler(:cancel, method(:qiangxz_cancel))
  583.  
  584.     @qiangxz_window.hide
  585.  
  586.     @qiangxz_window.deactivate
  587.  
  588.   end
  589.  
  590.   #--------------------------------------------------------------------------
  591.  
  592.   # ● 生成指令窗口
  593.  
  594.   #--------------------------------------------------------------------------
  595.  
  596.   def create_command_window
  597.  
  598.     @command_window = Window_QiangCommand.new
  599.  
  600.     @command_window.viewport = @viewport
  601.  
  602.     @command_window.y = @help_window.height + fitting_height(3) /2
  603.  
  604.     @command_window.set_handler(:qiangwu,    method(:qiangwu))
  605.  
  606.     @command_window.set_handler(:qiangfang,   method(:qiangfang))
  607.  
  608.     @command_window.set_handler(:cancel, method(:return_scene))
  609.  
  610.   end
  611.  
  612.   #--------------------------------------------------------------------------
  613.  
  614.   # ● 生成武器强化窗口
  615.  
  616.   #--------------------------------------------------------------------------
  617.  
  618.   def create_wu_window
  619.  
  620.     @wu_window = Window_Qiangwu.new(@qianghelp_window,@qiangxz_window)
  621.  
  622.     @wu_window.viewport = @viewport
  623.  
  624.     @wu_window.y += @help_window.height
  625.  
  626.     @wu_window.hide
  627.  
  628.     @wu_window.help_window= @help_window
  629.  
  630.     @wu_window.set_handler(:cancel, method(:qiangwu_cancel))
  631.  
  632.     @wu_window.set_handler(:ok,     method(:qiangwu_ok))
  633.  
  634.   end
  635.  
  636.   #--------------------------------------------------------------------------
  637.  
  638.   # ● 生成防具强化窗口
  639.  
  640.   #--------------------------------------------------------------------------
  641.  
  642.   def create_fang_window
  643.  
  644.     @fang_window = Window_Qiangfang.new(@qianghelp_window,@qiangxz_window)
  645.  
  646.     @fang_window.viewport = @viewport
  647.  
  648.     @fang_window.y += @help_window.height
  649.  
  650.     @fang_window.hide
  651.  
  652.     @fang_window.help_window= @help_window
  653.  
  654.     @fang_window.set_handler(:cancel, method(:qiangfang_cancel))
  655.  
  656.     @fang_window.set_handler(:ok,     method(:qiangfang_ok))
  657.  
  658.   end
  659.  
  660.   #--------------------------------------------------------------------------
  661.  
  662.   # ● 计算窗口显示指定行数时的应用高度
  663.  
  664.   #--------------------------------------------------------------------------
  665.  
  666.   def fitting_height(line_number)
  667.  
  668.     line_number * 24 + 12 * 2
  669.  
  670.   end
  671.  
  672.   #--------------------------------------------------------------------------
  673.  
  674.   # ● 显示强化武器
  675.  
  676.   #--------------------------------------------------------------------------
  677.  
  678.   def qiangwu
  679.  
  680.     @command_window.hide
  681.  
  682.     @help_window.show
  683.  
  684.     @wu_window.show
  685.  
  686.     @wu_window.start
  687.  
  688.     @qianghelp_window.show
  689.  
  690.     @wu_window.activate
  691.  
  692.     $wufang = true
  693.  
  694.     @command_window.deactivate
  695.  
  696.   end
  697.  
  698.   #--------------------------------------------------------------------------
  699.  
  700.   # ● 显示强化防具
  701.  
  702.   #--------------------------------------------------------------------------
  703.  
  704.   def qiangfang
  705.  
  706.     @command_window.hide
  707.  
  708.     @help_window.show
  709.  
  710.     @fang_window.show
  711.  
  712.     @fang_window.start
  713.  
  714.     @qianghelp_window.show
  715.  
  716.     @fang_window.activate
  717.  
  718.     $wufang = false
  719.  
  720.     @command_window.deactivate
  721.  
  722.   end
  723.  
  724.   #--------------------------------------------------------------------------
  725.  
  726.   # ● 取消强化武器
  727.  
  728.   #--------------------------------------------------------------------------
  729.  
  730.   def qiangwu_cancel
  731.  
  732.     @command_window.show
  733.  
  734.     @help_window.hide
  735.  
  736.     @wu_window.hide
  737.  
  738.     @qianghelp_window.hide
  739.  
  740.     @command_window.activate
  741.  
  742.     @qianghelp_window.set_text("")
  743.  
  744.     @help_window.set_text("")
  745.  
  746.   end
  747.  
  748.   #--------------------------------------------------------------------------
  749.  
  750.   # ● 取消强化防具
  751.  
  752.   #--------------------------------------------------------------------------
  753.  
  754.   def qiangfang_cancel
  755.  
  756.     @command_window.show
  757.  
  758.     @help_window.hide
  759.  
  760.     @fang_window.hide
  761.  
  762.     @qianghelp_window.hide
  763.  
  764.     @command_window.activate
  765.  
  766.     @qianghelp_window.set_text("")
  767.  
  768.     @help_window.set_text("")
  769.  
  770.   end
  771.  
  772.   #--------------------------------------------------------------------------
  773.  
  774.   # ● 确定强化武器
  775.   #--------------------------------------------------------------------------
  776.  
  777.   def qiangwu_ok
  778.  
  779.     @wu_window.qiangwu_ok
  780.  
  781.     @qiangxz_window.show
  782.  
  783.     @qiangxz_window.activate
  784.  
  785.   end
  786.  
  787.   #--------------------------------------------------------------------------
  788.  
  789.   # ● 确定强化防具
  790.   #--------------------------------------------------------------------------
  791.  
  792.   def qiangfang_ok
  793.  
  794.     @fang_window.qiangfang_ok
  795.  
  796.     @qiangxz_window.show
  797.  
  798.     @qiangxz_window.activate
  799.  
  800.   end
  801.  
  802.   #--------------------------------------------------------------------------
  803.  
  804.   # ● 获取卖出价格
  805.  
  806.   #--------------------------------------------------------------------------
  807.  
  808.   def selling_price
  809.  
  810.     @item.price / 2
  811.  
  812.   end
  813.  
  814.  
  815.  
  816.   def qiangxz_gem
  817.  
  818.     @choosegem_window.start
  819.  
  820.     @qiangxz_window.deactivate
  821.  
  822.     @choosegem_window.qiangxz= @qiangxz_window
  823.  
  824.     if $wufang == true
  825.  
  826.       @choosegem_window.wufangwindow= @wu_window
  827.  
  828.     else
  829.  
  830.       @choosegem_window.wufangwindow= @fang_window
  831.  
  832.     end
  833.  
  834.   end
  835.  
  836.  
  837.  
  838.   def qiangxz_fangb
  839.  
  840.     $fangb = !$fangb
  841.  
  842.     if $wufang == true
  843.  
  844.       @wu_window.update_help
  845.  
  846.     else
  847.  
  848.       @fang_window.update_help
  849.  
  850.     end
  851.  
  852.     @qiangxz_window.activate
  853.  
  854.   end
  855.  
  856.  
  857.  
  858.   def qiangxz_fangj
  859.  
  860.     $fangj = !$fangj
  861.  
  862.     if $wufang == true
  863.  
  864.       @wu_window.update_help
  865.  
  866.     else
  867.  
  868.       @fang_window.update_help
  869.  
  870.     end
  871.  
  872.     @qiangxz_window.activate
  873.  
  874.   end
  875.  
  876.  
  877.  
  878.   def qiangxz_ok
  879.  
  880.     if $wufang == true
  881.  
  882.       Qiang.upweapon(@wu_window.itemid)
  883.  
  884.       qianging
  885.  
  886.       @qianghelp_window.set_text($message)
  887.  
  888.       @qiangxz_window.hide
  889.  
  890.       Graphics.wait(60)
  891.  
  892.       @wu_window.activate
  893.  
  894.       @qiangxz_window.deactivate
  895.  
  896.       $当前使用宝石加成率 = 0
  897.  
  898.       $usegem = false
  899.  
  900.       @fang_window.update_help
  901.  
  902.       @wu_window.refresh
  903.  
  904.       @command_window.deactivate
  905.  
  906.     else
  907.  
  908.       Qiang.uparmor(@fang_window.itemid)
  909.  
  910.       qianging
  911.  
  912.       @qianghelp_window.set_text($message)
  913.  
  914.       @qiangxz_window.hide
  915.  
  916.       Graphics.wait(60)
  917.  
  918.       @fang_window.activate
  919.  
  920.       @qiangxz_window.deactivate
  921.  
  922.       $当前使用宝石加成率 = 0
  923.  
  924.       $usegem = false
  925.  
  926.       @fang_window.update_help
  927.  
  928.       @fang_window.refresh
  929.  
  930.       @command_window.deactivate
  931.  
  932. end
  933.  
  934.   end
  935.  
  936.  
  937.  
  938.   def qiangxz_cancel
  939.  
  940.     @wu_window.show
  941.  
  942.     @qiangxz_window.hide
  943.  
  944.     @qiangxz_window.deactivate
  945.  
  946.     if $wufang == true
  947.  
  948.       @wu_window.activate
  949.  
  950.     else
  951.  
  952.       @fang_window.activate
  953.  
  954.     end
  955.  
  956.     $当前使用宝石加成率 = 0
  957.  
  958.     $usegem = false
  959.  
  960.     @command_window.deactivate
  961.  
  962.   end
  963.  
  964.  
  965.  
  966.   def qianging
  967.  
  968.     i = 0
  969.  
  970.     while i < 20
  971.       i += 1
  972.  
  973.       text = "\n"
  974.  
  975.       text += "★" * i + "☆" * (20 - i)
  976.  
  977.       text = text + "\n强化中,请等待。"
  978.  
  979.       @qianghelp_window.set_text(text)
  980.  
  981.       Graphics.wait(6)
  982.  
  983.     end
  984.  
  985.   end
  986.  
  987. end
  988.  
  989.  
  990. class RPG::EquipItem < RPG::BaseItem
  991.  
  992.   alias old initialize
  993.  
  994.   def initialize
  995.  
  996.     old
  997.  
  998.     @up = 0 #装备强化次数
  999.  
  1000.   end
  1001.  
  1002.   attr_accessor :up
  1003.  
  1004. end
  1005.  
  1006. #==============================================================================
  1007.  
  1008. # ■ Window_Qiangwu
  1009.  
  1010. #------------------------------------------------------------------------------
  1011.  
  1012. #  强化系统_武器强化窗口
  1013.  
  1014. #==============================================================================
  1015.  
  1016.  
  1017. class Window_Qiangwu < Window_ItemList
  1018.   #--------------------------------------------------------------------------
  1019.  
  1020.   # ● 初始化对象
  1021.  
  1022.   #--------------------------------------------------------------------------
  1023.  
  1024.   def initialize(qianghelp,xuanze)
  1025.  
  1026.     super(0, 0, Graphics.width, fitting_height(8))
  1027.  
  1028.     self.openness = 0
  1029.  
  1030.     deactivate
  1031.  
  1032.     @qianghelp = qianghelp
  1033.  
  1034.     @xuanze = xuanze
  1035.  
  1036.   end
  1037.  
  1038.   #--------------------------------------------------------------------------
  1039.  
  1040.   # ● 开始输入的处理
  1041.  
  1042.   #--------------------------------------------------------------------------
  1043.  
  1044.   def start
  1045.  
  1046.     self.category = :weapon
  1047.  
  1048.     refresh
  1049.  
  1050.     select(0)
  1051.  
  1052.     open
  1053.  
  1054.     activate
  1055.  
  1056.   end
  1057.  
  1058.   #--------------------------------------------------------------------------
  1059.  
  1060.   # ● 查询此物品是否可用
  1061.  
  1062.   #--------------------------------------------------------------------------
  1063.  
  1064.   def enable?(item)
  1065.  
  1066.     return false unless item != nil
  1067.  
  1068.     Qiang.weaponupable?(item.id)
  1069.  
  1070.   end
  1071.  
  1072.   #--------------------------------------------------------------------------
  1073.  
  1074.   # ● 确定强化武器
  1075.  
  1076.   #--------------------------------------------------------------------------
  1077.  
  1078.   def qiangwu_ok
  1079.  
  1080.     result = item ? item.id : 0
  1081.  
  1082.   end
  1083.  
  1084.   #--------------------------------------------------------------------------
  1085.  
  1086.   # ● 更新帮助内容
  1087.  
  1088.   #--------------------------------------------------------------------------
  1089.  
  1090.   def update_help
  1091.  
  1092.     return unless item != nil
  1093.  
  1094.     @help_window.set_item(item)
  1095.  
  1096.     needmoney = 0
  1097.  
  1098.     Qiang.weaponupable?(item.id)
  1099.  
  1100.     qitemname = Qiang.lostitem.name
  1101.  
  1102.     if item.up >= $强化哈希表["最高等级"]
  1103.  
  1104.       qitemname = "无法继续升级"
  1105.  
  1106.     end
  1107.  
  1108.     temp = []
  1109.  
  1110.     $usegem == true ? temp.push("使用") : temp.push("未使用")
  1111.  
  1112.     temp.push($data_items[$强化哈希表["特殊物品"][0]].name)
  1113.  
  1114.     $fangb == true ? temp.push("使用") : temp.push("未使用")
  1115.  
  1116.     temp.push($data_items[$强化哈希表["特殊物品"][1]].name)
  1117.  
  1118.     $fangj == true ? temp.push("使用") : temp.push("未使用")
  1119.  
  1120.     cgl = ($强化哈希表["每级概率"][item.up] + $当前使用宝石加成率).to_s
  1121.  
  1122.     if item.up == 0
  1123.       min = item.params[2] + 1
  1124.  
  1125.       max = min + 5
  1126.  
  1127.     else
  1128.  
  1129.       if item.up >= $强化哈希表["最高等级"]
  1130.  
  1131.         min = item.params[2].to_int
  1132.  
  1133.         max = min
  1134.  
  1135.       else
  1136.  
  1137.     min = (item.params[2] * (1 + $强化哈希表["提升能力"][item.up] / 100)).to_int + item.up
  1138.  
  1139.     max = min + item.up * 5
  1140.  
  1141.     end
  1142.  
  1143.   end
  1144.  
  1145.     text = "装备名称:" + item.name + " 强化所需" + Vocab::currency_unit + ":" + Qiang.needmoney.to_s
  1146.  
  1147.     text = text + "\n" + "当前强化等级:" + item.up.to_s + " 强化需要:" +  qitemname
  1148.  
  1149.     text = text + "\n" + "强化宝石:" + temp [0] + " " + temp[1] + ":" + temp[2]+ " " + temp[3] + ":" + temp[4]
  1150.  
  1151.     text = text + "\n" + "成功率:" + cgl + "% " + "强化后攻击力范围:" + min.to_s + "~" + max.to_s
  1152.  
  1153.     @qianghelp.set_text(text)
  1154.  
  1155.   end
  1156.  
  1157.   #--------------------------------------------------------------------------
  1158.  
  1159.   # ● 获取当前武器等级
  1160.  
  1161.   #--------------------------------------------------------------------------
  1162.  
  1163.   def getweaponup
  1164.  
  1165.     Qiang.weaponupisnil(item.id)
  1166.  
  1167.     item.up
  1168.  
  1169.   end
  1170.  
  1171.  
  1172.  
  1173.   def itemid
  1174.  
  1175.     item.id
  1176.  
  1177.   end
  1178.  
  1179.   #--------------------------------------------------------------------------
  1180.  
  1181.   # ● 选择项目
  1182.  
  1183.   #--------------------------------------------------------------------------
  1184.  
  1185.   def select(index)
  1186.  
  1187.     self.index = index if index
  1188.  
  1189.     update_help
  1190.  
  1191.   end
  1192.  
  1193. end
  1194.  
  1195. #==============================================================================
  1196.  
  1197. # ■ Window_Qiangfang
  1198.  
  1199. #------------------------------------------------------------------------------
  1200.  
  1201. #  强化系统_防具强化窗口
  1202.  
  1203. #==============================================================================
  1204.  
  1205.  
  1206. class Window_Qiangfang < Window_ItemList
  1207.   #--------------------------------------------------------------------------
  1208.  
  1209.   # ● 初始化对象
  1210.  
  1211.   #--------------------------------------------------------------------------
  1212.  
  1213.   def initialize(qianghelp,xuanze)
  1214.  
  1215.     super(0, 0, Graphics.width, fitting_height(8))
  1216.  
  1217.     self.openness = 0
  1218.  
  1219.     deactivate
  1220.  
  1221.     @qianghelp = qianghelp
  1222.  
  1223.     @xuanze = xuanze
  1224.  
  1225.   end
  1226.  
  1227.   #--------------------------------------------------------------------------
  1228.  
  1229.   # ● 开始输入的处理
  1230.  
  1231.   #--------------------------------------------------------------------------
  1232.  
  1233.   def start
  1234.  
  1235.     self.category = :armor
  1236.  
  1237.     refresh
  1238.  
  1239.     select(0)
  1240.  
  1241.     open
  1242.  
  1243.     activate
  1244.  
  1245.   end
  1246.  
  1247.   #--------------------------------------------------------------------------
  1248.  
  1249.   # ● 查询此物品是否可用
  1250.  
  1251.   #--------------------------------------------------------------------------
  1252.  
  1253.   def enable?(item)
  1254.  
  1255.     return false unless item != nil
  1256.  
  1257.     Qiang.armorupable?(item.id)
  1258.  
  1259.   end
  1260.  
  1261.   #--------------------------------------------------------------------------
  1262.  
  1263.   # ● 确定强化防具
  1264.  
  1265.   #--------------------------------------------------------------------------
  1266.  
  1267.   def qiangfang_ok
  1268.  
  1269.     result = item ? item.id : 0
  1270.  
  1271.   end
  1272.  
  1273.   #--------------------------------------------------------------------------
  1274.  
  1275.   # ● 更新帮助内容
  1276.  
  1277.   #--------------------------------------------------------------------------
  1278.  
  1279.   def update_help
  1280.  
  1281.     return unless item != nil
  1282.  
  1283.     @help_window.set_item(item)
  1284.  
  1285.     needmoney = 0
  1286.  
  1287.     Qiang.armorupable?(item.id)
  1288.  
  1289.     qitemname = Qiang.lostitem.name
  1290.  
  1291.     if item.up >= $强化哈希表["最高等级"]
  1292.  
  1293.       qitemname = "无法继续升级"
  1294.  
  1295.     end
  1296.  
  1297.     temp = []
  1298.  
  1299.     $usegem == true ? temp.push("使用") : temp.push("未使用")
  1300.  
  1301.     temp.push($data_items[$强化哈希表["特殊物品"][0]].name)
  1302.  
  1303.     $fangb == true ? temp.push("使用") : temp.push("未使用")
  1304.  
  1305.     temp.push($data_items[$强化哈希表["特殊物品"][1]].name)
  1306.  
  1307.     $fangj == true ? temp.push("使用") : temp.push("未使用")
  1308.  
  1309.     cgl = ($强化哈希表["每级概率"][item.up] + $当前使用宝石加成率).to_s
  1310.  
  1311.     if item.up == 0
  1312.       min = item.params[3] + 1
  1313.  
  1314.       max = min + 5
  1315.  
  1316.     else
  1317.  
  1318.       if item.up >= $强化哈希表["最高等级"]
  1319.  
  1320.         min = item.params[3].to_int
  1321.  
  1322.         max = min
  1323.  
  1324.       else
  1325.  
  1326.     min = (item.params[3] * (1 + $强化哈希表["提升能力"][item.up] / 100)).to_int + item.up
  1327.  
  1328.     max = min + item.up * 5
  1329.  
  1330.     end
  1331.  
  1332.   end
  1333.  
  1334.     text = "装备名称:" + item.name + " 强化所需" + Vocab::currency_unit + ":" + Qiang.needmoney.to_s
  1335.  
  1336.     text = text + "\n" + "当前强化等级:" + item.up.to_s + " 强化需要:" +  qitemname
  1337.  
  1338.     text = text + "\n" + "强化宝石:" + temp [0] + " " + temp[1] + ":" + temp[2]+ " " + temp[3] + ":" + temp[4]
  1339.  
  1340.     text = text + "\n" + "成功率:" + cgl + "% " + "强化后防御力范围:" + min.to_s + "~" + max.to_s
  1341.  
  1342.     @qianghelp.set_text(text)
  1343.  
  1344.   end
  1345.  
  1346.   #--------------------------------------------------------------------------
  1347.  
  1348.   # ● 获取当前防具等级
  1349.  
  1350.   #--------------------------------------------------------------------------
  1351.  
  1352.   def getarmorup
  1353.  
  1354.     Qiang.armorupisnil(item.id)
  1355.  
  1356.     item.up
  1357.  
  1358.   end
  1359.  
  1360.  
  1361.  
  1362.   def itemid
  1363.  
  1364.     item.id
  1365.  
  1366.   end
  1367.  
  1368.   #--------------------------------------------------------------------------
  1369.  
  1370.   # ● 选择项目
  1371.  
  1372.   #--------------------------------------------------------------------------
  1373.  
  1374.   def select(index)
  1375.  
  1376.     self.index = index if index
  1377.  
  1378.     update_help
  1379.  
  1380.   end
  1381.  
  1382. end
  1383.  
  1384. #==============================================================================
  1385.  
  1386. # ■ Window_QiangCommand
  1387.  
  1388. #------------------------------------------------------------------------------
  1389.  
  1390. #  强化系统中,处理命令选择的窗口。
  1391.  
  1392. #==============================================================================
  1393.  
  1394.  
  1395. class Window_QiangCommand < Window_Command
  1396.  
  1397.   #--------------------------------------------------------------------------
  1398.  
  1399.   # ● 初始化对象
  1400.  
  1401.   #--------------------------------------------------------------------------
  1402.  
  1403.   def initialize
  1404.  
  1405.     super(0, 0)
  1406.  
  1407.     update_placement
  1408.  
  1409.     self.openness = 0
  1410.  
  1411.     open
  1412.  
  1413.   end
  1414.  
  1415.   #--------------------------------------------------------------------------
  1416.  
  1417.   # ● 获取窗口的宽度
  1418.  
  1419.   #--------------------------------------------------------------------------
  1420.  
  1421.   def window_width
  1422.  
  1423.     return 160
  1424.  
  1425.   end
  1426.  
  1427.   #--------------------------------------------------------------------------
  1428.  
  1429.   # ● 更新窗口的位置
  1430.  
  1431.   #--------------------------------------------------------------------------
  1432.  
  1433.   def update_placement
  1434.  
  1435.     self.x = (Graphics.width - width) / 2
  1436.  
  1437.     self.y = (Graphics.height - height) / 2
  1438.  
  1439.   end
  1440.  
  1441.   #--------------------------------------------------------------------------
  1442.  
  1443.   # ● 生成指令列表
  1444.  
  1445.   #--------------------------------------------------------------------------
  1446.  
  1447.   def make_command_list
  1448.  
  1449.     add_command("强化武器",    :qiangwu)
  1450.  
  1451.     add_command("强化防具",    :qiangfang)
  1452.  
  1453.     add_command(Vocab::ShopCancel, :cancel)
  1454.  
  1455.   end
  1456.  
  1457. end
  1458.  
  1459. #==============================================================================
  1460.  
  1461. # ■ Window_Qianghelp
  1462.  
  1463. #------------------------------------------------------------------------------
  1464.  
  1465. #  显示说明
  1466.  
  1467. #==============================================================================
  1468.  
  1469.  
  1470. class Window_Qianghelp < Window_Base
  1471.  
  1472.   #--------------------------------------------------------------------------
  1473.  
  1474.   # ● 初始化对象
  1475.  
  1476.   #--------------------------------------------------------------------------
  1477.  
  1478.   def initialize
  1479.  
  1480.     super(0, 0, window_width, fitting_height(4) + 8)
  1481.  
  1482.     refresh
  1483.  
  1484.   end
  1485.  
  1486.   #--------------------------------------------------------------------------
  1487.  
  1488.   # ● 获取窗口的宽度
  1489.  
  1490.   #--------------------------------------------------------------------------
  1491.  
  1492.   def window_width
  1493.  
  1494.     return 544
  1495.  
  1496.   end
  1497.  
  1498.   #--------------------------------------------------------------------------
  1499.  
  1500.   # ● 获取持有金钱
  1501.  
  1502.   #--------------------------------------------------------------------------
  1503.  
  1504.   def value
  1505.  
  1506.     $game_party.gold
  1507.  
  1508.   end
  1509.  
  1510.   #--------------------------------------------------------------------------
  1511.  
  1512.   # ● 获取货币单位
  1513.  
  1514.   #--------------------------------------------------------------------------
  1515.  
  1516.   def currency_unit
  1517.  
  1518.     Vocab::currency_unit
  1519.  
  1520.   end
  1521.  
  1522.   #--------------------------------------------------------------------------
  1523.  
  1524.   # ● 设置内容
  1525.  
  1526.   #--------------------------------------------------------------------------
  1527.  
  1528.   def set_text(text)
  1529.  
  1530.     if text != @text
  1531.  
  1532.       @text = text
  1533.  
  1534.       refresh
  1535.  
  1536.     end
  1537.  
  1538.   end
  1539.  
  1540.   #--------------------------------------------------------------------------
  1541.  
  1542.   # ● 清除
  1543.  
  1544.   #--------------------------------------------------------------------------
  1545.  
  1546.   def clear
  1547.  
  1548.     set_text("")
  1549.  
  1550.   end
  1551.  
  1552.   #--------------------------------------------------------------------------
  1553.  
  1554.   # ● 刷新
  1555.  
  1556.   #--------------------------------------------------------------------------
  1557.  
  1558.   def refresh
  1559.  
  1560.     contents.clear
  1561.  
  1562.     draw_text_ex(4, 0, @text)
  1563.  
  1564.   end
  1565.  
  1566. end
  1567.  
  1568. #==============================================================================
  1569.  
  1570. # ■ Window_Qiangxz
  1571.  
  1572. #------------------------------------------------------------------------------
  1573.  
  1574. #  强化系统中,选择强化方式的窗口。
  1575.  
  1576. #==============================================================================
  1577.  
  1578.  
  1579. class Window_Qiangxz < Window_Command
  1580.  
  1581.   @havegem = false
  1582.  
  1583.   @havefangb = false
  1584.  
  1585.   @havefangj = false
  1586.  
  1587.   #--------------------------------------------------------------------------
  1588.  
  1589.   # ● 初始化对象
  1590.  
  1591.   #--------------------------------------------------------------------------
  1592.  
  1593.   def initialize
  1594.  
  1595.     super(0, 0)
  1596.  
  1597.     index = 0
  1598.  
  1599.     update_placement
  1600.  
  1601.     self.openness = 0
  1602.  
  1603.     open
  1604.  
  1605.   end
  1606.  
  1607.   #--------------------------------------------------------------------------
  1608.  
  1609.   # ● 获取窗口的宽度
  1610.  
  1611.   #--------------------------------------------------------------------------
  1612.  
  1613.   def window_width
  1614.  
  1615.     return 180
  1616.  
  1617.   end
  1618.  
  1619.   #--------------------------------------------------------------------------
  1620.  
  1621.   # ● 更新窗口的位置
  1622.  
  1623.   #--------------------------------------------------------------------------
  1624.  
  1625.   def update_placement
  1626.  
  1627.     self.x = (Graphics.width - width) / 2
  1628.  
  1629.     self.y = (Graphics.height - height) / 2
  1630.  
  1631.   end
  1632.  
  1633.   #--------------------------------------------------------------------------
  1634.  
  1635.   # ● 检查可用
  1636.  
  1637.   #--------------------------------------------------------------------------
  1638.  
  1639.   def haveitem
  1640.  
  1641.     @havegem = false
  1642.  
  1643.     @havefangb = false
  1644.  
  1645.     @havefangj = false
  1646.  
  1647.     for i in $强化哈希表["宝石效果"]
  1648.  
  1649.         if $game_party.has_item?($data_items[i[1]])
  1650.  
  1651.         @havegem = true
  1652.  
  1653.       end
  1654.  
  1655.     end
  1656.  
  1657.     @havefangb = $game_party.has_item?($data_items[$强化哈希表["特殊物品"][0]])
  1658.  
  1659.     @havefangj = $game_party.has_item?($data_items[$强化哈希表["特殊物品"][1]])
  1660.  
  1661.   end
  1662.  
  1663.   #--------------------------------------------------------------------------
  1664.  
  1665.   # ● 生成指令列表
  1666.  
  1667.   #--------------------------------------------------------------------------
  1668.  
  1669.   def make_command_list
  1670.  
  1671.     haveitem
  1672.  
  1673.     add_command("宝石",     :gem, @havegem)
  1674.  
  1675.     add_command(Qiang.idgetitem($强化哈希表["特殊物品"][0]).name, :fangb, @havefangb)
  1676.  
  1677.     add_command(Qiang.idgetitem($强化哈希表["特殊物品"][1]).name, :fangj, @havefangj)
  1678.  
  1679.     add_command("开始强化", :start)
  1680.  
  1681.     add_command("取消强化", :cancel)
  1682.  
  1683.   end
  1684.  
  1685. end
  1686.  
  1687. #==============================================================================
  1688.  
  1689. # ■ Window_Base
  1690.  
  1691. #------------------------------------------------------------------------------
  1692.  
  1693. #  游戏中所有窗口的父类
  1694.  
  1695. #==============================================================================
  1696.  
  1697.  
  1698. class Window_Base < Window
  1699.  
  1700.   #--------------------------------------------------------------------------
  1701.  
  1702.   # ● 绘制物品名称
  1703.  
  1704.   #     enabled : 有效的标志。false 的时候使用半透明效果绘制
  1705.  
  1706.   #--------------------------------------------------------------------------
  1707.  
  1708.   def draw_item_name(item, x, y, enabled = true, width = 172)
  1709.  
  1710.     return unless item
  1711.  
  1712.     draw_icon(item.icon_index, x, y, enabled)
  1713.  
  1714.     change_color(normal_color, enabled)
  1715.  
  1716.   if item.is_a?(RPG::EquipItem)
  1717.  
  1718.   if item.up != nil && item.up != 0
  1719.  
  1720.     draw_text(x + 24, y, width, line_height, item.name + "+" + item.up.to_s)
  1721.  
  1722.   else
  1723.  
  1724.     draw_text(x + 24, y, width, line_height, item.name)
  1725.  
  1726.   end
  1727.  
  1728.   else
  1729.  
  1730.     draw_text(x + 24, y, width, line_height, item.name)
  1731.  
  1732.   end
  1733.  
  1734.   end
  1735.  
  1736. end
  1737.  
  1738. class Window_ItemList
  1739.  
  1740.   #--------------------------------------------------------------------------
  1741.  
  1742.   # ● 查询列表中是否含有此物品
  1743.  
  1744.   #--------------------------------------------------------------------------
  1745.  
  1746.   def include?(item)
  1747.  
  1748.     case @category
  1749.  
  1750.     when :item
  1751.  
  1752.       item.is_a?(RPG::Item) && !item.key_item?
  1753.  
  1754.     when :weapon
  1755.  
  1756.       item.is_a?(RPG::Weapon)
  1757.  
  1758.     when :armor
  1759.  
  1760.       item.is_a?(RPG::Armor)
  1761.  
  1762.     when :key_item
  1763.  
  1764.       item.is_a?(RPG::Item) && item.key_item?
  1765.  
  1766.     when :gem
  1767.  
  1768.       itemid = item ? item.id : 0
  1769.  
  1770.       itemid != 0 ? isgem(itemid) : false
  1771.  
  1772.     else
  1773.  
  1774.       false
  1775.  
  1776.     end
  1777.  
  1778.   end
  1779.  
  1780.  
  1781.  
  1782.   def isgem(itemid)
  1783.  
  1784.     for i in $强化哈希表["宝石效果"]
  1785.  
  1786.       return true if i[1] == itemid
  1787.  
  1788.     end
  1789.  
  1790.     false
  1791.  
  1792.   end
  1793.  
  1794. end
  1795.  
  1796. #==============================================================================
  1797.  
  1798. # ■ Window_Choosegem
  1799.  
  1800. #------------------------------------------------------------------------------
  1801.  
  1802. #  选择强化使用的宝石
  1803.  
  1804. #==============================================================================
  1805.  
  1806.  
  1807. class Window_Choosegem < Window_ItemList
  1808.  
  1809.   #--------------------------------------------------------------------------
  1810.  
  1811.   # ● 初始化对象
  1812.  
  1813.   #--------------------------------------------------------------------------
  1814.  
  1815.   def initialize()
  1816.  
  1817.     super(0, 0, Graphics.width, fitting_height(2))
  1818.  
  1819.     self.openness = 0
  1820.  
  1821.     deactivate
  1822.  
  1823.     @wufangwindow = nil
  1824.  
  1825.     @qiangxz = nil
  1826.  
  1827.     set_handler(:ok,     method(:on_ok))
  1828.  
  1829.     set_handler(:cancel, method(:on_cancel))
  1830.  
  1831.   end
  1832.  
  1833.  
  1834.  
  1835.   def wufangwindow=(wufangwindow)
  1836.  
  1837.     @wufangwindow = wufangwindow
  1838.  
  1839.   end
  1840.  
  1841.   def qiangxz=(qiangxz)
  1842.  
  1843.     @qiangxz = qiangxz
  1844.  
  1845.   end
  1846.  
  1847.   #--------------------------------------------------------------------------
  1848.  
  1849.   # ● 开始输入的处理
  1850.  
  1851.   #--------------------------------------------------------------------------
  1852.  
  1853.   def start
  1854.  
  1855.     self.category = :gem
  1856.  
  1857.     self.y = (Graphics.height - height) / 2
  1858.  
  1859.     refresh
  1860.  
  1861.     select(0)
  1862.  
  1863.     open
  1864.  
  1865.     activate
  1866.  
  1867.   end
  1868.  
  1869.   #--------------------------------------------------------------------------
  1870.  
  1871.   # ● 确定时的处理
  1872.  
  1873.   #--------------------------------------------------------------------------
  1874.  
  1875.   def on_ok
  1876.  
  1877.     result = item ? item.id : 0
  1878.  
  1879.     if result != 0
  1880.  
  1881.      $usegem = true
  1882.  
  1883.      $当前使用宝石id = result
  1884.  
  1885.      for i in $强化哈希表["宝石效果"]
  1886.  
  1887.        $当前使用宝石加成率 = i[0] if i[1] == $当前使用宝石id
  1888.  
  1889.      end
  1890.  
  1891.    else
  1892.  
  1893.      $当前使用宝石加成率 = 0
  1894.  
  1895.      $usegem = false
  1896.  
  1897.     end
  1898.  
  1899.     @wufangwindow.update_help
  1900.  
  1901.     @qiangxz.activate
  1902.  
  1903.     close
  1904.  
  1905.   end
  1906.  
  1907.   #--------------------------------------------------------------------------
  1908.  
  1909.   # ● 查询此物品是否可用
  1910.  
  1911.   #--------------------------------------------------------------------------
  1912.  
  1913.   def enable?(item)
  1914.  
  1915.     true
  1916.  
  1917.   end
  1918.  
  1919.   #--------------------------------------------------------------------------
  1920.  
  1921.   # ● 取消时的处理
  1922.  
  1923.   #--------------------------------------------------------------------------
  1924.  
  1925.   def on_cancel
  1926.  
  1927.     $当前使用宝石加成率 = 0
  1928.  
  1929.     $usegem = false
  1930.  
  1931.     @wufangwindow.update_help
  1932.  
  1933.     @qiangxz.activate
  1934.  
  1935.     close
  1936.  
  1937.   end
  1938.  
  1939. end
  1940.  
  1941. #==============================================================================
  1942.  
  1943. # ■ 强化系统DataManager
  1944.  
  1945. #------------------------------------------------------------------------------
  1946.  
  1947. #  将武器和防具数据保存入存档
  1948.  
  1949. #==============================================================================
  1950.  
  1951. module DataManager
  1952.  
  1953.   #--------------------------------------------------------------------------
  1954.  
  1955.   # ● 生成存档内容
  1956.  
  1957.   #--------------------------------------------------------------------------
  1958.  
  1959.   def self.make_save_contents
  1960.  
  1961.     contents = {}
  1962.  
  1963.     contents[:system]        = $game_system
  1964.  
  1965.     contents[:timer]         = $game_timer
  1966.  
  1967.     contents[:message]       = $game_message
  1968.  
  1969.     contents[:switches]      = $game_switches
  1970.  
  1971.     contents[:variables]     = $game_variables
  1972.  
  1973.     contents[:self_switches] = $game_self_switches
  1974.  
  1975.     contents[:actors]        = $game_actors
  1976.  
  1977.     contents[:party]         = $game_party
  1978.  
  1979.     contents[:troop]         = $game_troop
  1980.  
  1981.     contents[:map]           = $game_map
  1982.  
  1983.     contents[:player]        = $game_player
  1984.  
  1985.     contents[:weapons]       = $data_weapons
  1986.     contents[:armors]        = $data_armors
  1987.  
  1988.     contents
  1989.  
  1990.   end
  1991.  
  1992.   #--------------------------------------------------------------------------
  1993.  
  1994.   # ● 展开存档内容
  1995.  
  1996.   #--------------------------------------------------------------------------
  1997.  
  1998.   def self.extract_save_contents(contents)
  1999.  
  2000.     $game_system        = contents[:system]
  2001.  
  2002.     $game_timer         = contents[:timer]
  2003.  
  2004.     $game_message       = contents[:message]
  2005.  
  2006.     $game_switches      = contents[:switches]
  2007.  
  2008.     $game_variables     = contents[:variables]
  2009.  
  2010.     $game_self_switches = contents[:self_switches]
  2011.  
  2012.     $game_actors        = contents[:actors]
  2013.  
  2014.     $game_party         = contents[:party]
  2015.  
  2016.     $game_troop         = contents[:troop]
  2017.  
  2018.     $game_map           = contents[:map]
  2019.  
  2020.     $game_player        = contents[:player]
  2021.  
  2022.     $data_weapons       = contents[:weapons]
  2023.  
  2024.     $data_armors        = contents[:armors]
  2025.  
  2026.   end
  2027.  
  2028. end
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

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

GMT+8, 2024-11-1 14:27

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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