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


HSPTV!掲示板


未解決 解決 停止 削除要請

2022
0131
す²マウスカーソルが動いてないと発動するソフト作ったがなんか不安定6解決


す²

リンク

2022/1/31(Mon) 19:04:33|NO.95265

2秒にしてるのに5秒かかったり、逆に一瞬で止まったりしてしまいます。
(何度も止めて動かし手をするとだんだん一瞬で止まるように。)



taikitime = 200 //wait 1 を200回 つまり2秒 *fast repeat 10 mX = ginfo_mx mY = ginfo_my wait 1 loop mes ""+mX+mY+"" if (mX =ginfo_mx)&(mY =ginfo_my) {//22 //止まっていたら止まると表示しrepeatへはいる mes "とまる" *ugo atime = atime +1 if atime > taikitime : goto *kakunin if (mX !=ginfo_mx)&(mY !=ginfo_my){//33 //もしそのあと動いたら動いと表示し、*fastへ戻る mes "うごい" cls goto *fast }//33 wait 1 goto *ugo *kakunin if (mX !=ginfo_mx)&(mY !=ginfo_my){//11endになる前にほんとに動いてないか mes "うごい" cls goto *fast }//11 end }//22 goto *fast



この記事に返信する


す²

リンク

2022/1/31(Mon) 19:54:23|NO.95266

今気づきましたがatime がどんどん増えてしまいますね。改訂版↓ですが、どっちにしろ5秒
問題がまだ解決していません




taikitime = 200 //wait 1 を200回 つまり2秒 *fast atime =0 repeat 10 mX = ginfo_mx mY = ginfo_my wait 1 loop mes ""+mX+mY+"" if (mX =ginfo_mx)&(mY =ginfo_my) {//22 //止まっていたら止まると表示しrepeatへはいる mes "とまる" *ugo atime = atime +1 if atime > taikitime : goto *kakunin if (mX !=ginfo_mx)&(mY !=ginfo_my){//33 //もしそのあと動いたら動いと表示し、*fastへ戻る mes "うごい" cls goto *fast }//33 wait 1 goto *ugo *kakunin atime = 0 if (mX !=ginfo_mx)&(mY !=ginfo_my){//11endになる前にほんとに動いてないか mes "うごい" cls goto *fast }//11 end }//22 goto *fast



zrs90(5さい)

リンク

2022/1/31(Mon) 19:55:45|NO.95267

プログラムが、正常であることが前提ですが
タイミングに関わる部分は
wait 命令 でなく await 命令では?
説明は、マニュアル参照。
その代わり、wait命令より、少し処理が重くなります。



す²

リンク

2022/1/31(Mon) 20:11:00|NO.95268

waitとawait は違ったのか...てっきり=かと思ってました

await にしたら治りました。ありがとうございました。



す²

リンク

2022/1/31(Mon) 20:13:56|NO.95269

(wait=awaitと勘違いしていたせいで英語のテストで間違えました)



zrs90(5さい)

リンク

2022/1/31(Mon) 20:39:54|NO.95270

それで直りましたか。良かったです。
修正後のスクリプトを、実行したら
上手く動かなかったのでどうしようかと...



す²

リンク

2022/2/1(Tue) 17:02:06|NO.95276

一応ちゃんと動くキーボードのほうも追加したのを張っておきます(過去ログで利用する人がいるかもしれないので)

スクリーンセーバー表示用 (マウスを動かさない、何も入力しないと反応します)

screen 0//買えておk
taikitime = 100//←秒数 *10-1
*fast
cls
atime =0
repeat 10
mX = ginfo_mx
mY = ginfo_my
loop
keynn = 1
*keydayotw
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
if keynn > 130:goto *keydayoatw
goto *keydayotw
*keydayoatw
if (mX =ginfo_mx)&(mY =ginfo_my) {//22 //止まっていたらugoへはいる

getkey flag, 27 ;キー入力チェック
if flag = 1 : end
*ugo
atime = atime +1
if atime >= taikitime : goto *kakunin//最終確認へ、それでも動かんかったら
keynn = 1
*keydayotwo
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
getkey keyflag, keynn ;キー入力チェック
if keyflag = 1 : goto *fast
keynn =keynn +1
if keynn > 130:goto *keydayoatwo
goto *keydayotwo
*keydayoatwo
mes ""+keynn+""//消しておk::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
if (mX !=ginfo_mx)&(mY !=ginfo_my){//33 //もしそのあと動いたら*fastへ戻る
goto *fast
}//33
await 100
goto *ugo
*kakunin
atime = 0
if (mX !=ginfo_mx)&(mY !=ginfo_my){//11endになる前にほんとに動いてないか
goto *fast
}//11
/////////////////////↓に実行内容

end

/////////////////////↑に実行内容
}//22
goto *fast



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