スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

web拍手 by FC2   

[RGSS]nLV倍数ダメージ

使い方は → こちら

[RGSS]nLV倍数ダメージ
任意の倍数のレベルの敵にしか効果の及ばないスキルが作れます。

スクリーンショット サムネイルクリックで拡大画像が見られます。
rgss_nlv.jpg

プログラムは続きにあります。

=begin
===============================================================================
    ☆★☆★☆★☆★ nLV倍数ダメージ ★☆★☆★☆★☆
=============================================================================== 

 製作・開発:STERS
  アイデア:ルルベル様

  Page::http://stersblog.blog15.fc2.com/

導入方法------------------------------------------------------------------

    このスクリプトを Scene_Debug より下 Main より上に
   新しく作ったセクションにコピペして入れてください。

--------------------------------------------------------------------------

これを導入することで、
nLV倍数スキル(nLVの倍数LVの敵にしか効果がない)
が使えます

使い方--------------------------------------------------------------------
1.まずは敵レベル変更とこのスクリプトを導入してください。

2.nLV倍数スキルには名前の最後に[nlv数値]としてください。
--------------------------------------------------------------------------
このままだと、敵がやってくることしか出来ません。

ですが、【敵レベル】を入れることにより、敵にも機能するようになります。

=end
#--------------------------------------------------------------------------
# ☆ 設定項目
#--------------------------------------------------------------------------
class Window_Skill < Window_Selectable
  # スキルウィンドウで「nLV倍」を表示するか?
  SKILL_NAME = true
end
class Scene_Battle
  # ヘルプウィンドウで「nLV倍」を表示するか?
  HELP_NAME = true
end
#==============================================================================
# ■ Window_Skill
#==============================================================================
class Window_Skill < Window_Selectable
  #--------------------------------------------------------------------------
  # ● 項目の描画
  #--------------------------------------------------------------------------
  alias nlv_draw_item draw_item unless $@
  def draw_item(index)
    skill = @data[index]
    name = (skill.name =~ /\[[Nn]lv[ ]*(\d+)\]/) ? true : nil
    if name == true
      if SKILL_NAME
        name = skill.name.gsub(/\[[Nn]lv[ ]*(\d+)\]/) {" #{$1.to_i}LV倍"}
      else
        name = skill.name.gsub(/\[[Nn]lv[ ]*(\d+)\]/) {""}
      end
      if @actor.skill_can_use?(skill.id)
        self.contents.font.color = normal_color
      else
        self.contents.font.color = disabled_color
      end
      x = 4 + index % 2 * (288 + 32)
      y = index / 2 * 32
      rect = Rect.new(x, y, self.width / @column_max - 32, 32)
      self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
      bitmap = RPG::Cache.icon(skill.icon_name)
      opacity = self.contents.font.color == normal_color ? 255 : 128
      self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
      self.contents.draw_text(x + 28, y, 204, 32, name, 0)
      self.contents.draw_text(x + 232, y, 48, 32, skill.sp_cost.to_s, 2)
    else
      nlv_draw_item(index)
    end
  end
end
#==============================================================================
# ■ Game_Actor
#==============================================================================
class Game_Actor
  def max_level
    return $data_actors[@actor_id].final_level
  end
end
#==============================================================================
# ■ Scene_Battle
#==============================================================================
class Scene_Battle
  #--------------------------------------------------------------------------
  # ● スキルアクション 結果作成
  #--------------------------------------------------------------------------
  alias nlv_make_skill_action_result make_skill_action_result unless $@
  def make_skill_action_result
    nlv_make_skill_action_result
    if HELP_NAME
      name = @skill.name.gsub(/\[[Nn]lv[ ]*(\d+)\]/) {""}
    else
      name = @skill.name.gsub(/\[[Nn]lv[ ]*(\d+)\]/) {" #{$1.to_i}LV倍"}
    end
    @help_window.set_text(name, 1)
  end
end
#==============================================================================
# ■ Game_Battler (分割定義 3)
#==============================================================================
class Game_Battler
  #--------------------------------------------------------------------------
  # ● スキルの効果適用
  #--------------------------------------------------------------------------
  alias nlv_skill_effect skill_effect unless $@
  def skill_effect(user, skill)
    lev = (skill.name =~ /\[[Nn]lv[ ]*(\d+)\]/) ? $1.to_i : nil
    if lev == nil or lev <= 1
      return nlv_skill_effect(user, skill)
    end
    if self.level % lev == 0
      return nlv_skill_effect(user, skill)
    end
    self.damage = "Miss"
    return
  end
end


web拍手 by FC2   

コメントの投稿


非公開コメント

コメント

STERS's Development Room

STERSの開発室っぽい何か。


プロフィール

Name:STERS
Unity3D/C#/PHP/js/C++/VB
などを勉強中です

[STERS's Room]
[ファイル置き場]

カテゴリー
最近の記事
最近のコメント
カレンダー
04 ≪│2017/05│≫ 06
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 - - -
RSSリンクの表示
ブログ内Google検索
Google
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。