カレンダー

10 | 2017/11 | 12
- - - 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 - -

最近のコメント

最近の記事

カテゴリー

リンク

このブログをリンクに追加する

月別アーカイブ

アクセスカウンター

スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
[--/--/-- --:--] | スポンサー広告
攻撃されないステータス
RPGツクールVXAceで「絶対攻撃されないステータス」を考えます。

例題として「眠っているアクターは攻撃対象から外す」をやってみましょう。

変更する場所はGame_Unitのrandom_targetです。
こいつを以下のように変えましょう


 def random_target
  tgr_rand = rand * tgr_sum
  alive_members.each do |member|
   tgr_rand -= member.tgr
   next if member.state?(6)
   return member if tgr_rand < 0
  end
   nil
  #alive_members[0]

end


※インデントで全角スペース使ってます。上記コピペすると死ぬので注意

解説です。

random_target はエネミーが倒すアクターをランダムに選別することろで呼ばれます。
戻り値はターゲットになったアクターです。

赤い行が変更行です。

まず、「next if member.state?(6) 」です。
こいつはターゲットのステータスをチェックして、6(ステータス6はデフォルトで睡眠)であれば、それ以降の処理を行いません。つまり、睡眠がターゲットに選ばれなくなります。

次の「nil」です。
デフォルト設定では狙われ率全員0%とかに指定して、誰一人選ばれない場合はパーティーの先頭が自動で選ばれます。
それがnilの下の命令です。
よって、どうしても選ばせたくない場合は、既存のソースをコメントアウトしてnilを戻すようにします。

これで終了です。

ちなみに、これ以上の解説は牙行の説明スキルが低いので無理です。
わかんない人は、ぜひ、Rubyを勉強して頑張ってみてください。
そんでもって、さらに補足してくれるとみんなでハッピー。
スポンサーサイト
[2014/04/26 12:28] | ペトリケーション2 | コメント(1)
<<丸呑みのイラストが描けた | ホーム | 【吉報】サルベージ成功!>>
コメント
十分すぎます。
ここまでソースを考えて頂きありがとうございます。

自分もゲームを完成できるよう頑張ります。
自分でも色々いじってなにか見つけることが出来たら伝えさせて頂きたいと思います。
大変助かりました。
[2014/04/28 21:58] URL | 葛葉 #-[ 編集]
コメントの投稿












管理者にだけ表示を許可する

牙行の色々やること


Maiki's House運営者牙行のブログです。

プロフィール

牙行

Author:牙行
ASFR & WAM を重点的に扱っています。いろいろなことに興味を持つゆえにフラフラしているダメ人間。
定型句ではありますが書いときます。
このブログにあるコンテンツの無断転載転用だめですよぉ。

pixiv

Twitter...

DLSite.com

ブログ内検索

ブロとも申請フォーム

この人とブロともになる

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