マルチ行先ポータル
ひとまず行先を36か所選べるようにはできた。1PCで36か所なので、3PCで108か所までいけるはず。ただ設定が超絶めんどくさいよう・・・ pic.twitter.com/I3QIUjihSk
— めっさー (@ms2messer) September 8, 2019
結構前に作った、行先が選べるポータルですが
なかなか使い道が決まらないままずるずる来てしまっているので
いったん内容を公開してしまおうと思います。
その前に、ポータルの挙動に関するTipsをば。
最初考えたとき、こんな感じにポータルを配置しました
タワー上に配置したポータルをエディターでいったんすべてOFFにした後
タワーのうち1か所のみポータルをONにします。
次に、地面に置いたポータルからタワー最上段のポータルに移動する設定を施し、
落下しながらONにしたポータルに触れると特定の個所に飛べるのではと考えました。
しかし、簡単にはいかない謎の仕様が待ち構えていました・・・
一度アクションのポータルに触れると、タッチのポータルが機能しなくなる
ポータルの設定はデフォルトでアクションなので
仮建設したときは手抜きでいくつかアクションのポータルが混じっていたのですが
アクションのポータルに触れたとたん(アクションキーを押さなくても)
以降のタッチポータルが何故か全く機能しなくなります・・・。
これは、地面に置いた入口ポータルにも適用されてしまいます
よって、連続したタッチ移動のポータルをすべてうまく機能させたければ
体の触れる可能性のあるポータルはすべてタッチにしなければなりません。
また、タッチにしてももう一つ罠があります
キャラクターが速すぎるとタッチ移動が機能しない
これは所謂ラグというか、サーバ通信の問題でしょう・・・。
キャラクターの移動速度が速すぎると、タッチが反応しないことがあります。
反応することもありますが非常に不安定です。
確実に機能するのは、せいせい4ポータル分ぐらい。
これを踏まえて、マルチ行先ポータルはこんな感じで配置しました
だいぶごちゃごちゃになってしまいましたが・・・
3ブロックにわけて、落下は4ポータル分まで、すべてタッチ設定です。
行先を決めるためのレバーは、ブロック選択用に3個(ウォルナット)
ポータル選択用に12個(シルバー)配置する必要があります。
挙動としては、
①シルバースイッチを押すと
押した場所の床になっている店舗用ドアが開き、キャラクターが落下し、
その下に隠れているタッチポータルに触れます。
②左下にあるどのブロックに移動するかを決める3ポータルの一番上に移動します。
レバー入力にあわせて、3つのうち2つをOFF,1つをONにしておき、
落下&タッチで目的のブロックに移動します。
③移動した先のブロックにあるポータル1~12のうち、
レバー入力のあったポータルのみをONにし、他をOFFにしておくことで
落下とワープを繰り返しながら目的の番号のポータルまで数字の順に移動し
ONになっているポータルに触れるとタッチ移動で
あらかじめ設定された行先に飛びます。
ソースコードはこちらです。
なかなかややこしいので、興味ある人だけどうぞ・・・
いったん全部OFFにして、目的のポータルをONにする!
これの繰り返しで進んでいきます。
ここでちょっとテクいのは、
使っていないブロックのポータルも同時に制御している点です
キャラクターは目的のブロック内で移動するので
他ブロックの挙動がどうなろうと関係がないのですが
エディター的にはまとめて書けるのでオトクです。
これをどんどん繰り返して書いていきます。
だんだんめんどくさくなって、7、8、9、10、11、12番目の
ポータル設定をサボりました・・・ゴメンナサイ。
エディターだけならいいんですが、ポータルひとつひとつ設定するのがめんどくさい
最後に、店舗用ガラス自動ドアをONにして、キャラクターを移動させます。
2bitカウンターで少しだけ時間を稼いだ後は待ち受けに戻ります
ということでマルチ行先ポータルの紹介でした。
作ったはいいもののなかなか実用化が難しいです・・・。
一番みんなが家においてそうなボスポータルを設定してもよいのですが
あああもうすぐ沸く!!というときにレバーガチャガチャ操作するのうっとおしかったりして没。
フレンドポータルにしようかとも思いましたが
貴重な貴重なメイン垢のトリガーエディターを常時1つ占有するのは辛い・・・
ウーム、何かいい使い道はないものか