Project1

标题: 技能类型在战斗中不显示 [打印本页]

作者: 若得若失    时间: 2017-2-12 18:06
标题: 技能类型在战斗中不显示
比如我给角色设置了三种技能类型
1技能 2天赋 3被动
主角能学会这三种技能类型,但如何让天赋与被动不在战斗中显示勒?
作者: QQ蚊子湯    时间: 2017-2-12 19:23
你怎麼不搜尋呢
https://rpg.blue/forum.php?mod=viewthread&tid=396574
作者: 卡奥尼特    时间: 2017-2-12 20:26
本帖最后由 卡奥尼特 于 2017-2-12 20:35 编辑

日本有一位作者tomoaky寫了一個腳本, 因為之前有些地方不懂所以請教了一下論壇裏的dalao們。

[pre lang="ruby"]#==============================================================================
# ★ RGSS3_パッシブスキル Ver1.01
#==============================================================================
=begin

作者:tomoaky
webサイト:ひきも記 (http://hikimoki.sakura.ne.jp/)

メモ欄に <パッシブ 5> という文字列が含まれるスキルを習得していると
ID5番の武器を装備しているのと同じ効果が得られるようになります。

Taroxd翻译:在技能备注输入 <被動 5> ,那么习得该技能后,相当于装备了第5号武器。

2012.02.24  Ver1.01
 ・パッシブスキルのみを習得している場合に発生する不具合を修正

2012.02.17 Ver1.0
  公開

=end

#==============================================================================
# □ 設定項目
#==============================================================================
module TMPASSIVE
  INVISIBLE_TYPE = []      # 戦闘中のコマンドリストに表示しないスキルタイプ
                            # 戰鬥中裏不在指令列表中顯示的技能類型
end

#==============================================================================
# ■ RPG::Skill
#==============================================================================
class RPG::Skill
  #--------------------------------------------------------------------------
  # ○ パッシブスキルの効果(武器ID)を返す
  #--------------------------------------------------------------------------
  def passive_effect
    @passive_effect ||= /<被動\s*(\d+)\s*>/ =~ @note ? $1.to_i : 0
  end
end

#==============================================================================
# ■ Game_Actor
#==============================================================================
class Game_Actor
  #--------------------------------------------------------------------------
  # ● 追加スキルタイプの取得
  #--------------------------------------------------------------------------
  alias tmpassive_game_actor_added_skill_types added_skill_types
  def added_skill_types
    if $game_party.in_battle
      tmpassive_game_actor_added_skill_types - TMPASSIVE::INVISIBLE_TYPE
    else
      tmpassive_game_actor_added_skill_types
    end
  end
  #--------------------------------------------------------------------------
  # ● 特徴を保持する全オブジェクトの配列取得
  #--------------------------------------------------------------------------
  alias tmpassive_game_actor_feature_objects feature_objects
  def feature_objects
    tmpassive_game_actor_feature_objects + passive_skills
  end
  #--------------------------------------------------------------------------
  # ● 通常能力値の加算値取得
  #--------------------------------------------------------------------------
  alias tmpassive_game_actor_param_plus param_plus
  def param_plus(param_id)
    passive_skills.inject(tmpassive_game_actor_param_plus(param_id)) {
      |r, item| r += item.params[param_id] }
  end
  #--------------------------------------------------------------------------
  # ○ 習得しているパッシブスキルの効果(武器オブジェクト)の配列を返す
  #--------------------------------------------------------------------------
  def passive_skills
    result = ((@skills.collect {|id| $data_skills[id] }).collect {
      |skill| $data_weapons[skill.passive_effect] }).compact
    result
  end
end[/pre]




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