忍者ブログ

へぷたなすくろーる

RPGツクールのブログです。イベント講座とRGSS3スクリプト配布をやってます♪

Home > > [PR] Home > スクリプト素材(RGSS3) > RGSS3_セルフスイッチ操作ぷらす

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

RGSS3_セルフスイッチ操作ぷらす

イベントでセルフスイッチを自在に切り替えるスクリプトです。
デフォルトだとセルフスイッチは、そのイベント自身のものしか操作できませんが
これをマップIDとイベントIDを指定して、好きなセルフスイッチを操作できます。

また、1つ1つ指定するのではなく
全てのマップや、全てのイベントといった指定を組み合わせて行えます。

おまけで
スイッチと変数を「指定したID / 指定したID以外」で一括操作する機能が付いてます。

セルフスイッチの操作
イベントコマンドの「スクリプト」に書く。
adv_self_switches(マップID, イベントID, "スイッチ名", true / false)
マップIDとイベントIDは数値で指定し、スイッチ名は"A"や"B"で指定します。
trueならセルフスイッチがon、falseならセルフスイッチがoffになります。
例1: adv_self_switches(1, 1, "A", true)
マップ1番のイベント1番のセルフスイッチAをonにする。
[]で指定することで、複数のIDやスイッチ名を指定できる。
例2: adv_self_switches([1,2,3], 1, "A", true)
マップ1番と2番と3番のイベント1番のセルフスイッチAをonにする。
例3: adv_self_switches(1, [2,5], ["A","C"], true)
マップ1番のイベント2番と5番のセルフスイッチACをonにする。
"all"を指定することで、全てのIDやスイッチ名を一括指定できる。
例4: adv_self_switches("all", 1, "A", true)
全てのマップのイベント1番のセルフスイッチAをonにする。
例5: adv_self_switches(1, "all", "all", true)
マップ1番の全てのイベントのセルフスイッチABCDをonにする。
例6: adv_self_switches("all", "all", "all", false)
全てのセルフスイッチをoffにする。

スイッチ/変数の一括操作
イベントコマンドの「スクリプト」に書く。
adv_switches(スイッチID, true / false)
adv_switches_rev(スイッチID, true / false)
adv_variables(変数ID, 数値)
adv_variables_rev(変数ID, 数値)
IDは[]で複数指定可能。allの機能は無し(デフォルトで出来るので)。
_revが付いている方は、指定したID「以外」のスイッチ / 変数を操作する。

その他
ver1.1  特定状況で一部のセルフスイッチが切り替わらない不具合を修正


スクリプトをダウンロード

拍手[37回]

PR
Responses11 Responses
1.質問です ruruさん (2013/12/03 11:25) [Edit]

すみません、
セルフスイッチ操作ぷらすを導入させて頂いたのですが、
セルフスイッチ操作で、例えばマップ1のイベントID3から30を一括操作したい時に、
[3,4~~30]と全部書かなくても、3から30を範囲指定で短く書く記述がありましたら教えていただけませんでしょうか?
または、通常スイッチの方の、指定したID「以外」という書き方があれば教えてください。

Re:質問です 奈々(なな) (2013/12/03 19:05)

こんばんわ。
そういえばスイッチ/変数の操作にある
一括指定みたいなものを実装していませんでしたね。
次の更新時に追加しておきたいと思います。

さてそれはそれとして、短く書く記述ありますよ♪

for i in 3..30
adv_self_switches(1, i, "A", true)
end

forなんちゃらというのはループ命令のコマンドです。
この場合は、iが3から30まで変化していくループという意味になります。
つまり
adv_self_switches(1, 3, "A", true)
adv_self_switches(1, 4, "A", true)
......
adv_self_switches(1, 30, "A", true)
という命令と同じ意味になるわけです。

2.ありがとうございます ruruさん (2013/12/03 23:55) [Edit]

できました!こんな短いループ命令で書けるのですね。
解説も とても分かりやすかったです、ありがとうございます。

他のスクリプトも全部頂いています。
とくにお気に入りのスクリプトはアクター・キーワード・システムです。
導入したら、凄く便利で感激しました。
いつも素敵なスクリプトをありがとうございます。

Re:ありがとうございます 奈々(なな) (2013/12/07 10:51)

解決したようで何よりです。
ループ命令は比較的短く書けるのが魅力ですが
ぱっと見で処理が分かり難くなるのが欠点ですかね。
その点はイベントのループの方が見やすいこともあります。
(ループを入れ子にしていくと顕著です)

スクリプトを気に入って下さったみたいで嬉しいです。
アクター・キーワード・システムは我ながら応用性が高い
と思っている素材なので、そういう感想を頂けて幸いです。

今回のように、質問から次の実装を考えたりもしますので
質問や感想はいつでも大歓迎です。
それでは、報告ありがとうございました。

3.adv_self_switches()のスクリプト内容について ショウさん (2014/03/14 20:43) [Edit]

event_id == "all" の時に event_id = [] の処理で event_id を上書きしているため、
それ以降のループでは event_id == "all" の判定がなされないようです。
よろしければご検討下さい。
(もし勘違いでしたらすいません)

Re:adv_self_switches()のスクリプト内容について 奈々(なな) (2014/03/18 00:49)

報告ありがとうございます。原因はご指摘の通りでした。
all判定を抜ける代わりに最初のマップのイベントIDで判定が行われるため
map001のイベント数が最多だったテストプレイで検出できなかったようです。

修正版をアップロードしておきましたので宜しければご確認下さい。

4.ご対応ありがとうございます ショウさん (2014/03/19 13:49) [Edit]

ご対応いただき、ありがとうございます!
「セルフスイッチ操作ぷらす」はとても便利で、
プレイヤーを追いかけてくる敵の状態リセットと、
周回プレイ機能実現のために利用させていただいてます。
特にall指定によるマップ全体、ゲーム全体への操作が非常に便利です。
素晴らしいスクリプトを作成していただき、ありがとうございました!

Re:ご対応ありがとうございます 奈々(なな) (2014/03/21 21:53)

感想ありがとうございます。
そう言って頂けると嬉しいです。

ツクールにセルフスイッチが用意されたのは
変数が用意されたときと同じく大きな変化だと思うのですが
デフォルトだと扱いが限定的で勿体無かったですからね。
上手く活用して面白いゲームを作ってください。それではまた。

5.無題 BHさん (2014/07/22 02:58) [Edit]

初めまして 便利なので活用させてもらってます!
質問なのですが、イベントのIDを変数で指定することはできないでしょうか?
マップ1番のイベントn番のセルフスイッチAをonにする
みたいな感じでしたいんです

Re:無題 奈々(なな) (2014/07/22 04:43)

初めまして。コメントありがとうございます。
変数指定は可能です。

v = $game_variables[n]
adv_self_switches(1, v, "A", true)

という形でイベントスクリプトを組んでください。

6.無題 BHさん (2014/07/22 09:41) [Edit]

うまくいきました!
いろいろと役に立つスクリプトがあって嬉しいです
ありがとうございました

Re:無題 奈々(なな) (2014/07/28 02:20)

ありがとうございます。解決したようでなによりです。

他の人の参考にもなると思いますので
今後も疑問があればお気軽にお願いします!

7.お借りします くろくろ(・ω・)さん (2015/09/10 11:54) [Edit]

ストーリー進行によって個別でスイッチ、変数をいちいち設定するのが手間、もったいないと思っていたので、これで処理が改善できます。

Re:お借りします 奈々(なな) (2015/09/15 06:55)

報告ありがとうございます。
使用率トップの噂もある当素材ですが、元のセルフスイッチという仕組みの汎用さ故でしょうかね。
作品制作の一助になれば幸いです。

これまでのコメントにもあるように、スクリプトライクな使い方も出来ますので、必要な時はご相談下さい。

8.素材お借りしました あずさん (2015/09/19 17:03) [Edit]

初めまして、あずと申します。
紅の中二病ガンナーという自作ゲームに
奈々様のピクチャメニューをお借りしました。
汎用性高くて感激です!!
素敵なスクリプトありがとうございました!

Re:素材お借りしました 奈々(なな) (2015/09/27 13:05)

始めまして。
利用報告ありがとうございます!

10分1マップということで、早速遊んでみました♪
狙ったB級感?が凄く良いですね。
過剰なエフェクト、大味なダメージ、投げやりな説明と
プルコギウスなどの謎の語感の良さが爽快です。
良く観ると弾も狼だし(笑)

ツクラーとしては、破壊処理の作り込みや
スクリプトの調整など、細かい部分の丁寧さも参考になります。
ただ画面ゆれやエフェクトに加えて
マップもチカチカしているため、私は3分で酔いました(汗)

公開お疲れ様でした。ではまた。

9.無題 NONAMEさん (2015/09/20 18:07) [Edit]

質問なのですが、a番のマップのb番のイベントのスイッチAのオンオフを調べる方法はありますか?

Re:無題 奈々(なな) (2015/09/27 12:46)

お返事が遅くなりました。
>a番のマップのb番のイベントのスイッチAのオンオフ
意外と簡単に調べることが出来ますよ。

条件分岐の中に「スクリプト」があります。
ここに
$game_self_switches[[a, b, "A"]]
と入れれば、「~のスイッチAがオンの場合」となります。

結果をイベントのページ切り替えなどに使いたい場合は
その条件分岐から、普通のスイッチや変数を操作すれば良いでしょう。

またご質問があればお気軽にお願いします。それでは。

10.素材利用報告 宮波笹さん (2015/10/31 21:05) [Edit]

こんにちは
とらねこさんの小屋の宮波笹と申します

このたび短編RPG「エインワーズ家の従僕たち」に
素材をお借りさせていただきました。
ありがとうございます

Re:素材利用報告 奈々(なな) (2016/02/01 02:20)

こんばんは。お返事が遅れてすみません。
素材の利用報告ありがとうございます。

何回かHPを覗いていて、猫さんが可愛いな~と思ってました。
絵が可愛いって反則ですよね。※BLではありませんには笑いました。
それでは、また~。

11.利用報告 くりちほさん (2015/11/29 15:51) [Edit]

はじめまして。
今回、「Girls Carnival! 2」というゲームに
「セルフスイッチ操作ぷらす」「乱数固定化」を使わせて頂きました。
ありがとうございました。

Re:利用報告 奈々(なな) (2016/02/02 00:01)

はじめまして。お返事が遅くなりました。
報告ありがとうございます!

セルフスイッチ操作ぷらすは利用報告を良く頂くのですが
乱数固定化は初めてな気がします。
まさかこの仕様を使いこなせる人が現れるとわ(笑)

ご利用&ご報告ありがとうございました~。

  • お名前
  • タイトル
  • メールアドレス
  • URL
  • パスワード

ブログ内検索

アーカイブ

最新コメント

[10/13 深海樹]
[08/02 ダイ二ホケンシツ]
[07/29 ダイ二ホケンシツ]
[07/29 ダイ二ホケンシツ]
[07/29 ダイ二ホケンシツ]

プロフィール

バナー

HN:奈々(なな)
RPGツクールVXAceを中心に製作を行っています。 スクリプト、イラスト、ドット絵など広くちょこちょこ手を出していますので、 できる範囲で他のツクーラーさんのお手伝いができたらなと思っています。