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


HSPTV!掲示板


未解決 解決 停止 削除要請

2017
1220
おにぎりSTG 弾打ちながらの移動ができない!(右上と右下)7解決


おにぎり

リンク

2017/12/20(Wed) 23:14:02|NO.82067

シューティングゲームを今更作っているのですが、stick命令で不具合があります。
どうしたら直るのか教えて下さい!
具体的に言えば、自機が動くときに、上下右左キーを複数押しても普通に動くのですが、
SPACEキーを押したままだと右上、右下に動かなくなります。
今、作ってる途中ですので、
SPACEキーを押してもただなんか自機の下に○が表示されるだけですけど、気にしないでください。


sx=400 : sy=600 mex=sx/2 : mey=sy-200 mespd=2 : mesize=16 cls 0 screen 0,sx,sy color 0,0,0 : boxf button "START" ,*main button "END" ,*owari stop *main color 0,0,0 : boxf pos mex,mey : color 255,255,255 : font msgothic,mesize mes "▲" gosub *memove redraw 1 await 15 redraw 0 goto *main *memove stick key,31 if(key & 1){mex=mex-mespd} if(key & 2){mey=mey-mespd} if(key & 4){mex=mex+mespd} if(key & 8){mey=mey+mespd} if(key & 16){mes "●"} if(mex<0){mex=0} : if(mey<0){mey=0} if(mex>sx-mesize){mex=sx-mesize} : if(mey>sy-mesize){mey=sy-mesize} return *owari end



この記事に返信する


kanahiron

リンク

2017/12/20(Wed) 23:24:02|NO.82068

stick命令の不具合ではなく、キーボードの物理的仕様、またはUSBの規格的仕様です
私の使用しているFILCOのキーボードもスペースキーを押しながらの方向キーは1キーしか検出できませんでした

同時押しについてはこちらを
http://wikiwiki.jp/fpag/?%A5%AD%A1%BC%A5%DC%A1%BC%A5%C9%A4%CE%C6%B1%BB%FE%B2%A1%A4%B7%A4%CB%A4%C4%A4%A4%A4%C6

解決策はスペースキーを使わない以外にありません(自分しかプレイしないのであればPS/2接続のNキーロールオーバー対応キーボードを買えばいいのですが)



おにぎり

リンク

2017/12/20(Wed) 23:41:05|NO.82069

なるほど。
キーボードの物理的な問題なのですね。
ありがとうございました。
なにか違う手段を考えて見ることにします。



GENKI

リンク

2017/12/21(Thu) 00:00:28|NO.82070

Nキーロールオーバーの問題ですね。
私のキーボードだと正常に動作しました。スペースキーと方向キーの組み合わせがだめなキーボードもあるんですね。この組み合わせはゲームでもよく使われると思っていたので、認識してくれないのは個人的には意外な結果です。

Nキーロールオーバーの話題が出た時に毎回私がお勧めしている対策は「ゲームパッドにも対応する」です。
ゲームパッドなら組み合わせで認識しない事はありえません。全ボタン同時押しでも認識しますよ。

> 解決策はスペースキーを使わない以外にありません
認識しないキーの組み合わせはキーボードによって異なるため、キーを変えても変えたキーとの組み合わせがダメなキーボードがあるかもしれません。
どうしてもキーボードを使ってほしい場合は、キーコンフィグの実装をお勧めします。ユーザーごとに環境が異なり、プログラム側で検出や判定もできないので、不具合が起こらないようにするにはユーザーに調整してもらうしかありません。
それでもしかしキーボードなので、3キーより多い同時押しは認識しない可能性が残ります。

せっかくなので最近書いた関連記事を宣伝
http://mclab.uunyan.com/lab/hspneta/neta012.htm



ぜーっと!

リンク

2017/12/22(Fri) 21:59:18|NO.82072

他のゲーム等をみても、スペースキーを使うのは少ないですね。
よくキーボードで使われるボタンは、SHIFT、Z、X、Cあたりじゃないでしょうか。

ゲーミングキーボードとかなら、かなりのボタンが同時押しに対応するんでしょうけど・・。



おにぎり

リンク

2017/12/23(Sat) 23:55:17|NO.82075

自分のパソコンでは、文字キーを押している時に、方向キーが二つ以上反応しないことが分かりました。
なので、とりあえず、押していても方向キーが反応してくれるSHIFTキーやtabキーなどを使うことにしました。
まだまだ勉強中の身ですので、ボタンを多く使うことはあまりありませんが、
使っているパソコンのスペックなども理解したうえでやっていきたいと思います。

ありがとうございました。



ZAP

リンク

2017/12/24(Sun) 12:09:43|NO.82078

SHIFTは連打するとWindowsの固定キー機能のダイアログが出るからやめたほうがいいのでは・・・

そもそもシューティングゲームはジョイパッドで遊びたいという人が多いジャンルではないかと思うので、
(少なくとも自分はキーボードしか対応していない、という時点でプレイするモチベーションが半減します)
この際素直にジョイパッド対応を考えてもよいのではないかと思います。



おにぎり

リンク

2017/12/25(Mon) 23:08:45|NO.82089

お、おぉう。すいません。時代の波に乗り忘れて、陸地を転がっているおにぎりなので、ジョイパッド持ってないという問題が…。
そして、組み込み方わからないという問題が…。

まだゴリゴリの初心者ですのでわからない部分も多くありますが、そのような便利なものも
いつしか使ってみたいと思います。

というか、使いたいし!

あ、SHIFTキーは使ってるとうざったいことがわかったので、今はTABキー使ってます。
まさか、TABキーをプログラミングで使うことになるとは思ってなかった…。



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