Rosso Laboratory

Rosso Laboratory

主に鉄道模型シミュレーター(VRM)などの仮想鉄道アプリを扱うブログです。またHDR写真の記事も書いています。

VRM5で信号機テスト


昨晩もななついろチャンネルさんにお邪魔しましたが沼ってました(^_^;)

信号機の変移でSetEventAfterを使った方はあっさり動いていましたが、SetEventTimerに切り替えて沼るという・・・。
8時間ぐらいやっていたようですが流石に眠くなったので途中退場いたしました。その後if文をネストさせてようやく動いたようです。

途中で私は剰余計算を使った分岐を提案したのですが採用されなかったので、こちらで勝手に試します(^_^;)

//SENSOR_000
Var evid0
SetEventSensor snsev evid0
SetSensorMode 0

BeginFunc snsev
  call "SENSOR_001" KEV
  call "SIGNAL001" color_red
EndFunc


//SENSOR_001
Var evid1
Var evid2
SetEventSensor snsev evid1
SetSensorMode 1
Var SIG_NO
set SIG_NO 0

BeginFunc snsev
  SetEventTimer this SIG_CNG evid2 4000
EndFunc

BeginFunc SIG_CNG
  mod SIG_NO 5
  ifeq SIG_NO 0
    call "SIGNAL001" color_red
  endif
  ifeq SIG_NO 1
    call "SIGNAL001" color_caution
  endif
  ifeq SIG_NO 2
    call "SIGNAL001" color_yellow
  endif
  ifeq SIG_NO 3
    call "SIGNAL001" color_down
  endif
  ifeq SIG_NO 4
    call "SIGNAL001" color_blue
    KillEvent evid2
    set SIG_NO 0
  endif
  add SIG_NO 1
EndFunc

BeginFunc KEV
  KillEvent evid2
  set SIG_NO 0
EndFunc


//SIGNAL001
SetSignal 6

BeginFunc color_red
 SetSignal 1
EndFunc
BeginFunc color_caution
 SetSignal 2
EndFunc
BeginFunc color_yellow
 SetSignal 3
EndFunc
BeginFunc color_down
 SetSignal 4
EndFunc
BeginFunc color_blue
 SetSignal 6
EndFunc

VRM5信号機テスト

VRM5ですが動きますね。まぁどうでもいいことですが(^_^;)

PVアクセスランキング にほんブログ村