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

Project1

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

请人翻译脚本。隐藏技能名的那个

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
55
在线时间
116 小时
注册时间
2008-5-12
帖子
264
跳转到指定楼层
1
发表于 2008-7-9 06:36:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
  1. #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
  2. #_/    ◆ 非表示スキル - KGC_HiddenSkill ◆ VX ◆
  3. #_/    ◇ Last update : 2008/03/08 ◇
  4. #_/----------------------------------------------------------------------------
  5. #_/  特定のスキルを画面から消去します。
  6. #_/============================================================================
  7. #_/  他のスキル関連の機能より上に導入してください。
  8. #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

  9. #==============================================================================
  10. # ★ カスタマイズ項目 - Customize ★
  11. #==============================================================================

  12. module KGC
  13. module HiddenSkill
  14.   # ◆ メニュー画面 (マップ上) で非表示にする
  15.   HIDE_IN_MAP    = true
  16.   # ◆ 戦闘画面で非表示にする
  17.   HIDE_IN_BATTLE = true

  18.   # ◆ パッシブスキルは常に非表示
  19.   HIDE_PASSIVE_SKILL = true
  20. end
  21. end

  22. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  23. $imported = {} if $imported == nil
  24. $imported["HiddenSkill"] = true

  25. module KGC::HiddenSkill
  26.   # 正規表現
  27.   module Regexp
  28.     # スキル
  29.     module Skill
  30.       # 非表示
  31.       HIDDEN = /<(?:非表示|HIDDEN)>/i
  32.     end
  33.   end
  34. end

  35. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  36. #==============================================================================
  37. # ■ RPG::Skill
  38. #==============================================================================

  39. class RPG::Skill < RPG::UsableItem
  40.   #--------------------------------------------------------------------------
  41.   # ○ 非表示スキルのキャッシュを生成
  42.   #--------------------------------------------------------------------------
  43.   def create_hidden_skill_cache
  44.     @__hidden = false

  45.     self.note.split(/[\r\n]+/).each { |line|
  46.       case line
  47.       when KGC::HiddenSkill::Regexp::Skill::HIDDEN
  48.         # 非表示
  49.         @__hidden = true
  50.       end
  51.     }
  52.   end
  53.   #--------------------------------------------------------------------------
  54.   # ○ 非表示
  55.   #--------------------------------------------------------------------------
  56.   def hidden?
  57.     create_hidden_skill_cache if @__hidden == nil
  58.     return @__hidden
  59.   end
  60. end

  61. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  62. #==============================================================================
  63. # ■ Window_Skill
  64. #==============================================================================

  65. class Window_Skill < Window_Selectable
  66.   #--------------------------------------------------------------------------
  67.   # ○ スキルをリストに含めるかどうか
  68.   #     skill : スキル
  69.   #--------------------------------------------------------------------------
  70.   unless $@
  71.     alias include_KGC_HiddenSkill? include? if method_defined?(:include?)
  72.   end
  73.   def include?(skill)
  74.     return false if skill == nil

  75.     if defined?(include_KGC_HiddenSkill?)
  76.       return false unless include_KGC_HiddenSkill?(skill)
  77.     end

  78.     hide = ($game_temp.in_battle ?
  79.       KGC::HiddenSkill::HIDE_IN_BATTLE : KGC::HiddenSkill::HIDE_IN_MAP)
  80.     return false if hide && skill.hidden?

  81.     if $imported["PassiveSkill"] && KGC::HiddenSkill::HIDE_PASSIVE_SKILL
  82.       return false if skill.passive
  83.     end

  84.     return true
  85.   end
  86.   #--------------------------------------------------------------------------
  87.   # ● リフレッシュ
  88.   #--------------------------------------------------------------------------
  89.   def refresh
  90.     @data = []
  91.     for skill in @actor.skills
  92.       next unless include?(skill)
  93.       @data.push(skill)
  94.       if skill.id == @actor.last_skill_id
  95.         self.index = @data.size - 1
  96.       end
  97.     end
  98.     @item_max = @data.size
  99.     create_contents
  100.     for i in 0...@item_max
  101.       draw_item(i)
  102.     end
  103.   end
  104. end
复制代码

Lv1.梦旅人

梦石
0
星屑
55
在线时间
116 小时
注册时间
2008-5-12
帖子
264
2
 楼主| 发表于 2008-7-9 06:40:29 | 只看该作者
还有个可使用装备

  1. #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
  2. #_/    ◆ 使用効果付き装備 - KGC_UsableEquipment ◆ VX ◆
  3. #_/    ◇ Last update : 2008/01/13 ◇
  4. #_/----------------------------------------------------------------------------
  5. #_/  使用可能な(使用効果が付いた)装備品を作成します。
  6. #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

  7. $imported = {} if $imported == nil
  8. $imported["UsableEquipment"] = true

  9. module KGC
  10. module UsableEquipment
  11.   # 正規表現を定義
  12.   module Regexp
  13.     # ベースアイテム (武器・防具共用)
  14.     module BaseItem
  15.       # アイテム効果
  16.       ITEM_EFFECT = /<(?:ITEM_EFFECT|使用時アイテム効果)[ ]*(\d+)>/i
  17.     end
  18.   end
  19. end
  20. end

  21. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  22. #==============================================================================
  23. # ■ RPG::BaseItem
  24. #==============================================================================

  25. class RPG::BaseItem
  26.   #--------------------------------------------------------------------------
  27.   # ○ 使用効果付き装備のキャッシュを作成
  28.   #--------------------------------------------------------------------------
  29.   def create_usable_equipment_cache
  30.     @__item_id = 0

  31.     self.note.split(/[\r\n]+/).each { |line|
  32.       case line
  33.       when KGC::UsableEquipment::Regexp::BaseItem::ITEM_EFFECT
  34.         # アイテム効果
  35.         @__item_id = $1.to_i
  36.       end
  37.     }
  38.   end
  39.   #--------------------------------------------------------------------------
  40.   # ○ 使用時アイテム効果
  41.   #--------------------------------------------------------------------------
  42.   def item_id
  43.     create_usable_equipment_cache if @__item_id == nil
  44.     return @__item_id
  45.   end
  46.   #--------------------------------------------------------------------------
  47.   # ○ 使用時アイテム
  48.   #--------------------------------------------------------------------------
  49.   def item
  50.     return (item_id > 0 ? $data_items[item_id] : nil)
  51.   end
  52.   #--------------------------------------------------------------------------
  53.   # ○ 戦闘時使用可否
  54.   #--------------------------------------------------------------------------
  55.   def battle_ok?
  56.     return false if item_id == 0
  57.     return item.battle_ok?
  58.   end
  59.   #--------------------------------------------------------------------------
  60.   # ○ メニュー画面使用可否
  61.   #--------------------------------------------------------------------------
  62.   def menu_ok?
  63.     return false
  64.   end
  65. end

  66. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  67. #==============================================================================
  68. # ■ Game_BattleAction
  69. #==============================================================================

  70. class Game_BattleAction
  71.   #--------------------------------------------------------------------------
  72.   # ● 公開インスタンス変数
  73.   #--------------------------------------------------------------------------
  74.   attr_accessor :use_equipment            # 使用装備品
  75.   #--------------------------------------------------------------------------
  76.   # ● クリア
  77.   #--------------------------------------------------------------------------
  78.   alias clear_KGC_UsableEquipment clear
  79.   def clear
  80.     clear_KGC_UsableEquipment

  81.     @use_equipment = nil
  82.   end
  83.   #--------------------------------------------------------------------------
  84.   # ● アイテムを設定
  85.   #     item_id : アイテム ID
  86.   #--------------------------------------------------------------------------
  87.   alias set_item_KGC_UsableEquipment set_item
  88.   def set_item(item_id)
  89.     @use_equipment = nil

  90.     set_item_KGC_UsableEquipment(item_id)
  91.   end
  92.   #--------------------------------------------------------------------------
  93.   # ○ 装備品を設定
  94.   #     item : 装備品 (武器 or 防具)
  95.   #--------------------------------------------------------------------------
  96.   def set_equipment(item)
  97.     @kind = 2
  98.     @use_equipment = item
  99.   end
  100.   #--------------------------------------------------------------------------
  101.   # ● アイテムオブジェクト取得
  102.   #--------------------------------------------------------------------------
  103.   alias item_KGC_UsableEquipment item
  104.   def item
  105.     if use_equipment?
  106.       # 装備品を使用する場合、ダミーアイテムを生成
  107.       source_item = $data_items[@use_equipment.item_id].clone
  108.       source_item.name = @use_equipment.name  # アイテム名を装備品名にする
  109.       source_item.consumable = false          # 消耗しない
  110.       return source_item
  111.     end
  112.     return item_KGC_UsableEquipment
  113.   end
  114.   #--------------------------------------------------------------------------
  115.   # ● 装備品判定
  116.   #--------------------------------------------------------------------------
  117.   def use_equipment?
  118.     return (item? && @use_equipment != nil && @use_equipment.item_id > 0)
  119.   end
  120.   #--------------------------------------------------------------------------
  121.   # ● 行動が有効か否かの判定
  122.   #    イベントコマンドによる [戦闘行動の強制] ではないとき、ステートの制限
  123.   #    やアイテム切れなどで予定の行動ができなければ false を返す。
  124.   #--------------------------------------------------------------------------
  125.   alias valid_KGC_UsableEquipment? valid?
  126.   def valid?
  127.     return false if nothing?                      # 何もしない
  128.     return true if @forcing                       # 行動強制中
  129.     return false unless battler.movable?          # 行動不能

  130.     result = valid_KGC_UsableEquipment?

  131.     if !result && use_equipment?                  # 装備品使用
  132.       return true if friends_unit.item_can_use?(@use_equipment)
  133.     end
  134.     return result
  135.   end
  136. end

  137. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  138. #==============================================================================
  139. # ■ Window_Item
  140. #==============================================================================

  141. class Window_Item < Window_Selectable
  142.   unless $imported["CategorizeItem"]
  143.   #--------------------------------------------------------------------------
  144.   # ● アイテムをリストに含めるかどうか
  145.   #     item : アイテム
  146.   #--------------------------------------------------------------------------
  147.   alias include_KGC_UsableEquipment? include?
  148.   def include?(item)
  149.     return false if item == nil

  150.     result = include_KGC_UsableEquipment?(item)

  151.     unless result
  152.       # 使用可能なら追加候補とする
  153.       result = true if $game_party.item_can_use?(item)
  154.     end
  155.     return result
  156.   end
  157.   end

  158.   #--------------------------------------------------------------------------
  159.   # ● リフレッシュ
  160.   #--------------------------------------------------------------------------
  161.   alias refresh_KGC_UsableEquipment refresh
  162.   def refresh
  163.     refresh_KGC_UsableEquipment

  164.     # 装備品を選択した場合のインデックス復元
  165.     if $game_party.last_equipment_object != nil
  166.       last_index = @data.index($game_party.last_equipment_object)
  167.       self.index = last_index if last_index != nil
  168.     end
  169.   end
  170. end

  171. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  172. #==============================================================================
  173. # ■ Game_Party
  174. #==============================================================================

  175. class Game_Party < Game_Unit
  176.   #--------------------------------------------------------------------------
  177.   # ● 公開インスタンス変数
  178.   #--------------------------------------------------------------------------
  179.   attr_accessor :last_equipment_object    # カーソル記憶用 : 装備品
  180.   #--------------------------------------------------------------------------
  181.   # ● オブジェクト初期化
  182.   #--------------------------------------------------------------------------
  183.   alias initialize_KGC_UsableEquipment initialize
  184.   def initialize
  185.     initialize_KGC_UsableEquipment

  186.     @last_equipment_object = nil
  187.   end
  188.   #--------------------------------------------------------------------------
  189.   # ● カーソル記憶用 : アイテム (attr_writer の再定義)
  190.   #--------------------------------------------------------------------------
  191.   def last_item_id=(value)
  192.     @last_item_id = value
  193.     @last_equipment_object = nil
  194.   end
  195.   #--------------------------------------------------------------------------
  196.   # ● 戦闘テスト用パーティのセットアップ
  197.   #--------------------------------------------------------------------------
  198.   alias setup_battle_test_members_KGC_UsableEquipment setup_battle_test_members
  199.   def setup_battle_test_members
  200.     setup_battle_test_members_KGC_UsableEquipment

  201.     # 武器・防具も 99 個取得
  202.     @weapons = {}
  203.     for i in 1...$data_weapons.size
  204.       weapon = $data_weapons[i]
  205.       if weapon.battle_ok?
  206.         @weapons[i] = 99 unless weapon.name.empty?
  207.       end
  208.     end
  209.     @armors = {}
  210.     for i in 1...$data_armors.size
  211.       armor = $data_armors[i]
  212.       if armor.battle_ok?
  213.         @armors[i] = 99 unless armor.name.empty?
  214.       end
  215.     end
  216.   end
  217.   #--------------------------------------------------------------------------
  218.   # ● アイテムの使用可能判定
  219.   #     item : アイテム, 武器, 防具
  220.   #--------------------------------------------------------------------------
  221.   alias item_can_use_KGC_UsableEquipment? item_can_use?
  222.   def item_can_use?(item)
  223.     if item.is_a?(RPG::Weapon) || item.is_a?(RPG::Armor)
  224.       return false if item_number(item) == 0
  225.       return ($game_temp.in_battle ? item.battle_ok? : item.menu_ok?)
  226.     else
  227.       return item_can_use_KGC_UsableEquipment?(item)
  228.     end
  229.   end
  230. end

  231. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  232. #==============================================================================
  233. # ■ Scene_Battle
  234. #==============================================================================

  235. class Scene_Battle < Scene_Base
  236.   #--------------------------------------------------------------------------
  237.   # ● アイテムの決定
  238.   #--------------------------------------------------------------------------
  239.   alias determine_item_KGC_UsableEquipment determine_item
  240.   def determine_item
  241.     last_active_battler = nil
  242.     selected_item = nil
  243.     if @item.is_a?(RPG::Weapon) || @item.is_a?(RPG::Armor)
  244.       # アイテムウィンドウの選択項目を装備品に設定
  245.       $game_party.last_item_id = 0
  246.       $game_party.last_equipment_object = @item
  247.       selected_item = @item
  248.       # 装備品で発動するアイテムを選択したと見なす
  249.       @active_battler.action.set_equipment(@item)
  250.       source_item = @active_battler.action.item
  251.       @item = source_item
  252.       last_active_battler = @active_battler
  253.     end

  254.     determine_item_KGC_UsableEquipment

  255.     if last_active_battler != nil
  256.       # 行動時に使用する装備品をセット
  257.       last_active_battler.action.set_equipment(selected_item)
  258.     end
  259.   end
  260. end
复制代码
回复 支持 反对

使用道具 举报

Lv1.梦旅人

很傻很天真

梦石
0
星屑
55
在线时间
3 小时
注册时间
2007-3-13
帖子
3667
3
发表于 2008-7-9 07:02:14 | 只看该作者
我试试吧...
估计明天汉化完毕
中午!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

很傻很天真

梦石
0
星屑
55
在线时间
3 小时
注册时间
2007-3-13
帖子
3667
4
发表于 2008-7-9 17:06:07 | 只看该作者
  1. #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
  2. #_/    ◆ 隐藏技能名 - KGC_HiddenSkill ◆ VX ◆
  3. #_/    ◇ Last update : 2008/03/08 ◇
  4. #_/----------------------------------------------------------------------------
  5. #_/  特定のスキルを画面から消去します。
  6. #_/============================================================================
  7. #_/  他のスキル関連の機能より上に導入してください。
  8. #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

  9. #==============================================================================
  10. # ★ 自定义项目 - Customize ★
  11. #==============================================================================

  12. module KGC
  13. module HiddenSkill
  14.   # ◆ 在菜单时是否显示
  15.   HIDE_IN_MAP    = true
  16.   # ◆ 在战斗时是否显示
  17.   HIDE_IN_BATTLE = true

  18.   # ◆ 关于被动技巧总非显示
  19.   HIDE_PASSIVE_SKILL = true
  20. end
  21. end

  22. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  23. $imported = {} if $imported == nil
  24. $imported["HiddenSkill"] = true

  25. module KGC::HiddenSkill
  26.   # 正規表現
  27.   module Regexp
  28.     # スキル
  29.     module Skill
  30.       # 非表示
  31.       HIDDEN = /<(?:非表示|HIDDEN)>/i
  32.     end
  33.   end
  34. end

  35. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  36. #==============================================================================
  37. # ■ RPG::Skill
  38. #==============================================================================

  39. class RPG::Skill < RPG::UsableItem
  40.   #--------------------------------------------------------------------------
  41.   # ○ 非表示スキルのキャッシュを生成
  42.   #--------------------------------------------------------------------------
  43.   def create_hidden_skill_cache
  44.     @__hidden = false

  45.     self.note.split(/[\r\n]+/).each { |line|
  46.       case line
  47.       when KGC::HiddenSkill::Regexp::Skill::HIDDEN
  48.         # 非表示
  49.         @__hidden = true
  50.       end
  51.     }
  52.   end
  53.   #--------------------------------------------------------------------------
  54.   # ○ 非表示
  55.   #--------------------------------------------------------------------------
  56.   def hidden?
  57.     create_hidden_skill_cache if @__hidden == nil
  58.     return @__hidden
  59.   end
  60. end

  61. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  62. #==============================================================================
  63. # ■ Window_Skill
  64. #==============================================================================

  65. class Window_Skill < Window_Selectable
  66.   #--------------------------------------------------------------------------
  67.   # ○ スキルをリストに含めるかどうか
  68.   #     skill : スキル
  69.   #--------------------------------------------------------------------------
  70.   unless $@
  71.     alias include_KGC_HiddenSkill? include? if method_defined?(:include?)
  72.   end
  73.   def include?(skill)
  74.     return false if skill == nil

  75.     if defined?(include_KGC_HiddenSkill?)
  76.       return false unless include_KGC_HiddenSkill?(skill)
  77.     end

  78.     hide = ($game_temp.in_battle ?
  79.       KGC::HiddenSkill::HIDE_IN_BATTLE : KGC::HiddenSkill::HIDE_IN_MAP)
  80.     return false if hide && skill.hidden?

  81.     if $imported["PassiveSkill"] && KGC::HiddenSkill::HIDE_PASSIVE_SKILL
  82.       return false if skill.passive
  83.     end

  84.     return true
  85.   end
  86.   #--------------------------------------------------------------------------
  87.   # ● リフレッシュ
  88.   #--------------------------------------------------------------------------
  89.   def refresh
  90.     @data = []
  91.     for skill in @actor.skills
  92.       next unless include?(skill)
  93.       @data.push(skill)
  94.       if skill.id == @actor.last_skill_id
  95.         self.index = @data.size - 1
  96.       end
  97.     end
  98.     @item_max = @data.size
  99.     create_contents
  100.     for i in 0...@item_max
  101.       draw_item(i)
  102.     end
  103.   end
  104. end
复制代码

  1. #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
  2. #_/    ◆ 可使用装备 - KGC_UsableEquipment ◆ VX ◆
  3. #_/    ◇ Last update : 2008/01/13 ◇
  4. #_/----------------------------------------------------------------------------
  5. #_/  使用可能な(使用効果が付いた)装備品を作成します。
  6. #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

  7. $imported = {} if $imported == nil
  8. $imported["UsableEquipment"] = true

  9. module KGC
  10. module UsableEquipment
  11.   # 正规表现定义
  12.   module Regexp
  13.     # 基本项 (武器・防具共用)
  14.     module BaseItem
  15.       # 项目效果
  16.       ITEM_EFFECT = /<(?:ITEM_EFFECT|使用时效果)[ ]*(\d+)>/i
  17.     end
  18.   end
  19. end
  20. end

  21. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  22. #==============================================================================
  23. # ■ RPG::BaseItem
  24. #==============================================================================

  25. class RPG::BaseItem
  26.   #--------------------------------------------------------------------------
  27.   # ○ 使用効果付き装備のキャッシュを作成
  28.   #--------------------------------------------------------------------------
  29.   def create_usable_equipment_cache
  30.     @__item_id = 0

  31.     self.note.split(/[\r\n]+/).each { |line|
  32.       case line
  33.       when KGC::UsableEquipment::Regexp::BaseItem::ITEM_EFFECT
  34.         # アイテム効果
  35.         @__item_id = $1.to_i
  36.       end
  37.     }
  38.   end
  39.   #--------------------------------------------------------------------------
  40.   # ○ 使用時アイテム効果
  41.   #--------------------------------------------------------------------------
  42.   def item_id
  43.     create_usable_equipment_cache if @__item_id == nil
  44.     return @__item_id
  45.   end
  46.   #--------------------------------------------------------------------------
  47.   # ○ 使用時アイテム
  48.   #--------------------------------------------------------------------------
  49.   def item
  50.     return (item_id > 0 ? $data_items[item_id] : nil)
  51.   end
  52.   #--------------------------------------------------------------------------
  53.   # ○ 戦闘時使用可否
  54.   #--------------------------------------------------------------------------
  55.   def battle_ok?
  56.     return false if item_id == 0
  57.     return item.battle_ok?
  58.   end
  59.   #--------------------------------------------------------------------------
  60.   # ○ メニュー画面使用可否
  61.   #--------------------------------------------------------------------------
  62.   def menu_ok?
  63.     return false
  64.   end
  65. end

  66. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  67. #==============================================================================
  68. # ■ Game_BattleAction
  69. #==============================================================================

  70. class Game_BattleAction
  71.   #--------------------------------------------------------------------------
  72.   # ● 公開インスタンス変数
  73.   #--------------------------------------------------------------------------
  74.   attr_accessor :use_equipment            # 使用装備品
  75.   #--------------------------------------------------------------------------
  76.   # ● クリア
  77.   #--------------------------------------------------------------------------
  78.   alias clear_KGC_UsableEquipment clear
  79.   def clear
  80.     clear_KGC_UsableEquipment

  81.     @use_equipment = nil
  82.   end
  83.   #--------------------------------------------------------------------------
  84.   # ● アイテムを設定
  85.   #     item_id : アイテム ID
  86.   #--------------------------------------------------------------------------
  87.   alias set_item_KGC_UsableEquipment set_item
  88.   def set_item(item_id)
  89.     @use_equipment = nil

  90.     set_item_KGC_UsableEquipment(item_id)
  91.   end
  92.   #--------------------------------------------------------------------------
  93.   # ○ 装備品を設定
  94.   #     item : 装備品 (武器 or 防具)
  95.   #--------------------------------------------------------------------------
  96.   def set_equipment(item)
  97.     @kind = 2
  98.     @use_equipment = item
  99.   end
  100.   #--------------------------------------------------------------------------
  101.   # ● アイテムオブジェクト取得
  102.   #--------------------------------------------------------------------------
  103.   alias item_KGC_UsableEquipment item
  104.   def item
  105.     if use_equipment?
  106.       # 装備品を使用する場合、ダミーアイテムを生成
  107.       source_item = $data_items[@use_equipment.item_id].clone
  108.       source_item.name = @use_equipment.name  # アイテム名を装備品名にする
  109.       source_item.consumable = false          # 消耗しない
  110.       return source_item
  111.     end
  112.     return item_KGC_UsableEquipment
  113.   end
  114.   #--------------------------------------------------------------------------
  115.   # ● 装備品判定
  116.   #--------------------------------------------------------------------------
  117.   def use_equipment?
  118.     return (item? && @use_equipment != nil && @use_equipment.item_id > 0)
  119.   end
  120.   #--------------------------------------------------------------------------
  121.   # ● 行動が有効か否かの判定
  122.   #    イベントコマンドによる [戦闘行動の強制] ではないとき、ステートの制限
  123.   #    やアイテム切れなどで予定の行動ができなければ false を返す。
  124.   #--------------------------------------------------------------------------
  125.   alias valid_KGC_UsableEquipment? valid?
  126.   def valid?
  127.     return false if nothing?                      # 何もしない
  128.     return true if @forcing                       # 行動強制中
  129.     return false unless battler.movable?          # 行動不能

  130.     result = valid_KGC_UsableEquipment?

  131.     if !result && use_equipment?                  # 装備品使用
  132.       return true if friends_unit.item_can_use?(@use_equipment)
  133.     end
  134.     return result
  135.   end
  136. end

  137. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  138. #==============================================================================
  139. # ■ Window_Item
  140. #==============================================================================

  141. class Window_Item < Window_Selectable
  142.   unless $imported["CategorizeItem"]
  143.   #--------------------------------------------------------------------------
  144.   # ● アイテムをリストに含めるかどうか
  145.   #     item : アイテム
  146.   #--------------------------------------------------------------------------
  147.   alias include_KGC_UsableEquipment? include?
  148.   def include?(item)
  149.     return false if item == nil

  150.     result = include_KGC_UsableEquipment?(item)

  151.     unless result
  152.       # 使用可能なら追加候補とする
  153.       result = true if $game_party.item_can_use?(item)
  154.     end
  155.     return result
  156.   end
  157.   end

  158.   #--------------------------------------------------------------------------
  159.   # ● リフレッシュ
  160.   #--------------------------------------------------------------------------
  161.   alias refresh_KGC_UsableEquipment refresh
  162.   def refresh
  163.     refresh_KGC_UsableEquipment

  164.     # 装備品を選択した場合のインデックス復元
  165.     if $game_party.last_equipment_object != nil
  166.       last_index = @data.index($game_party.last_equipment_object)
  167.       self.index = last_index if last_index != nil
  168.     end
  169.   end
  170. end

  171. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  172. #==============================================================================
  173. # ■ Game_Party
  174. #==============================================================================

  175. class Game_Party < Game_Unit
  176.   #--------------------------------------------------------------------------
  177.   # ● 公開インスタンス変数
  178.   #--------------------------------------------------------------------------
  179.   attr_accessor :last_equipment_object    # カーソル記憶用 : 装備品
  180.   #--------------------------------------------------------------------------
  181.   # ● オブジェクト初期化
  182.   #--------------------------------------------------------------------------
  183.   alias initialize_KGC_UsableEquipment initialize
  184.   def initialize
  185.     initialize_KGC_UsableEquipment

  186.     @last_equipment_object = nil
  187.   end
  188.   #--------------------------------------------------------------------------
  189.   # ● カーソル記憶用 : アイテム (attr_writer の再定義)
  190.   #--------------------------------------------------------------------------
  191.   def last_item_id=(value)
  192.     @last_item_id = value
  193.     @last_equipment_object = nil
  194.   end
  195.   #--------------------------------------------------------------------------
  196.   # ● 戦闘テスト用パーティのセットアップ
  197.   #--------------------------------------------------------------------------
  198.   alias setup_battle_test_members_KGC_UsableEquipment setup_battle_test_members
  199.   def setup_battle_test_members
  200.     setup_battle_test_members_KGC_UsableEquipment

  201.     # 武器・防具も 99 個取得
  202.     @weapons = {}
  203.     for i in 1...$data_weapons.size
  204.       weapon = $data_weapons[i]
  205.       if weapon.battle_ok?
  206.         @weapons[i] = 99 unless weapon.name.empty?
  207.       end
  208.     end
  209.     @armors = {}
  210.     for i in 1...$data_armors.size
  211.       armor = $data_armors[i]
  212.       if armor.battle_ok?
  213.         @armors[i] = 99 unless armor.name.empty?
  214.       end
  215.     end
  216.   end
  217.   #--------------------------------------------------------------------------
  218.   # ● アイテムの使用可能判定
  219.   #     item : アイテム, 武器, 防具
  220.   #--------------------------------------------------------------------------
  221.   alias item_can_use_KGC_UsableEquipment? item_can_use?
  222.   def item_can_use?(item)
  223.     if item.is_a?(RPG::Weapon) || item.is_a?(RPG::Armor)
  224.       return false if item_number(item) == 0
  225.       return ($game_temp.in_battle ? item.battle_ok? : item.menu_ok?)
  226.     else
  227.       return item_can_use_KGC_UsableEquipment?(item)
  228.     end
  229.   end
  230. end

  231. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  232. #==============================================================================
  233. # ■ Scene_Battle
  234. #==============================================================================

  235. class Scene_Battle < Scene_Base
  236.   #--------------------------------------------------------------------------
  237.   # ● アイテムの決定
  238.   #--------------------------------------------------------------------------
  239.   alias determine_item_KGC_UsableEquipment determine_item
  240.   def determine_item
  241.     last_active_battler = nil
  242.     selected_item = nil
  243.     if @item.is_a?(RPG::Weapon) || @item.is_a?(RPG::Armor)
  244.       # アイテムウィンドウの選択項目を装備品に設定
  245.       $game_party.last_item_id = 0
  246.       $game_party.last_equipment_object = @item
  247.       selected_item = @item
  248.       # 装備品で発動するアイテムを選択したと見なす
  249.       @active_battler.action.set_equipment(@item)
  250.       source_item = @active_battler.action.item
  251.       @item = source_item
  252.       last_active_battler = @active_battler
  253.     end

  254.     determine_item_KGC_UsableEquipment

  255.     if last_active_battler != nil
  256.       # 行動時に使用する装備品をセット
  257.       last_active_battler.action.set_equipment(selected_item)
  258.     end
  259.   end
  260. end
复制代码


翻译了基础部分!
系统信息:本贴获得楼主认可,66RPG感谢您的热情解答~
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
55
在线时间
116 小时
注册时间
2008-5-12
帖子
264
5
 楼主| 发表于 2008-7-10 04:10:42 | 只看该作者
这个东西怎么用....
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

名侦探小柯

梦石
0
星屑
3304
在线时间
3619 小时
注册时间
2006-9-6
帖子
37400

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

6
发表于 2008-7-10 04:12:58 | 只看该作者
什么叫可使用装备啊……
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-26 09:01

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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