スレッドの評価:
  • 回答数:0 平均:0
  • 1
  • 2
  • 3
  • 4
  • 5
DSのスクリプトSETFLAGの設定方法
#1
Huh ‌4つの駅A.B.C.DとポイントA.Bを使って順に巡るスクリプトでやっと自動運転できるようになりました。
次に、D駅に3回到着確認したら3駅だけを巡ることに挑戦しましたが、SETFLAGとINCFLAGの使い方が解らず行き詰まっています。
FLAGとs88のD駅の設定方法が解りません。スクリプトを色々参照しましたが例題が見つかりません。
使用機器は、DSair2とs88です。
SETFLAGを3と設定して、s88のD駅在線番号をどの様に設定するのか、またはINCFLAGをどう使うのか等が解りません。
何方か設定方法を教えて下さい。よろしくお願いします。
私は、ずいぶん前にDCCでを経験しましたが、7.8年とうざかっていまして、最近体調の良いとき少しずつ思い出しながら遊んでいます。自動運転でやってみたく挑戦しております。よろしくお願いします
返信
#2
INCFLAGは、数字を増やしたり減らしたりするコマンドです。
?回通過したら、というような動きを実現するのに使用します。

D駅に着いたときに、INCFLAGでフラグを足していく処理と、SETFLAGでモードを変更する処理の2つを組み合わせてスクリプトを組んでいくことになるかと思います。

スクリプトでは2つの条件を同時に判定できませんので、2行に分けて記載していく形になります。もしくは、モードの数値を10の桁を使って、到着回数と足し算して判定する、という方法もあります。

条件が複雑になればなるほど、スクリプトは複雑になりますので、紙に書いたり、いったん全ての条件や状態をまとめてから着手されると良いかと思います。
返信
#3
takumiさん

スクリプトでの自動運転ですが、PCソフトのDesktop StationでDSair2を
制御する話ですね。

EVタブでイベントスクリプトが編集できる画面にて入力のみですが、試して
記述しています。

1.追加でSETFLAGを選び、フラグ番号を1、値を3とします。
2.追加でLABELを選び、ラベル名をLOOP1とします。
3.追加でWAITIFを選び、Commandに S88.4==1 とします。
  (D駅のs88が4の場合)
4.追加でINCFLAGを選び、フラグ番号を1、値を-1 とします。
5.追加でJUMPを選び、ラベル名をLOOP1、フラグ番号を1、条件値を0とします。

こんなので如何でしょうか?
返信
#4
yaasan 様 KAKKA 様 早速教えてくださり有難うございました。
 
取り掛かりはスローモー私ですが早速トライします。
KAKKA 様 WAITIFを使ってセンサーを指定する方法が全く
解りませんでした。大変ありがとうございまました。
返信


ページジャンプ:


このスレッドを閲覧中のユーザ: ゲスト: 2