【解決済】キャラチップをフェードイン・アウト

ブラックドッグ
記事: 8
登録日時: 2017年8月17日(木) 11:14

【解決済】キャラチップをフェードイン・アウト

投稿記事by ブラックドッグ » 2018年1月21日(日) 15:22

アクターやNPCの歩行グラフィックをフェードインして表示、非表示にさせることはできるのでしょうか。
移動ルートのコマンドだけでは不便だったのでRGSSがあれば教えてください。
最後に編集したユーザー ブラックドッグ on 2018年2月08日(木) 22:47 [ 編集 3 回目 ]

faida
記事: 216
登録日時: 2015年12月17日(木) 16:44

Re: 【VXAce】キャラチップをフェードイン・アウト

投稿記事by faida » 2018年1月21日(日) 15:59

疑似的なフェードイン/アウトなら、
「移動ルートの設定」→「スクリプト」で

コード: 全て選択

@opacity -= 10 # -でフェードアウト、+でフェードイン
を「繰り返す」だけです。
その次に移動ルートを指定すると不透明度が中途半端になっちゃうのが問題ですかね。
また、この方法を応用して

コード: 全て選択

@opacity += 8 if @opacity < 128
不透明度に制限を付けることができます。

ここから先は余談なんで白抜きで失礼します。
以前聞いた話の受け売りなんですが、「透明状態」による透明と「不透明度0」による透明状態では、後者の方が重くなる可能性が高いです。
やっぱり不透明度の変更って一般的には重たい処理なんですね……というわけではなく、「表示状態かどうか」が関与しているとかなんとか。
---------------------------------------------
自作の(改造でない)スクリプト素材に
関しては、リードミーもしくは作中に
「faida」と記名していただければ
利用可能です。
ブラックドッグ
記事: 8
登録日時: 2017年8月17日(木) 11:14

Re: 【VXAce】キャラチップをフェードイン・アウト

投稿記事by ブラックドッグ » 2018年1月21日(日) 22:30

ありがとうございます、スクリプトで組めたおかげでスムーズにできるようになりました。
しかしキャラを移動させつつフェードアウトというのはやはり難しいでしょうか。
ともあれ理想に近づいたのでこれで解決済みとさせていただきます。
faida
記事: 216
登録日時: 2015年12月17日(木) 16:44

Re: 【解決済】キャラチップをフェードイン・アウト

投稿記事by faida » 2018年1月22日(月) 10:02

解決済みですが、一応移動中にフェードアウト/インする方法を思いついたので。
答えは単純、「他のイベントから不透明度をいじる」だけです。
前回の回答と同じように、「対象イベントでないイベント」の移動ルートの設定で

コード: 全て選択

$game_map.events[n].opacity -= 10
などと記入してください。nは対象イベントのIDです。
---------------------------------------------
自作の(改造でない)スクリプト素材に
関しては、リードミーもしくは作中に
「faida」と記名していただければ
利用可能です。
ブラックドッグ
記事: 8
登録日時: 2017年8月17日(木) 11:14

Re: 【解決済】キャラチップをフェードイン・アウト

投稿記事by ブラックドッグ » 2018年1月22日(月) 15:19

重ね重ねありがとうございます。
ダミー用のイベント(ID001)からスクリプト($game_map.events[003].opacity += 10)を作動させたのですがNoMethodエラーが出ました。
(undefined method'opacty='for#<game_Event:0x8f0b9d4>)
・まずID003の歩行グラを透明にしてフェードイン前の状態にする
・ID001イベントでスクリプト($game_map~)を導入、ウェイト1秒かけて繰り返し動作
・同時にイベントID003では移動指示
という実行内容で組んでみたのですが、どこか間違っていたら是非ご指摘お願いします。
アバター
ゴリラ⤴ゴリラ⤵
記事: 5
登録日時: 2017年10月28日(土) 12:19

Re: 【VXAce】キャラチップをフェードイン・アウト

投稿記事by ゴリラ⤴ゴリラ⤵ » 2018年1月22日(月) 16:36

>faidaさん
こちら拝見して私も利用させて頂いてます。すごく役に立つ情報でした。ありがとうございます :D

>ブラックドッグさん
綴りは正確ですか?上のエラーメッセージを見るとopacityではなくopactyになっているようですが :shock:
faida
記事: 216
登録日時: 2015年12月17日(木) 16:44

Re: 【VXAce】キャラチップをフェードイン・アウト

投稿記事by faida » 2018年1月23日(火) 14:46

すっかり忘れていましたがopacityはオープンな変数ではなかったのでそのままだと外部からやり取りできないんでした。

コード: 全て選択

class Game_CharacterBase
  attr_accessor :opacity
end
をスクリプトエディタに導入するか

コード: 全て選択

$game_map.events[n].instance_variable_set(:@opacity,$game_map.events[n].opacity - 10)
という風に記述すると多分できます。
---------------------------------------------
自作の(改造でない)スクリプト素材に
関しては、リードミーもしくは作中に
「faida」と記名していただければ
利用可能です。
ブラックドッグ
記事: 8
登録日時: 2017年8月17日(木) 11:14

Re: 【VXAce】キャラチップをフェードイン・アウト

投稿記事by ブラックドッグ » 2018年2月08日(木) 22:47

何度も返信してくれてありがとうございます。
おかげでやっとイメージ通りの動かし方ができるようになりました。
これにて本当に解決済みとさせていただきます。

“VX / Ace:質問” へ戻る