HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2017
0807
かゆぽん。トリガー入力 同時押し3解決


かゆぽん。

リンク

2017/8/7(Mon) 00:48:58|NO.80862

シリアル通信でロボットの操作をしようと思っているのですが、

repeat getkey key_A, 65 getkey key_D, 68 getkey key_E, 69 getkey key_Q, 81 getkey key_S, 83 getkey key_W, 87 if key_A=1 :mes "A" if key_D=1 :mes "D" if key_E=1 :mes "E" if key_Q=1 :mes "Q" if key_S=1 :mes "S" if key_W=1 :mes "W" await 20 loop
このようにすると、二つ以上のキーを同時に押したとき
押したキーが全部表示されてしまいます
ロボットの性質上、二つ以上入力できないようにしたいのですが、
どのようにすればよいでしょうか



この記事に返信する


かゆぽん。

リンク

2017/8/7(Mon) 02:09:41|NO.80863

すみません、repeatの直後にclsありました



ブイ

リンク

2017/8/7(Mon) 03:49:14|NO.80864

もうひとつフラグを作ってほかのキーが押されていないかチェックすると良いでしょう。


repeat cls key_flg=0 //ループ内にフラグのリセットを忘れずに getkey key_A, 65 getkey key_D, 68 getkey key_E, 69 getkey key_Q, 81 getkey key_S, 83 getkey key_W, 87 if key_A=1 & key_flg=0 : key_flg=1 :mes "A" if key_D=1 & key_flg=0 : key_flg=1 :mes "D" if key_E=1 & key_flg=0 : key_flg=1 :mes "E" if key_Q=1 & key_flg=0 : key_flg=1 :mes "Q" if key_S=1 & key_flg=0 : key_flg=1 :mes "S" if key_W=1 & key_flg=0 : key_flg=1 :mes "W" await 20 loop



かゆぽん。

リンク

2017/8/7(Mon) 14:02:33|NO.80865

なるほど、
ありがとうございました。



ONION software Copyright 1997-2023(c) All rights reserved.