ダメージを記録するスクリプト

返信する
かくじき
記事: 9
登録日時: 2017年5月12日(金) 23:50

ダメージを記録するスクリプト

投稿記事 by かくじき »

お初にお目にかかります。

戦闘における与ダメージを記録して、最大ダメージを保存するスクリプトをリクエストさせていただきます。
MVに類似のスクリプトが存在するようですが、VX Aceでもそのような機能を導入したいと思っております。

宜しくお願いします。
SBR

Re: ダメージを記録するスクリプト

投稿記事 by SBR »

コード: 全て選択

class Game_Battler < Game_BattlerBase
  attr_writer :max_give_damage
  
  def max_give_damage
    return @max_give_damage || 0
  end
  
  alias _max_execute_damage execute_damage
  def execute_damage(user)
    user.max_give_damage = [user.max_give_damage,@result.hp_damage].max
    _max_execute_damage(user)
  end
end
$game_actors[アクターID].max_give_damage
これで最大与ダメージを取得できると思います。
かくじき
記事: 9
登録日時: 2017年5月12日(金) 23:50

Re: ダメージを記録するスクリプト

投稿記事 by かくじき »

SBR様ありがとうございます。

スクリプトを導入し、
$game_variables[1] = $game_actors[1].max_give_damage
のようにして1番のアクターのダメージを取得し変数に代入しようとしたところ、

スクリプト 'Game_Interpreter' の1409行目で NoMethodErrorが発生しました。
undefined method ‘max_give_damage' for [1]:Array

とエラーが表示されてしまいます。

不勉強で申し訳ないのですが、当方の用例が悪かったのかスクリプトの不具合であるのか判断しかねます。
お手数ですがご教授頂けますと幸いです。
SBR

Re: ダメージを記録するスクリプト

投稿記事 by SBR »

無題.png
無題.png (18 KiB) 閲覧された回数 4213 回
これでいいと思います。

$game_variables[1] = $game_actors
[1].max_give_damage



$game_variables[1] = $game_actors \
[1].max_give_damage

とは全く意味が異なりますのでご注意ください。
SBR

Re: ダメージを記録するスクリプト

投稿記事 by SBR »

幅があればこれでも問題ありません。

$game_variables[1] = $game_actors[1].max_give_damage
かくじき
記事: 9
登録日時: 2017年5月12日(金) 23:50

Re: ダメージを記録するスクリプト

投稿記事 by かくじき »

SBR様

画像の通りに記述したところ、無事に動作しました。
ありがとうございます。
返信する

“VX / Ace:スクリプト素材のリクエスト”に戻る