Project1

标题: 在发动暴击时将全屏变暗(除开自己)杂做???? [打印本页]

作者: wu6659505    时间: 2008-3-8 04:32
提示: 作者被禁止或删除 内容自动屏蔽
作者: joshua    时间: 2008-3-8 04:35
你用什么战斗系统
作者: havealook    时间: 2008-3-8 05:06
把下列脚本插入到main之前



  1. 戦闘背景暗転化スクリプトver.1.1
  2. #by bant
  3. #---------------------------------------------------------------------------
  4. # 特性の属性を設定した武器、スキル、アイテムを使った時に
  5. # 戦闘背景の色調を変更するスクリプトです。
  6. #
  7. # 特に戦闘背景が白い場合(008-Snowfield01など)戦闘アニメが見えなくなってしまう
  8. # ので有効です。
  9. #
  10. # 数値の設定によっては暗くせずに明るくすることも可能です。
  11. #
  12. # 1.1へのバージョンアップ情報
  13. #
  14. # 軽量化:80~104行目を変更
  15. # 戦闘終了後に暗転フラグをオフにする:121~137行目を追加
  16. class Game_Battler
  17. BLACK_ELEMENT = "变暗" # 戦闘背景を暗転化する時にこの名前の属性を設定して下さい
  18. end
  19. class Spriteset_Battle
  20. # 色調がどれぐらいまで変化するかの数値です。具体的にはイベントの色調変化で
  21. # 赤色が-TONE_MARGINALになるまで色調が変化します。
  22. TONE_MARGINAL = 200
  23. # 1フレームで変化する赤、緑、青のカラーバランス調整値です。
  24. # 例えば赤なら1フレームで-BLACK_Rだけ変化します。
  25. BLACK_R = 5
  26. BLACK_G = 5
  27. BLACK_B = 5
  28. # *注意:TONE_MARGINALはそれぞれのカラーバランス調整値で割り切れるように設定して下さい。
  29. end

  30. #==============================================================================
  31. # ■ Game_Temp
  32. #------------------------------------------------------------------------------
  33. #  セーブデータに含まれない、一時的なデータを扱うクラスです。このクラスのイン
  34. # スタンスは $game_temp で参照されます。
  35. #==============================================================================

  36. class Game_Temp
  37. attr_accessor :black_flug               # ☆暗転用
  38. alias initialize_black_bant initialize
  39. def initialize
  40.    initialize_black_bant
  41.    @black_flug = false
  42. end
  43. end

  44. #==============================================================================
  45. # ■ Spriteset_Battle
  46. #------------------------------------------------------------------------------
  47. #  バトル画面のスプライトをまとめたクラスです。このクラスは Scene_Battle クラ
  48. # スの内部で使用されます。
  49. #==============================================================================

  50. class Spriteset_Battle
  51. alias update_black_bant update
  52. def update
  53.    update_black_bant
  54.    #if @battleback_sprite.tone.red != -TONE_MARGINAL
  55.    if $game_temp.black_flug && @battleback_sprite.tone.red != -TONE_MARGINAL
  56.      @battleback_sprite.tone.red -= BLACK_R
  57.      @battleback_sprite.tone.green -= BLACK_G
  58.      @battleback_sprite.tone.blue -= BLACK_B
  59.    #elsif @battleback_sprite.tone.red != 0
  60.    elsif !$game_temp.black_flug && @battleback_sprite.tone.red != 0
  61.      @battleback_sprite.tone.red += BLACK_R
  62.      @battleback_sprite.tone.green += BLACK_G
  63.      @battleback_sprite.tone.blue += BLACK_B
  64.    end
  65. end
  66. end

  67. #==============================================================================
  68. # ■ Game_Battler (分割定義 3)
  69. #------------------------------------------------------------------------------
  70. #  バトラーを扱うクラスです。このクラスは Game_Actor クラスと Game_Enemy クラ
  71. # スのスーパークラスとして使用されます。
  72. #==============================================================================
  73. #=begin
  74. class Game_Battler
  75. alias attack_effect_black_bant attack_effect
  76. def attack_effect(attacker)
  77.    if attacker.element_set.include?($data_system.elements.index(BLACK_ELEMENT))
  78.      $game_temp.black_flug = true
  79.    end
  80.    attack_effect_black_bant(attacker)
  81. end

  82. alias skill_effect_black_bant skill_effect
  83. def skill_effect(user, skill)
  84.    if skill.element_set.include?($data_system.elements.index(BLACK_ELEMENT))
  85.      $game_temp.black_flug = true
  86.    end
  87.    skill_effect_black_bant(user, skill)
  88. end

  89. alias item_effect_black_bant item_effect
  90. def item_effect(item)
  91.    if item.element_set.include?($data_system.elements.index(BLACK_ELEMENT))
  92.      $game_temp.black_flug = true
  93.    end
  94.    item_effect_black_bant(item)
  95. end
  96. end

  97. #==============================================================================
  98. # ■ Scene_Battle (分割定義 4)
  99. #------------------------------------------------------------------------------
  100. #  バトル画面の処理を行うクラスです。
  101. #==============================================================================

  102. class Scene_Battle
  103. alias update_phase4_step6_black_bant update_phase4_step6
  104. def update_phase4_step6
  105.    if $game_temp.black_flug
  106.      $game_temp.black_flug = false
  107.    end
  108.    update_phase4_step6_black_bant
  109. end
  110. end
  111. #==============================================================================
  112. # ■ Scene_Battle (分割定義 1)
  113. #------------------------------------------------------------------------------
  114. #  バトル画面の処理を行うクラスです。
  115. #==============================================================================

  116. class Scene_Battle
  117. #--------------------------------------------------------------------------
  118. # ● メイン処理
  119. #--------------------------------------------------------------------------
  120. alias main_black_bant main
  121. def main
  122.    main_black_bant
  123.    # 戦闘終了時に暗転フラグをオフにしておく
  124.    $game_temp.black_flug = false
  125. end
  126. end
复制代码



并在Game_Battler 3中找到


#会心一击修正
if rand(100) < 4 * attacker.dex / self.agi


在此下面添加:
$game_temp.black_flug = ture

即可 [LINE]1,#dddddd[/LINE]版主对此帖的认可:『加分』,积分『+350』。
作者: havealook    时间: 2008-3-8 05:09
另外,如果你想让特定技能有这样的变暗效果的话

请在数据库-系统-属性里面添加一项属性,命名为:变暗,再在数据库-特技-属性中将"变暗"打上勾




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