こんにちは。
Iron さんが書きました:件名の通りSAN 拡張イベントページ制御にてセルフスイッチを条件に入れてセルフスイッチBとDがONの時イベントを出現…といったようにしたいのですが
<SAN_ExtendedEventPage:{
"trigger":"$gameSelfSwitches.Value([this._mapId, this._eventId, "D"], true) "
}>
と記述するとUnexpected token D とエラーが出ます
この場合Dの部分には何を記述すればいいのでしょうか
D が 二重引用符(") で囲われてしまっているために、文字列の区切りが
"trigger":"$gameSelfSwitches.Value([this._mapId, this._eventId, "D"], true) "
となってしまい、D が文字列ではない扱いになってしまうために起こっているエラーです。
また、このイベントのセルフスイッチ D がON(true)になっている場合という条件の書き方も正しくありません。
$gameSelfSwitches.value() メソッドは 引数に
'
マップID,
イベントID,
セルフスイッチ番号(A B C D のいずれか)'
という文字列を指定して、指定したセルフスイッチの状態を返却させるメソッドです。
また、この関数で、直接、セルフスイッチがONか(OFFか)という判定をすることはできません。
コード: 全て選択
$gameSelfSwitches.value('マップID,イベントID,セルフスイッチ番号') === true もしくは false
と、きちんと返却された値が true なのか(falseなのか)を判定させなければいけません。
(条件式として、true か判定する場合は === true を省略できます)
最後尾に、true や false を書いても、本来そこに値は設定されないので、無視されます。
ご注意ください。
SAN 拡張イベント制御でこのイベントのセルフスイッチBとDがONのときを出現条件としたい場合は、
以下のように冒頭に注釈を書くことで、設定可能です。
コード: 全て選択
◆注釈:<SAN_ExtendedEventPage:{
: :"trigger":"$gameSelfSwitches.value('' + this._mapId + ',' + this._eventId + ',' + 'B') &&
: :$gameSelfSwitches.value('' + this._mapId + ',' + this._eventId + ',' + 'D')"
: :}>
(ここで書いているのは書き方の一例で、他にも書き方はありますが、解説はしません。)
以上、ご確認ください。