int p1Flag=0; //プレイヤー決定
int charaFlag=0; //メッセージボックス確認用フラグ
int staFlag=0; //ステージセレクト決定
int p1Circle=0; //player1の●ボタンが押されたか
//////決定
if(p1Circle==0) //●ボタンが押されてないとき
{
if ((GetJoypadInputState(DX_INPUT_PAD1) & PAD_INPUT_2) != 0) //ジョイコンの●ボタンが押されたら
{
if (objs.getStagePD()) // もしPlayer1のPlayerPDがtrueなら{}内を実行
{
p1Flag=1; // player1のキャラが決まったことにする
p1Circle=1; // player1の●ボタンが押された設定
objs.setStagePD(false); // Player1のキーが押されている設定にする
}
}
else
{
if (!objs.getStagePD()) objs.setStagePD(true); // Player1のキーを押されていない設定にする
}
}
if(p1Flag==1&&p1Circle==1)
{
p1Circle = 0; //player1の●ボタンを押されてないことにする
charaFlag=1; //player1とplayer2がキャラを決定したらcharaFlagを1にする
}
if(p1Circle==0) //player1の●ボタンを押されてないとき
{
if((GetJoypadInputState(DX_INPUT_PAD1) & PAD_INPUT_2) != 0) // // player1の●ボタンが押されたとき
{
staFlag=1; //ステージが決定されたことにする
p1Circle = 1; //player1の●ボタンが押されたことにする
}
}
if(staFlag==1&&p1Circle==1) // // player1の●ボタンが押されたとき
{
slc.setProg(2); //次の画面に行く
}
ジョイコンの押された判定
ジョイコンの押された判定
昨日にもトピックを立てましたがキーボードではできたのですがジョイコンでやるとスキップされてしまいます
実行をするとキャラの選択が完了した後すぐに次の画面に行ってしまいステージ選択ができませんどうしたらよろしいのでしょうか
Re: ジョイコンの押された判定
名前が違いますが、ジョイパッドの入力状態のことですか?無能プログラマ9 さんが書きました:昨日にもトピックを立てましたが
同様にやればいいはずだと思うので、「キーボードではできた」コードを貼っていただけますか?無能プログラマ9 さんが書きました:キーボードではできたのですがジョイコンでやるとスキップされてしまいます
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: ジョイコンの押された判定
そうです ジョイパッドの入力状態のフォーラムの事です
キーボードのほうで出来たといいましたがステージセレクトの時の決定が別のボタンで同じボタンにするとジョイコンと同じ結果になってました。
すみません
キーボードのほうで出来たといいましたがステージセレクトの時の決定が別のボタンで同じボタンにするとジョイコンと同じ結果になってました。
すみません
Re: ジョイコンの押された判定
直接的な解決法を示すわけではないので申し訳ないのですが、Visual Studio のデバッガの使い方を紹介しておきます。
(もし 無能プログラマ9さんが使っている開発環境が Visual Studio でなければごめんなさい)
最初にマスターしたいVisual Studioのデバッグ機能 - 基本編
http://news.mynavi.jp/articles/2008/08/18/debug/
(掲載されているものは Visual C# 2008 Express ですが、少なくともこれ以降にリリースされたものであれば、C++やC#などの言語を問わず同じように操作できます。)
まずは、ブレークポイントとステップインを使ってどのように処理が行われているのか、1行ずつ追って行ってみてください。
おそらく、無能プログラマ9さんが予想していないプログラムの処理が行われていることに気づいてもらえると思います。
(もし 無能プログラマ9さんが使っている開発環境が Visual Studio でなければごめんなさい)
最初にマスターしたいVisual Studioのデバッグ機能 - 基本編
http://news.mynavi.jp/articles/2008/08/18/debug/
(掲載されているものは Visual C# 2008 Express ですが、少なくともこれ以降にリリースされたものであれば、C++やC#などの言語を問わず同じように操作できます。)
まずは、ブレークポイントとステップインを使ってどのように処理が行われているのか、1行ずつ追って行ってみてください。
おそらく、無能プログラマ9さんが予想していないプログラムの処理が行われていることに気づいてもらえると思います。